Am 8. August 2009 war es in Berlin soweit. Das erste deutsche
preDevCamp startete in der Hauptstadt und zog einige interessierte
Entwickler aus Berlin und der weiteren Umgebung an. So kamen
beispielweise auch die Bremer Entwickler, die ihrerseits das Bremer
preDevCamp um eine Woche nach hinten verschoben haben, um an der
Software-Entwicklung rund um Palm's neues Betriebssystem "webOS"
teilzunehmen.
Die Veranstaltung wurde von hochkarätigen
Programmierern besucht, so war Metaviewsoft's Chef-Entwickler Henk
Jonas anwesend, welcher schon das als träge und unmultimedial betitelte
PalmOS zu neuem Erscheinungsbild und Möglichkeiten mit
Software-Schaetzen, wie 2Playme, 2Cool4U, 2Launchme, Portierung eines
Amiga-Emulators, 2trackme und vielen weiteren, verholfen hat. Auch
Metaviewsoft zeigt starkes Interesse daran fuer webOS zu programmieren,
da hier weitaus mehr multimediale Möglichkeiten als unter PalmOS mit
einer noch größeren Zielgruppe zu erwarten sind. Programmiertechnisch
gilt webOS ohnehin als Novum, da nur die Quasi-Standards CSS, Java
Script und HTML5 von Nöten sind, um Programme dafür zu entwickeln.
Auch
Thomas Dornscheidt, Gründer der größten Deutschen Palm User Group, der
PUG Neuss/Düsseldorf, und der als enger Palm-Vertrauter und -Tester
schon viele Fehler in neuen Palm-Geräten vor Markteinführung gefunden
und an Palm zur Fehlerbeseitigung reportet hat sowie selber
Programmierer für PalmOS ist, hat den Weg von Düsseldorf nach Berlin
gefunden, um an dem Event teilzunehmen. Auch er beschäftigt sich seit
Wochen aktiv mit der webOS-Programmierung und schätzt die Platform als
eine mit hohem Potential fuer Entwickler ein.
Des Weiteren waren
Pressevertreter, interessierte Hobby- und professionelle Programmierer
gekommen, um einen Einblick in webOS zu erlangen und die Möglichkeiten
auf dieser Platform zu eruieren.
Ben Kampmann und Christof
Rodejohan, die beiden Organisatoren der Veranstaltung, bereiteten alles
haarklein vor und so startete das preDevCamp gegen Mittag in den
Computer-Räumlichkeiten der Technischen Universität im Herzen des
schönen Berlins. Jeder Teilnehmer konnte an einem eigenen Rechner vor
einer komplett installierten und nutzbaren Installtion des SDK "Mojo"
sitzen und sofort loslegen, bzw. die Beispiele und Erläuterungen der
Vortragenden selbst mitverfolgen - an Komfort fehlte es nicht.
Desweiteren wurden alle Teilnehmer mit Snacks und Getränken versorgt,
was allgemein für eine lockere und entspannte Atmosphäre sorgte.
Nach
ein paar einführenden Worten durch Ben Kampmann, wurde das Wort an
Clemens Schuchert übergeben, welcher mit einen Vortrag über
Mobiltechnologien und die Entwicklung von Smartphones mit dem
Entwicklungs-Schwerpunkt von Sprach- zu Datendiensten und dem damit
verbundenen Hunger nach immer weiter steigenden Datenraten beginnend
von 2G (GSM) bis 4G (LTE) startete. Dieses ist ein entscheidener Punkt,
denn mit steigenden Datenraten sind komplexere Anwendungen auf lokaler
Ebene möglich, wie z.B. permanent verbundene Datenbankapplikationen,
nachladene Navigations-SW, soziale Netzwerke mit
Echtzeitsynchronisation, etc. Auch Spielstände und
Echtzeitstrategiespiele mit aufwendigen und detailgetreuen Szenarien
erfordern hohe Transferraten, welche auch schon moderne Smartphones mit
HSDPA bis zu 7.2 MBit/s bieten können.
Henk Jonas von
Metaviewsoft erläuterte die bisherige PalmOS-Prgrammierung und die
wesentlichen Unterschiede zur neuen WebOS-Applikationserstellung. Er
ging aber auch genauso auf die derzeitigen Nachteile des SDK ein,
welche aber in absehbarer Zeit von Palm bereinigt oder aber generell
erst ermöglicht werden würden. Wichtige Punkte hier sind z.B., dass
Datenbanken bisher in ihrer Größe beschränkt sind, der Zugriff auf die
im Palm Pre existente Media-Partition noch nicht voll gestattet ist und
Binärdateien noch nicht direkt untersützt werden. Als Beispiele führt
er hier ein Programm an, welches z.B. die bisherige SMS-Datenbank des
PalmOS-Treos oder Centros auch auf dem neuen webOS-Gerät weiterführen
könnte, z.B. nach entsprechender Konvertierung in die unter webOS
bestehende Datenbank. Hierzu ist ein allerdigns Binärzugriff nötig, den
das webOS SDK "Mojo" bisher nicht unterstützt.
Ben Kampmann
erläuterte anschliessend grundlegende, notwendige "Erste Schritte", um
ein kleines Programm unter webOS schreiben zu können. Dieses ist
relativ einfach und so war sehr schnell nicht nur ein "Hello
World"-Programm erstellt sondern auch noch eine Tastenabfrage und eine
Bildschirmausgabe implementiert. Die Teilnehmer staunten nicht
schlecht, dass sich mit nur wenigen Zeilen Quelltext, sehr schnell
solche Ergebisse erzielen lassen. Verschiedene Hard- und
Softwareereignisse können unter webOS einfach und direkt abgefragt und
für die eigenen Programme weiterverwendet werden. So meldet ein
Ereignis, dass der Bildschirm an bestimmer Stelle berührt wird, ein
anderes, dass eine SMS eingegangen ist oder das Gerät gerade um 90 Grad
nach links gedreht wird. All diese Ereignisse ermöglichen auf einfache
Art und Weise die Kommunikation und Interaktion mit dem Betriebssystem
und letztendlich mit dem Gerät selbst.
Christof Rodejohan ging
dann auf eine Spezialität von HTML5 ein. Er erläuterte Canvas unter
webOS, eine von Apple schon länger entwickelte Möglichkeit,
Grafikelemente auf einfache Art und Weise mittels HTML darzustellen und
zu manipulieren. Hiermit sind erstaunliche Dinge realisierbar, die dem
Programm-Entwickler ganz neue Möglichkeiten bieten, wenn es um den
Einsatz z.B. von Bildern jeder Art in webOS geht.
Wie
jedes preDevCamp hat man sich auch in Berlin eine Tagesaufgabe
gestellt, welche erfüllt werden sollte. Nach einer kurzen Abstimmung
stand fest, man wird in kleinen Gruppen ein Programm entwickeln,
welches aufgrund der aktuellen Geo-Koordinaten des eingebaute
GPS-Empfängers im Palm Pre die Wetterdaten der Umgebung ausliesst und
auf einer Landkarte darstellt. Was sich banal anhört greift auf
verschiedene Komponenten des webOS zurück. So muessen die
unformattierten Geo-Daten aufbereitet und an einen Wetterdienst zum
Auslesen und Weiterverarbeiten übergeben werden. Die Ausgabe muss
formattiert und mit Openstreetmap-Kartenmaterial überlagert werden.
Hier spielen also Grafikelemente, Format-Konvertierungen, Up- und
Download eine entscheidene Rolle. Interessanter Weise kam hierbei raus,
dass webOS Prozesse prallel abarbeitet und man sich nicht zwingend auf
die in entsprechender Reihenfolge übergebenen prozeduralen Anweisungen
verlassen kann. Ein Ereignis wird verarbeitet, wenn Zeit dafür ist und
das Ergebnis wird ausgegeben, wann immer es fertig ist. Damit muss ein
Programmierer erst einmal klar kommen.
So wollte es anfänglich nicht
gelingen, Geo-Daten auf eine Karte zu schreiben, weil die Daten der
Wetterstationen bereits vor der Karte dargestellt und mit dem
eigentlichen Kartenmaterial überlagert wurden. Die Erfahrung von Henk
Jonas brachte auch dieses zustande, und so konnte er nach nur 5 Stunden
als erster deutscher Programmierer Vollzug melden, eine
preDevCamp-Tagesaufgaben-Anwendung erstellt zu haben, welche nicht nur
funktioniert, sondern ihn so sehr begeisterte, dass er plant diese
fortzusetzen. Am Ende des Tages meinte er: "Das wollte ich schon immer
in 2trackme eingebunden haben. Nun ist es für webOS schon fertig". Hier
und da wird es noch ein paar Detail- und Komfortverbesserungen geben,
aber das Grobgerüst steht.
Auch Christof Rodejohan konnte die
Aufgabe kurze Zeit später erfolgreich fertigstellen. Er arbeitet
allerdings mit Canvas und lud obendrein noch Wetter-Piktogramme aus dem
Web nach, um dem Wetter das entsprechend optisch ansprechende Aussehen
zu verpassen und entschied sich damit gegen eine reine numerische
Darstellung.
Gegen 19:00 Uhr endete das preDevCamp und Clemens
Schuchert von der Palm User Group lud alle Beteiligten in die
Stammkneipe der örtlichen Berliner Palm Stammtisches, in's "Molly
Malones", ein. Hier wurde zu Guiness und Molly's Spezialburgern im
reservierten Bereich zu Live-Musik weiterdiskutiert, Kontakte geknüpft
und der Abend ausklingen gelassen. Viele lokale bekannte Gesichter der
Nexave-Community waren zuzüglich der Programmierer des preDevCamps
dazugestoßen, so etwa auch Kulf und kdh.Berlin. Insgesamt ein
gelungener und ereignisreicher Tag.