Mittwoch, 19. September 2007

Google Kalender und Outlook

Seit gestern haben einige Freunde von mir und ich einen gemeinsamen Google Kalender, mit dem wir unsere Termine koordinieren. Echt erstaunlich, was Google inzwischen an Applikationen und Oberflächen ins Netz stellt.
Kurz und gut, der Kalender funktioniert im Browser wunderbar. Aber was bringt ein Kalender, der nicht mit Outlook synchronisiert ist? Nichts - zumindest für mich als alter Outlook Junkie!

Leider ist Outlook ja nicht gerade bekannt dafür, dass es sich automatisch mit anderen Quellen versteht, geschweigen denn synchronisiert. Also war es mal wieder an der Zeit, nach einem entsprechenden, freien Tool für diese Aufgabe zu suchen. Über einen Post auf Jake Ludington's MediaBlab bin ich dann auf das Tool RemoteCalendars aufmerksam geworden.

Die Installation ist relative einfach. (ACHTUNG: Ich bin auch kein Fan von Installationsanleitungen, aber die solltet Ihr beachten, damit's auf Anhieb klappat)

  • Sicher machen, dass Outlook zu ist (Auch die Prozesse im Taskmanager checken! Manchmal bleibt da einer übrig, den einfach killen!)
  • In dem Zip gibt es einen Folder "Prerequisites". Dort erst O2003PIA.EXE asuführen, die daraus entstehende Datei O2003PIA.MSI installieren. Jetzt vstor.exe installieren. (Hinweis: Solltet Ihr Office 2007 einsetzen, dann muss O2003PIA.MSI NICHT installiert werden!)
  • Erst jetzt das eigentliche Setup starten.
  • Jetzt Outlook starten und dort dann die entsprechenden Daten eingeben (Was und wie findet Ihr bei Jake Ludington's MediaBlab.
Bei mir hat das Importieren von da an wunderbar funktioniert.

Dienstag, 18. September 2007

Twitter Mobile/Handy Test

Nachdem ich ja vor kurzem angefangen habe, Twitter zu nutzen, hab ich natürlich auch wissen wollen, wie gut das ganze per SMS funktioniert. Denn das finde ich persönlich eine wirklich schicke Sache, dass man somit von überall aus "twittern" kann.
Hier also ein paar "Ergebnisse" kurz zusammengefasst:

  • Es geht erstaunlich schnell! Obwohl die Twitter-Empfänger-Nummer in GB ist, war der Eintrag innerhalb weniger Sekunden(!!!) zu sehen. Das hat mich überrascht!
  • Kosten: Das ist leider (mit meinem Handyvertrag) der echte Schwachpunkt an der Geschichte. Pro SMS zahle ich 39 Cent. Und das ist mir dann (momentan) doch noch zu teuer!
Aber eins ist sicher: Twittern macht unglaublich Spaß. Und ich werde es hin und wieder auch mal mobil nutzen, aber nicht so oft, wie ich es gerne würde!

Mittwoch, 12. September 2007

Die SnapStory steht...

So, es ist gegen Abend und die Story fängt an zu existieren... Hier eine schöne Episode!
Und dazu gibt es noch einen anderen Screenshot extra in diesem Blog!

PHP TripleStore

Für eines meiner Projekte am FZI in Karlsruhe suche ich momentan nach einem RDF-TripleStore für PHP. Dieser Post soll einfach meine Recherchen zusammenstellen.

  • DoWhatImean.net: Hier geht es um einen Triplestore für das Media Wiki. Es werden zwei genannt (RAP und ARC). Fazit des Artikels ist, dass es für das MediaWiki Projekt am besten wäre, wenn die Entwickler einen eigenen Store entwickeln würden. Dafür werden einige Gründe genannt, die ich an dieser Stelle nicht wiedergeben möchte.
Hier also die Liste der gefundenen Stores:
  • ARC - appmosphere rdf classes
  • RAP - RDF API for PHP V0.9.5
Nachdem ich die Suche dann abbrechen musste, haben wir uns jetzt für den RAP entschieden. Installiert ist er bereits, jetzt müssen wir uns "nur noch" mit der Ontologie, der Einbindung etc beschäftigen.

Update (05.03.2008): Es gibt eine neue Version des RAP!

Montag, 10. September 2007

Lightning Talk "Groovy on Grails"


Heute gab es am FZI einen "Lightning Talk" zum Thema "Groovy on Grails" von
Raphael Volz. Hier ein "Live-Mitschrieb" von der Session, also eher knapp gehalten und nur wirklich verständlich, wenn man die Folien dazu kennt (Folien gibt es hier)


Kurz und knapp

Grails: Framework für das schnelle Bauen von Webapplikationen
Groovy: Die Sprache, auf der Grails aufbaut

Insgesamt sind das also zwei Frameworks, die auf diversen Frameworks für Java aufbauen. Die Argumentation für so ein vorgehen ist, dass man so das "Prototyping" einfacher macht. Java ist nach dieser Argumentation zwar gut, aber oft zu kompliziert, um agile Webentwicklung zu betreiben und/oder einfache Prototypen zu entwickeln.


Einführung in Groovy
Baut auf Java auf.

  1. Feststellung: Der Syntax ist deutlich einfacher als bei Java.
  2. Feststellung: Variablen können Code enthalten, den ich abspeichern und wieder verwenden kann (sog. Closures). Das ist wohl vergleichbar mit den anonymen Lambda-Funktionen in Lisp. Leider hab ich nie Lisp programmiert ;-)
  3. Feststellung: Listen sind einfach zu coden! Dazu gibt es auch schöne Operatoren (abziehen von Elementen (=Entfernen) etc.). Maps sind wie Listen nur mit key:value Notation. Sortieren ist schon eingebaut und einfach zu bedienen)
  4. Feststellung: Überladen von Operatoren ist möglich.
  5. Feststellung: Es gibt sogenannte Builders, mit denen man verschiedene Sachen erzeugen kann. Insbesondere interessant, da es schon diverse fertige Builder gibt (XML, HTML, Swing-GUI, ...). Dazu gibt es dann auch Parser, die Groovy Objekte aus den entsprechenden Repräsentationen erzeugen.
Fazit zu Groovy: Schnell zu entwickeln. Kleiner/kurzer Code. Aber: schwerer zu debuggen und deutlich langsamer in der Ausführung als einfacher Java-Code.


Einführung in Grails
Grails ist ein MVC Web-Framework, das auf Spring, Hibernate, Groovy, Ant etc. aufbaut
Als Default-Web-Server wird Jetty verwendet.
"Programing by Convetion" oder auch "Convention over configuration"

So mach ich ein Programm damit:
%> grails create-app
Domänenobjekte beschreiben
%> grails generate-all
%> grails run-app

  1. Feststellungen: Objekten und ihren Attributen können Constraints zugewiesen werden. Insbesondere gibt es schon fertige Constraints für oft vorkommende Attribut-Typen (Email, ...)
  2. Feststellung: Suchen über freie Funktionsnamen (findByTitel("xy") ==> "WHERE title='xy', findByTitleLikeOrAuthor('xy','Fritz') ==> "WHERE title LIKE 'xy' OR author = 'Fritz'). Hier gibt es fixe Konventionen anhand derer dies Übersetzung gemacht wird.
  3. Feststellung: Prozesse, die mehrere Seiten verwenden müssen, können mit Hilfe eines Chain-Objektes direkt und einfach implementiert werden.
  4. Feststellung: Jobs (ähnlich wie Cron) sind machbar. Diese werden entsprechend im Hintergrund ausgeführt.
Fazit zu Grails: Mit dem Framework kann man wirklich schnell Web-Applikationen "prototypen". Muss aber noch einiges daran gemacht werden. Für einige private und kleinere Projekte werde ich es mir allerdings mal genauer anschauen.


Fragen am Ende der Session

  • Wie nachhaltig schätzt der Referent Grails/Groovy ein
    • Groovy wird wohl ziemlich sicher bleiben (insbesondere da es diverse Preise gewonnen hat) und da "man" sich als JSR-XXXX (als dynamische Scripting-Sprache für Java) Spezifikation beworben hat.
    • Bei Grails ist das noch nicht abzuschätzen. Momentan viel Buzz aber noch zu neu und zu unausgegoren.
  • Gibt es IDEs
    • Noch nicht so recht. Das Eclipse Plugin ist noch im SVN Status und der Referent hat noch keine Umgebung installiert bekommen.


Hinweise und Sachen, die mir nebenbei aufgefallen sind

  • Hier kann man Groovy runterladen: http://groovy.codehaus.org/
  • Hier kann man Grails runterladen: http://grails.codehaus.org/
  • Gargoylesoft Webclient als Zugriff auf's web (com.gargoylesoft.xxx). Das muss ich mir mal noch genauer ansehen.
  • Das in den Folien vorgestellt Grails Buch ist inzwischen veraltet und mancher Code daraus funktioniert nicht mehr
  • Im September kommt angeblich Grails 1.0

Samstag, 8. September 2007

Ahhhh.... Auch von Nah noch so schön!

Heute hab ich den R8 zum ersten mal so richtig aus der Nähe gesehen...
Einfach ein schönes Auto, auch bei näherem Hinsehen!


Freitag, 7. September 2007

Typo3 Installation

Es macht einfach immer wieder Spaß, wenn man dann typo3 endlich am Laufen hat… Aber bis dahin ist es oft ein recht beschwerlicher Weg…

Diesmal gab es schon zu Anfang gleich ein gewaltiges Problem: Nach der Entpacken der Dateien, dem Setzen der Berechtigungen etc. (also genau dann, wenn das 1-2-3-Install-Tool losgehen sollte) ging nichts mehr! Typo3 hat im Browser einfach NICHTS (absolut nichts) angezeigt.

Nach langem Rätseln und Probieren, bin ich dann dahinter gekommen, dass etwas mit der Datenbankanbindung nicht funktioniert hat. Nachdem ich ein paar Pakte nach-installiert hatte (mysql…) hat sich dann typo3 wie gewohnt gemeldet!

Heureka! Jetzt kann es also mit einer neuen Seite losgehen!