Archiv des Autors: hugo

Am Rande notiert ...

SandstoneDb, Simple ActiveRecord Style Persistence in Squeak. Eine sehr simple Ein-Platz-Datenbank für Pharo, die zum Beispiel interessant ist, wenn man kleine Desktop-Anwendungen in  Pharo bauen will. Also so die klassischen GUI-Tools, die man so für den Eigengebrauch zum Beispiel macht. Und ja, heute ist Smalltalk Tag bei rfc1437.

Coral — Pharo Smalltalk for scripting. Oh, das ist nett, das ist eines der Probleme die ich immer mit Smalltalk habe: ich kann zwar in der IDE und im Image arbeiten und dann eine headless-Anwendung exportieren für den Server, aber sobald ich ausserhalb des Images mal schnell ein Script brauche, muss ich die Sprache wechseln. Coral liefert für dieses Problem die Antwort: ein kleiner Wrapper, eine minimale Syntaxerweiterung und ein minimales Image um mit Pharo Smalltalk normale Scripte schreiben zu können.

tode – tODE – the Object centric Development Environment. Ein bischen stagnant in der Entwicklung, aber trotzdem interessant: eine IDE, die auf Pharo Smalltalk aufbaut. Das Besondere: sie läuft im Browser, bietet aber dort die ganzen Smalltalk-üblichen Entwicklungswerkzeuge an. Im Prinzip könnte man damit also sich ein gehostetes Smalltalk-Image als Entwicklungsumgebung für das iPad installieren und von unterwegs damit spielen (Pharo und Squeak passen gut in die Browseroberfläche, weil sie ja auch sonst in der Regel nicht als native Windows daher kommen, sondern als Windows-in-Windows – und hier halt einfach Windows-im-Browser).

CouchDB: Die Definitive Referenz. Oh, das CouchDB Buch von O’Reilly gibt es auch als Online-Buch und dann auch noch in Deutsch. Sicherlich für den einen oder anderen interessant, der keine Lust hat sich durch englische Bücher zu wühlen. Die Übersetzung ist allerdings (noch?) nicht komplett, man stößt also immer wieder auf englische Kapitel. Aber es ist ein Anfang.

Installable Web Apps – Google Code. Da gibts etwas Hintergrund dazu wie man Webanwendungen zu installierbaren Webanwendungen oder hosted Apps umbauen kann. Damit kann man dann den Chrome als Runtime für Anwendungen benutzen, die vom Verhalten schon verdammt nah an normale Anwendunge sind – Amazons Online Kindle zeigt das sehr gut. Programmiert wird halt in JavaScript, aber das hat ja auch wesentlich weniger Schrecken als noch vor ein paar Jahren. Als Packaged Apps kann man dann auch all das machen, was Chrome Extensions können (und kann damit auch nochmal über den Umfang von normalen Webanwendungen hinaus).

Privacy Fail: How Facebook Steals Your Friends Phone Numbers | Kurt von Moos.com. Autsch. Facebook schickt das Telefonbuch des iPhones an deren Server und speichert alle Kontakte da, wenn man die Funktion „synce Profilbilder mit Telefonbuch“ aktiviert – von der Beschreibung der Funktion her glaubt der Benutzer, es würden nur zu Kontakten die man lokal hat die Bilder aus Facebook dazu getan, aber in Wirklichkeit wird mal eben das ganze Adressbuch facebookisiert. Ohne dass es dem Benutzer in dem Moment klar ist, was da passiert.

Kindle Cloud Reader. Nette Geschichte – unter Chrome wird das so richtig schön als Chrome-Anwendung installiert mit Offline-Speicherung der Bücher. Das ist dann ausgesprochen praktisch auf Linux, weil es da ja keinen native Reader gibt. Und auf dem iPad soll es auch ähnlich funktinieren – muss ich mir auch mal angucken (wobei es dort ja auch den normalen Kindle Reader gibt).

mutle/vim.safariextension – GitHub. Noch eine VI-Tastaturbedienung für Safari, die gefällt mir eigentlich ganz gut – aber leider hat sie keine Link-Navigation, daher muss man da scheinbar immer noch die Maus benutzen. Schade, denn das ist eigentlich sowas wie das Killerfeature – andererseits, sowohl diese als auch vimlike sind Open Source, vielleicht sollte ich mich einfach mal hinsetzen und die beiden zusammenbringen (oder einen Patch für einen der beiden bauen, der die fehlenden Features nachrüstet).

vimlike-onsafari – Safari keybind changes like VIM. – Google Project Hosting. Hmm, dünn dokumentiert, aber das wesentliche funktioniert scheinbar. Also die Navigationstasten und das Verfolgen von Links. Und im Gegensatz zu früheren Tests kommt die auch nicht mehr durcheinander beim Styling der Link-Hints.

Update on UIKit lighthouse platform. Hmm, hab ich gar nicht mitbekommen – QT hat auch in 4.8 Unterstützung für UIKit, das Framework von iOS, drin. Damit kann man sich also iOS Apps bauen, aber auf QT aufbauend. Da stellt sich mir doch die Frage, wie das dann mit PyQt oder PySide aussieht – Apple mag Interpretercode ja nur dann nicht, wenn er nachgeladen wird. Die App selber darf aber ruhig damit geschrieben sein.

Time Machine – Frequently Asked Questions 30. What are Local Snapshots?. Gar nicht so doof, was Apple sich da hat einfallen lassen. Die ersten Gerüchte über die lokalen Snapshots klangen ja noch eher seltsam, aber das was daraus geworden ist – automatische Snapshots für unterwegs, wenn man sein Sicherungslaufwerk nicht eingestöpselt hat, sind durchaus praktisch. Nicht für echte Recovery im Sinne eines Plattencrashs, aber für die üblichen „mist, bin ich blöd, das wollte ich doch noch garnicht löschen“ Situationen. Allerdings fände ich es gut, wenn es dafür dann doch ein GUI in Timemachine gäbe, wo man lokale Snapshots an und aus schalten kann – ja, ich weiss, kann man von der Kommandozeile machen, aber ich bin nicht umsonst Apple-User, ich will da hübsche grafische Knöpfe zum Drücken!

Telefontarife können einem echt den Spaß verderben

Wenn man sich so umschaut bei den Telefontarifen, dann kann man schon kleinere bis größere Tobsuchtsanfälle bekommen. Bei den Telefonie-Komponenten ist es ja mittlerweile einigermaßen ok geworden, die SMS Tarife sind immer noch lächerlich bis hanebüchen – teurere Wege seine … Weiterlesen

Am Rande notiert ...

Map Tunneling Tool. Cool – man kann in einer Karte eingeben wo man ist und auf der anderen wird dann der Gegenpol auf der Erde angezeigt. Wir liegen damit ziemlich im Südpazifik, südöstlich von Neuseeland. Spanien hats gut, die kommen direkt in Neuseeland raus.

Sankra Software: Disable OS X Lion Resume per application. Weil das Feature von Apple etwas „aggressiv“ implementiert ist (es wird auch für Apps aktiviert, die nicht explizit sagen „mach das an, ich kann das“), ist es manchmal echt nervig – manche Apps machen dann sowohl die eigene „neuer Programmstart“-Aktion als auch danach die Aktion vom System – z.B.  manche Editoren öffnen zwei Fenster auf die gleiche Datei, wenn sowohl der Editor als auch das OSX sagen „Wiederherstellung Fenster“. Von daher nicht unpraktisch wenn man das pro Anwendung ausschalten kann, das Feature. Wobei das dann natürlich spätestens bei Updates der Anwendung dann irgendwann vergessen wird und man sich wundert warum jetzt plötzlich die Fenster nicht mehr automatisch aufgehen, weil die Anwendung von der eigenen Steuerung auf die Systemsteuerung gewechselt hat. Aber hey, Software ist das letzte verbleibende Abenteuer …

Modula-3 Resource Page. Weiter bei den Nischensprachen – Modula-3 hat mich ja immer fasziniert, weil es eine pragmatische und praktikable Erweiterung der Wirthschen Sprachenwelt war und dabei eine Menge interessanter Sprachkonstrukte in ein bekanntes imperatives Sprachsystem integrierte. Und da geht die Entwicklung bis heute weiter, der Download hat sogar Binärpakete für Darwin (den Unix-Unterbau von OSX), allerdings derzeit nur 32bit (und ich denke mal keine Bridge zu Objective-C und damit zu den Cocoa APIs).

Magpie Guide: Welcome. Wo wir doch gerade bei Nischensprachen sind: Magpie ist mal wieder eine Sprache für die JVM. Diese hier sieht so ein bischen ähnlich aus wie eine Mischung aus Scala und Ruby, aber die Konzepte sind schon deutlich anders. Besonders nett ist Multidispatch – generische Funktionen, die abhängig von all ihren Parametern und deren Typen die passende Version wählen. Erinnert so ein bischen an CLOS in dem Aspekt. Ausserdem gibt es volle Closures und Funktionen und Blöcke sind first-class Objekte im System. Ausserdem gibt es mit Quotations einen Ansatz für Metaprogramming, wobei ich da allerdings immer noch den Lisp-Weg für ungeschlagen halte (einfach weil bei Lisp die Strukturen des Parsetrees 1:1 auf die eigentliche Syntax und die Listen als interne Repräsentation passt, während bei Sprachen mit Algol-ähnlicher Syntax das ganze wesentlich indirekter ist). Was ich persönlich auch angenehm finde: Magpie ist sehr textuell orientiert, nicht so stark Sonderzeichenlastig. Liest sich für mich einfach angenehmer.

Home Page for ATS. Nischensprachentag bei RFC1437. Interessant ist die Sprache, weil sie den Anspruch erhebt die Performance von C erreichen zu können, da die internen Typen auf Maschinentypen und maschinennahe Formen reduziert werden können – wie z.B. Pointerarithmetik – ohne die Typsicherheit und Runtime-Sicherheit von gemanagten Systemen zu verlieren. Also so ein bischen den Kuchen essen und behalten. Dazu kommen einige interessante Inspirationen (zum Beispiel Modula-3 für das Modulsystem). Kombiniert mit einer nicht zu wilden Syntax, die angenehm kompakt wirkt. Ebenfalls interessant: die Sprache hat unter anderem den interaktiven Beweis der Korrektheit von Programmen zum Ziel, und bietet dafür einige sehr spannende Tools an – was gerade bei Low-Level-Programmen interessant ist, wie z.B. Kernelfunktionen oder Steuerungssysteme.

Straßenfest Hammer Straße 2011

Diese Galerie enthält 6 Fotos.

Heute hatte das Straßenfest dann ja doch noch Glück mit dem Wetter, nachdem gestern der ganze Tag verregnet war. War also wieder sehr voll.

Am Rande notiert ...

„Was die Rechtskenntnisse angeht, besteht bei Innenminister Friedrich – immerhin Jurist – allerdings noch erheblicher Nachholbedarf.“ via Internet-Law » Friedrich uns graut vor Dir.

the „useless“ language. Ziemlich verrückte Sprache – sowas die Forth, aber alle Befehle und Syntax besteht aus einzelnen Zeichen. Dazu kommen noch ziemlich seltsame Beschränkungen für Funktionsdefinitionen (maximal 64 Zeichen auf einer Zeile und nur ein if oder while oder vergleichbares in einer Funktion). Besonders faszinierend ist der in U geschriebene U->C Compiler. Der Entwickler der Sprache hat ein ganzes Buch über Programmierung in U geschrieben. Aber Vorsicht: die Farbwahl des Autors ist gewöhnungsbedürftig …

Groklaw – A Brief Explanation of Microsofts Anti-Google Patent FUD ~ by pj. Da das ganze Patentgesumse rund um Android schon etwas undurchsichtig ist, find ich es gut wenn sich Sites wie Groklaw dazu äußern: „Again, Google is pointing to the main issue, not that Microsoft and its satellite helpers are meanies, but that what they are doing is *illegal*. They are attacking the open source community, with patents as the weapon and not just as individual companies but as an artificial group designed to „strangle“ Android. And if you look at the mobile litigation going on as we speak, ask yourself: who is suing and who is being sued? Does it look coordinated to you?“

Ricoh GXR Mount A12 Preview: 1. Introduction: Digital Photography Review. Sieht sehr interessant aus – speziell die Bedienung der GRX ist ja ähnlich zu meiner GRD, und die ist echt klasse. Die GRX sieht einfach aus wie eine Kamera und nicht wie ein deformiertes Kinderspielzeug. Auf jeden Fall hat Ricoh das richtig hingekriegt, zumindestens auf dem Papier: kein Anti-Aliasing Filter sowie Fokus Peaking. Der fehlende Anti-Aliasing Filter begeistert mich immer wieder in den Bildern aus der M8 und das Fokus Peaking ist das Feature aus der neuen Sony Firmware, das mich am meisten begeistert hat. Bin mal gespannt, was das kosten wird, das Modul (Ankündigung ist 650 Dollar, aber Straßenpreise weichen ja immer mal ab) – der Body ist ja mitlerweile mit unter 300 Euro echt günstig zu kriegen. Und rund 200 Euro für den zusätzlichen Sucher. Wenn das Modul günstiger ist als die beiden derzeit verfügbaren A12 Module, dann könnte die GXR eine ziemlich geniale Alternative für Leica-M Objektive werden.

Xcode4 / Objective Pascal – Available Files. Wenn man mal mit Pascal in der Xcode4 Umgebung spielen will, ist das sicherlich ganz gut als Start. Dort wird beschrieben wie man FPC in die Umgebung einhängt, es gibt fertige Templates für Projekte und noch lustiger: es wird beschrieben wie man iOS Geräte in Pascal programmiert. Back to the Future! Oder Back from the Future?

extpascal – Ext JS wrapper for Object Pascal. Weil, ich wollte doch schon immer mal meine Webanwendungen mit Pascal programmieren und ihnen ein Ajax-GUI verpassen. Weil es geht. Und jeder RIA-Hipster einen Herzinfarkt bekommt, wenn er die Sourcen ansieht.

sausage.js – examples – The Core API. Interessante kleine JavaScript Lib, die die Navigation in großen Dokumenten deutlich erleichtert, dabei aber nicht mit Navigationsbuttons erschlägt – einfach rechts mit der Maus hovern, da gibt es visuelle Markierungen für die Größe der Sektionen des Dokumentes und da wo man hovert, kommt ein Button den man zum Direktsprung benutzen kann. Meiner Meinung nach deutlich weniger aggressiv in der Darstellung als Flexible Nav. Allerdings hat Flexible Nav natürlich den Vorteil, dass man nicht erst hovern muss, um die Navigation zu sehen.

Okito.net — On SproutCore 2.0. Über die aktuelle Version des Frameworks, das hinter icloud.com werkelt (da haben wohl ein paar Developer ihre NDA verletzt, als sie sich icloud.com genauer angeguckt haben). SproutCore gibt es schon länger, aber die Version 2.0 hat einiges an Veränderungen gebracht und ist ein Rewrite in wesentlichen Teilen. Das Ziel ist immer noch nativ aussehende Anwendungen nur mit JavaScript und Browser zu bauen.

Pascal Script | RemObjects Software. Wohl eher aus der Reihe „Kuriositäten die man im Netz so findet“ – eine Scripting-Engine, die eine weitestgehende ObjectPascal-ähnliche Syntax hat und in Delphi und Lazarus (FreePascal RAD IDE) integriert werden kann.

Killer rat daubs fur with poison-arrow plant toxins. Titel sagt schon alles. Gibt dem Wort „Rattengift“ eine ganz  neue Bedeutung …

Get Started Guide « PhoneGap. Nur mal geblogmarkt, weil ich das garantiert später nochmal brauche, wenn ich mit Phonegap und Android rumspiele. Ziemlich  holperig, wäre doch schon nett, wenn Phonegap einfach ein fertiges Projekttemplate mitliefern würde. Aber nunja, es geht jedenfalls – mein Hello World taucht auf. Auf dem Simulator. Und ich muss kein fieses Java dafür anpacken, sondern nur fieses JavaScript.

Python, SymPy and Quantum Physics. Bisher waren NumPy/Matplotlib sowie SymPy für mich mehr oder weniger zwei Welten – in diesem Blogpost wird gezeigt, wie man diese beiden verbinden kann, also seine Funktionsdefinitionen über SymPy symbolisch erarbeiten und dann nach NumPy überführen um dort numerische Untersuchungen zu machen. Was gerade im Zusammenhang mit der qtconsole von ipython interessant ist, weil die nur matplotlib Plots inline anzeigt, SymPy Plots aber in einem eigenen Fenster (da diese über pyglet laufen), was zur Speicherung eines Arbeitsergebnisses eher blöd ist.