Sonntagslinks, Vol. 47

The Differences Between Feedback From Paying Customers vs. Free Users (drift.com)
«When processing feedback, you need to take into account not only what you’re hearing, but also who you’re hearing it from.»
Ich mag vor allem diese Grafik.
– via @dcancel

If you don’t finish then you’re just busy, not productive (jacksimpson.co)
«If you’re always starting interesting projects and not finishing, then no matter how hard you work, you’re just busy, not productive.»
– via @juokaz

Why not to convert a DateTime to timestamp or UTC (andreas.heigl.org)
«When you made your appointment, no one knew, that the Turkish gouvernment would decide to stay on DST even in winter. They never switched back from DSTA. […] At least 10 changes to timezone entries alone in 2016»
– via @heiglandreas

Hype Driven Development (daftcode.pl)
«Have you seen it? A team picking newest, hottest technology to apply in the project. Someone reads a blog post, it’s trending on Twitter and we just came back from a conference where there was a great talk about it. Soon after, the team starts using this new shiny technology […]. They slow down, get demotivated, have problems delivering next working version to production. »
– via @philandstuff

In eigener Sache

Aufgrund langer Pause der Sonntagslinks schon älter, trotzdem genauso noch relevant:
«Wir habens verbockt» – oder unser Versprechen im Umgang mit Fehlern (ticketpark.ch)
«Fehler passieren überall, auch bei uns. Darum ist es uns wichtig ist, wie wir mit diesen umgehen. Hier ist unser Versprechen an dich.»

InboxWhenReady: Neue Mails nur sehen, wenn ich es will

Schon lange suchte ich nach einer Möglichkeit, nicht ungewollt von neuen Mails heimgesucht zu werden. Das E-Mail-Programm einfach zu schliessen geht zwar, aber nicht in letzter Konsequenz.

Manchmal will ich einfach an bestehenden Dingen arbeiten, ohne von neuen Anliegen gestört zu werden. Manchmal ist die Inbox beim Öffnen des Laptops noch aktiv und – bäm! – schon hauts einem eine Supportanfrage um die Ohren. Und manchmal klickt man auch einfach aus Versehen oder dummer Gewohnheit aufs Icon.

Glücklicherweise habe ich vor einiger Zeit ein passende Lösung gefunden, die sich sehr bewährt hat für mich: Das Chrome-Gmail-Plugin «Inbox When Ready».

Damit wird die Inbox sowie der Neue-Mail-Zähler im Gmail-Webclient automatisch oder manuell ausgeblendet. Die Suche und das Öffnen anderer Ordner funktioniert derweil ganz normal. Ist man bereit für neue Mails, klickt man auf Show Inbox und sieht in voller Pracht, was man in der Zwischenzeit alles wunderbar ignorieren konnte.

Natürlich klappt das nur beim Checken der Mails im Browser. Da ich sowohl private als auch geschäftliche Mails schon lange nur über diesen Weg lese (und auch nicht mehr auf dem Smartphone), ist dieses Plugin für mich ideal.

iPhone-App bauen – ich brauche Hilfe

Immer bin wieder mal daran, meine Kenntnisse im iPhone-Bauen zu vertiefen. Und dank Swift ist das alles viel einfacher geworden.

Ich arbeite an einer Counter-App. So langweilig das tönt: Diese kann ich einerseits wirklich gebrauchen, andererseits ists noch nicht zu komplex. Trotzdem kann ich versuchen, verschiedene Dinge einzubauen.

Den aktuellen Stand gibts als hier als Screencast:

Probleme machen mir vor allem Dinge bezüglich des Interfaces. Vielleicht kann mir ja ein Crack aushelfen? Das vollständige Projekt gibts auf Github.

Problem: Button-Resize nach Keyboard-Dismiss
Man siehts im Video: Klicke ich in der Tastatur auf Return, verändert sich die Grösse des blauen Counter-Buttons. Offenbar wird eine View neu geladen oder ähnlich. Was, wo und warum?

Frage: Umsetzung im Interface-Builder
Den Speicher-Dialog habe ich zurzeit als eigene View auf den Counter gelegt und verschiebe diesen dann mit Animationen. Das klappt soweit (abgesehen vom Dismiss-Problem oben), macht aber die Bearbeitung im Interface-Builder schwierig. Wie könnte man das besser lösen?

Wunsch: «Langsamere» Transition zwischen Counter und Liste
Gerne würde ich den Übergang zwischen den beiden Ansichten smoother und weniger plötzlich machen, so wie in den Einstellungen innerhalb von iOS. Wie kriegt ich diesen Effekt dort rein?

Wunsch: Runterswipen für Optionen
Auf dem Counter-Screen möchte ich die Möglichkeit einbauen, dass man runterswipen kann, sich dann der ganze Screen um einen gewissen Bereich nach unten verschiebt und sich ein Einstellungen-Menu zeigt (z.B. für Ton ein/aus oder zum Wählen der Button-Farbe). Das sollte mehr oder weniger „ruckartig“ geschehen, also nicht ein Scrollen im eigentlichen Sinn. Was ist der beste Weg, so etwas umzusetzen?

Wer mir aushelfen kann, darf sich gerne melden. Wir können uns durchaus auch über eine bezahlte Coaching-Session unterhalten. Manchmal braucht man halt einfach den erfahrenen Profi, um weiterzukommen. Und es gibt noch ganz viel anderes, das ich gerne fragen würde :)