Blog

APT8: Apps und Backup

 

 

Neulich war ich leider der verwerflichen Meinung, dass es viel interessanter sein könnte, das neue iOS 5 zu installieren, als meine Zeit mit sinnvollem Programmieren zu verschwenden. Hier muss gesagt werden, dass es sich um die „Golden Master“ Version handelt. Ein Begriff, den ich immer glaubte erfunden zu haben – aber auch Apple bezeichnet damit die letzte Version vor einem Release – sozusagen die Testweise Release-Version.

Gesagt, getan, „Do you really want to …“ wird man noch gefragt, es werden ja alle Daten gelöscht, wenn man die Test-Version installiert, aber davor hat man ja wenig Angst, es ist ja alles in einem Backup gespeichert. Allerdings hatte ich das vor sooo vielen Monaten zuletzt gemacht, dass ich etwas zögerte, bevor ich es tat.

Leider ging die Installation schief, ich hatte vergessen, vorher das richtige XCode an zu werfen, Denn die iOS 5 GM-Version funktionierte nicht mit der gerade laufenden Xcode 4.1-Version. Klasse. das iPhone war im embryonal Zustand, mir lief die Zeit davon, meine Verabredung würde mich bald erwarten und ich konnte nicht mal anrufen um Bescheid zu sagen, es würde vielleicht später werden… Also: iPhone so schnell wie möglich wieder gesund machen – egal wie!

Kurze Überlegung – jetzt lieber keine Experimente mehr, kein iOS 5, sondern wieder die „alte“ Version 4.3.5 aufspielen. Risikomanagement, wenn auch kein Gutes, weil ja nur noch Schadensbegrenzung.
Eigentlich wollte ich schreiben, „schnell wieder die alte Version installiert“, aber das dauerte alles so lange, da war nur der Entschluss zum Installieren schnell. Ich sah vor meinem Inneren Auge, wie meine Verabredung am Tisch im Restaurant saß und ein ums andere mal dem Kellner sagen musste, nein, ich esse noch nicht…

Endlich war das Telefon wieder benutzbar, da machte ich den nächsten Fehler: Anstatt einfach im Computer die Telefonnummer rauszusuchen und im iPhone einzutippen um dann schnell los zu fahren, warf ich die Synchronisierung an, damit ich alle Telefonnummern und Apps wieder auf dem Telefon haben würde.

Das synchronisieren dauerte auch noch mal eine Weile, denn ich habe zwar nur sehr wenig Musik und sonstiges auf dem iPhone, aber zu Test-Zwecken der App war ja noch das Hörbuch von Charlotte Roche „Schoßgebete“ drauf und die neue Platte von Feist wollte auch synchronisiert werden. Die Zeit rinnt, dann, endlich fertig, schnell anrufen, ja, ich komme etwas später, Rechner runter fahren und los!

– Leider war die Geschichte hier noch nicht ganz zu ende…

Nun bin ich ja App Entwickler – und auf eine App die ich veröffentliche, kommen ca. vier Apps, die ich nicht veröffentliche, sondern nur zu Testzwecken programmiert habe, oder wo ich glaube, dass es sich nicht lohnt, diese App zu veröffentlichen.

Das Treffen war mit einem langjährigen Freund, den ich ca. ein Jahr nicht mehr gesehen hatte. Wir plauderten über dies und jenes, irgendwann will ich ihm eine meiner Apps zeigen, hole das iPhone raus, wische vom ersten Bildschirm mit den Apps zum nächsten, zum dritten und … entsetzen !

Mich starrte die leere von meinem iPhone an. Der Erste Bildschirm noch voller Apps, der zweite leer bis auf eine App, der dritte noch zwei… Wo zum Teufel sind alle meine Apps ??? Wieso sind nur die gekauften Apps wieder aus dem Backup eingespielt worden???

Was ich nicht bedacht hatte, ist, dass alle meine selbst-entwickelten und lokal installierten Apps auch alle gelöscht sind. Und leider, leider, leider nicht im Apple Backup landen. Warum auch immer. Ich wusste es ja eigentlich, hatte es nur vergessen.

Was mich in dem Moment am meisten wurmte: Taschengeld, eine der Apps, die ich seit der Entwicklung immer mal wieder benötige war auch nicht mehr da. Schließlich führe ich so Buch, welches Kind wann Taschengeld von mir bekommen hat. Und jetzt? Einfach Computer hochfahren, iPhone mit meiner Taschengeld App neu bespielen und …fertig? Oder einfach meine eigene App selber kaufen?

So komisch es klingt, damit ich beim nächsten mal meine eigene App auch im Backup wieder eingespielt bekomme, wähle ich, meine eigene App selber zu kaufen. Einen Moment lang überlege ich noch, ob ich die App mal eben einen Tag lang umsonst anbieten sollte um mir die 31 Cent, die Apple in Deutschland vom Entwickler-Verdienst abzieht (79-48=31) auch zu sparen, aber das ist zu viel Arbeit für meine Ungeduld, ich kaufe, lade runter…

Und bin überrascht!

Alle meine Daten sind da! Wann welches meiner Kinder Taschengeld bekommen hat, alles da. Eigentlich ja kein Wunder, hatte ich es doch so programmiert, dass die Daten eine Neuinstallation einer Version überstehen würden. HATTE ICH NUR NICHT ERWARTET, DASS DIE DATEN IM BACKUP SIND, ABER NICHT DIE APP. Na gut, wunderbar, Apple ist gut, meine App ist gut und mein einer Sohn hat noch sein Taschengeld für diesem Monat zu bekommen.

…NA WENN DAS KEIN HAPPY END IST!

Hier geht‘s zum „Liken“

Hier ist jetzt der Like Button gelandet, für die, die uns mögen und das uns und der Welt auf Facebook zeigen wollen – neudeutsch „liken“ wollen.

Für alle anderen, sorry, wenn Ihr das hier lest, weiß Facebook das schon.

Irgendwie finde ich das eine gute Lösung: Liken geht, aber Datenschutz ist trotzdem möglich. Gefällt Euch die Lösung? Dann zeigt es uns!

APT7: Objective-C Style Guide

 

Ich bin ja selber kein großer Freund von Regeln, wie man zu programmieren hat, auch Coding Conventions genannt. Insbesondere, weil ich in verschiedenen Programmiersprachen und über die vielen Jahre hinweg so viele verschiedene Coding Styles kennen gelernt habe.

Da ich meinen Source Code aber immer öfter an andere Leute übergebe, die ihn dann gut und leicht lesbar finden sollen, hier meine eigenen Coding conventions, an die ich mich versuchen werde zu halten:

– Classes start with upper case letter
– Variables start with lower case letter
– init methods (all methods that have an „init“ in their name) have return type id
– Class and Factory methods (all methods that have a „+“ before them) have return type id
– all method calls need to be checked for return value
– always have a dealloc function and release all properties in it
– initialize all variables
– if a Class has a factory method (e.g.: + (id)Array), then check if your are allowed to use init
– Always read the Overview Part of the Class you are using
– put the stars „*“ to the variable name
– generate a nice looking indenting for Variables, e.g. in Xcode use I to do correct indenting

Ich hoffe, jetzt machen wir alle tolle Programme.

(Segel)-Regattakalender

 

 

Wer Regatta segelt kennt das: Meist ist die Regatta-Saison gut geplant und jede Regatta im Vorfeld bekannt. Und dennoch liegen die Regatten immer mal wieder anders, eine Regatta wird abgesagt oder der Vorschoter hat doch keine Zeit. Dann muss man neu planen – oft ist man dann gerade am Wasser. Wenn man dann immer den Regattakalender dabei haben könnte !

mit der kostenlosen Regattakalender App, kann man sich jederzeit die Regatten eines Reviers ansehen und sich so spontan entschließen, die eigene Saisonplanung zu ändern.

Derzeit unterstützte Reviere: Berlin (alle Reviere), Brandenburg und Bodensee.
In Berlin sind sogar die Links auf die Homepages der Vereine Eingearbeitet – damit man schneller an die letzten Neuigkeiten herankommt!

Für Andere Reviere nehme ich gerne Hinweise und Regatta-Kalender-Links unter Thomas.patzelt@small-apps.com entgegen. Mal sehen, ob sich einer meldet – das wäre schön.

Für alle, die überlegen, sich doch noch spontan zu einer Regatta zu melden: Jetzt gibt es keine Ausreden mehr, jetzt kannst Du es!

Auf Dass sich viele Segler (spontan) entschließen, zur Regatta zu melden und alle Regatten gut besucht werden !

Danke an alle Fleissigen Regatta-Veranstalter! Danke auch an Alle, die die Regattalisten zusammenstellen !!! Ohne Eure tolle Arbeit gäbe es keine Regatten, Keine Regattalisten und auch diese App nicht. DANKE !

Also, Mast- und Schotbruch und immer eine Handbreit Wasser unterm Kiel!
Ahoi, Euer Thomas, Small Apps UG,
Mitglied im SC Ahoi Berlin, Revier Berlin Wannsee und Unterhavel

p.s.: Für die Zukunft wünsche ich mir, dass wir die Formatierung verbessern und dass wir die Meldeadressen der Vereine nach und nach in die Datenbank aufnehmen können, dann könnte man als Segler mit ein paar mal tippen zu einer Regatta melden. Leider ist das viel Arbeit und wir verdienen ja nichts mit der App, so wird es noch ein bisschen dauern, habt bitte solange Geduld…

APT6: Backup failed, Error 11

Time Machine ist schon ein geniales Programm mit einer Tollen, intuitiven Oberfläche. Auf dem Foto sieht man sie.

ich habe normalerweise sehr viel Freude an Time Machine, aber manchmal ärgert es mich. So geschehen im Oktober 2010, und so schon öfter mal geschehen, wenn es rumnörgelte – zum letzten mal gestern. Doch der Reihe nach.

Der Grund, warum auf dem Foto Oben nur Oktober 2010 als ältestes Backup steht und nicht etwa August 2009, wie es eigentlich davor war, lag daran, dass Time Machine überhaupt nicht damit klar kam, dass ich eine neue Festplatte im Rechner hatte – die alte Festplatte war schlicht voll geworden. Ich hätte mich erinnern müssen, dass Time machine das nicht mag – entweder, weil mein neues Dateisystem diesmal groß-Kleinschreibung unterschied, oder generell, weil Time Machine die Backups unter einer Platten-ID speichert. Ob es auch einen Weg um diese Probleme herum gibt, weiss ich nicht, ich hatte jedenfalls nicht danach gesucht und war daher in die Falle getappt.

ein Umzug auf eine neue Festplatte (mein dritter Umzug) ist ja unter MAC OS X sehr einfach. Kaum war er erledigt, legte Time Machine los. Leider ohne, dass ich mitbekam, was ablief: Denn Time Machine wollte ein Full Backup machen und Die Backup-Festplatte hatte nicht mehr genug freien Speicher. Daher löschte Time Machine erst mal alle alten Backups, in der Hoffnung, genug platz zu finden. Das tat es dann auch schließlich – als nur noch wenige Tage Backup übrig waren.

Zwischendurch fragte es mich um Erlaubnis – und ich sagte dummerweise auch noch ja… Als ich merkte, was vor sich ging, da waren die alten Backups schon weg. Blöd gelaufen. Gut dass ich noch andere Backups an einer anderen Stelle mache. Also: Backup komplett löschen (der eine Tag kostet auch nur Platz) und neu angefangen.

Seitdem lief es aber rund. Gestern stellte ich fest, dass ein anderer Rechner Probleme mit Backup hatte – immer wieder brach das backup mit dem fehler: Backup failed with error 11 (oder so ähnlich) ab. Und das seit Tagen.

Time machine empfahl die Überprüfung des Backup-Laufwerks auf Fehler. Gute Idee, brachte aber nichts, Time Machine scheiterte wieder. Was tun?

Backup Fehler werden in der System-Konsole gespeichert. Also
Programme-> Dienstprogramme.-> Konsole.app
geladen. Dann Ablage-> Systemprotokoll öffnen ausgewählt und nach dem Fehler geguckt. Da wurde was von Probleme mit einer Datei unter /shared …. erzählt. Immer wieder. Also da mal hin und die Eigenschaften der Datei überprüft. Nichts besonderes. Ausser: Da waren Zwei Einträge in den Zugriffseigenschaften, die sahen komisch aus. „_spotlight: Special“ oder so. Ich erinnerte mich, dass ich den ganzen Dateibaum vor Wochen unter shared dahin kopiert hatte – von meinem Rechner aus.

Offensichtlich waren dabei komische Datei-Zugriffs-Rechte in den Eigenschaften entstanden und die jetzt vielleicht teil des Problems. Einfach mal alle komischen Eigenschaften im ganzen Dateibaum Löschen, brauchen tut sie eh keiner, es sind noch genügend gute Zugriffsrechte da. Backup neu angestossen. Problem gelöst.

Wie zum Teufel soll da einer drauf kommen, der nicht mindestens IT-Erfahrung oder gar ein Informatik-Studium hat.

Danke Apple, dass ich nie Arbeitslos werde. 😉

Viel Spaß bei der ZEitreise! Gruß, Thomas

Das Team

 

Das Büro:
Es ist wunderbar. Mit toller Aussicht aus dem 7. Stock des Technologiezentrums in Teltow. Relativ leicht mit Öffentlichen zu erreichen.

Die Firma:
Small Apps ist gegründet worden, um kleine, mobile Applikationen zu veröffentlichen. UG steht übrigens für Unternehmergesellschaft, der offizielle Name für das, was der Volksmund Mini-GmbH nennt. Daher lautet der volle Firmenname auch Small Apps UG (haftungsbeschränkt).

Die Mission:
Wir erzeugen kleine und große Programme für iPhone, iPad und iPod oder für Android-Geräte. Für uns oder für Sie, auf eigene Rechnung oder in Ihrem Auftrag. Wir liefern und können von der Anforderungsanalyse (Requirements Engineering) bis zum fertigen Produkt im App Store alles,

Thomas:
Diplom Informatiker, Gründer. Programmierer, Projektleiter, CEO und Besitzer von Small Apps. Hat seit 2008 Erfahrung mit Apple und iPhone Programmierung – länger geht kaum. Mehrere Apps und geniale Lösungen gehen auf sein Konto. Und alle Applikationen auch mindestens einmal durch seine Hände – bisher war das auch immer besser so.

Nicolas:
Freiberuflicher Mitarbeiter. Mitarbeiter Nummer 1 – wer kann das schon von sich sagen? Hat jetzt auch schon einige Erfahrung in iPhone Programmierung – und zwei Applikation draußen.

Niels:
Freiberuflicher Mitarbeiter. Genau: Mitarbeiter Nummer 2. Hat fast genau so viel Erfahrung wie Nicolas, auch wenn er noch keine Applikation am Start hat.

Oliver:
Macht Praktikum bei uns und leistet gute Arbeit. Programmiert für Android und das schon ziemlich klasse. Erst heute habe ich wieder was von Ihm gelernt – und er von mir. So soll es sein!

Leonard:
Arbeitet sich ein, hat aber noch sehr bescheidene Ziele.

???:
Und wann fängst Du bei uns an?

Gruß, Thomas

Würfelbecher


Würfelbecher
 ist im App Store für nur 0,99 € verfügbar!

– Durch Schütteln deines Gerätes würfelst Du bis zu sieben Würfel
– Ein Geräusch ertönt und jeder weiß dass gewürfelt wurde
– Ganz einfach den Finger auflegen und die Würfel werden abgedeckt
– Wenn heimlich aufgedeckt wird, kann man es hören – „plopp“
– Mäxchen, Meiern oder andere Würfelspiele lassen sich so wunderbar leicht spielen

Aldi Grafik-Tablett am Mac

 

Schon länger wünsche ich mir bessere Grafiken und Zeichnungen bei meinen Apps. Ich weiß, Ihr seid alle zufrieden, aber ich bin eben Perfektionist ;-).

Heute war bei Aldi-Nord das „Extraflaches Design Grafiktablett“ Medion P82030 (MD 86336) im Angebot. Ich arbeite ja meist nicht am PC, sondern am MAC und so war ich mir schon sicher, ich würde es nicht gebrauchen können, hätten nicht einige fleißige Blogger behauptet, das Grafik Tablett würde am MAC funktionieren. Leider stellte sich beim Nummern-Vergleichen heraus, dass der Blogger ein anderes Tablett meinte. Aber der Zweifel war da.

Und so tat ich das, wozu die Rückgabegarantie ja schließlich erfunden wurde: Ich kaufte einfach mal das schöne Stück – um es notfalls jederzeit zurückgeben zu können.

Es funktionierte …. so ziemlich.

Ich bin kein Tablett-Spezialist, aber dass mich Apple bittet, eine Taste zu drücken, damit es die Tastatur erkennt, ist sicher nicht 100%tig die richtige Reaktion – jedenfalls wusste ich nicht, wo ich drücken sollte. Kommentare und Mails dazu sind jederzeit willkommen.

Immerhin wusste mein Mac aber sofort, dass ink, das Programm zur Schrifterkennung gestartet werden muss. Leider musste ich feststellen, dass das nichts für mich ist. Außerdem nervte mich, dass der Cursor sich auch schon beim Abstand von 3 cm von der Oberfläche bewegt. Aber das ist vielleicht auch bei anderen Pads immer so.

Ich habe dann noch mit dem System Profiler (Apfel->“Über diesen Mac“->“Weitere Informationen“) herausgefunden, dass es ein Gerät der Firma WALTOP (http://www.waltop.com.tw/) ist. dort gibt es auch einen Mac Treiber (unter Technical support und dann „media and slim series“), der auch läuft, ohne abzustürzen, aber so ganz bin ich mir noch nicht sicher, dass der alles besser gemacht hat, denn die Handschriftenerkennung ist nach der Installation nicht mehr so gut – finde ich.

Auf alle Fälle ist es gut genug, um es nicht zurückzugeben, denn die Handschriftenerkennung ist für einen mittelschnellen Tipper wie mich nicht so wichtig und es funktioniert (ganz) gut mit meinem bisherigen Zeichenprogramm zusammen. Ich hoffe, dass die Grafiken Euch demnächst noch besser gefallen.

…Und weil es thematisch doch passt, lasse ich das „erstellt auf einem Mac“ da unten auf der Seite, dass iWeb immer dazu schummelt diesmal drauf. [Edit:] Jetzt mit WordPress ist das wieder weg. [/Edit End]

Nachtrag: Letztens hatte ich richtig viel heißen Tee über das Tablett gekippt, der Mac war glücklicherweise trocken geblieben. Leider waren die Unterlagen aus Papier danach hinüber, da sie sich gewellt hatten, aber das Tablett, dass funktioniert immer noch, obwohl die Folie auch ein bisschen Tee-Hitze abbekommen hat und mir etwas gewellter wirkt als vorher.

Gruß, Thomas

EarTrainer

Nicolas hat sein zweites Programm fertig: EarTrainer, ein Programm, dass er sich zur Verfeinerung seines Gehörs geschrieben hat. Er wollte beim Erkennen von Tönen, Intervallen und Dreiklängen besser werden. Und da dachte er, da schreibe ich mir doch einfach mal mein eigenes Gehörbildungsprogramm. Gesagt – getan.

Das Programm funktioniert wie ein Quiz: Es wird mir ein Ton oder eine Tonfolge vorgespielt und dann muss ich erkennen, welcher Ton oder welches Intervall das war.

Zu meiner Überraschung werde ich erstaunlich schnell während einer Übung besser, auch wenn ich am nächsten Tag nicht mehr ganz so gut bin, wie am Ende einer Übung. Wie stark der Langzeit-Effekt ist, oder ob ich mir die Besserung nur einbilde, habe ich noch nicht herausgefunden – dazu trainiere ich noch nicht lange genug.

Das Programm fertigzustellen hat ein bisschen länger gedauert, als geplant, weil Nicolas dieses Mal auf meinen Rat hin mehrere Varianten der Bedienung (Für Fachleute: User Interface) durchprobiert hat. Einige Varianten sahen besser aus, waren aber viel komplizierter zu bedienen. Nun haben wir uns für die aktuelle Variante mit der Liste und dem erscheinenden Fenster (Pop-up) entschieden.

Es wäre toll, wenn wir von Euch ein paar Meinungen zur Bedienung bekommen würden – ob Ihr es gut findet, wie Ihr es gemacht hättet usw.

Viel Spaß beim Trainieren!
Thomas und Nicolas

p.s.: Das Programm existiert derzeit nur in Deutsch, wurde aber schon weltweit gekauft. Entweder gibt es so viele Exil-Deutsche, oder aber musikalisches Gehörtraining ist internationaler als gedacht.