Dienstag, 4. August 2009

Sommer Code Woche macht den Weg frei für alpha/R1

So, offline-Urlaubszeit vorbei, jetzt kann ich wieder bequem von der Terrasse aus mit Eiskaffee in der einen und Notebook in der anderen Hand den Sommer genießen, falls das Wetter wieder besser wird... :)

Die vergangene Woche scheint ja wieder sehr produktiv gewesen zu sein, wenn ich mir die 300+ SVN commit Mails so anschaue... Tatsächlich haben sich Ingo Weinhold, Stephan Aßmus und Michael Lotz bei Axel Dörfler und dessen Freundin Claudia für eine Sommer Code Woche einquartiert. Oliver Tappe fiel leider wegen Krankheit aus, verfolgte die Sache aber aus der Ferne und beteiligte sich mit der Integration der ICU Bibliothek fürs Locale Kit ins SVN.
Wie Stephan berichtet, war's wohl eine echte Hardcore Coding Session, die nur wenn absolut nötig zum Essen und Schlafen unterbrochen wurde.

Axel hat wieder einige Bugs im BFS und VM/Filecache beseitigt. Dies waren die letzten (bekannten) großen Bugs, die die Veröffentlichung der ersten Alpha Version aufgehalten haben. Die alpha1/R1 steht nun also wirklich unmittelbar vor der Tür (echt jetzt! :) ).
Daneben werkelte Axel wie üblich an all den anderen kleinen Baustellen. So kann man jetzt die genaue Anordnung der Workspaces selbst in Reihen und Spalten definieren. Die Workspaces können mittels STRG+ALT+Cursor Tasten, ähnlich wie in z.B. Ubuntu, gewechselt werden. Bestimmt nicht Axels wichtigste Arbeit, aber eine die den Alltag eines Endusers doch sehr bereichert.

Desweiteren konnten einige heftige Kernelbugs behoben werden, die manchmal zu spontanen Reboots geführt haben. Michaels Notebook, das diese Phänomene immer wieder eindrucksvoll zeigte, war da eine wichtige Debug-Hilfe.

Ingo ist (mit etwas Hilfe von Stephan und Rene v.a. in GUI Angelegenheiten), wie schon in den vergangenen Wochen, wahnsinnig produktiv bei seinem grafischen Sourcelevel Debugger. Als Nicht-Programmierer kann ich zu den Details nix sagen, aber selbst mir ist klar wie wichtig gute Debugging-Möglichkeiten für die Haiku- und Anwendungsentwicklung sind.
Sicherlich kann die Zeit zur stabilen R1 dadurch beachtlich verkürzt werden. Ingos Arbeitspensum ist beeindruckend!

Seine Arbeit an Clockwerk hat Stephan anscheinend angespitzt etwas gegen Haikus großes Manko bei der Audio/Video-Bearbeitung zu tun: bisher konnte Haiku Audio/Video nur wiedergeben, nicht selbst erzeugen. Seit der letzten Woche ist Stippi dabei, die nötige Infrastruktur dazu im MediaKit anzulegen. Er baut dabei auf die mächtige FFmpeg Bibliothek und konnte sogar schon erfolgreich einen Clip mit Clockwerk produzieren!

Michael Lotz hat neben dem Kernel Debugging das USB Backend für Eingabegeräte überarbeitet was u.a. in Zukunft die Unterstützung diverser Sondertasten erleichtern wird und wodurch schon jetzt eine Vielzahl an USB-Eingabegeräten erkannt und benutzt werden können.

Neben der ganzen Programmiererei haben die Jungs eines Nachts beim Mittagessen(!) über die zukünftigen Features von Haiku nachgedacht und eine entsprechende Wikiseite erstellt. Hier werden die Features in drei Kategorien unterteilt:

  • Was unbedingt in R1 rein muss ("R1")
  • Was u.U. reinkommen könnte, falls es dann schon komplett fertig ist ("Maybe R1")
  • Was irgendwann mal kommen soll, aber niemand weiß, wer wann dafür die nötige Zeit finden wird ("Unscheduled")
Wann immer mehrere Core-Developer zusammenkommen, um gemeinsam an Problemen zu arbeiten, bringen die Resultate Haiku mit Riesenschritten voran. Das macht diese Treffen und Code Sprints so wichtig. Der nächste wird im Rahmen von BeGeistert im Oktober stattfinden, dann sogar mit noch mehr Entwicklern. Wer weiß, vielleicht sind wir dann schon auf dem Weg zu Alpha2!

Montag, 27. Juli 2009

Kleiner News Update

Bevor ich für eine Woche in Urlaub fahre, hier ein paar kleine News:

Das Locale Kit macht weiter Fortschritte: Der nächste Meilenstein ist die Integration von ICU. Der Code dazu wurde kürzlich ins SVN Repository importiert. Eine Lokalisierung besteht ja nicht nur aus übersetzten Wörtern und Sätzen. Es gibt landestypische Eigenheiten, die berücksichtigt werden wollen, z.B. Datumsformat, Darstellung von Zahlen (1000er Punkt oder Komma), Darstellung von Währungen (100€ oder $100) etc. Für all das gibt es eine opensource Bibliothek: ICU.
Diese würde auch die Schreibweise, links-nach-rechts oder rechts-nach-links, berücksichtigen. Dies greift aber tiefer ins Interface Kit und Layoutmanagement ein, so dass diese Anpassungen erst nach dem GSoC angegangen werden sollen.

Auch das DriveSetup GSoC-Projekt vermeldet Erfolge: Neben Primärpartitionen können nun auch erweiterte, und darin logische, Partitionen erzeugt werden.

Am 12. und 13. August 2009 findet in San Francisco die OpenSource world statt. Jorge Mare, Scott McCreary und Urias McCullough werden wie schon kürzlich bei OSCON Haiku Demos geben und Flyer verteilen.

Last but not least: Axel Dörfler konnte einige Bugs im Dateisystem ausmerzen und so ein paar lang ausstehende Tickets im Bugtracker schließen. Einige der Fehler konnten sogar zu Datenverlust führen und waren damit auch Hürden zur ersten Alpha.

Dienstag, 21. Juli 2009

Locale Kit: Einführung für Entwickler

Adrien Destugues hat in seinem Blog eine kleine Einführung für Entwickler zum Locale Kit geschrieben, das er zusammen mit seinem Mentor Oliver Tappe im Rahmen des Google Summer of Code entwickelt.

Prinzipiell läuft es so ab:
Anhand der Benutzereinstellungen und der Anwendungs-Signatur wird automatisch der Katalog mit den übersetzten Texten in der richtigen Sprache ausgewählt (fehlt eine Übersetzung erscheint die Originalsprache). Dazu wird am Anfang eines Programms mit zwei Codezeilen der Katalog vom Locale Kit angefordert.

Als nächstes muss ein sog. Kontext für die Anwendung bzw. unterschiedliche Kontexte für die vorhandenen Programminhalte/Fenster festgelegt werden. Oft ist es ja so, dass es für ein Wort je nach Verwendung unterschiedliche Übersetzungen gibt. Durch Definition verschiedener Kontexte lässt sich dem Übersetzer mitteilen, an welcher Stelle im Programm ein Wort/Satz auftaucht.

Neben dem Kontext lässt sich bei der Auszeichnung mit einem Makro zu jedem zu übersetzenden Text auch noch ein Kommentar hinzufügen, um dem Übersetzer bei u.U. zweideutigen Wörtern die Arbeit zu erleichtern.

Sind alle Texte entsprechend ausgezeichnet, werden sie mit dem kleinen Hilfsprogramm collectcatkeys gesammelt, um sie einem Übersetzer schicken zu können. Das Ergebnis wird dann mittels einem zweiten Tool linkcatkeys in ein Binärformat ("flattened BMessages") umgewandelt, dem Katalog, auf den die Anwendung später zugreifen kann. Dieser Katalog wird entweder in einem Unterverzeichnis im Locale Kit Ordner aufbewahrt oder als Attribut oder Resource-Datei direkt an die Anwendung gehängt.

Samstag, 18. Juli 2009

Offizielle Haiku Patches für WebKit

Ryan Leavengood berichtet von einem weiteren Durchbruch, den der WebKit Port durch die Arbeit von GSoC Student Maxime Simon erreicht hat. Das WebKit Projekt ist dabei Patches anzunehmen, damit Haiku eine der offiziell unterstützten Plattformen werden kann.
Dazu muss dann noch ein BuildBot aufgesetzt werden, der dabei hilft, dass die anderen WebKit Entwickler nicht unbeabsichtigt den Haiku Port zerschießen.

Neben Maxime ist dafür auch Adam Barth, Eric Seidel, Oliver Hunt und David Levin vom WebKit Team zu danken. Sie haben die Patches geduldig durchgesehen bis sie passten.
Damit ist die Portierung allerdings noch lange nicht abgeschlossen. Dies ist nur ein erster - wenn auch großer - Schritt der die weitere Entwicklung sehr vereinfachen wird. Es bleibt noch viel Arbeit am WebKit Port selbst und dann natürlich am darauf aufbauenden Browser.

Haiku Italiano wird 2

Herzliche Glückwünsche an Haiku Italiano, deren Webseite ihr zweijähriges Jubiläum feiert! Wenn mir das Globefish Add-On das richtig übersetzt, zieht Giuseppe eine positive Bilanz über den Status der Site und Haiku generell. Auch wenn ihm sein Privat- und Arbeitsleben immer weniger Zeit lässt, versucht er weiterhin die italienische Haiku-Gemeinschaft immer auf dem Laufenden zu halten (und diejenigen von uns, die versuchen aus automatisierten Übersetzungen schlau zu werden...).
Danke, Giuseppe und allen anderen italienischen Haiku Freunden! Macht weiter so!

Donnerstag, 16. Juli 2009

ARM-Präsentationsfolien vom RMLL

Beim Anfang Juli stattgefundenen 10. RMLL in Nantes hat François Revol als Mentor des Google Summer of Code Projekts von Johannes Wischert die technischen Einzelheiten zum Port auf die ARM Architektur vorgestellt.
Details zum Vortrag und RMLL allgemein, wurden zwar noch nicht bekannt, aber zumindest sind die Präsentationsfolien als 25 seitiges PDF (170kb) bereits verfügbar. Es scheint ein sehr detailreicher und technischer Vortrag gewesen zu sein, was man so sieht...
Vielen Dank an Nicholas Blachford, der mir gesteckt hat, wo die Präsentation zu finden ist.

Dienstag, 14. Juli 2009

Erster WLAN Stack Prototyp

Colin Günther hat einen ersten Meilenstein bei der Entwicklung eines WLAN Stacks erreicht, an dem er im Rahmen seiner Masterarbeit und gleichzeitig einer Haikuware Bounty (hier fehlen nur noch $200!) arbeitet.

Auf seinem Blog berichtet er, dass seine WiFi-Karte sich nun mit einem ungeschützten WLAN verbinden kann. Als Beweis zeigt er einen Screenshot auf dem er per BeZilla kabellos surft und eine Datei herunterlädt.
Zur Zeit läuft seine Atheros Karte als Port des FreeBSD WiFi Stacks, der auf Haiku's FreeBSD Kompatibilitätsschicht aufsetzt. Als nächstes kommt nun die Ausarbeitung eines Haiku-spezifischen Stacks.

Update:
In einem weiteren Blogeintrag erklärt Colin anhand einer groben Skizze, wie sich das WLAN in Haikus Netzwerk Landschaft einfügen soll. Neben einem Haiku-nativen Stack, der speziell Haikus Stäken wie Multithreading und Objektorientierung ausschöpfen soll und dessen Treiber kleiner sind, soll es einen "FreeBSD-Adapter" geben, um auch FreeBSD Treiber durch einfaches Neu-Kompilieren, wie das auch schon mit normalen LAN-Treibern funktioniert, nutzen zu können.

Sonntag, 12. Juli 2009

O'Reilly Open Source Convention (OSCON)

Am 22. und 23. Juli 2009 wird Haiku in San Jose, USA, auf der O'Reilly Open Source Convention (OSCON) vertreten sein.
Die seit 11 Jahren vom O'Reilly Verlag organisierte Messe bietet Vorträge und Workshops rund um Freie Software und allen Ausstellern Kontakt zu den Großen und Kleinen der Open Source Welt. Einer der "Kleinen" wird diesmal auch Haiku sein, das an einem Stand von Jorge G. Mare, Scott McCreary undUrias McCullough den bestimmt zahlreichen Besuchern vorgeführt wird.