Als ich vor kurzem einen Fork von ewiki bei GitHub angelegt habe, fielen mir recht schnell die fehlenden PHP Closing Tags auf, welche nach meinem Stand von PHP4 eigentlich sein müssen. So anders kann PHP5 auch nicht sein, also schnell gefixed, auch wenn der Interpreter das anscheinend nicht bemängelt. Man will ja ordentlichen Code hinterlassen : )

Heute hat mich dann wer auf die Coding Conventions von Zend (die Firma hinter PHP) hingewiesen, in denen das letzte schließende PHP Tag verboten ist. WTF? Sinn des ganzen scheint es wohl zu sein, das damit Probleme beim includen verhindert werden, falls hinter dem schließenden Tag Leerzeichen oder Zeilenumbrüche sind. Wofür baut man sowas dann überhaupt ein? *kopfschüttel* So kann man Designprobleme auch lösen …

Ich wollte nur kurz drauf hinweise, das man auf movies.msn.com eine kleine Auswahl an ältere Filmen kostenlos, ohne Anmeldung, allerdings mit (sehr kurzen) Werbeunterbrechungen anschauen kann. Sehr interessant. Das ganze läuft auch problemlos auf meinem Mac mit dem Firefox. Das versteh ich unter Video-On-Demand ;)

[via]

Irgendwie begegnet mir dieses Thema in letzter Zeit immer öfters. Beim Anschauen von Ewiki ist mir Textile und Markdown (PHP) begegnet: Einfache PHP Klassen, mit der man aus Text entsprechende HTML Seiten generieren kann. Sowas ist ja durchaus nicht nur für Wikis sondern z.B. bei Projekten für das generieren von Dokumentation interessant: Bei Maven wird dieses Prozedere zum generieren der Projektdokumentation genutzt. Da ich aber Maven ansonsten nicht mag, habe ich durchaus einige Zeit damit verbracht ein Standalone-Tool zum generieren solcher Seiten zu suchen. Docbook mit seinen XML Dateien ist mir irgendwie zu aufgeblasen, wobei ich dies aber nicht wirklich genauer angeschaut habe.

AsciiDocs andererseits bietet zumindest auf den ersten Blick das was ich will:

  • Kein aufgeblasenes XML Format
  • Die Quelldateien sind auch so gut zu lesen
  • Sieht ganz ansehlich aus ohne das man selbst in Stylesheets rumfummeln muss
  • Generiert die HTML Dateien mit einem einfachen Aufruf: asciidoc <file>

Schön wäre natürlich noch die generierung eines PDFs, wie Maven dies heute schon kann. Ich werde mal schauen wie weit ich damit komme und dann weiteres davon berichten.

Was mich nur irgendwie stört: Wieso muss jeder sein eigenes Format erfinden? Reicht ein Standardformat mit verschiedenen Extensions nicht aus? Evtl sollte man dafür mal eine RFC schreiben ;)

Via

Soziale Netzwerke waren ja in den letzten Jahren DAS Ding. Zum Glück ist das an mir vorbeigegangen. Außer StudiVZ bin ich glaube ich nirgends angemeldet. Vor einigen Tagen habe ich dann GitHub.com entdeckt, ein “Social Code Hosting”, was quasi ein Soziales Netwerk für Geeks im kleinen ist. Jeder kann dort seine Quellcodes hochladen, diesen bei anderen einsehen, forken und selbst weitermodifizieren, eventuelle Modifikationen von anderen wieder in den eigenen Quellcode übernehmen usw..

Das schöne daran: Für die Quellcodeverwaltung wird als Backend git eingesetzt, welche besonderen wert auf eine verteilte Entwicklung legt. Jeder Benutzer hat das komplette Repository auf seiner Platte, man ist komplett unabhängig vom Server, in diesem Fall GitHub. Wenn einem das nicht mehr gefällt oder seinen Quellcodes noch woanders veröffentlichen will, geht dies ohne Probleme. Mir kommen zwar noch einige Konzepte etwas Spanisch vor, aber das wird schon noch. Die fehlende Abhänigkeit an einen Server und die nette Übersicht bei GitHub spricht meiner Meinung nach für sich :)

In diesem Sinne: Happy Coding!

P.S.: Ich habe mal meinen Code von svnmin dort hochgeladen.

Wie ich in der Vergangenheit ja schon berichtet habe, bin ich ein Anhänger von OpenID. Eben habe ich beim Google WatchBlog gelesen, dass Google nun seine Authentifizierungs API auf OpenID umstellt. Was das heißt? Jeder der einen Google Account besitzt, kann sich damit nun bei allen OpenID Seiten anmelden. Mehr dazu hier.

Bei meinen Streifzügen durchs Internet ist mir letzten das Programm RoadTrip (früher: Bobcat) auf der Mac Seite von Garmin aufgefallen, mit dem einfach Tracks und Wegpunkte bearbeiten kann. Leider bietet die Standardinstallation nur die US Basemap Karte, welche nicht wirklich korrekt ist ;)

Da ich ja auf meinem Garmin GPS auch die OpenStreetMap Karte benutze, liegt es nahe, RoadTrip ebenfalls diese unterzujubeln. Mit dem Programm MapInstall, welches bei RoadTrip dabei ist, lassen sich Karten im .gmapi Format einfach hinzufügen – nur wie kommt man an solch eine Karte? Mein GPS will ja eine gmasupp.img Datei haben. Laut der Beschreibung von Garmin muss man die Karte auf Windows mit MapConvert in irgendwas dubioses konvertieren, und kann sie dann auf dem Mac in gmapi verwandeln. Irgendwie unschön.

Read the rest of this entry »

Hab gerade gesehen, dass beim Einslive Fernseher ein Interview mit René Marik zu finden ist. Viel Spass damit :)

Ich hab jetzt mal zu Wordpress gewechselt, da ne Serverseitige Software das ganze doch angenehmer macht. Mit der Widgetleiste bin ich zwar noch net ganz zufrieden, aber das hatte ich in dem alten Blog ja auch noch gar net ;)

For those of you who try to use certain features of erlang and find
themself confused with more or less the following error message:

Saturn:src zeisss$ erl -make
Recompile: gs_tcp_sup
{"init terminating in do_boot",{undef,[{compile,file,["gs_tcp_sup",[report_errors,report_warnings,error_summary,debug_info]]},{make,process,3},{init,start_it,1},{init,start_em,1}]}}

Crash dump was written to: erl_crash.dump
init terminating in do_boot ()

This error message says, that it could not find the compile module. For
me, the problem was the way I installed erlang on my macbook: I used the
cean installer, which skips a number of packages in its default
installation, e.g. SASL and the compiler packages. To install them,
start erlang and use cean:search("keyword") to search for the compiler package.

2> cean:search("compiler").
[{"mlex","Lexical scanner"},
 {"ic","IDL compiler"},
 {"hipe","Make a native-compilation of an Erlang module"},
 {"compiler",
  "A byte code compiler for Erlang which produces highly compact code"},
 {"claw","CLAW is an embryonic compiler from Core Erlang to Common Lisp"}]

With cean:install("packagename")
you can install them now. For my example above, you had to install the
compiler package with cean:install("compiler").

Irgendwie hat der folgende Text ja recht, besonders Punkt “1″ :)

http://einklich.net/usenet/bestof/0013.txt