pdf.js reached its first milestone. Und weil wir gerade bei JavaScript und PDF sind: mit dem Projekt hier kann man PDF Dateien ohne PDF Reader anzeigen - nur mit HTML5 und JavaScript. Sehr interessant, wenn das weiter ausgebaut wird, könnte das an vielen Stellen den PDF Reader völlig überflüssig machen.
Linkblog - 22.6.2011 - 12.7.2011
PDFKit — A PDF Generation Library for Node. Ich glaub ich muss mir doch nochmal wieder Node.js angucken. Und CoffeeScript. Diese PDF Generierung sieht sehr interessant aus und könnte bei einigen Projekten ganz praktisch sein. Wobei mir bei solchen Libraries immer der Highlevel-Teil fehlt - das eigentliche Layouten. Wann baut jemand eine TeX Engine in JavaScript? Hyphenator liefert ja schon eine sehr gute Silbentrennung, aber was einfach fehlt ist eine gute Layoutengine zur Verteilung von Texten auf definierten Seiten. Und bitte auch mit guter Unterstützung für Tabellensatz.
manuel/edgelisp. Weil ich nie die Finger von Klammern lassen kann - ein Common Lisp Dialekt und dessen Implementation, die nach JavaScript compiliert un den Lisp-Code im Browser ausführbar macht. Macht einen recht vollständigen Eindruck - viele andere Projekte zeigen nur die rudimentären Elemente, aber hier gibts auch schon generische Funktionen und Makros.
paver/paver. Klingt interessant, wie eine Mischung aus SetupTools/DistUtils und Make (bzw. deren high-level Kumpel Rake/Cake). Könnte ich mir mal angucken, denn für Python-Projekte wäre das vielleicht doch recht praktisch - allerdings sind die Standardtools von Python auch schon ganz brauchbar.
PerlDancer - The easiest way to write web applications with Perl. Zur Ergänzung meiner Sammlung von Sinatra-angelehnten Microframeworks für Webanwendungen hier noch eines in Perl. Nicht das ich jetzt unbedingt Perl wieder einsetzen wollen würde - ist eher wegen der Vollständigkeit hier aufgeführt.
Tuning Your PostgreSQL Server. Hab ich gerade gebraucht, und damit ichs nicht immer wieder googeln muss, hab ich mal ein Blogmark gemacht. Zusätzlich muss man warscheinlich auch noch Kernelparameter hochsetzen, damit der shared memory überhaupt alloziert werden kann. Denn PostgreSQL mag viel Speicher wenn man komplexere Queries absetzt und die Default-Allokation von ca. 100 MB ist definitiv viel zu niedrig für ernsthaften Einsatz.
Max Pechstein im Ahlener Kunstmuseum - sollte ich mir mal auf den Kalender packen, das ist einer meiner Lieblingsexpressionisten (neben Schmidt-Rottluff und Kirchner) - die Bilder in ihrer Farbigkeit sind für mich einfach das größte.
danlucraft/git.js. Wow, beeindruckend. Und potentiell sehr interessant - git als genereller Synchronisationsmechanismus ist ausgesprochen praktisch und Integration von Git-Funktionalität in Webanwendungen könnte einige Probleme gut lösen (z.B. wenn es um Synchronisation mit anderen Stellen geht, oder natürlich für Dokumenteninterne Versionierung). Muss ich mir mal genauer angucken bei Gelegenheit, ich hätte da schon die eine oder andere Idee wie ich das einsetzen könnte. Ist im Moment noch recht rudimentär, aber beobachten lohnt sich sicherlich.
Google+. Hab jetzt auch so ein lustiges Spielzeugdingens. Allerdings noch nicht so richtig die Idee, wofür ich das brauche. Was gefällt ist die schon recht gute Integration mit anderen Google Diensten, obwohl ich mich schon wundere, dass ich aus dem Google Reader nicht meine Empfehlungen automatisch nach Google+ laufen lassen kann. Oder das ich nicht einen einfachen RSS Feed nach Goolge+ importieren kann für automatische Posts. Schaun mer mal wie sich das entwickelt. Den Aufbau für das gezielte Sharing mit verschiedenen Empfängergruppen find ich jedenfalls schon mal deutlich durchdachter als das seltsame Zeug bei Facebook.
Stiivi / cubes. Mal für später geblogmarkt: eine OLAP Library in Python die auf SQL Datenbanken oder MongoDB aufbauen kann. Für so einige Sachen auf der Arbeit könnte das mal interessant werden.
Tree for policy-settings-basic in MeeGo Multimedia - MeeGo. Da immer mal wieder behauptet wird, Prolog sei so eine völlig esoterische Sprache die niemand im normalen Leben benutzen würde: der Teil von MeeGo (wir erinnern uns, das ist dieses Handset-Betriebssystem vom Nokia N900/N950/N9), der abhängig von Umgebungsbedingungen verschiedene Einstellungen triggert, ist in Prolog geschrieben. Und läuft so produktiv auf den Handsets.
Auto Refresh Plus - Chrome Web Store. Aus gegebenem Grund war mein Interesse an sowas gerade mal geweckt. Auf dem Mac hab ich natürlich etwas komfortablere Werkzeuge, aber um einfach mal nur eine Webseite zu refreshen bis sie eine definierte Änderung hat, reicht das Teil hier allemal.
DropKick - a jQuery plugin for beautiful dropdowns. Sieht nett aus, auch wenn es natürlich hauptsächlich optisches Gimmick ist. Aber manchmal sind optische Gimmicks auch notwendig.
WordPress 3.2 now available. Update ausgeführt (und zum ersten Mal auch über den automatischen Update und ssh-Zugriff für den Update, da mein Webserver keine Schreibrechte auf den WP Code hat) und alles scheint problemlos geklappt zu haben, obwohl ich eine Reihe von Plugins benutze. Nett. Der Admin ist wirklich um einiges entschlackt worden, deutlich fixere Reaktionen.
Deshalb müssen wir Panzer an Saudi-Arabien verkaufen. Das unsägliche Interview hab ich heute morgen auch gehört. Dieses Gelüge und Gelaber von Politikern kann einem den ganzen Tag verderben. Der Moderator heute ist normalerweise nicht so mein Fall, aber beim Interview heute hat er einige Sachen gut auf den Punkt gebracht: "Moral ist was für Dummköpfe, die Gescheiten machen Geschäfte draus" - das ist die Denke von Pfeiffer und vermutlich noch einigen anderen in der Union. Das wir Gesetze haben, die Exporte von Waffen in Krisenregionen verbieten interessiert dabei dann nicht. Vermutlich würde er auch irgendwo einbrechen und die Wohnung leerräumen, wenn die Nachbarn ihm vorher zugestimmt haben.
Prowl - iOS Push Notifications. Ist ein ausgesprochen praktisches Teil für das iPhone oder iPad als Ergänzung, weil man nette APIs bekommt, mit denen man z.B. von Servern aus Nachrichten an das iPhone schicken kann. Oder man benutzt Send2Prowl vom Firefox oder Prowl von Chrome um sich einen Link direkt ans iPhone zu schicken.
Google+: Facebook verhindert Export von Freunden. Man kann ja von Google halten was man will, aber den Export eigener Daten blockieren, so weit runter sind die noch nicht abgestiegen. Facebook ist mit so einem Vorgehen der absolute Bodensatz asozialer Netzwerke.
DSK: „Spiegel” beklagt Vorverurteilung « Stefan Niggemeier. Putzig - der Spiegel hat selber fleißig vorverurteilt und jetzt jammert ausgerechnet einer der daran beteiligten "Qualitätsjournalisten" darüber, dass der arme Strauss-Kahn vorverurteilt wurde. Ist das schon Schizophrenie, oder einfach nur Dummheit? Ich mein, was quaken die Verlage rum wie schlecht es ihnen geht, wenn sie dann kaum über Blogniveau hinauskommen in ihren "Qualitätsartikeln"?
realmacsoftwares SDKs auf GitHub - warum ich mich wieder mal mit RapidWeaver beschäftige: die SDKs sind nämlich mitlerweile frei auf GitHub zu kriegen und sehen recht interessant aus - und wenn es SDKs für IDEs gibt, bin ich ja fast schon automatisch neugierig.
SiteMap Loghound.com. Ok, noch ein Plugin - das erzeugt eine Sitemap und zwar sowohl HTML als auch das Google XML Format für Suchmaschinenintegration. Wobei ich da (wie auch bei anderen) erstmal gucken muss, was jetzt RapidWeaver 5 gegenüber RapidWeaver 4 schon von Haus aus leistet.
PlusKit Loghound.com. Noch ein recht interessantes Plugin für RapidWeaver, mit dem man eine ganze Reihe von Integrationsarbeiten machen kann. Z.B. Google Docs einbinden, andere Seiten includen, Spotlight-Search und globale Suche in großen RapidWeaver Projekten und automatische Lightbox für RapidWeaver Gallerien. Vor allem letzteres ist interessant und PlusKit ist auch eine Voraussetzung für Motivate, ein recht interessantes Layout für RapidWeaver Sites. Und mit SymNivo gibts dann witzige Transitions für die Anzeige von automatischen Präsentationen. Das ist dann auch wieder der Nachteil von RapidWeaver: tausende von kleinen Doodads und Gimmicks, warscheinlich spielt man mehr mit der Installation herum als mit der eigentlichen Site ...
RapidScript - bin gerade mal wieder mit RapidWeaver am Rumspielen (für manche Zwecke ist halt statische Webseiten dengeln durchaus interessant) und über dieses Plugin gestolpert. Nette Idee, man kann Seiteninhalte über AppleScript erzeugen, welches direkt in der Datenbank von RapidWeaver eingebettet wird. Dadurch sind sozusagen pseudodynamische Inhalte möglich - generiert aus externen Quellen, aber eben trotzdem statischer Output. Gefunden hab ich das in dieser recht netten thematischen Aufstellung von RapidWeaver Plugins. Die Aufstellung ist jedenfalls zielführender als die grosse Grabbelkiste bei RealMacSoftware, die keine thematische Gruppierung hat.
...und nebenan brennt das Reaktorgelände - und kein Schwein interessierts, weil ist ja Frankreich, da kann ja gar nichts schlimmes passieren und warum sollte man über Reaktorbrände vor der eigenen Haustür berichten wenn es eine lächerliche Operettenhochzeit gibt. Das nennt man dann Qualitätsjournalismus.
"Wir benötigen manchmal Ihre Erlaubnis, um das zu tun, was Sie uns mit Ihren Daten bitten, zum Beispiel Hosting, Öffentlichmachen oder Teilen Ihrer Dateien. Durch das Einreichen Ihrer Daten an die Services erteilen Sie uns und denen, mit denen wir zusammenarbeiten, um die Services bereitzustellen, weltweit nicht-exklusive, gebührenfreie, unterlizenzierbare Rechte zur Nutzung, Vervielfältigung, Verbreitung, Vorbereitung abgeleiteter Werke wie Übersetzungen oder Formatumwandlungen, Aufführung oder öffentliche Wiedergabe dieser Daten, soweit dies für den Service vernünftigerweise erforderlich ist. Diese Lizenz dient ausschließlich dazu, uns die technische Verwaltung, Anzeige und den Betrieb der Services zu ermöglichen. Sie müssen sicherstellen, dass Sie die Rechte haben, die Sie benötigen, um uns diese Erlaubnis zu erteilen." - weil sicherlich wieder haufenweise halbinformierter Unfug geschrieben werden wird, nachdem Dropbox die ToS leichter lesbar und vervollständigt hat, hier der wichtige Punkt nochmal rausgegriffen. Nicht dass ich mich der Illusion hingebe das würde die halbinformierten Unfugposts verhindern, aber wenigstens kann ich dann einfach auf die passende Stelle zeigen.
Ubuntu Cron-Fehler - Module is unknown - nach libpam Upgrade. Argh!!! Das hat mich voll kalt erwischt - ich hab das glatt einen Monat nicht mitbekommen, deshalb wurde auch die Metaeule in der Zeit nicht aktualisiert, der Cron war einfach weg. Mist, dammicher. Erst heute bin ich drauf gekommen mal ausserhalb der Eule nach der Ursache zu gucken und dann über die Logmeldungen gestolpert. Jetzt sollte alles wieder brav tun. Hoffe ich.
Digitalkameras: Ricoh kauft Pentax - Golem.de. Hmm, das könnte echt interessant werden, denn Pentax wie auch Ricoh haben eine Menge interessanter Ideen. Und Pentax bringt auch das nötige fotografische Know-How mit (bei Ricoh zwar auch vorhanden, aber eher auf "Amateur"-Level). Wobei natürlich dann die Frage ist, was mit sowas wie Pentax Q und Ricoh GRX passiert - die sind ja zumindestens überlappend im Angebot.
Abstiegsszenario. Trau nie einer Infografik, die du nicht selbst gefälscht hast - dachte sich wohl das Managermagazin bei dem "Beleg", dass Apple weniger in Forschung investieren würde und so ja seine Zukunftsfähigkeit aufs Spiel setzen würde - dabei sind F&E Ausgaben in Cupertino gestiegen, aber in der Darstellung in Relation zum noch viel mehr gestiegenen Umsatz sieht das dann schön passend unpassend aus. Nur hier geblogmarkt, weil warscheinlich wieder haufwenweise Leute mir meinen mit der Grafik erzählen zu müssen warum Apple schlecht wäre.
Opa: Advancing web development to the next generation. Hatte ich glaube ich im alten Blog schon mal, aber was solls - jetzt ist der Code auf github und unter Open Source Lizenz. Und das ganze Projekt ist nicht irgendwas grade frisch rausgekommen - das hat 10 Jahre Forschungseinsatz hinter sich, die Leute wissen wirklich was sie da treiben. Die Idee ist cool (und auch schon von anderen aufgegriffen): eine Sprache, aus der in Webanwendungen alle Schichten erzeugt werden, also auch JavaScript, HTML, CSS und das Backend. Das ganze mit typsicherung und entsprechenden Prüfungen und einer sich zum Beispiel daraus ableitenden Sicherheit vor Injections und XSS Angriffen. Und als Sprache drunter läuft OCaml, was ja auch nicht die schlechteste Sprache ist. Sollte ich mich wirklich mal ernsthaft mit auseinandersetzen, besonders weil verteilte Installation auch gleich mit kommt - und damit eine weitaus einfacherer Scalability gegeben ist als bei vielen anderen Ansätzen (der von OPA erinnert in gewisser Weise an den von Erlang-basierten Systemen). Oh, und Webanwendungen sind dann einfach nur ein einzelnes Executable - und nicht gigantische Verzeichnisstrukturen mit drölfundneunzig XML-Files (oder YAML-Files) zum Anpassen.
SymPy. Symbolische Mathematik mit Python direkt in der Python Shell. Zusammen mit NumPy für Matrizenoperationen und SciPy für diverse weitere wissenschaftliche Funktionen wird aus Python damit ganz fix ein schon recht veritables Mathematiksystem. Nichts wirklich groß neues außer vielleicht SymPy selber.
PyPy Status Blog: Global Interpreter Lock, or how to kill it. Wow, das klingt gut - das PyPy Projekt will das GIL durch STM (Software Transactional Memory) entschärfen - und hat dafür durchaus einen interessanten Ansatz. Manche Sachen sind auch erst durch PyPy möglich, weil dort entsprechende Infrastruktur für Codetransformationen vorhanden ist, die in CPython fehlen.
Great Exhibition faces London 2012 legal action. Immer wenn man glaubt man hätte alles schon gesehen kommt irgendwas das noch bescheuerter ist als alles bisherige - wie zum Beispiel die Organisatoren der olympischen Spiele 2012, die den Organisatoren einer Kunstausstellung in London 2012 mit Klage drohen, da sie (also die Organisatoren der Olympiade) eine Markeneintragung auf 2012 haben.
jsPlumb für alle, die Diagramme darstellen wollen (also vernetzte Graphen von Objekten) und an denen rumzuppeln müssen, um sie besser zu sehen oder zu strukturieren. Oder einfach nur weils witzig ist und cool.
Paper.js ist eine Grafikengine für das Canvas Element. Sieht alles sehr nett aus und hat eine Menge Features. Schon beeindruckend was man alles mit JavaScript im Browser anstellen kann - und das hier könnte im Gegensatz zum bootenden Linux sogar recht interessant für Projekte sein. Das ganze kommt aus dem Illustrator Umfeld und orientiert sich an Scriptographer, einem Plugin für Illustrator mit dem man dort Grafikelemente in JavaScript programmieren kann.
Installing gitorious on Ubuntu 10.04. Hmm - ich habe doch jetzt einen Apache2 mit SSL laufen für meine Wordpress-Administration. Und hab mir da auch schon einen DAV Server für Dokumentensynchronisation (wenn dann mal MobileMe durch iCloud ersetzt wird und dabei die iDisk verliert) eingerichtet. Ausserdem ist das eh sinnvoll, weil ja die iDisk so schweinelangsam ist. Eigentlich könnte ich mir dann da auch gleich noch ein eigenes Gitorious installieren und da meine eigenen Repositories draufpacken. Erstmal geblogmarkt, aber sollte ich mir wirklich mal genauer angucken.
Sync BitBucket and GitHub - Ramanas Blog. Falls ich mal wechseln will, oder einfach nur Repositories sowohl für git als auch bitbucket zur Verfügung stellen will, dann könnte das hilfreich sein. Ausserdem auch einfach nur um mal Repositories zu konvertieren.
Issue Bucket. Gibt auch einen Client für BitBucket auf iOS, allerdings ist der iAd-Verseucht und leider sehr eingeschränkt in den Features. Und sieht eher wie eine Fingerübung in Oberflächengestaltung aus - sehr schlicht, man könnte fast "lieblos" sagen. Aber man kommt wenigstens an die wichtigsten Sachen zum Angucken ran und es kostet ja nichts.
iOctocat is your GitHub companion for the iPhone and iPod Touch. So langsam wird GitHub immer interessanter - auch für iOS gibt es einen interessanten github Client. Und der ist Open Source.
NancyFx/Nancy. Nancy ist dann schon deutlich näher an Sinatra oder Scalatra dran, geht aber eigentlich von C# aus - aber vielleicht kann man da ja auch einfach Module in F# schreiben, die Interoperabilität der beiden Sprachen ist ja sehr hoch (vergleichbar zu Scala und Java).
Bistro. Das ist jetzt ein Web Framework für F#, inspiriert von Django (unter anderem). Leider nicht so schlank wie Scalatra oder andere Mikro-Frameworks, aber vielleicht trotzdem mal einen Blick wert.
scalatra/scalatra. Das ist sowas wie Sinatra, nur eben nicht für Ruby sondern für Scala. Es hat direkte Unterstützung für Scalatest und bietet auch sonst einige nette Features und DSLs um schnell und simpel zum Ergebnis zu kommen - könnte gerade für die Erstellung von Webservices in Scala interessant sein.
The Larch Environment. Mal angucken - eine visuelle Programmierumgebung für Python. Interessantes Detail: Objekte werden nicht einfach nur textuell dargestellt, sondern über einen eigenen Mechanismus auch grafisch dargestellt - klingt ein bischen wie Output-Recording von CLIM. Zusätzlich ist das ganze eher als interaktives Dokument aufgebaut - also vergleichbar zu diversen Mathematik-Systemen (z.B. Mathematica oder Maxima). Leider nicht auf der normalen Python-Umgebung aufbauend, sondern auf Jython - also JVM als Runtime drunter.
django-gae2django - Django-based implementation of App Engine APIs - Google Project Hosting. Müsste ich mir mal angucken - damit kann man AppEngine Programme auf eigenen Servern laufen lassen, die dann auf Django basieren (die AppEngine-APIs werden also über Django-Mittel nachgebildet). Sicherlich besser als direkt den AppEngine Dev-Server zu benutzen.
DocumentClouds VisualSearch.js. Interessante JavaScript Library die ein recht mächtiges Suchfeld realisiert - man kann nach normalen Texten suchen oder nach Facetten der Daten (also spezifische Felder wie Titel oder Autor) mit automatischer Vervollständigung bei diesen Feldern. Das ist gerade für Dokumentensuche in teilstrukturierten Datenmengen interessant und die Darstellung im Browser ist nett gemacht. Guter Kompromiss für Suchfelder in die man eben nicht nur einfache Textsuchen ala Google reinhauen will, sondern unter Umständen eben auch Eingrenzungen auf Metadaten, ohne dass der Benutzer alle Optionen für Metadaten auswendig wissen muss in ihrer exakten Syntax.
Journey North: Monarch Butterfly - was passiert eigentlich in der Puppe aus der ein Insekt rauskommt? War eine Frage die mich immer als Kind fasziniert hat - die Raupe verdaut sich selbst und bildet die Nährlösung für die Formung des Schmetterlings aus einzelnen Zellen.
The Online Photographer: The Pentax Q System. Pentax springt in den Pool der kleinen Systemkameras, aber setzt einen oben drauf: so wie sie damals auf das Halbformat mit einer 110er Kassetten-Systemkamera antworteten, so liefern sie jetzt eine Kompakt-Systemkamera. Minichip mit Wechseloptik - und nach der Aufstellung der Linsen die am Start da sein werden ein bischen mehr auf Spaßkamera ausgelegt. Allerdings war auch die 110er Pentax damals zwar einerseits Spaßkamera, andererseits aber durchaus ernstzunehmen für manche Zwecke - den bei Pentax ist auch der Spaß durchaus gut gearbeitet. Von daher könnte das Q-System durchaus für den einen oder anderen interessant werden.
SourceTree | Mercurial and Git GUI for Mac OS X. Das sieht auch sehr gut aus - allerdings sind 45 Euro nicht gerade wenig. Dafür kann es aber Git, Mercurial und Subversion, vielleicht sollte ich es mir also doch mal angucken (gibt ja eine freie Testversion). Update: Kurztest von mir und das Teil gefällt mir wirklich sehr gut - man kann externe Diff Tools einbinden (Changes wird leider nur als Diff, nicht auch direkt als Merge unterstützt) und hat immer die gleiche Oberfläche, egal welcher Server dahinter hängt. Das nimmt Git einiges der Schmerzen. Versionstools werden intern mitgeliefert, man muss also nichtmal die Kommandozeilenversionen installiert haben. Sieht wirklich interessant aus.
GitHub for Mac. Bin ja überzeugter Bitbucket-User wegen Mercurial, aber das Teil hier sieht echt gut aus, da könnte man glatt nur wegen der Oberfläche auf git wechseln. Bin halt unten drunter doch oft Mäuseschubser und Optikklicker.
traits.js - Traits for Javascript. Interessantes Experiment für JavaScript - Traits bieten bessere Komposition als klassische Klassen und mehr Struktur als JavaScripts Prototype-OO - und hier werden die Features von Traits gut auf die vorhandenen JavaScript Features abgebildet (z.B. werden Objekte über Closures abgebildet). Nachteil wie bei allen solchen Spracherweiterungen ist natürlich, dass man in der Regel zwar selber damit arbeiten kann, aber eben andere Bibliotheken sie nicht nutzen und damit der Vorteil bei stark auf Fremdbibliotheken aufbauenden Projekten eher minimal ist.
Technical Discovery: Speeding up Python NumPy, Cython, and Weave. Interessant für Zahlenfresser die nicht unbedingt auf PyPy wechseln wollen, sondern in der normalen CPython Welt bleiben wollen. Gibt einen schnellen Vergleich von NumPy, Weave und Cython.
Circus Ponies NoteBook for iPad - Take Great Notes. Hmm, Circus Ponies NoteBook ist auf dem Mac eines der mächtigsten Notebooks (mit integriertem Outliner) - die Reviews für die iPad Version sind aber nicht so prall. Und es gibt keinen vernünftigen Sync - ich frag mich echt, warum Productivity-App-Hersteller nicht generell erstmal die Dropbox Lib einbauen, denn ohne brauchbaren Sync sind die Apps auch nicht wirklich brauchbar.