Archive 9.8.2011 - 23.9.2011

Adobe Lightroom - Customising Camera Defaults. Because I always forget how to do this - you don't often get a new camera and therefore this is done only rarely and then it disappears from memory again. So blogged, so I can find it again later.

Dalienkorso in Legden

Over the weekend, we were in Legten at the Dalienkorso - I had coincidentally noticed that it fell exactly at the end of my mother-in-law's visit, so we naturally took the opportunity. After all, it only happens every 3 years. The decorated floats were truly impressive again. Everyone had fun, even though the weather wasn't entirely cooperative and it rained intermittently (and it poured heavily towards the end).

storm auf GitHub. Twitter has published its distributed event system as open source. Sounds very interesting - basically a load-distributed and fault-tolerant RPC dispatcher with a guarantee of execution for each event. Generally interesting where you need to process high events/sec - Storm offers easy scaling as needed by simply adding new nodes. And it's also quite independent of the programming languages used (Ruby and Python are already on board as additional languages besides JVM languages).

Nikon Announces J1 and V1 Mirrorless Cameras and New Lens System. Nikon is steadily building the second smallest interchangeable lens camera system. I mean, is it really something to strive for to be the eternal second? Nikon claims to be the smallest, but the Pentax Q is actually a bit smaller. Oh, and Nikon only achieves this small size by using chips below m4/3 - with a 2.7x crop factor, Nikon no longer has to worry about the usually terrible bokeh of Nikon - you can't see much of it anyway there (okay, it's a bit better than the 5.7x "crop factor" of the Pentax Q system - but it's only the second smallest). If this is Nikon's big move, the big answer to the EVIL market, well.

PLEAC-Objective CAML. If you know the Perl Cookbook, you might be interested in this - it's simply the problem statements from the Perl Cookbook in Objective Caml. Generally, the PLEAC project provides the same for various programming languages, but OCaml is the only language besides Perl and Groovy with 100% coverage.

Sony NEX-7 First Impressions. Very interesting article. The NEX-7 really sounds like the camera I've been waiting for - the NEX-3 has meanwhile become something like my favorite, simply because it is so wonderfully uncomplicated and usually works very reliably. The few quirks it has (for example, the anti-reflective coating on the display, which is slowly rubbed off by the fingers) I can easily ignore. And also interesting are the image examples of the Zeiss 24/1.8 - this lens atomizes the Leica 24/1.4. And it is significantly better in price than the Leica - and fully integrated into the AF of the NEX. Now I just have to convince the finance ministry at home ...

Offline Web Applications - Dive Into HTML5. It was somehow better described in the first glance than in other sources I have read so far. Therefore, I have blogged it.

Ricoh GR Digital IV Preview: 1. Introduction: Digital Photography Review. Suddenly, my nice little old GRD II looks outdated. Wow. The image stabilization is particularly interesting - sure, at 28mm you don't need it, but in low-light situations it would sometimes be really nice. And the even higher resolution screen is not to be sneezed at. Built-in HDR and the fact that the tilt sensor not only detects horizontal rotation but also front/back tilt (tilt) comes into play as well. What the hybrid AF actually brings remains to be seen - I never really had problems with it. The GRD III was, in my opinion, only a marginal update, but the GRD IV sounds really good.

albertz/Pyjector - GitHub. Interesting for Python hackers who don't mind destabilizing their system a bit, but in return get a Python shell in every Cocoa program. Can be well used to hack around in the browser, for example. The author shows one use case with his Chrome extension that allows creating web apps under OSX. This feature is not currently available in the released OSX version of Chrome.

Criticism of Emergency Service Organization: Emergency Service Sent Eye Patient 37 Kilometers to the Countryside - great logic, when the Association of Statutory Health Insurance Physicians messes up and ruins the emergency service and absurd situations arise, then the blame lies with the patient. And to really show how little the rights of the patients matter, there are also agreements to secure the extremely poor status quo. If there is no legal obligation for the ophthalmological emergency service - why can there then be agreements between the clinic and the doctors, in which exactly this poorly organized emergency service is imposed on the patients?

Euro-Crisis: China Offers Help and Wants Concessions. Of course. Money is scarce, so let's ignore human rights and political systems or exploitation of the population and quickly recognize the whole thing as a market economy, after all it's about our prosperity! For that, one must make sacrifices in China!

Trip to Bremen

A small collection of photos from our trip to Bremen. Nothing special - mainly because I had the camera set to 3200 ISO, and only noticed this at home. As a result, the images are more noisy than I would like, and the dynamic range was also a bit limited. But it's impressive how the NEX-3 saved me even with such a mistake.

Recently on Flickr

I have uploaded new pictures to Flickr. Here they are - unsorted and uncommented.

Adobe announces Carousel - cloud-based image service: Digital Photography Review. Doesn't sound uninteresting at all. The engine used should be the one from Lightroom, with everything fully automatically synchronized between devices and editing possible on all devices. It will be interesting to see if it offers integration with Lightroom - that's my main image editor - and whether it also supports automatic offloading or external drives (for all the many gigabytes of images I have).

2 Click Social Media Buttons « WordPress Plugins. Similar to the previous plugin, but this one is now based on the code from Heise. And it has a nice explanatory component with a link to the Heise article. I've integrated it, so you can like me, +1 me, and tweet!

Social Opt In « WordPress Plugins. Maybe interesting - Heise prepares its own code, but this seems like an alternative. Or you take this as a basis and then mix in the Heise code when it's ready (it looks really useful in use and certainly has the advantage that Facebook is much more likely to accept something from Heise).

We got married

Instead of including the pictures here, there is only a reference to an album of pictures taken by my mother-in-law - the official photos are still pending (and I didn't take any myself).

FLASH PLAYER NOT SUPPORTED

SCO ultimately loses against Novell. Should this nonsense finally be over soon? It's not as if there aren't more absurd proceedings on the horizon (I just recall Lodsys), so it won't be boring. And the entertainment value of the longest-dying IT company has left much to be desired for quite some time ...

Panasonic launches Lumix G X Vario PZ 14-42mm F3.5-5.6 OIS pancake: Digital Photography Review. Due to the development of Sony, I am tempted to sell my Panasonic device and focus entirely on the larger chip (and possibly add a NEX 7), but this pancake zoom from Panasonic is really appealing for a compact setup. Even on the GH1, it would then be an impressively compact but flexible package.

Red Berry Pudding

Red Berry Pudding Recently, Juliana and I ate Rote Grütze - and I had an urgent desire to make Rote Grütze myself afterwards. On Wednesday's market, we bought a lot of berries and this morning I stood at the stove.

The whole thing is quite simple actually. And it just tastes delicious. What goes in:

  • a jar of cherries (I had a 500ml jar, 375g fruit)
  • top up to 750g - 800g with fresh fruits (we had blackberries, blueberries, and red currants)
  • 50g sugar (those who prefer it sweeter can go up to 100g sugar)
  • we also had half a packet of vanilla sugar
  • the juice of half a lemon
  • about 50-60g sago (you can also use neutral starch)

The preparation itself is also quite simple:

  1. boil the juice from the cherries together with the lemon juice in a pot
  2. add about 1/3 of the fruits to the boiling juice and bring to a boil
  3. stir in the sugar and sago
  4. turn down the heat and let it simmer for about 30 minutes with frequent stirring (the sago grains should ideally all be clear and no longer stand out light - I stopped a bit too early, it might be easier with regular starch)
  5. when the pudding is nice and thick and the sago is clear, add the remaining fruits and simmer for 5 minutes
  6. then fill the pudding into bowls, let it cool, and put it in the fridge
  7. serve with vanilla ice cream (that's what we had today) or vanilla sauce, or cream, or even just some milk

The pudding becomes so firm and thick, just as I remember it, not as thin as you often get it - it's really more of a pudding and not a soup. And if you have a bottle of red wine open, you can also cook the red wine well with the pudding (but a glass of red wine is really enough).

Sony-August-2011-New-Products. Oy, take a look at the part about the NEX7. Two configurable dials, 2.3MP ELV and 24 MP APS chip. And only slightly larger than the NEX5. That thing really excites me.

PyPy Status Blog: We need Software Transactional Memory. Interesting article on why we want STM, even if it may not be obvious - namely to make the more complex primitives of higher-level languages like Python transactional. And if we have STM as an implementation detail, we can also easily make it available to the programmer.

Setup services on your Pod - GitHub. Saved for later, I've already set up the link to Twitter on my own pod. I'll probably set up Tumblr soon too, since I still use it quite often. Diaspora is still quite buggy (it's really Alpha), but already quite complete in terms of features. And it's fun to play around with. However, people on Diaspora pods should also post more there, otherwise the social aspect has its problems - I only knew after self-experiments on two pods and several days of waiting that posts actually arrive at me - not because of technical problems, but simply because no one wrote anything ...

Why I'm not on Google Plus - Charlies Diary. Charles Stross on things programmers often get wrong when thinking about names. Specifically about Google+

Luban: a generic “language” for creating user interface — luban v0.2 documentation. Check it out - it could help with my eternal search for a compact user interface to use. Specifically, web as UI is becoming increasingly interesting with all the things that have emerged in this area in recent years.

Mystical Creatures

Pictures from the Gimbter Kleinkunstmarkt - some of the more normal versions can be seen on Flickr. I just played around with the presets and some more exotic settings in Lightroom. I need that from time to time.

Sony NEX-7 full specs and images | Photo Rumors. Looks very interesting, even though I wouldn't really need the 24 megapixels. But the built-in electronic viewfinder would be nice. Besides, it looks quite nice and doesn't seem to be quite as absurdly small, so you can throw it in your backpack, but also hold it well. Of course, you have to see it in real life first - Sony is very big on leaking and then announcing but then never delivering (see the various optics that were on the roadmap and still don't exist). And the price of $1000 mentioned in rumors is not exactly thrilling. Let's see.

Night Flea Market

It was the night flea market again and we took a look. Haul: a flower vase for 1.50 Euro. And a nice evening walk.

PyPy Status Blog: PyPy 1.6 - kickass panda. Getting better and better - ctypes are now properly fixed (this is one of the FFI options in Python) and there is beta support for C extensions from the cpython environment (which is only a stopgap, direct PyPy extensions will actually always be more efficient, but at least some of the extensions are available as long as they do not offer their own PyPy version). Oh, and there is a first approach for a numpy module that is directly integrated with the JIT of PyPy - not yet complete, but a start has been made.

Market in Münster

I took my M8 for a walk last Saturday - and that's the result. Instead of the mushrooms, there was the wild goulash pot that I posted a few days ago. It was also delicious. But somehow, when I look at the photos ...

Breaking: HP Makes Big Shift on WebOS, Exiting Hardware Business - Ina Fried - Mobile - AllThingsD. That's it for WebOS - the future sounds different.

The Python Standard Library By Example - Doug Hellmann. For all those who prefer a printed version of the internet: this is a book with all the PyMOTW (Python Module of the Week) articles in it, polished and beautified and nicely compiled. Certainly very practical, because sometimes you have a book quicker at hand than a computer - and computers are forbidden in bed anyway. (Warning: regarding bed, this is a 1344-page whopper!).

Python and fileinput - All this. I know the module, honestly. But somehow it has slipped my mind again. It's really a handy thing when you write command-line tools, simply because it takes care of the Unix-typical handling of input for you.

GNAT GPL for LEGO MINDSTORMS NXT – Ravenscar Edition. And for friends of robots made from Lego and bondage-and-discipline programming languages, there is now Ada for Lego Mindstorms NXT. After all, there are not many Ada links to report.

Cross-domain communications with JSONP, Part 1: Combine JSONP and jQuery to quickly build powerful mashups. Since I needed it for a colleague and therefore searched for it, I'll just bookmark it. JSONP is basically just a convention for JSON services that respond to a callback parameter by passing the generated JSON as a parameter to a function call and using the content of the callback parameter as the function name. This makes the data accessible from domains other than the one from which the actual script comes - normal AJAX does not allow this.

ipdb makes the Python debugger a bit prettier and more user-friendly by integrating the tools from ipython. If you're already using ipython, it might be a good idea to install ipdb as well. Alternatively, you can use pdbpp, which provides similar features without ipython (e.g., you could combine this with bpython).

Official Google Blog: Supercharging Android: Google to Acquire Motorola Mobility. Well, yes. Google is buying Motorola (ok, the part of them that is interesting for phones). Wow. Just spent 12.5 billion. Seen via Twitter by Don Dahlmann. I believe the next Nexus will then probably come from Motorola ...

Schneier on Security: New, Undeletable, Web Cookie. On to the next round: ETags are evil! Since they can be arbitrarily assigned by the server, you can simply insert a visitor's UUID there, and on the next visit, the browser sends the content for checking for file changes (provided it supports conditional-GET, but that's true for all browsers today). The user has no control over the use of ETags - and it actually doesn't make sense to give the user this control - so it's very difficult to defend against this method.

Wildgulaschtopf

I came across wild goulash on the market and grabbed it. And then I bought fennel and green onions. Well, I did a bit of googling and got an idea for a recipe. As usual, of course, slightly adjusted. What goes in:

  • 300g wild goulash
  • 3 medium potatoes
  • 1 large carrot
  • 1/2 fennel bulb
  • some green onions (I took two stalks)
  • 250 ml wild stock
  • 125 ml red wine
  • rosemary, thyme, peppercorns, 2 cloves, 1 bay leaf

Preparation is surprisingly simple, though a bit time-consuming, so not exactly cooking when you're already hungry:

  1. Brown the wild goulash in a pan with olive oil (high edge, a lot will go in!) until it gets color all around
  2. Deglaze with red wine and top up with wild stock
  3. Add the spices
  4. Let it simmer for 60 minutes
  5. Meanwhile, chop the potatoes, carrot, fennel, green onions
  6. Add the vegetables to the pan after the meat has cooked until tender - if the liquid level is too low, simply add some wild stock (or neutral vegetable broth if the flavor becomes too intense) to top up.
  7. Let everything cook for another 25 minutes
  8. Season with pepper and salt, possibly add some nutmeg and cumin (we love cumin!)
  9. Sprinkle with chopped parsley and serve

I prepared everything first, so that we can just reheat it later. To go with it - I have a Russian at home - bread.

rad2py - Rapid Aplication Development platform for python. Wow, why didn't I know about this before? It looks interesting, although the description is a bit heavy. And it's still in a very early stage (first full prototype planned for November 2011).

RMoD: Fuel. And another Smalltalk link - here a persistence library completely in Smalltalk without special support of the VM, but still good performance and good mapping capability for all kinds of objects.

SandstoneDb, Simple ActiveRecord Style Persistence in Squeak. A very simple single-file database for Pharo, which is interesting, for example, if you want to build small desktop applications in Pharo. So the classic GUI tools that you make for personal use, for example. And yes, today is Smalltalk Day at rfc1437.

Coral — Pharo Smalltalk for scripting. Oh, that's nice, that's one of the problems I always have with Smalltalk: I can work in the IDE and in the image and then export a headless application for the server, but as soon as I need a quick script outside the image, I have to switch languages. Coral provides the answer to this problem: a small wrapper, a minimal syntax extension and a minimal image to be able to write normal scripts with Pharo Smalltalk.

ToDE - tODE - the Object centric Development Environment. A bit stagnant in development, but still interesting: an IDE that builds on Pharo Smalltalk. The special feature: it runs in the browser, but offers all the usual Smalltalk development tools there. In principle, you could therefore install a hosted Smalltalk image as a development environment for the iPad and play with it on the go (Pharo and Squeak fit well into the browser interface because they usually don't come as native Windows, but as Windows-in-Windows - and here simply Windows-in-browser).

CouchDB: The Definitive Guide. Oh, the CouchDB book by O'Reilly is also available as an online book and even in German. Certainly interesting for one or the other who doesn't feel like wading through English books. The translation is not (yet?) complete, so you will still come across English chapters. But it's a start.

Installable Web Apps - Google Code. There you can find some background information on how to convert web applications into installable web applications or hosted apps. This allows you to use Chrome as a runtime for applications that behave very similarly to regular applications - Amazon's online Kindle is a great example. Programming is done in JavaScript, which is much less intimidating than it was a few years ago. As Packaged Apps, you can also do everything that Chrome Extensions can do (and can go beyond the scope of regular web applications).

Privacy Fail: How Facebook Steals Your Friends Phone Numbers | Kurt von Moos.com. Ouch. Facebook sends the iPhone address book to their servers and stores all contacts there when you activate the function "sync profile pictures with address book" - according to the description of the function, the user believes that only the pictures from Facebook are added to the contacts they have locally, but in reality the entire address book is facebookized. Without the user being aware at that moment what is happening.

Kindle Cloud Reader. Nice story - under Chrome it is installed as a Chrome application with offline storage of the books. This is very practical on Linux, because there is no native reader there. And on the iPad it should also work similarly - I have to check that out too (although there is also the normal Kindle Reader there).

mutle/vim.safariextension - GitHub. Another VI keyboard control for Safari, which I actually quite like - but unfortunately it doesn't have link navigation, so you apparently still have to use the mouse. Too bad, because that's actually something like the killer feature - on the other hand, both this one and vimlike are open source, maybe I should just sit down and combine the two (or build a patch for one of the two that adds the missing features).

vimlike-onsafari - Safari keybind changes like VIM. - Google Project Hosting. Hmm, thinly documented, but the essentials seem to work. So the navigation keys and following links. And unlike previous tests, it no longer gets confused when styling the link hints.