Am Rande notiert ...

Cloud9 meets Bitbucket – Cloud9 IDEs Posterous. Das ist nett, denn Mercurial ist mein bevorzugtes Versionierungstool und Cloud9 kann es jetzt direkt unterstützen – und damit dann auch auf Bitbucket-Projekte zugreifen. Wird immer interessanter.

Metaverse Ink Blog» Blog Archive » The 4,096 “bug”. Warum OpenSim Betreiber ihre Grids mit Regionskoordinaten unter (4096,4096) anlegen sollten – die höheren Koordinaten machen schlicht und einfach viel zu viele Probleme und es sieht nicht so aus, als ob diese Probleme einfach und kompatibel behoben werden könnten. Da Regionskoordinaten Grid-intern sind, sollte es auch keine Probleme machen wenn mehrere Grids in den gleichen Koordinatenbereichen liegen.

Why arent you using git-flow? – Jeff Kreeftmeijer. Klingt wie ein paar sinnvolle Tools die git etwas simpler zu benutzen machen für die Standardfälle. Klar, kann man alles auch alleine managen, aber wozu hat man sich dann einen Computer gekauft …

Comparison to Python | Cobra – nur der Vollständigkeit halber geblogmarkt, da die Sprache einige interessante Ideen hat. Speziell die Kontrakte fände ich als explizite Syntax gut, Python erlaubt ähnliches nur auf Umwegen. Allerdings ist die Sprache ansonsten halt eine der vielen Nischensprachen. Und ehrlich gesagt ist Python mehr als nur die Einrückung – was ist zum Beispiel mit dem sehr ausgereiften Metaprotokoll von Python in den diversen Nischensprachen? PyPy in Kombination mit Rpython und dem neuen ctypes für pypy da deutlich interessanter.

Clack – Web Application Environment for Common Lisp. Das sieht endlich mal richtig nett und schlank aus – die meisten Common Lisp Webframeworks sind mir einfach zu groß, zu kopfig. Das hier sieht sehr viel pragmatischer aus, ein simples Routing, ein schlanker Request und eine Funktion die drauf reagiert. Da könnte man mal mit rumspielen, Installation ist dank Quicklisp trivial (was bin ich froh, dass es jetzt Quicklisp gibt, das asdf-install Gehampel war wirklich nervig). Vom Ansatz erinnert es etwas an Turbogear für Python – es werden diverse vorhandene Libs mit Clack gebündelt, sozusagen ein schlankes Web-best-practices. Ein Applikationsframework das in dem minimalen Environment auch läuft, gibt es mit Caveman auch schon.

Polycode. Sieht aus wie sowas wie Processing für C++ und Lua – also eigentlich ist es eine C++ Library für kreative Projekte (2D/3D), aber gleichzeitig gibt es einen Lua-basierten Scripting-Aufsatz, mit dem man mit gleichen APIs auch direkt programmieren kann. Klingt ein bischen ähnlich zu Cinder, nur dass dort keine Scripting-Lösung mit dabei ist, sondern nur eine C++ Library.

CouchDB: The Definitive Guide. Und weil es so gut passt, hier der Link auf ein Buch zu CouchDB zum Online lesen. Gibts dort auch Online in Deutsch (und natürlich Englisch. Und auch Französisch). Die deutsche Version scheint aber nur unvollständig zu sein – man stößt immer wieder auf Englische Seiten.

Simple JavaScript Applications with CouchDB – CouchApp.org. Interessanter Ansatz: ganze Anwendungen werden in HTML+CSS+JavaScript realisiert und direkt in der CouchDB gespeichert, persistieren ihre Daten ebenfalls in der CouchDB. Erinnert mich ein bischen an Frontier, nur dass eben hier CouchDB und JavaScript anstelle der Frontier Roots und UserScript eingesetzt werden. Der große Vorteil: wenn die Anwendung tatsächlich mit den eingesetzten Elementen auskommt, erhält man die leichte Skalierbarkeit sozusagen kostenlos dazu – denn CouchDB lässt sich leicht durch Starten mehrerer Instanzen skalieren. Klarer was es bedeutet wird es vielleich in diesem Tutorial.

Its About The Hashbangs. Gebloggmarkt, weil das eine recht gute Beschreibung ist was an diesen #! in Adressen falsch ist. Der Teil hinter dem # ist nur Clientseitig, der Server sieht den nie – jede Form von serverseitiger Umleitung und serverseitigem Routing fällt damit komplett aus. Auch serverseitige Zugriffskontrollen fallen weitestgehend aus, der Server sieht nur die Hauptseite. Für Single-Page-Anwendungen wie TiddlyWiki ist das alles ok – da ist alles in einem File schon drin und es ist der erklärte Sinn dieser Anwendungen so aufgebaut zu sein. Für Webseiten wie Twitter oder gar Newssites wie die von Gawker Media ist es einfach nur absurd. Twitter kann vielleicht wegen seiner banalen Struktur noch garantieren, dass die URLs auf Tweets auch mit #! auf Dauer funktionieren, in dem ein entsprechender JavaScript-Anteil auf Dauer in der Homepage drin bleibt (was aber schon ziemlich albern ist), aber Newssites werden früher oder später schlicht und einfach die alten #! URLs fallen lassen – und damit massiven Linkrot produzieren.