Content-space.de

The WikiBlog of Michael Hamann about changing technologies and more

User Tools

Site Tools


start

Home

Welcome on my WikiBlog! You can find a mixed collection of German and English content here. This website is always work in progress as there is a lot to do and so little time.

Willkommen auf meinem WikiBlog! Hier gibt es eine Mischung aus deutschen und englischen Inhalten. Meistens habe ich zu viele Ideen und zu wenig Zeit und so ist auch diese Website eine ständige Baustelle.

Barcamp Stuttgart: Webapplikationenn ohne "Offline-Grenze"

Tobias Günther von www.puremedia-online.de spricht über offline-Applikationen im Web-Bereich.

Web-Applikationen können im Vergleich zu Desktop-Applikationen nur online genutzt werden, es sei denn jetzt: Offline-fähige Desktopapplikationen - Offline schließt eine der letzten Lücken zum Desktop!

Komplette statische Seiten können einfach gespeichert werden, Applikationen nicht so einfach, da Datenquelle nötig ist. Sinnvoll für wackelige/instable Verbindungen, aber auch unterwegs, im Flugzeug, beim Kunden… Nicht jede Web-Applikation muss offline-fähig sein. Auch Performance kann ein Kriterium sein.

Beispiele: Google Reader, GearPad, Remember The Milk, Google Docs, Mail Client, CRM, Projektmanagement-Tools, Kalender…

Das Problem ist nicht neu, es gab Dojo Storage, Derby/JavaDB, Zimbra (Derby-based). Heute: Adobe AIR (früher: Apollo), Joyent Slingshot, Apple iPone, Google Gears, Google Gears Mobile.

Adobe AIR: Wirklich eigene offline-Anwendungen in eigener Runtime (muss jeweils installiert werden), damit echte Applikationen ohne Browser. Entwicklung in Flash/Flex oder HTML/Javascript. Vorteile: Zugriff auf Systemresourcen, Taskbar, Autostart…

Joyent Slingshot (Ruby on Rails) - einheitliche und gewohnte Entwicklungsplattform, ansonsten wie Adobe AIR.

Apple iPhone - JavaScript-API (Webkit/HTML5 Spec) - mit Datenbank, Transaktionen…

Weitere/Bald: Mozilla Prism, Microsoft Silverlight (mobile Endgeräte, dann offline-Support), Webkit (Safari) und Firefox 3 eigene Schichten, HTML5 Working Draft WHATWG - “Client-side database storage”

Google Gears

Ist ein Browser-Plugin für Firefox und Internet Explorer, vermutlich bald auch in Opera und Safari. Google Gears ist OpenSource. Motivation von Google Gears ist, dass Google Apps offline nutzbar ist. Ziel: single industry standard, in allen Browsern verfügbar mit einheitlicher API.

Benötigt insgesamt keine echte Installation, kann schnell installiert werden, niedrige Hürde. Alles bleibt bei Google Gears im Browser, alles ist gleich. Auch bei der Entwicklung werden Standardtechnologien eingesetzt, nur JavaScript ist ein wenig erweitert. Schwerpunkt ist die offline-Nutzung, aber keine sonstige Erweiterung der Browser-Funktionalität.

Google Gears besteht aus drei Komponenten, einem LocalServer (eine Art Webserver), eine Datenbank (SQLite) sowie ein Workerpool für Hintergrundprozesse (ein threading-Modell für JavaScript).

Local Server

Liefert definierte Ressourcen aus einem lokalen Cache aus, egal ob offline oder online. Es gibt eine Variante, die automatisch aktualisert, bei einer anderen muss man manuell aktualisieren. Resourcen müssen definiert werden im JSON-Format.

Datenbank

Echte Datenbank mit allen Features, auch mehrere Datenbanken nutzbar. Sandbox-Modell, d.h. man kann nur auf die eigene Datenbank zugreifen. Nichts neues, aber gut.

Worker Pool

Für ressourcenhungrige Prozesse, das Benutzerinterface bleibt benutzbar. Man kann allerdings nicht auf das DOM zugreifen. Einsatzbereich: Synchronisation, auch für online-Applikationen interessant.

Seit 2-3 Monaten auch mobil (Windows Mobile 5&6) nutzbar, exakt gleich wie auf dem Desktop, aber das Gerät hat natürlich Einschränkungen. Mittlerweile gibt es relativ gute Browser auf mobilen Endgeräten, damit können Web-Technologien genutzt werden.

Mobile Applikationen sind oft offline, Performance nicht so groß, große Datenmengen sind schwierig, Gears hilft, um die wiederholte Übertragung großer Datenmengen zu vermeiden.

Zukunft von Google Gears

Desktop-API: Shortcut Icon, fortsetzbare Uploads, GeoLocation API, noch nicht: ImageManipulation API, Audio API, …

Gears? Oder AIR?

Hängt von der Anwendung/Philosophie ab. Adobe AIR eher auf den Desktop konzentriert, erfordert aber eine aufwändige Installation, während Google Gears auf den Browser konzentriert ist und eine einfache Installation bietet. AIR bietet eine sehr reichhaltige Umgebung, ist aber closed source, während Google Gears weniger Funktionen bietet, aber Open Source.

Synchronisation

Standard: Dojo offline gibt es, Synchronisation ist aber unglaublich individuell, keine fertige Strategie, bleibt dem Entwickler überlassen.

Feedreader und Socialbookmarking - eine noch ausstehende Synthese?

Ich bin ein Fan von Socialbookmarks, u.a. auch wegen der genialen Möglichkeiten, die Tags bieten. Seit einer Weile nutze ich auch Google Reader um RSS-Feeds diverser Websites zu lesen. Google Reader bietet die Möglichkeit, Artikel zu taggen und auch Artikel wieder zu veröffentlichen. Ich finde es allerdings schade, dass ich jetzt zwei verschiedene Orte mit Artikeln habe - den Feedreader und die Socialbookmarks.

Wie ich berichtete nutze ich mittlerweile Diigo.com und als ich heute diesen Artikel über die neuen Share-Features in Google Reader las, fühlte ich mich sehr an Diigo erinnert. Es ist nun möglich, Websites ohne Feeds oder ohne abonnierten Feed via Google Reader wieder zu veröffentlichen oder auch Notizen zu veröffentlichen. Moment mal, hat Google nicht bereits einen Bookmark-Dienst und ein Notebook, in dem man Ausschnitte aus Websites speichern und auch veröffentlichen kann? Irgendwie scheint mir das mal wieder typisch zu sein: Es gibt tausend Services, der eine hat dieses Feature, der andere das andere. Und auch mit Diigo.com kann ich bereits jetzt Ausschnitte aus Websites direkt markieren, speichern und in meinen Bookmarks veröffentlichen. Natürlich mit Kommentar und Posting in Gruppen, Organisation in Listen usw..

Warum hat noch keiner der mir bekannten Socialbookmarking-Dienste RSS-Feeds für sich entdeckt? Ein Feedreader in Diigo wäre meiner Meinung nach die Vollendung eines genialen Recherche-Tools. Wer einen derartigen Dienst erstellt (oder falls es einen solchen bereits gibt) kann mit meiner Mitgliedschaft und Dankbarkeit rechnen (sofern auch die anderen Features stimmen).

start.txt · Last modified: 2013/03/09 01:37 by michitux