Archive 9.1.2010 - 22.1.2010

Giant Knife 16999 Wenger Swiss Army Knife - umm. So something like a Swiss officer's two-handed sword or so ...

The Collection - Leatherman - what about Leathermans in silver or gold with silver? I mean, what's a $12,000 Leatherman among friends ...

Kindle Development Kit - this could almost make the Kindle (the DX already has quite a large display) interesting again. However, Amazon can still remotely delete content on the Kindle.

ABCL-web - a framework to program Java servlets with Common Lisp, can also generate .war files directly. I probably won't be able to convince anyone at the company to use Common Lisp for web development (the chances for Scala are at least significantly higher in some areas), but maybe it can be used for some hacks.

Armed Bear - just so I don't lose it again, abcl is the Java-Common-Lisp, but under the name Armed Bear there is also a Lisp called XCL, a new native code compiler implementation for X86 and X86-64 systems. I could take a look at it sometime (although there are already many not entirely compatible Lisps and with CCL and sbcl two quite good implementations).

CDU also received a donation from the hotel industry - and it's immediately clear why hotels don't even think about passing on the lower taxes to customers, not even in part: all those donations have to be refinanced first!

Chipformate digitaler Kameras - just for size comparison and to visualize the previous link. All the small fuss down there on the left - that's where the compact cameras are. (the sizes are not depicted 1:1, otherwise it would probably have been too difficult to label them)

Clojure 1.1 and Beyond - where Clojure will develop in the near and medium-term future. Much of this indicates that Clojure will have an experimental character for a longer period of time - which should be considered when using it in production, as new versions can indeed have significant changes both in the language, the base library and above all the runtime behavior.

Diffraction and Fraud in Digicams « Petavoxel - why the high megapixel numbers in compact cameras with mini chips are physically nonsense. Then even a high-end name on the lens won't help - and this also makes it clear why Canon (with the G11) and Panasonic (e.g. with the LX3) start to reduce the megapixel number.

Kvardek Du: How a Common Lisp Programmer Views Users of Other Languages

LEGO Universe allows kids to fight with their imagination - will haben.

pylint (analyzes Python source code looking for bugs and signs of poor quality.) (Logilab.org) - blogged for the colleagues, because when code standards are designed, it is also nice if you can at least automatically check part of them. In addition, pylint can perform (limited) static analysis of Python code and throw out warnings for parts that look strange.

research!rsc: Go Data Structures: Interfaces - one of the really interesting features in Go: the interfaces. Go interfaces have a decisive advantage over Scala traits, Java interfaces, C++ multiple inheritance: they are only defined as an interface, but implementing structures do not have to inherit from these interfaces. Interfaces can also be defined for code that is not present in the source and comes from somewhere completely different. I wish Scala had something like this with traits. That would be a big step closer to duck typing with compile-time checking. "I want to see a thing here that supports the following functions with the following signatures" is exactly what duck typing is all about - it's just that in Python or Smalltalk or other dynamic languages, it usually only crashes at runtime.

taylanpince's django-doc-wiki at master - GitHub - sounds quite interesting, a tool that automatically reads markdown files in a repository and presents them in a wiki-like structure as a website. Quite a simple base, but you could do something with it.

Windows hole discovered after 17 years - well, that's a nice greeting from the past. Privilege escalation in the old DOS boxes - back to NT 3.1!

Anonymous Pro - Update of the already quite pleasant to read Anonymous font. Anonymous specifically targets programmers and therefore has fixed character widths. Critical characters can be easily distinguished. It looks quite tidy and, to me, more eye-friendly than Monaco (at least in the larger sizes that I now prefer)

An experiment in real-time: The human becomes a data set - Background - Feuilleton - FAZ.NET - I rarely link to FAZ, but if they let Frank Rieger write about the problems of data collection mania, then you have to honor it with a link, especially if the article is really very good.

Java Image Processing - Blurring for Beginners - A thousand and one ways to blur an image (which can indeed have practical uses) with Java code examples.

Jekaterinburg weather in March - Wolfram|Alpha - also Wolfram Alpha is already cool ...

Mercurial: The Definitive Guide - haven't I linked this yet? Well, now I have. An entire book - about Mercurial, my preferred distributed version control system. You can also buy it on paper or as an eBook. Or just read it online here.

aM laboratory - lovely. Totally pointless and wonderfully wasteful of time.

German publishers take action against Google - when I read something about "our elaborately produced quality content" from a BDZV spokesperson, I really don't know whether to laugh or cry. How many of the Wikipedia plagiarists and DPA reprint publishers still produce original content at all? Not to mention effort - slapped together and scribbled down would be more accurate. With Springer's market dominance, not much press with self-produced content remains (Blöd may have a lot of self-grown content, but that probably falls less under quality content and I believe the effort is also limited there - the lies are original in the rarest cases)

jQuery 1.4 Released – The 14 Days of jQuery - new version of jQuery is out, many changes.

matthiask's feincms - extensible CMS for Django. Looks very interesting, especially the quite compact extensibility for custom content types.

ReusableAppResources - Django - Trac - general starting point if you want to search for Django apps, from here you are referred to the various comparison lists.

stream – Lazily-evaluated, parallelizable pipeline - interesting small library for Python where streams are used as lazy evaluation lists for better parallelizability of code. And since Python is somewhat limited by the GIL when it comes to threads, models for using multiprocessing are also offered here (independent processes allow multiple cores to be used efficiently in Python, but at the cost of communication overhead between the processes). Certainly to be used with caution for various reasons - massive parallelism should rather be avoided with it, because since system threads and system processes are used, there is no way to have thousands of parallel processes (as would be possible with microthreads, for example). But still certainly useful for some problems.

Criticism of Private Health Insurance Manager's Appointment to Ministry | tagesschau.de - you can only sit there shaking your head and hope not to get whiplash from it ...

fingernails in oatmeal, The Unsightliness of Merge Commits - and a bit more about git commit/push/rebase and all that stuff around it. Also quite well translatable to Mercurial.

Introducing Akka - Simpler Scalability, Fault-Tolerance, Concurrency & Remoting through Actors - nice overview of a quite interesting project in Scala (I think I've already linked to it) that provides STM, distributed Actors and the Erlang Supervisor Model for Scala. I should definitely check it out.

Linus on git pull/rebase - when to use rebase and when to use pull and when to make merge commits. Similarly applies to Mercurial, where the problems are similar. Not quite as much for darcs, which offers small advantages here through patch reordering.

Voigtlaender - The official homepage - Bessa III medium format camera - and then the manufacturer link with German text. 2000 Euros. Ouch.

Voigtlander Bessa III - the camera completely passed me by during my Photokina visit. I was probably too focused on digital. Voigtlander (ok, Cosina) and Fuji are bringing out a new 6x6 and 6x7 (switchable!) folding camera! Medium format! With all the bells and whistles you're used to from rangefinder cameras today - parallax correction (even with frame size adjustment!), distance measurement (optical only, no AF here), exposure measurement. Great. It makes you want to shoot roll film again (especially since 6x7 is really the ideal format). I have my old Fuji folding camera at home, but unfortunately it's defective in the bellows (no longer light-tight). However, the price is quite steep at over 2000 US$ ... (and the future security of roll film is rather questionable)

entrian.com - goto for Python - goto for Python - goto and comefrom for Python. Yes, it was an April Fool's joke, but it actually works.

HeyChinaski.com » Blog Archive » HeyGraph Javascript and canvas graphing tool - A graphics library that automatically aligns and displays graphs. Could be interesting for one or the other project.

Nailgun: Insanely Fast Java - if the JVM start takes too long, Nailgun can help with a persistent JVM. It simply keeps running and is told what to do. Should therefore also help with Scala and Clojure, especially when you want to build small tools that don't want to start a new JVM every time.

Parrot AR.Drone - Quadrotor helicopter with wifi and 2 cameras - AR.Drone games for iPhone and iPod touch - a quadrotor helicopter controllable via iPhone over WiFi, featuring four propellers and two cameras. Additionally, it includes development kits for augmented reality games. I want one!

ProGuard - helps with trimming down standalone jars. Although this is not so easy with Clojure or Scala standalone jars, it seems you need to tinker a bit.

ScalaCheck User Guide - an interesting approach to a unit testing tool. Based on the ideas of QuickCheck for Haskell. I particularly like the approach of declaring tests as properties and then generating random data (or controlled test data) and checking whether these properties actually fit. This works particularly well with purely functional code, as functions are much easier to test with random inputs due to the lack of side effects.

technically.us Git - sling.git/blob - project/build/AssemblyProject.scala - nice small custom task for sbt to create standalone jars.

Ursula - not our former censor, but a programming language. Here linked to an example code. Who believed Anic is hard to read, Ursula wins the competition of the most unreadable programming language easily. Completely incomprehensible when you look at it.

anic - Dataflow language with interesting features and (practically non-existent compiler, as code generation is missing). Parallelization comes automatically with dataflow languages. Generally, a fascinating corner of languages that receives far too little attention. Whether a language with such a syntax heavy on special characters is the answer... yes, I know, syntax is only superficial - but try typing all those special characters on a German keyboard!

Communities: DIY LabVIEW Crew: A Commodore 64 emulator written in LabVIEW - and while we're at it with strange X-in-Y projects: LabVIEW is actually a graphical language for programming control systems and evaluation systems in laboratory environments. And is - in variation - used for programming Lego robots. No idea why someone would even come up with the idea of writing a C64 emulator in it. But they did it ...

MeshLab - and so that I have a chance at all, here is a link to an open source software for converting and editing various mesh formats. Also available for OS X and specifically targeting the editing and repair of meshes from 3D scans - this will probably also be the way for me to determine my model from SL via OpenGL-Capture from the real model.

qb.js: An implementation of QBASIC in Javascript (part 1) - Steve Hanov's Programming Blog - that's what it says. Someone damn well has too much time.

Does cell phone radiation protect against Alzheimer's? - rumors say that rents for apartments under mobile phone masts are rising ... (are nursing homes now offering themselves to mobile phone operators as locations for antennas? Or will there soon be the iPhone on prescription? Questions that automatically arise!)

Shapeways | passionate about creating - this is just great. 3D printing on various materials, even sandstone and metal. Now I just need to export my avatar from SL into a format that I can use there!

Alloy Analyzer - if you want to see how far automatic proofs and automatic reasoning on software models have come today, check out this project. Written in Java, installers available for major systems. Comes with a declarative language for model specification and automatic conflict finders - so a faulty model throws out counterexamples that violate at least one of the boundary conditions. And the tutorial doesn't deliver any abstract, practice-remote examples, but for example a model of a date system with various operations on it.

Apples and Bananas - if a politician should once again compare apples with bananas, this article about image recognition algorithms for distinguishing apples from bananas could help!

Google Voice Blog: Google welcomes Gizmo5 - completely passed me by: Google has acquired Gizmo5. For a long time, it was a competitor to Skype, based on SIP instead of proprietary protocols. The company's founder was the same Michael Robertson who also founded mp3.com, mp3tunes.com, and Linspire - and often came across as somewhat dubious (especially the winding up of Linspire is still under discussion, as the shareholders largely came away empty-handed). Incidentally, Gizmo5 also used ejabberd for the IM infrastructure - that's how I stumbled upon it.

[JDev] Wikipedia deletions](http://mail.jabber.org/pipermail/jdev/2009-December/087962.html) - again Wikipedia deletionists at work. Delete eJabberd because it's unimportant? It's just one of the most widespread Jabber daemons and Jabber itself is just the protocol behind Google Talk and Google Wave, what's so important about that ...