Linkblog - 1.12.2011 - 28.2.2012

41MP Nokia 808 smartphone hints at pixel-binning future for small sensor cameras. I also raised an eyebrow at first reading - 41 megapixels in a phone sounds ridiculous, and Symbian doesn't really sound future-oriented. DPreview takes a closer look at what these 41 megapixels actually mean - the chip is significantly larger, so the pixels aren't really smaller than those in normal 8-megapixel phone cameras. Multiple pixels are combined to create a typical target image in the 5-8 megapixel range (the full resolution is also available as an option) to improve noise and other artifacts. Therefore, it is most comparable to the Foveon concept, where the pixels are simply placed in front of each other instead of next to each other. However, Symbian is not future-proof regardless of the photo part.

Temporal Keys, Part 2 | Experimental Thoughts. One always learns new things about PostgreSQL - this time PERIOD, a data type that encompasses time spans, and EXCLUDES, another form of constraint on tables, with which overlaps of time periods can be avoided in the data design together with PERIOD. In Dynamics AX, there is something similar in the form of Date Effectivity, which goes a bit further because it also includes automatic creation of new areas, gap-free timelines, etc., while this is only the basics for non-overlapping data records. On the other hand, this can be used much more broadly, as you can formulate any EXCLUDES constraints.

ResponsiveSlides.js · Responsive jQuery slideshow. I am a fan of Bin and Lightbox, but I also like this small library at first glance - it is simple and easy to use and does not do a thousand things at once, but simply shows images in a slideshow. Specifically for animating header graphics, for example, this could be quite interesting.

6: Sony infrared conversion service. Interesting - if I ever have a Sony (and have 250 euros to spare - so probably never), I could take advantage of this. Infrared photography without filters is quite interesting.

The Julia Manual. Hmm, not yet sure what to think of this language, but it does sound interesting - a kind of Matlab, but based on LLVM and linguistically significantly renovated, with some interesting ideas (e.g., Julia expressions are stored internally in a Julia-specific data structure, so that real macros can be implemented).

German Keyboard Layout under Parallels, VMWare, BootCamp and VirtualBox - Info - Schirmacher. Because I needed it just now - this moves the special characters that you do need occasionally when programming to keys that are more Mac-like. Not perfect, but much better than the standard PC layout, as the MacBook usually doesn't have any markings for these special characters, so you would otherwise search for them in vain.

Mac Developer Tips » How to Uninstall Xcode. There is also an official way to get rid of XCode. Just linking to it, because unfortunately XCode can dynamically load what you need from the internet, but not get rid of it - for this you are allowed to delete the XCode stuff and then reinstall it (smaller). Just the iOS stuff alone takes up 6G, so you can save a lot if you don't plan to program the iPhone.

Xcode, GCC, and Homebrew. Looks good - Apple provides a bare-bones GCC package with all frameworks, so you no longer need to load the monster installer from the AppStore, but can make do with a 170 MB package and still use Homebrew to compile open source OSX programs (at least as long as they don't use explicit XCode features). Especially if your own programming takes place in other IDEs and with other languages, it's quite nice to be able to do without the 8 GB that an installed XCode occupies. I'm seriously considering whether I should also give my Air this slimming cure.

stochastic-technologies/goatfish - GitHub. Looks interesting, a small Python module that uses SQLite as a persistence layer for arbitrary objects. Not at the level of an ORM, but rather at the level of a more complex key-value store. Quite interesting for the usual small hacks where you need object persistence quickly, but due to the simple structures, you don't see much sense in a developed data modeling - or if you don't know yet how the structures will look like during prototyping.

Hidden in this Concatenative IRC Log from 6.1.2012 you can find something from Slava, the Factor developer, about its (so Factor, not Slava) future - a few bug fixes for 0.95 he still plans, but then for him the project is basically finished. Too bad, because Factor was always interesting to play around with and one of the more exciting language projects, but in recent times it has become somewhat quiet around it. Now I know why. Whether the community has enough power to continue where he stops is rather questionable given the size of the community - yes, a few people are active and also quite more active than him, but Slava was often the driving force (haha) in the development and integration of new concepts and ideas.

generateDS 2.7b : Python Package Index. A colleague just found this, looks quite interesting - it generates Python class structures from XSD files. Not that something like this is absolutely necessary in Python, but we were just discussing how to generate a Django model from an XSD, this tool could be a starting point.

zenphoto-publisher - Lightroom 3 Publisher plugin for Zenphoto. Maybe I should take a look at this - with this I can export directly from Lightroom to ZenPhoto. I usually have my pictures in my blog, but for larger quantities it's a bit cumbersome, so an alternative site for galleries would be quite practical, especially since I can then integrate ZenPhoto into WordPress again.

"Collection Publisher" Lightroom Plugin. Hmm, that looks good - I could easily manage my Photos folder in Dropbox from Lightroom if you let it create virtual copies automatically (which you can specify in the Collections), you don't even step on each other's toes when it comes to changes (and it doesn't take up extra space in Lightroom, only in the Dropbox folder).

CoRD: Remote Desktop for Mac OS X. Hmm, let's take a look, it should be good - better than Microsoft's client.

I still like to read him and think he was one of the better Extra 3 people. Here he explains why copyright might not be so great from the perspective of a copyright holder. Draw your own conclusions about what this says about the EU Commission, which still wants to ram through ACTA at all costs and is now pouting because of the protests.

Because it's not a copyright but a rights management agreement. Example: The Süddeutsche Zeitung printed interviews and texts about productions from my company. We put it - proudly, of course - on our homepage. A law firm sent us a cease and desist letter, and we pay the Süddeutsche 500 Euros each time for content that is based on our copyright. Another example: Westdeutscher Rundfunk, in a big publisher appeasement of the WAZ group, opened its archives. Result: If I show an old contribution of mine, both the Westdeutsche Allgemeine Zeitung and WDR can sue me; the only one who definitely does not have rights to his work is me - the copyright holder. ACTA significantly strengthens the power of marketers against consumers and copyright holders; it is a suicide attempt for idea-driven economies. The fury of many pirates to abolish copyright at the same time makes it difficult to demonstrate.

via Die Woche: Wie geht es uns, Herr Küppersbusch? - taz.de.

IdleX - IDLE Extensions for Python. There is actually a project that aims to enhance IDLE and teaches the rather neglected standard IDE of Python a whole lot of new tricks.

Practical Common Lisp - Crawling InterfaceLift with Common Lisp - second try. Interesting run through a simple project in Common Lisp using Quicklisp. It really makes a lot of things easier than if you program raw in CL and manage all the packages and systems by hand. However, you should not necessarily run the example script, as it violates the terms of use of InterfaceLift (and is not really nice to their servers).

arskom/rpclib - GitHub. Since I recently had soaplib, this is the successor to it. The colleagues have probably already gained some experience with it (positive experience).

Howto to rebuild Debian packages. Since I had to do it again - especially important is the hint about dch --local blah, so that you get version numbers that differ from the official ones and are not automatically overwritten with the current version from the Debian repository.

Laurence Tratt: Fast Enough VMs in Fast Enough Time. Interesting article by the developer of Converge (a language that picks up and combines ideas from Lisp - macros - and Python - indentation for scope and parts of the syntax) about RPython, the base language behind PyPy. This way you also understand a bit more what role RPython plays exactly (namely the implementation language for interpreters that automatically get a JIT).

Google Wallet PIN cracked on rooted Android devices | The Verge. Well, that was quick. I can't help but smirk. Google should really have better people implementing such things.

ladon 0.7.0 : Python Package Index. And this one sounds a bit like my old Toolserver - so a simple way to provide Python code as a service. SOAP is also supported.

suds. Just a SOAP client for Python, but explicitly mentions the important binding styles (RPC/Literal, RPC/Encoded, and Document/Literal).

About — soaplib v2.0.0beta documentation. And another newer SOAP library for Python, also with significantly more activity than SOAPpy.

PySimpleSOAP - Python Simple SOAP Library. Sounds like I want to check this out, as it includes some features missing in SOAPpy (and since SOAPpy is no longer being developed, this is interesting).

Smile and SmileLab Home Page. Hmm, maybe not uninteresting for playing around - data analysis and graphical preparation with AppleScript in a scripting environment. Features look quite interesting (diagrams, XML, TCP, HTTP server and client ...) out.

Tour de France: Cycling pro Contador banned for two years. Good that this silly fuss (caused only by the Spanish cycling federation acting in a rather absurd manner) is finally over. Even if the revocation of Tour victories only elicits yawns these days (and Armstrong was unfortunately allowed to keep his wins).

python4delphi - Embedding Python within a Delphi application. Tutorials allegedly also work with Lazarus and Free Pascal, and probably rudimentary also under OSX. Could be interesting for one of these crazy projects that keep haunting me.

Lawyers consulted for this research are also surprised that Wulff allegedly made his name available free of charge to a law firm for more than 15 years, without being compensated for it or making arrangements for a later return to the firm. For example, the managing director of a large law firm that employs former government members calls Wulff's account to tagesschau.de "absolutely unrealistic": "That a politician provides his reputation and thus also his contacts out of pure charity is not known to me, lavish fees are usual" explained the lawyer, who does not want to be named.

via Bundespräsident Wulff verschwieg Beziehung zu Geerkens. Sometimes you don't need to write anything more about the news, sometimes they just speak for themselves.

Iñigo Quilez - fractals, computer graphics, mathematics, demoscene and more. Interesting small programs that generate beautiful images and provide some background and mathematical foundations for some of the algorithms. And also a lot of other interesting graphics stuff. Something to browse through for quiet hours and perhaps some inspiration to program one thing or another (where he provides the basics).

Technical Documentation of the Pistos Diaspora forks with a whole lot of interesting features that go beyond the normal Diaspora code. There are some things in there that really interest me, maybe I should think about moving to Amsterdam. Therefore, here's a blog reminder.

FPC New Features 2.6.0 - Lazarus wiki. And further nice changes in FreePascal, especially the new Delphi features will certainly interest one or the other, or also the further expanded ObjectPascal dialect for Cocoa programming under OSX. If now Lazarus switches from Carbon to standard Cocoa and thus also becomes fully 64-bit, it will become really interesting even for normal work with it. In any case, if you don't like Objective-C. Or if you prefer the Delphi-like environment of the XCode environment.

Sony "approves" the launch the new hybrid AlphaNex mount camera (sort of fullframe NEX-7!). It's much more fun when you simply release new cameras instead of finally expanding the system. Somehow you might get the idea that Sony is spreading itself too thin with the new camera models. Sure, they are great - the 5N is really nice and the 7 sounds really good and this one also sounds interesting. But I can't help but notice that the 50/1.8 is still not available in Germany and some other lenses are also not yet available - and even if all the announcements are finally here, there are still big gaps in the setup. A system only truly comes to life when it can be used as a system - otherwise it is at best a kind of "configurable compact". And the system is actually too interesting to be parked on the sidelines. For me, this has led to a reorientation towards my Micro-4/3 equipment, because there is clearly more movement there at the moment (and thus the chance that the holes that bother me will be filled sooner).

charles leifer | Updates to peewee, including atomic updates, select related and basic transactions. The small ORM for Python is slowly growing up and learning transactions, atomic updates and select related. Very interesting for smaller tools because you can simply save the entire infrastructure of a full Django project and copy the ORM as a single Python file.

Linux L2TP/IPSec with iPhone and Mac OS/X clients | PEEN.NET. Helped me install an L2TP/IPSec Gateway on my server that works with the iPhone. This is already a quite nice solution to not shout all data out loud at hotspots. However, due to the deactivated NAT transport in the Ubuntu package (due to security concerns), it is a bit fiddly because you really have to manually compile the strongswan package. Additionally, it's a bit annoying that you always have to manually activate the VPN on the iPhone - it doesn't stay active at the top. What you actually want with VPNs is for them to always be active - because otherwise you end up sending data accidentally over unencrypted and listenable paths.

Distribunomicon | Learn You Some Erlang for Great Good!. Interesting article about distributed processing with Erlang and the pitfalls you can fall into (e.g. the note that remote links can produce an event storm if the network fails over which the remote links go).

Samsung Galaxy S Phones Ice Cream Sandwich Update. Well, HTC has already done the same for a series of devices with Gingerbread - just because their stupid overlay story doesn't work with the new system on older hardware (and we're not talking about really old hardware - these are devices that are a year old and usually still under contract with the provider!), there's simply no new operating system. Because this silly overlay story is much more important than current system releases. And not only are the users being screwed - the developers too, because since these devices are not really old, they then have a beautiful jungle of systems to deal with. And users will eventually have to root and install Cyanogenmod or similar if they don't want to live with old (and yes, unfortunately often quite buggy) system releases. The freedoms that Google grants device manufacturers are the biggest problem in the Android world. Bigger than any patent threat that Apple can build. The real enemies of Google's Android vision are neither Microsoft nor Apple, but the device manufacturers and providers. Because they are mentally still in the 90s and put their own control above everything.

Custom iPhone Backs. Nett - wooden backs. You almost wish the glass back would break so you have a reason to install something like this ...

Sublime Text. Hmm, just took a look and was quite surprised to realize that this is quite a nice editor. With various others recently, I thought, okay, nicely done, but not really usable features. But the 10000-feed overview for the currently active source, for example, is surprisingly easy to use - you can actually recognize the structure of your own source and quickly find positions in the source again. And the idea of commands via the command palette is also really useful. And Python plugins sound good too, even if I haven't looked at the API and performance in more detail yet. (Yes, yes, I know, I just talked about how much I like PyCharm and now another editor... it's just the eternal search for perfection!)

Phalanger 3.0 | PHP compiler for .NET. Hmm, completely passed me by - there is a PHP compiler for .NET, which makes PHP a fully integrated .NET language. And this also runs with Mono. And it's so complete that you can run a current Wordpress under mod-mono with it - and according to benchmarks, the performance goes up significantly. Maybe I'll take a look at it in a quiet hour.

web2py. As a free book for online reading or for purchase on dead wood or as PDF. Small, compact web framework in Python - if Django is too powerful, you might want to check this out.

Mac App Store - Clozure CL. One of the nicer free Common Lisp implementations is now in Apple's App Store. CCL is essentially the free and portable version of the old Macintosh Common Lisp, with integration into Objective C frameworks. So it's quite interesting to play around with if you like both Lisp and Cocoa.

Commentpress. I should check this out, it's a comment system that doesn't happen under posts, but in the margins of texts related to paragraphs. Actually a funny idea if you have longer texts. Okay, I almost only post single paragraphs, but I find the integration of comments quite nice - so the rendering of these small speech bubbles in which the comments then expand (at the moment, comments on my site are rather neglected, as they only appear on the detail pages, which are not even linked from the front for my short paragraph posts).

Clay Programming Language. Another new programming language. This one targets system programming (so the C camp) and has some interesting features. Particularly interesting for me is the implementation of Type Inference and Generic Functions - this is one of the more elegant solutions I've seen in recent times.

Thoughts on Python 3. More detailed than some "Python 3 has changed and I don't like it" articles you can find on the web, this article goes into more concrete details about the current problems with Python 3.

Learn Smalltalk with ProfStef. I've already tried Amber, which is Smalltalk 80 based on JavaScript. Now it comes with a node.js-based web server that implements minimal WebDAV and is at least compatible enough with the language that the author could port the ProfStef tutorial - and I've linked it here. Just try playing with a Smalltalk on the website for 5 minutes.

iPhone battery life issues may continue to vex users—even post iOS 5.1. Great, so still no end in sight for the problems. The iPhone 4s is by far the worst Apple product experience for me since the PowerBook 5300 and the Power Macintosh 6500 ... (what good are the features and performance if I have to plug the device into the charging station at least every day, sometimes even more often - that's the opposite of mobility)

EComStation - Wikipedia, the free encyclopedia. Wow. While we're on the topic of Rexx - OS/2 is still around. Even if it's no longer made by IBM - does the company have licenses from IBM? Or do they just have a huge warehouse full of OS/2 Warp installation media lying around?

Open Object Rexx. Just noted here as a software archaeologist that there is now an open source implementation of Object Rexx. For whatever one would want that.

Using hardware controllers with Lightroom | Valokuvaaja Max Edin. Holy-Moly, that's a great idea. Simply connect a MIDI controller to Lightroom and control all the sliders via rotary knobs. That almost makes you want to get one of these controllers just to try it out.