Kindle Development Kit - sowas könnte fast den Kindle (der DX ist ja schon recht ordentlich groß im Display) wieder interessant werden lassen. Allerdings kann Amazon immer noch Content remote löschen beim Kindle.
Archiv 9.1.2010 - 21.1.2010
ABCL-web - ein Framework um Java-Servlets mit Common Lisp zu programmieren, kann auch direkt .war Files erzeugen. Ich werd zwar warscheinlich nie jemanden in der Firma davon überzeugen können Common Lisp für Webentwicklung einzusetzen (da sind Chancen für Scala zumindestens in Teilbereichen schon deutlich höher), aber vielleicht kann man es ja mal für irgendwelche Hacks benutzen.
Armed Bear - nur damit ich es nicht wieder verliere, abcl ist ja das Java-Common-Lisp, aber unter dem Namen Armed Bear gibt es auch ein Lisp names XCL, einer neuen Native-Code-Compiler-Implementierung für X86 und X86-64 Systeme. Könnte ich mir mal irgendwann angucken (wobei es da ja schon viele nicht ganz kompatible Lisps gibt und mit CCL und sbcl zwei ziemlich gute Implementierungen da sind).
Auch CDU erhielt Spende aus der Hotelbranche - und da ist auch gleich klar, warum die Hotels nicht dran denken die niedrigeren Steuern an die Kunden weiterzureichen, nicht mal in Teilen: die ganzen Spenden müssen doch erst refinanziert werden!
Chipformate digitaler Kameras - nur mal als Größenvergleich und zur visualisierung des vorigen Links. Das ganze kleine Gefutze links unten - da tummeln sich die Kompaktkameras. (die Größen sind nicht 1:1 abgebildet, sonst wärs wohl zu schwer geworden die zu beschriften)
Clojure 1.1 and Beyond - wohin sich Clojure in der nahen und mittleren Zukunft entwickeln wird. Wobei einiges darin darauf hin deutet, das Clojure auf längere Zeit eher experimentellen Charakter haben wird - was beim produktiven Einsatz zu berücksichtigen ist, neue Versionen können durchaus größere Änderungen sowohl in der Sprache, der Basisbibliothek und vor allem dem Laufzeitverhalten haben.
Diffraction and Fraud in Digicams « Petavoxel - warum die hohen Megapixelzahlen bei Kompaktkameras mit Minichips aus physikalischer Sicht Bullshit sind. Da hilft dann auch ein Edelname auf der Linse nix mehr - und damit wird auch klar, warum Canon (mit der G11) und Panasonic (z.B. mit der LX3) anfangen die Megapixel-Zahl zu reduzieren.
pylint (analyzes Python source code looking for bugs and signs of poor quality.) (Logilab.org) - für die Kollegen geblogmarkt, denn wenn Code-Standards entworfen werden, ist es ja auch nett wenn man wenigstens einen Teil davon automatisch prüfen kann. Ausserdem kann pylint (eingeschränkte) statische Analyse von Python code machen und komisch aussehende Teile als Warnungen auswerfen.
research!rsc: Go Data Structures: Interfaces - eines der wirklich interessanten Features in Go: die Interfaces. Go-Interfaces haben einen entscheidenden Vorteil über Scala Traits, Java Interfaces, C++ Multiple Inheritance: sie werden nur als Interface definiert, aber implementierende Strukturen müssen nicht von diesen Interfaces erben. Interfaces können auch für Code definiert werden, der nicht im Source vorliegt und von ganz woanders kommt. Ich wünschte Scala hätte sowas bei den Traits. Das wäre ein gutest Stück näher an Duck Typing mit compile-time Prüfung. "Ich will hier ein Ding sehen, das folgende Funktionen mit folgenden Signaturen unterstützt" ist ja genau was Duck Typing ausmacht - nur das es z.B. bei Python oder Smalltalk oder anderen dynamischen Sprachen üblicherweise erst zur Laufzeit kracht.
taylanpince's django-doc-wiki at master - GitHub - klingt ganz interessant, ein Tool, das automatisch markdown Files in einem Repository ausliest und diese dann in einer Wiki-ähnlichen Struktur als Website präsentiert. Recht simple Basis, aber damit könnte man was machen.
Windows hole discovered after 17 years - na das ist doch mal ein netter Gruß aus der Vergangenheit. Privileg-Eskalation in den alten DOS-Boxen - zurück bis NT 3.1!
Anonymous Pro - Aktualisierung des schon recht angenehm zu lesenden Anonymous Font. Anonymous spricht speziell Programmierer an und hat daher feste Laufweiten für die Zeichen. Kritische Zeichen können sehr gut unterschieden werden. Wirkt recht aufgeräumt und auf mich augenfreundlicher als Monaco (jedenfalls in den größeren Größen die ich mitlerweile dann doch vorziehe)
Ein Echtzeit-Experiment: Der Mensch wird zum Datensatz - Hintergründe - Feuilleton - FAZ.NET - ich link ja eher selten zur FAZ, aber wenn die da nunmal den Frank Rieger über die Probleme der Datensammelwut schreiben lassen, dann muss man das mal mit einem Link honorieren, besonders wenn der Artikel wirklich richtig gut ist.
Java Image Processing - Blurring for Beginners - Tausend und ein Weg wie man ein Bild unscharf bekommt (was durchaus praktische Anlässe haben kann) mit Java Code als Beispielen.
jekaterinburg weather in march - Wolfram|Alpha - also Wolfram Alpha ist schon cool ...
Mercurial: The Definitive Guide - hab ich das echt noch nicht gelinkt? Naja, jetzt aber. Ein ganzes Buch - über Mercurial, mein bevorzugtes verteiltes Versionierungssystem. Kann man auch auf Papier oder als eBook kaufen. Oder halt hier online lesen.
aM laboratory - lovely. Totall sinnfreie und wunderschöne Zeitverschwendung.
Deutsche Verleger gehen gegen Google vor - wenn ich da was von "unseren aufwendig hergestellten Qualitätsinhalten" aus dem Mund eines BDZV Referenten lese, weiss ich echt nicht ob ich lachen oder weinen soll. Wie viele von den Wikipedia-Plagiaristen und DPA-Abdruckern produzieren denn noch überhaupt originären Inhalt? Ganz zu schweigen von Aufwand - hingeklatscht und hingeschmiert triffts besser. Bei der Marktdominanz von Springer bleibt jedenfalls nicht viel Presse mit eigenproduziertem Content übrig (Blöd hat zwar ne Menge selbst-gelogenes, aber das fällt dann wohl eher weniger unter Qualitätsinhalt und ich glaube der Aufwand hält sich bei denen auch in Grenzen - die Lügen sind in den seltensten Fällen originell)
jQuery 1.4 Released – The 14 Days of jQuery - neue Version von jQuery ist raus, viele Änderungen.
matthiask's feincms - erweiterbares CMS für Django. Sieht sehr interessant aus, speziell die recht kompakte Erweiterbarkeit um eigene Content-Typen.
ReusableAppResources - Django - Trac - genereller Startpunkt wenn man Django-Apps suchen will, von hier wird auf die verschiedenen Vergleichslisten verwiesen.
stream – Lazily-evaluated, parallelizable pipeline - interessante kleine Bibliothek für Python mit der Streams als lazy evaluation lists für bessere Parallelisierbarkeit von Code benutzt werden können. Und da Python ja durch das GIL bei Threads etwas limitiert ist, werden hier auch gleich Modelle für die Nutzung von Multiprocessing angeboten (durch unabhängige Prozesse lassen sich auch bei Python mehrere Cores effizient nutzen, allerdings zum Preis von Kommunikationsoverhead zwischen den Prozessen). Sicherlich wegen diverser Gründe mit Vorsicht einzusetzen - massive Parallelität sollte man damit eher vermeiden, denn da Systemthreads und Systemprozesse benutzt werden, ists nix mit tausenden von parallelen Abläufen (wie es z.B. mit Microthreads ja durchaus möglich wäre). Aber trotzdem für manche Probleme sicherlich sinnvoll nutzbar.
Kritik an Berufung von Privatenkassen-Manager ins Ministerium | tagesschau.de - da kann man nur noch kopfschüttelnd da sitzen und hoffen davon kein Schleudertrauma zu kriegen ...
fingernails in oatmeal, The Unsightliness of Merge Commits - und noch ein bischen mehr über git commit/push/rebase und all das Zeug rundherum. Auch hier recht gut auf Mercurial zu übersetzen.
Introducing Akka - Simpler Scalability, Fault-Tolerance, Concurrency & Remoting through Actors - schöner Überblick über ein recht interessantes Projekt in Scala (hab glaub ich schon mal drauf gelinkt) das STM, distributed Actors und das Erlang Supervisor Modell für Scala liefert. Sollte ich mir unbedingt mal angucken.
Linus on git pull/rebase - wann man rebase nutzt und wann man pull nutzt und wann man merge commits macht. Gilt ähnlich auch für Mercurial, wo die Probleme ähnlich sind. Nicht ganz so stark für darcs, das durch Patch-Reordering hier kleine Vorteile bietet.
Voigtlaender - Die offizielle Homepage - Bessa III Mittelformatkamera - und das dann der Herstellerlink mit deutschem Text. 2000 Euro. Autsch.
Voigtlander Bessa III - die Kamera ist an mir bei meinem Photokina-Besuch völlig vorbeigegangen. Ich hab mich wohl zu sehr auf Digital konzentriert. Voigtlander (ok, Cosina) und Fuji bringen eine neue 6x6 und 6x7 (umschaltbar!) Faltkamera raus! Mittelformat! Mit allen Schikanen die man von Sucherkameras heute gewohnt ist - also Parallaxenausgleich (sogar mit Anpassung der Rahmengröße!), Entfernungsmessung (rein optisch, kein AF hier), Belichtungsmessung. Klasse. Da kriegt man glatt Lust wieder Rollfilm zu belichten (zumal 6x7 wirklich Idealformat ist). Ich hab ja zu Hause meine alte Fuji Faltkamera liegen, aber die ist leider am Balgen defekt (nicht mehr Lichtdicht). Allerdings ist der Preis dann doch etwas heftig mit über 2000 US$ ... (und die Zukunftssicherheit von Rollfilm auch eher fragwürdig)
entrian.com - goto for Python - goto for Python - goto und comefrom für Python. Ja, war ein Aprilscherz, tuts aber trotzdem.
HeyChinaski.com » Blog Archive » HeyGraph Javascript and canvas graphing tool - Grafikbibliothek die Graphen automatisch ausrichtet und anzeigt. Könnte für das eine oder andere Projekt mal interessant werden.
Nailgun: Insanely Fast Java - wenn der JVM Start zu lange dauert kann Nailgun mit einer persistenten JVM helfen. Die läuft einfach weiter und kriegt gesagt was sie machen soll. Sollte dementsprechend auch mit Scala und Clojure helfen, gerade wenn man kleine Tools damit bauen will, die nicht jedesmal eine neue JVM starten sollen.
Parrot AR.Drone - Quadrotor helicopter with wifi and 2 cameras - AR.Drone games for iPhone and iPod touch - ein per iPhone über WiFi fernsteuerbarer Hubschrauber mit vier Propellern und zwei Kameras. Dazu noch Devkits für augmented Reality Spiele. Das will ich haben!
ProGuard - hilft beim runtertrimmen von standalone jars. Wobei das allerdings nicht so einfach mit Clojure oder Scala standalone jars ist, da gehört schon etwas Fummeln dazu scheinbar.
ScalaCheck User Guide - interessanter Ansatz für ein Unittest-Tool. Basiert auf den Ideen von QuickCheck für Haskell. Mir gefällt vor allem der Ansatz Tests als Eigenschaften zu deklarieren und dann Zufallsdaten (oder kontrollierte Testdaten) zu generieren und zu gucken ob diese Eigenschaften tatsächlich passen. Das ganze passt besonders gut zu rein funktionalem Code, da durch fehlende Seiteneffekte Funktionen sehr viel einfacher mit Zufallsinputs testbar sind.
technically.us Git - sling.git/blob - project/build/AssemblyProject.scala - nette kleine custom task für sbt um standalone-jars zu erzeugen.
Ursula - nicht unser aller Ex-Zensuristin, sondern eine Programmiersprache. Hier verlinkt auf einen Beispielcode. Wer glaubte das Anic schwer lesbar ist, Ursula gewinnt den Wettbewerb der unlesbarsten Programmiersprache locker. Komplett unverständlich wenn man es anguckt.
anic - Dataflow Sprache mit interessanten Features und (praktisch nicht existierendem, da die Codegenerierung fehlt) Compiler. Parallelisierung kommt bei Dataflow Languages automatisch frei Haus. Generell eine faszinierende Ecke von Sprachen die viel zu wenig Beachtung bekommt. Ob allerdings eine Sprache mit einer dermaßen Sonderzeichen-lastigen Syntax die Antwort ist ... jaja, ich weiß, Syntax ist nur Oberflächlich - aber tipp mal all die Sonderzeichen auf einer deutschen Tastatur!
Communities: DIY LabVIEW Crew: A Commodore 64 emulator written in LabVIEW - und weil wir gerade bei seltsamen X-in-Y Projekten sind: LabView ist eigentlich eine grafische Sprache zur Programmierung von Steuerungssystemen und Auswertungssystemen in Laborumgebungen. Und wird - in Abwandlung - zur Programmierung von Lego Robotern benutzt. Warum jemand überhaupt auf die Idee kommt, da drin einen C64 Emulator schreiben zu wollen, keine Ahnung. Aber er hats gemacht ...
MeshLab - und damit ich überhaupt eine Chance habe, hier ein Link auf eine Open Source Software zur Konvertierung und Bearbeitung verschiedenster Mesh-Formate. Gibts auch für OS X und zielt speziell auf die Bearbeitung und Reparatur von Meshes aus 3D-Scans - vermutlich wird das ja auch der Weg für mich sein, mein Modell aus SL über OpenGL-Capture aus dem realen Modell zu ermitteln.
qb.js: An implementation of QBASIC in Javascript (part 1) - Steve Hanov's Programming Blog - drin was drauf steht. Irgendjemand hat verdammt zu viel Zeit.
Schützt Handystrahlung vor Alzheimer? - gerüchteweise steigen die Mieten von Wohnungen unter Mobilfunk-Sendemasten ... (ob sich jetzt Altenheime den Mobilfunkbetreibern als Standorte für Antennen anbieten? Oder gibts demnächst das iPhone auf Rezept? Fragen die sich ganz automatisch stellen!)
Shapeways | passionate about creating - das ist einfach klasse. 3D Print auf diverse Materialien, sogar Sandstein und Metall. Jetzt muss ich nur noch meinen Avatar aus SL in ein Format exportiert bekommen, mit dem ich da was werden kann!
Alloy Analyzer - wer sich mal ansehen will, wieweit automatische Beweise und automatisches Reasoning auf Softwaremodellen heutzutage ist, guckt sich das Projekt mal an. In Java geschrieben, Installer für die großen Systeme verfügbar. Kommt mit einer deklarativen Sprache in der die Modellspezifikation gemacht wird und automatischen Konfliktfindern - also ein Modell, welches fehlerhaft ist, wirft Gegenbeispiele aus die mindestens eine der Randbedingungen verletzen. Und das Tutorial liefert nicht irgendwelche abstrakte praxisferne Beispiele, sondern z.B. ein Modell eines Datesystems mit verschiedenen Operationen darauf.
Apples and Bananas - sollte mal wieder ein Politiker Äpfel mit Bananen vergleichen, könnte dieser Artikel über Bilderkennungsalgorithmen zur Unterscheidung von Äpfeln und Bananen helfen!
Google Voice Blog: Google welcomes Gizmo5 - ganz an mir vorbeigegangen: Google hat sich Gizmo5 gekauft. War lange zeit der Gegenspieler zu Skype, auf SIP statt proprietär-Protokollen aufgebaut. Firmengründer war der gleiche Michael Robertson, der auch mp3.com, mp3tunes.com und Linspire gegründet hat - und häufig eher etwas dubios rüber gekommen ist (speziell die Abwicklung von Linspire ist wohl immer noch in der Diskussion, da die Aktionäre größtenteils leer ausgegangen sind). Gizmo5 hat übrigens auch ejabberd benutzt für die IM-Infrastruktur - so bin ich da drüber gestolpert.
[jdev] Wikipedia deletions - mal wieder Wikipedia Blockwarte unterwegs. eJabberd wegen unwichtig löschen? Ist ja nur eine der verbreitetesten Jabber-Daemonen und Jabber selber ist ja nur das Protokoll hinter Google Talk und Google Wave, was ist daran schon wichtig ...
Meine OpenID - nur so als for future use, damit ich meinen eigenen OpenID Provider wiederfinde wenn ich den mal brauche ...
Nullege: A Search Engine for Python source code - ganz nützlich, wenn man zu einem API gucken will wie es verwendet wird in verschiedenen Projekten. Manchmal sind Dokumentationen etwas unklar und Beispielsource angucken macht die Sache klarer.