fastutil - manchmal sicherlich ganz praktisch, Collections für Java die auf primitiven Typen aufsetzen und diese Collections dann platz- und performance-effizient implementieren. Also z.B. sowas wie ein Array von Bytes. Oder ein Map von Strings auf Booleans. Die Library hat so etwas über 1000 Kombinationen parat ...
Linkblog - 13.1.2010 - 26.1.2010
Have you seen the old men | Spreeblick - Lesenswertes zum Thema wie unsere Gesellschaft und Politik mit Armut umgeht.
Christopher Blizzard · HTML5 video and H.264 – what history tells us and why we’re standing with the web - mehr über die Lizenz-Problematik mit H264
IronPython in Action: Front Page - garnicht mitbekommen, es gibt mitlerweile ein Buch über IronPython, die Version von Python die in Microsofts .NET Umgebung läuft. Könnte für einige Firmenprojekte interessant werden, vor allem da es die ersten Erfolge von Django auf IronPython ja schon 2008 gab ...
Zensur im Namen des Jugendschutzes: Stellungnahme zum Jugendmedienschutz-Staatsvertrag - Arbeitskreis gegen Internet-Sperren und Zensur (AK Zensur) - und wieder dreht die Politik am Rad und meint das gut gemeint mit gut gemacht gleichzusetzen wäre. Was da in der Pipeline ist, wäre ein gefundenes Fressen für Denunzianten und Abmahnanwälte, aber hätte mit Jugendschutz genau garnichts zu tun.
Alle Atommeiler sollen offenbar zunächst am Netz bleiben - und weiter wird geschachtert und gelogen. Weil, den Energiemonopolisten mit ihren Milliardengewinnen muss man ja noch mehr Geld zuschachern - und auf keinen Fall kann man ihnen die Stillegung der auf Steuerzahlerkosten gebauten Reaktoren zumuten, denn dann müssten sie ja zum ersten Mal selber was von ihrem Geld investieren! Wo kommen wir denn da hin!
annalist - "Wir werden blockieren" - "Zur 'Meinungsfreiheit' der Nazis: Ich sehe eine Ideologie, die Menschenrechte nicht nur missachtet sondern ihnen offen widerspricht nicht als “Meinung”, die durch Menschenrechte gedeckt ist. Naziideologie ist keine Meinung sondern ein Verbrechen." - aber unser Rechts-Staat sieht das natürlich anders und deshalb werden Parteizentrale der Linken in Sachsen durchsucht und Abgeordnete und minderjährige Plakatierer verhaftet. Weil, ist ja klar, menschenverachtende Ideologien muss man natürlich tolerieren, aber die Meinungsäußerung gegen solchen braunen Dreck ist natürlich nicht von der Verfassung gedeckt. Sind ja schließlich die ganz schlimmen linken Extremisten!
Armin Maiwald wird 70 - und dem gratulier ich doch gerne, dem Mit-Erfinder der Sendung mit der Maus!
Facebook Gives Harman His Name Back, Apologizes - schaut so als ob die tatsächlich mal das richtige getan haben ...
High-Level Virtual Machine (HLVM) - interessantes Projekt für eine virtuelle Maschine. In OCaml geschrieben.
michaelv.org - sieht aus wie Windows 3.1 und hat eine Reihe von klassischen Windows-Programmen. Aber alles in JavaScript gedengelt. Ja, da ist ein DOS Prompt. Und ein Webbrowser. Und alles mögliche andere. Einfach mal rumklicken.
Trellis - Library zur eventgesteuerten Programmierung in Python. Die Idee ist, statt handgedengelter Callbacks einfach Regeln zu formulieren, die auf Objekte angewendet werden und bei entsprechenden Änderungen werden automatisch diese Regeln ausgeführt. Dabei sorgt das System für saubere Trennung dieser Events, so das keine Deadlocks auftreten.
Closure Compiler - eigentlich eher ein JavaScript-Optimizer denn Compiler - es entfernt überflüssiges, kompaktiert den Code, bereinigt einige langsame Dinge und ersetzt sie durch effizientere Varianten und liefert auch noch einige statische Tests auf dem JavaScript Code. Mal für Firmenprojekte geblogmarkt.
django-history-tables - könnte für ein Projekt in der Firma interessant werden, dort gibt es auch die Anforderung einer Historie von Datenänderungen.
EZ430-Chronos - Texas Instruments Embedded Processors Wiki - technische Details zu dem tragbaren Embedded System von TI.
Facebook Snatches User’s Vanity URL And Sells It To Harman International - tja, Facebook fällt mal wieder durch hochgradigen Schwachsinn und User-Verarsche auf. Bin ja mal gespannt wann mein RFC1437 vanity URL Dingens verschwindet ... (ich benutz Facebook ja nur als Super-Aggregator meiner diversen Außenstellen und auch da nur eher nebenbei - hab ja auch die gigantische Menge von ganzen 2 Friends!)
How to create offline webapps on the iPhone - grauenhaftes Seitenlayout, aber interessante Doku wie man für das iPhone Web-Anwendungen baut, die dank HTML5 Application Cache auch dann funktionieren wenn das iPhone offline ist. Nachdem ich einen Moment überlegt hab, ob ich mir so eine TI Uhr kaufen will, und mich drüber ärgerte das die nicht als Taschenuhrversion existiert, hab ich dann wieder klar denken können und mich an mein iPhone erinnert ... (manchmal ist das naheliegende zu naheliegend)
Inheritance Patterns in JavaScript - interessanter Artikel darüber, welcher Klassen- und Vererbungsstrategie in JavaScript der Vorzug zu geben ist. Hauptsächlich für JavaScript-Framework-Hacker interessant, denn bei den anderen wird in der Regel eine Technik schon von den Frameworks gewählt worden sein.
Syntensity - sieht interessant aus, sowas wie ein Open-Source-Gegenpol zu Unity 3D. Derzeit noch kein Mac Client, aber bei Open Source sind die Chancen recht hoch das was kommt.
TI hits home run with Chronos sportswatch wireless dev kit - das ist interessant. Eine Armbanduhr zum Hacken - Wireless, Accelerometer, Druck und Höhensensoren, LCD Anzeige, Temperatursensor, und ein Developer-Kit und Tools (Hardware-Tools in diesem Fall). Und auch noch bezahlbar (50 Dollar für die Uhr!). Wer also mit einem kleinen Embedded System rumhacken will, und das dann immer dabei haben will, warum nicht eine Armbanduhr nehmen?
Well, I'm Back: Video, Freedom And Mozilla - warum Firefox keine Unterstützung für H264 beinhaltet. Ich persönlich bin ja der Meinung, die technisch vorhandenen Codecs des installierten Systems zu benutzen und dem Benutzer damit zu überlassen welche Codecs er haben will wäre besser. Ich verstehe allerdings den argumentativen Standpunkt von Mozilla in dieser Sache, bin aber der Meinung das es in diesem Fall eher negativ für die Verbreitung von Firefox sein könnte - oder auf Dauer zu einem Fork von Firefox und Firefox+OS-Codecs kommen könnte. Seine Argumente über "pushes software freedom issues from the browser to the platform" ist in meinen Augen Bullshit - denn er selber schreibt über den Flash-Video-Fallback, der ein nicht-freies Flash-Plugin erfordert ...
A Postfunctional Language - in letzter Zeit gibts häufiger mal Diskussionen, ob Scala wirklich eine funktionale Sprache ist. Hier die Aussagen dazu vom Erfinder von Scala selber, Martin Odersky.
Export ban for useless 'bomb detector' - toll, Wünschelruten gegen Bomben. Das bringt ja auch dann wirklich so viel - und die merken erst jetzt, das die Dinger keine Batterien haben? Ich mein, was haben die Leute die den Mist gekauft haben und die Milliionen dafür bezahlt haben in ihrem Schädel? Wasser? Man probiert doch Bombemdetektoren aus und guckt ob sie sich auch wirklich im Einsatz bewähren und kauft erst dann die große Charge.
Giant Knife 16999 Wenger Swiss Army Knife - ähm. Sozusagen ein Schweizer Offiziers Zweihänder oder so ...
The Collection - Leatherman - und wie wäre es mit Leathermans aus Silber oder Gold mit Silber? Ich mein, was ist denn schon ein 12000 Dollar Leatherman unter Freunden ...
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.
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 ...