Neulich auf Google+

Diese Galerie enthält 5 Fotos.

Ich habe auf Google+ neue Bilder hochgeladen. Hier sind sie – unsortiert und unkommentiert.

Am Rande notiert ...

RQ: Documentation. Hmm, python-job-queue auf Redis-Basis mit einem recht simplen Interface. Könnte eine interessante Alternative zu Celery sein.

Kenko extensions tube with full electronic control!. Woopdidoo. Ok, Extension-Tubes sind nicht das Optimum an Performance, aber trotzdem durchaus interessant, da sie einen recht einfachen und in der Regel kostengünstigen Weg zu besseren Makrofähigkeiten darstellen.

iphone – What happens to JavaScript code after app is compiled using Titanium Mobile – Stack Overflow. Interessierte mich auch, die Frage, daher mal hier geblogmarked. Ganz interessant, was da passiert, geht deutlich weiter als z.B. was PhoneGap macht.

Titanium Desktop – Node.js Prototype « Appcelerator Developer Center. Titanium steht ja sowieso auf der Liste zu testender Sachen drauf, weil es neben PhoneGap ja einer der Wege ist, wie man JS+HTML Code zu Apps und Desktop-Anwendungen machen kann. Und hier zeigt einer der Developer, wie man einen node-Server in den Desktop integrieren kann. Wäre auch noch mal recht interessant, wobei das wohl nicht unbedingt dann auch mit iOS und Android läuft (denn dort ist man ja zwingend auf die vom System zur Verfügung gestellte JS Engine im Browser-Widget eingeschränkt, wenn man dynamischen Code von außen laden will).

Embedding and running Node.js within a Firefox XUL extension. Schon beeindruckend, was man mit Firefox und dessen Infrastruktur so alles machen kann. Theoretisch müsste man das auch so umbauen können, dass diese Erweiterung nur in einem single-site-browser läuft, der dann direkt die Homepage des eingebetteten Servers öffnet und so sich Desktop-Anwendungen in JavaScript bauen können, die komplett autonom sind (und wer sich drüber wundert, warum ich diese ganzen JS-auf-Desktop Sachen sammel: damit könnte man mit Hilfe von Phonegap und etwas Glue dann nicht nur Apps für iOS und Android bauen, sondern mit gleichem Code auch Desktop-Anwendungen).

NodObjC. Keine Ahnung ob ich das wirklich will, aber mit dieser Library kann man ObjC Frameworks mit JavaScript bridgen. Interessant könnte das zum Beispiel im Context von PhoneGap werden, wenn man Zugriffe auf iOS native APIs machen muss, die noch nicht von PhoneGap zur Verfügung gestellt werden (allerdings braucht es Node.js als Basis, keine Ahnung ob das auch schon unter iOS läuft).

topcube. Sollte ich mir auch mal genauer angucken – eine Desktop-App, welche einen eingebetteten Webserver (node.js) und Browser (GTKWebKit) beinhaltet. Damit kann man dann Desktop-Anwendungen auf Basis von JavaScript und Node.js bauen – z.B. auch Amber Smalltalk in eine kompakte Desktopanwendung umbauen. Leider ist die OSX Unterstützung noch etwas mager.

haypo/pysandbox. Mal wieder was zum Angucken: eine Sandkiste für Pythonscripte. Laut Projektbeschreibung nicht unbedingt eine Sicherheitslösung sondern eher nur ein einfacher Schutz für den Python Prozess. Somit wäre es zumindestens als einfache Absicherung eines Hauptprozesses gegen Fehler in Erweiterungsscripten nutzbar.

Neulich auf Flickr – Schwarzweiß Ausgabe

Diese Galerie enthält 5 Fotos.

Ich habe auf Flickr neue Bilder hochgeladen. Hier sind sie – unsortiert und unkommentiert. Das ist die Schwarzweiß-Ausgabe.

Neulich auf Flickr

Diese Galerie enthält 18 Fotos.

Ich habe auf Flickr neue Bilder hochgeladen. Hier sind sie – unsortiert und unkommentiert.

Am Rande notiert ...

SynthCam for iPhone. Benutzt das Video-Feature der Kamera um darüber einen Effekt ähnlich geringer Schärfentiefe zu erreichen. Was gemacht wird, ist ein Stich aus vielen Einzelbildern, wobei durch Bewegung der Kamera definierte Bereiche (per Tracking) scharf und andere Bereiche unscharf werden. Ziemlich coole Sache.

Depth of field. Gute Erläuterung was hinter der Schärfentiefe mathematisch wirklich steckt. Durchaus interessant zu lesen wenn man noch nicht so ganz die Zusammenhänge durchschaut (Hint: primärer Faktor ist das Abbildungsverhältnis, alles andere ist nur eine Funktion davon).

Kein Quick-Freeze: Kanzlerin drängt Rösler zur Vorratsdatenspeicherung. Ist doch lustig, oder? Da will eine EU Komission etwas, das in mehreren Mitgliedsländern als verfassungswidrig abgelehnt wurde, teilweise von Gerichten gestoppt. Da ist eine Kanzlerin, die vom Bundesverfassungsgericht schon einen drüber bekommen hat, weil sie ein verfassungswidriges Gesetzt durchgeprügelt hat. Da ist eine EU Kommissarin, die eine Neufassung wegen der Verfassungsprobleme ankündigt. Und was macht die EU? Sie droht mit Strafen, wenn die bisherige, nicht verfassungskonforme, Version nicht umgesetzt wird. Und was macht die Kanzlerin, die ja auf die Verfassung eingeschworen ist? Sie will eine Regelung gegen die Bedenken ihrer eigenen Justizministerin und gegen die Entscheidung des Bundesverfassungsgericht über den Rösler-Bubi durchzwingen (klar, dass die den nimmt, schließlich ist der seit dem NRW-Debakel der FDP ja auf der Abschussrampe und entbehrlich). Und bei all der Moppelkotze wundern sich die Prolethiker in Berlin dann noch, wieso sich alles so über ihren Überwachungsfimmel aufregt. Einen Kabarettisten, der sich so eine absurde Story ausdenkt, würde man ausbuhen.

Katzencontent

Diese Galerie enthält 1 Foto.

Der Schockwellenreiter hat es vor kurzem ja vorgemacht und da kann ich mich wirklich nicht mehr dem in der Blogwelt so essentiellen Katzencontent enthalten. Gesundheit.

Am Rande notiert ...

BOO – Getting Started. Nach langer Zeit mal wieder Boo angeguckt und mir gefällt was dort passiert. Immer noch sehr stark an Python angelehnt was die Syntax angeht, bei der Semantik aber deutlich davon abweichend – zum Beispiel echte Makros in verschiedenen Variationen, so dass es wirklich eine erweiterte Syntax gibt. Oder auch das nur optional verfügbare Ducktyping – eine Variante, die mir besonders gut gefällt, denn Boo kombiniert statisches Typing, Type-Inference und Duck Typing in einer Weise, die wirklich für den Programmierer alle Optionen offen hält. Dazu dann die gute Integration mit .Net und C# Assemblies. Ich glaube, ich muss da mal etwas mehr mit herumspielen, denn gerade als Prototyping Sprache könnte das recht praktisch sein – und im Moment tendiere ich für ein paar Sachen eh mehr zu Mono als Runtime, primär wegen der dort verfügbaren JIT Implementationen (und mit Mono ja auch AOT Compilation, wo es benötigt wird).

Rinderrouladen

Diese Galerie enthält 1 Foto.

Ja, ganz simpel, einfach nur Rinderrouladen. Mit selbst gemachter Füllung natürlich. Zutaten sind ziemlich simpel, eigentlich ist das schwierigste daran auf die lange Garzeit zu warten: 4 Rinderrouladen vom Fleischer (ich weiss nicht wie ich die Mengen für weniger hin … Weiterlesen

Am Rande notiert ...

pyp – Python Power at the Prompt – Google Project Hosting. Da ich lieber mit Python als mit awk oder perl rumspiele, ist das hier ein recht interessantes Tool. Man kann damit Textfiles mit ähnlichen Features bearbeiten wie mit awk und perl. Und auch das ganze als Einzeiler – pyp definiert dafür einfach ein paar Variablen und Operatoren, die man verwenden kann. Sieht ganz gut aus.

Gprowl ist ein nettes kleines Script, das einen GMail Account überwacht und Messages schickt, wenn da eine Nachricht im Posteingang auftaucht. Damit kann man sich z.B. Push-Notifications bauen, wenn man Sparrow benutzt (das noch keine Push-Notifications unterstützt). Geht natürlich auch mit forwarding und BoxCar, aber ich will eigentlich nicht meinen Spam weiterleiten an andere Server … (und hey, das Script ist in Python!)

Clojure-Py. Noch kann ich nicht so genau sagen was ich davon halte, aber jemand baut Clojure (die Sprache) mit Python und PyPy als Zielplattform. Grundsätzlich sicherlich eine interessante Idee, denn die LLVM-basierte JIT Implementierung von PyPy kann ja auch durchaus andere Sachen kompilieren. Und da ich sowohl ein Python als auch ein Lisa Fan bin, muss sowas ja meine Neugierde wecken. Der Sprachumfang von Clojure ist noch nicht komplett abgebildet, aber das kann ja noch kommen.

LensRentals.com – Undressing an NEX. Sehr interessant, mal ein ganz anderer Blick auf eine Kamera – auf die Innereien. Auch wenn früher bei den mechanischen Kameras das ganze irgendwie interessanter war, ich finde auch die „inneren Werte“ der NEX recht beeindruckend. Oh, und als System haben die Linux (leider immer noch nicht gehackt und geöffnet).

Create a package for IOS — Kivy 1.1.2-dev documentation. Kivy – ein GUI Framework für Python – bietet jetzt auch einen Weg die Anwendung für iOS zu packen und zum Beispiel auf einem iPad laufen zu lassen. Keine Ahnung ob das dann auch wirklich im AppStore aktzeptiert wird, die Programmierer haben aber schon  ein Programm auf der Basis rein bekommen, die Chancen stehen also gut.

Neulich auf Flickr – Schwarzweiß-Ausgabe

Diese Galerie enthält 7 Fotos.

Ich habe auf Flickr neue Bilder hochgeladen. Hier sind sie – unsortiert und unkommentiert. Bei denen hier fehlt die Farbe.

Neulich auf Flickr

Diese Galerie enthält 10 Fotos.

Ich habe auf Flickr neue Bilder hochgeladen. Hier sind sie – unsortiert und unkommentiert.

Am Rande notiert ...

wbond/sublime_package_control. Das ist allerdings sehr interessant – so langsam scheint sich Ecosystem rund um Sublime Text 2 zu bauen, ähnlich wie bei vim oder TextMate. Macht die Integration von Erweiterungen auf Dauer einfacher.

JulianEberius/SublimeRope. Sehr interessant – eine Integration von Python Rope (eine Refactoring-Library für Python Code, die in Python geschrieben ist) in Sublime Text 2. Damit wird gibt es dann Refactorings direkt in ST2 – eines der Features, die ich in PyCharm lieben gelernt habe (speziell syntaktisch korrektes Rename und extract method) und die in ST2 bisher fehlten. Sollte ich mir vielleicht mal angucken, wobei ich bei Projekten in denen ich Refactoring brauche dann doch eher gleich zu PyCharm  greife, einfach weil noch viele andere Sachen dazu kommen (z.B. der integrierte Debugger). Irgendwo tendiere ich in letzter Zeit doch eher dazu zwischen Editoren für einfache Dinge und IDEs für große Projekte zu wechseln, auch wenn man dann verschiedene Bedienungen lernen muss – die Einsatzzwecke sind einfach zu verschieden um das mit nur einem Tool zu erledigen.

HyperCard, Visual Basic and the Importance of the Novice Developer. Interessanter Artikel, der HyperCard in Relation zu Handheld Developer stellt. Und nachdem ich mit Handheld Developer rumgespielt habe, würde ich sagen die liegen garnicht mal so völlig falsch – es ist eine nette visuelle Umgebung zur Erstellung von iOS Webanwendungen mit integriertem Hosting mit dem man recht fix einen  Prototypen zusammenbaut und sogar Serverside-Scripting in JavaScript bekommt. Ok, es ist nicht ganz billig, aber es gibt ja eine Testversion um zu schauen ob man daran Spaß haben könnte. Die Anwendungen sind tatsächlich auch garnicht so auf iOS fixiert, denn im Prinzip ist es einfach HTML5 und JavaScript – und sollte also auch mit Androiden funktionieren (probiert habe ich das noch nicht).

mtravers/heroku-buildpack-cl. Und noch so ein Lisp-Link – hier hat sich jemand auf Herokus buildpack-capable stack gestützt und für Clozure CL ein Buildpack aufgebaut, so dass man darüber auch Common Lisp in die cloud stellen kann. Wobei das dann weniger Ähnlichkeit mit Google App Engine hat, sondern wohl eher mit sowas ähnlichem wie Amazon EC2.

Heroku | Clojure on Heroku. Und noch mehr Lisp. Mit Clojure kann man jetzt auch auf Herok, der Cloud Plattform, arbeiten. Damit eventuell eine Alternative zu zum Beispiel Google App Engine (auf deren Java-Inkarnation läuft Clojure ja auch).

Ganz tief drinnen bin ich ja immer noch ein Lisp-Fan. Deshalb ist der ecl-iphone-builder von Terje Norderhaug für mich sehr interessant – damit kann man eine Version von Embeddable Common Lisp für das iPhone oder iPad compilieren und dann über XCode auf ein iOS Gerät bringen, dort einen Swank-Server starten und dann remote connecten – und dann mit Lisp auf dem iPhone rumspielen oder programmieren. Ok, die Anbindung an die OSX APIs ist noch ein bischen spröde.