Content-type: matter-transport/sentient-life-form

Crumb Cake

Today, I didn't cook again because I was in Hamburg yesterday, but I did bake a cake. I like crumble cake, among other things because it is so easy to make. Here's what goes in (for a 26cm springform):

  • 300g flour
  • 200g sugar
  • 150g butter
  • 1 egg
  • 1 pack vanilla sugar
  • 1/2 pack baking powder
  • some cinnamon
  • 250g apricots (so small can)
  • some cranberry jam (optional)

The preparation is then quite simple:

  1. Mix flour, sugar, vanilla sugar, baking powder, cinnamon - all together.
  2. Drain the fruit (the juice with tonic water and ice cubes makes a delicious non-alcoholic cocktail)
  3. Preheat oven to 180C
  4. heat the butter
  5. beat the egg
  6. mix butter and egg into the flour+sugar mixture
  7. knead with a mixer and dough hook until crumbly dough is formed (can also be done with a fork and by hand, but with a mixer it is more comfortable)
  8. distribute 2/3 of the dough in the greased springform and press it onto the bottom, possibly also make a small edge
  9. poke a few times with a fork into the bottom
  10. spread cranberry jam on the bottom of the dough
  11. distribute apricots on top
  12. distribute the remaining crumble dough evenly on top
  13. bake the whole thing in the oven at 180C for 45 minutes
  14. take out and let cool (don't be so greedy, even if it smells good)

You can put cream on it, or just eat it as is or sprinkle powdered sugar on top (though it already makes a pretty sweet cake, so don't overdo it). Tip: don't leave the edge area too thick, otherwise it will be a rather hard part that is difficult to cut later. And of course, you can almost freely vary the fruit, apple puree instead of fruit works great, as do cherries or plum puree (but it will probably be quite firm). The nice thing about it is that you can have almost everything on hand in stock and the eggs you can maybe get from the neighbor (I just didn't expect to want to bake when I went shopping quickly on Saturday).

Miscellany from Hamburg

Was in Hamburg on Saturday again - why not enjoy the beautiful weather in one of the most beautiful cities in Germany. The pictures are all taken with the Leica M8 and the Elmar-M 2.8/50, except the last one, which is taken with the Ricoh GRD II. Nothing special, just a collection of what I looked at. And in color, because I want to show it to Juliana.

Pängelanton

The Karnevalsverein Pängelanton operates a small railway museum in Münster Gremmendorf and in front of it stands this black-and-red beauty built in 1902. I am a railway enthusiast and this little locomotive is indeed a rarity that also motivates visitors from farther regions to visit. Photo taken with the Ricoh GRD II.

markrendle/Simple.Data - GitHub

markrendle/Simple.Data - GitHub. I should check this out, it looks quite interesting - an ORM for .NET.

Send in Münster again

In Münster, it's Send again. This time for a whole week because of the large rides - the Ferris wheel and the roller coaster are already quite impressive. One doesn't quite realize how big the Send actually is, only when you see the large rides during setup and then later at the finished Send, the whole surrounding area makes it clear. The Hindenburgplatz is also considered one of the largest inner-city open spaces in Germany. Photos, by the way, again with the M8.

Tuckesburg and the old zoo

The Tuckesburg is the old residence of the executioner in Münster - and later the retirement home of Prof. Landois, the founder of the Münster Zoo and the developer of the Aa Lake. I've already had this some time ago, but it's always a nice subject. Photos with the M8 and the Elmarit-M 2.8/50.

Basho: An Introduction to Riak

Basho: An Introduction to Riak. I should take a closer look at this, it has a quite clean and simple architecture and all nodes in the system are equal (this is similar to Cassandra). The whole thing is written in Erlang here, but interesting is the MapReduce interface: functions can be delivered as JavaScript code and the communication goes over a simple JSON interface.

HBase vs Cassandra: why we moved « Dominic Williams

HBase vs Cassandra: why we moved « Dominic Williams. Not entirely uninteresting blog post that dares to compare Hadoop/HBase with Cassandra and tries to highlight the different focuses. His conclusion: HBase is more for warehousing, Cassandra more for transaction processing. Alone, this would make something like Brix even more interesting if it could really combine these two aspects.

Brisk – Apache Hadoop™ powered by Cassandra | DataStax

Brisk – Apache Hadoop™ powered by Cassandra | DataStax. I should also keep an eye on this, as someone is marrying Hadoop with Cassandra as a backend. This makes higher-level layers from the Hadoop project also usable with the high performance of Cassandra and, above all, with the freer update of data in Cassandra and its eventually-consistent model.

HIVE: Data Warehousing & Analytics on Hadoop

HIVE: Data Warehousing & Analytics on Hadoop. A point that particularly interests me at the moment: evaluations, especially BI, of large amounts of data. Hadoop provides Hive as a solution for this. Access to HIVE can not only be made via Thrift, but also via JDBC and ODBC.

Apache Thrift

Apache Thrift. Also worth taking a closer look, in principle something similar to Google Protocol Buffers, but more prevalent in the Apache environment. Therefore, in areas like Hadoop, it is often chosen as the path of choice for accessing services from various languages. A small comparison of the two protocols. I like that Thrift not only allows binary representation but also a JSON-based representation - this makes the integration of Thrift APIs into web solutions easier, as JSON is native to JavaScript.

The Secrets of Building Realtime Big Data Systems

The Secrets of Building Realtime Big Data Systems. This is how I came across Cascalog and ElephantDB: a talk by the programmer of both projects about Big Data. He is also currently writing a book "Big Data". Could be very interesting.

nathanmarz/elephantdb - GitHub

nathanmarz/elephantdb. Same author as for Cascalog, here he built a distributed Key/Value-Store on Hadoop with Clojure. Also not uncool.

nathanmarz/cascalog - GitHub

nathanmarz/cascalog - take a closer look, a marriage of Clojure and Hadoop for easier evaluation of large data sets. The interesting thing about Cascalog: it draws ideas from Datalog and forms a query language for Hadoop data sets in Clojure.

JavaScript Quotations « IronJS Blog

JavaScript Quotations - interesting link about a metaprogramming feature for JavaScript. In this case for a very interesting JavaScript implementation: written in F# and for the CLR world, runnable under .NET and Mono.

Microsoft Shuts off HTTPS in Hotmail for Over a Dozen Countries | Electronic Frontier Foundation

Microsoft Shuts off HTTPS in Hotmail for Over a Dozen Countries | Electronic Frontier Foundation - a villain who thinks evil about it. Surely pure coincidence that the list of affected countries reads like the "elite" of democratic states. The hypocrisy of large corporations is actually only surpassed by FDP economic ministers.

Enterprise Java Development Tools | SpringSource

Enterprise Java Development Tools | SpringSource. I should take a closer look, as it was recently about J2EE and EJB alternatives, and this is one of the more well-known alternatives.

Trinity - Microsoft Research

Trinity - Microsoft Research. I should take a closer look at this, it sounds somewhat like distributed Redis (in-memory structures that are persisted) combined with a query semantics that is more based on graph relationships (comparable to RDF Triple Stores).

Programming, Motherfucker. Do you. speak it?

Why Cloud9 Deserves your Attention | Nettuts+

Why Cloud9 Deserves your Attention - browser-based IDE in Javascript on server and client. And source of the current version available on github.

Django-nonrel - NoSQL support for Django | All Buttons Pressed

Django-nonrel - NoSQL support for Django. Provides a first approach to integrating various NoSQL databases into Django at the level of the Django ORM. Backends for MongoDB (no thanks), AppEngine and Cassandra are in the works. Cassandra is particularly interesting to me at the moment.

WordPress » Really Static « WordPress Plugins

WordPress › Really Static « WordPress Plugins. Well blogged, because it allows you to generate static pages directly from WordPress (this could also be done with WP Super Cache and its directly cached pages, but these are not automatically updated) and perhaps this could be an interesting way in the long run. Okay, I would probably have to forego some elements to make the whole thing work without "artefacts" - but many of them are actually dispensable. For example, a tag cloud would be frozen at the state of the last rendering if it is part of the page. Similarly, information such as "latest comments" or "latest posts". The same goes for calendars, which have more marked days on newer pages than on older ones. This is also the main reason why I have repeatedly abandoned baked sites - on the other hand, are these problem cases really important for a blog?

Vundle 0.7 is out | gmarik.info

Vundle 0.7 is out. I usually use Pathogen, but Vundle has some features that make it quite interesting - maybe I should play around with it. On the other hand, I haven't made any updates and changes to my Vim installation for a long time. But since all vim.org scripts are now on GitHub, Vundle's GitHub integration is certainly very interesting.

Stuffed Peppers in a Tomato Bed

Sounds good, doesn't it? Tastes good too. This time, it wasn't terribly complicated to prepare the meal, although you do have to juggle several pots and pans (okay, one pot, one pan). In my case, the pot was a casserole because the peppers were really huge. Here's what I put in:

  • 2 large peppers
  • 250g mixed minced meat
  • 100g feta cheese
  • a handful of olives (black, natural, pitted)
  • 6 tomatoes
  • tomato paste
  • half a bunch of basil
  • 1 onion
  • 1 1/2 cloves of garlic

The preparation is quite simple; you should have a large pot or casserole ready, in which you can comfortably place the peppers. Otherwise, it went like this:

  1. Chop onions, chop garlic, put both on a plate
  2. Chop olives, put on a plate
  3. Chop tomatoes, put on a plate
  4. Chop basil, put on a plate
  5. Preheat the oven to 200° so it can preheat
  6. Heat the pan with olive oil
  7. Sauté onions and garlic in the pan until translucent
  8. Add the minced meat, fry until crumbly (just like for Bolognese - simply use the pan spatula to break up the clumps)
  9. Once the minced meat is nicely browned and mixed with the onions and garlic, add the olives
  10. Reduce heat and add some of the tomatoes (amount about 1-2 tomatoes), add some tomato paste, mix, cover, let it cook for 5 minutes, season with spices (in my case oregano, thyme, pepper, salt)
  11. Remove the lid, increase heat slightly, add the feta cheese and mix well, let it melt
  12. Once the feta cheese is well mixed with the minced meat, turn off the heat
  13. Cut the tops off two peppers, remove the core, remove the "ribs"
  14. Fill the peppers with the minced meat mixture, cover with the tops (previously also remove the core and stem there, basically only a ring remains)
  15. Distribute the remaining tomatoes and basil in the large pot, place the peppers in it
  16. Tip: if they don't want to stand up, make a tripod for the peppers with meat needles at the bottom, then it holds
  17. Put the whole thing in the preheated oven and let it simmer for 20 minutes
  18. After 20 minutes, take it out and serve on plates, blend the tomatoes and basil with a triple mix

For me, as usual with bread, but pasta or rice go wonderfully with it. This doesn't result in such a pudding-soft pepper, it should still have a bite. And the filling is not the usual concrete block, but rather comparable to a thick Bolognese. For me, there was still a beer with it, simply because the weather outside was shouting "beer" with all the sun today.

Adobe Photoshop Lightroom 3 * Exporting using Publish Services

Adobe Photoshop Lightroom 3 * Exporting using Publish Services. Well, Adobe has Photoshop.com - and just expanded it. And promotes it as a better alternative to Flickr. How serious Adobe is about this can be seen in the Publish Services in Lightroom 3. Facebook, Flickr, and SmugMug are offered out of the box. Even on the Lightroom Exchange, I found nothing about connecting to Photoshop.com. Well done, Adobe. Very convincing.

Data Protection Experts: Piwik Instead of Google Analytics

Privacy advocates: Piwik instead of Google Analytics - that's a good start, concrete suggestions for what site operators should do if they want statistics. We should probably take a closer look at work to recommend it to customers who ask for statistics.

After Church Club

Finally managed to make it to the Hot Jazz Club on a Sunday again. Tom's introduction: "Today with me, so there will be blues. And only blues. You can't defend yourself against it."

Kiepenkerle (Kiepenkerls?)

The Kiepenkerle are kind of a landmark in Münster. These two were in front of the Lamberthi Church when I walked by. The one made of stone is always there, the other one gives city tours. Mainly photographed for Juliana - she already knows the Kiepenkerl at Spiekerhof. And yes, I know, they are not actually Kiepenkerle, because they don't carry a kiepe, they are just the guys.

Update: I've included the Kiepenkerl from Spiekerhof here.

Door Figures

These door figures were created by Berndhard Kleinhans and are located at the Überwasserkirche in Münster at the side entrance on the south side. Photos taken with the Leica M8 and the Zeiss C-Biogon 2.8/35mm.

By adding extra code to a digital music file, they were able to turn a song burned to CD into a Trojan horse. When played on the car's stereo, this song could alter the firmware of the car's stereo system, giving attackers an entry point to change other components on the car.

via With hacking, music can take control of your car | ITworld.

Satellite Photos - Japan Before and After Tsunami - Interactive Feature - NYTimes.com

Satellite Photos - Japan Before and After Tsunami - Interactive Feature - NYTimes.com. Slide the slider left and right.

Programming Languages - Progopedia - Encyclopedia of Programming Languages

Programming Languages - Progopedia - Encyclopedia of Programming Languages. That was the programming language wiki I was looking for recently when the deletion frenzy struck Wikipedia again. I think I already mentioned it in the old blog.

Instagram API available

Instagram now has official APIs. It completely passed me by. Maybe I can eventually get around Tumblr to get my Instagram pictures into the sidebar. On the other hand, Tumblr has been doing quite well lately, and why change something that works (the curse of any further development - good enough).

pdict.py at master from segfaulthunter/sandbox - GitHub

pdict.py at master from segfaulthunter/sandbox - GitHub. A PersistentHashMap for Python - so a functional data structure that does not allow changes, but provides a new structure with minimal change compared to an existing structure with substructure sharing to the original structure. A rather interesting implementation. There are also further explanations of the ideas behind it. And an alternative implementation of the same idea.

ShutterSnitch

ShutterSnitch. Interesting little app with which you can receive images via WiFi on the iPad and automatically tag them with metadata and geocoding - could be a rather interesting combination with an EyeFi card in my Sony or my Panasonics (the M8 unfortunately cannot be used with EyeFi - the SD slot on the M8 is too narrow for the EyeFi and the metal body blocks too much of the weak signal). Simply connect the camera, put the iPad in the backpack and walk around and take snapshots and occasionally use the iPad as an extra-large lightbox.

Rob Galbraith DPI: Alex Majoli points and shoots

Rob Galbraith DPI: Alex Majoli points and shoots. Just as a reminder that it's the photographer who makes the pictures and not the camera. So the design of the image. And yes, "flat depth of field" is not always the answer to "what makes a good picture".

HowTo: Using Radio2

HowTo: Using Radio2. Well, ok, I understand his motivation. But well - I click on the "Press This" bookmarklet from WordPress and write a sentence - I've customized the bookmarklet form with JavaScript and Custom Post Types (in this case Aside) does the rest. And up top I already have a link blog - and it also has its own feed. And it's also quick, enclosures are also easy to make and tagging works right away. Sorry, Dave, but somehow I already have all of that! Update: I just set up a Twitter account and now I'm pushing new posts there. Let's see what comes of it.

Threads are great, but not every problem is a nail

If you want to have a good laugh: Node JS and Server side Java Script. Here, someone from the Java camp complains that Node.JS really isn't to be taken seriously and then produces the best example why something like Node.JS (and many other alternatives for server programming) exists - because the Java code gets longer and longer with each step. And even after several iterations for an example that is quite simple to implement in Node.JS (or e.g. with gevent in Python), a few errors and gaps in the Java code are already mentioned in the first comments.

Don't get me wrong - Java has a lot of good solutions for programming with multiple threads in the standard library. Probably the largest selection of possibilities for programming with multiple threads of all currently available languages. But as so often in life: threads are not the answer to all questions of parallelization. Especially when it comes to high request load, the assessment in the comments that 20K threads are already very high is ridiculous - tell that to the programmers of Eve Online, where every ship in their virtual universe is modeled as a microthread.

Java is an interesting platform, precisely because it comes with many low-level libraries with which you can do very interesting things - and which are helpful to build reasonable high-level constructs on top of them. For example, in combination with languages like Clojure or Scala, the thread monster loses some of its terror. But sometimes the answer is not the thread, but asynchronous IO (both for disk access and network access) and the intensive use of coroutines or continuations.

Also, the incomprehension of Java programmers about the approach of solving the multi-core problem simply with several parallel processes and message-passing between them is quite strange in 2011 - after all, 2009 and 2010 were the revival years for Erlang (don't forget, the language has existed for much longer) and the central idea of Erlang is precisely to set network- and CPU-spanning message-passing as the standard in order to achieve very simple parallelizability and scalability.

Java programmers always remind me of the COBOL programmers of my early days, who in every language and every programming approach deliberately picked out the things that were solved differently in COBOL (and sometimes even perhaps a bit simpler) - but then fell flat on their faces when they had to solve real problems outside the COBOL comfort zone with them.

The best thing about Java is the JVM and thus a platform that makes the multi-paradigm and multi-language approaches possible with which you can then use the tools for problems that are appropriate for them. And even then, sometimes the answer is still Node.JS or another small, lean, asynchronous server. Because even with a large collection of various hammers, you will still get a screwdriver for the screw.

This Cover-Up and Delay is an Unfathomable Scandal: The Methods of the Nuclear Lobby - taz.de

The risks of technology cannot be abolished. But the way we deal with it can be changed. Facilities like nuclear power plants, which can cause unimaginable damage, should not be operated by any state. And people who make money with such facilities, like our esteemed nuclear industry, should clearly be branded as irresponsible lobbyists. They have the situation under control in their speeches, while the reactor hall is already falling apart behind them.

via Dieses Vertuschen und Verzögern ist ein unfassbarer Skandal: Die Methoden der Atomlobby - taz.de.

Minestrone for the whole family

Well, I simply refused to take less than a whole vegetable each, and suddenly there was quite a lot. So better have a large pot ready! But the minestrone tastes damn good. What I put in:

  • 1 bell pepper
  • 1 zucchini
  • 3 tomatoes
  • 3 celery stalks
  • 1 large carrot
  • 3 small potatoes
  • 100g streaky bacon
  • Parmesan with rind
  • 150g green beans
  • 2 purple onions
  • 2 cloves of garlic
  • 1/2 bunch basil (fresh)
  • 1 tablespoon tomato paste
  • a handful of olives (black, pitted, natural)
  • 1l vegetable broth
  • 50g butter
  • olive oil
  • approx. 50g spaghetti (broken into pieces)

The preparation is really hard work and in the first phase there is not much peace. And it's best to group the vegetables as indicated below, because they go into the pot one after the other - everything is first fried. But otherwise it's actually quite simple:

  1. Dice the bacon and put it on a plate
  2. Dice the onions and garlic and put them in a small bowl
  3. Dice the potatoes, celery, and carrots and put them in a bowl
  4. Chop the beans and put them in a bowl
  5. Dice the bell pepper and zucchini and put them in a bowl
  6. Heat the pot with olive oil and the butter
  7. Fry the bacon for 2 minutes in it (stir vigorously!)
  8. Put the onions with garlic in the pot and fry for 2 minutes (stir vigorously!)
  9. Put the potatoes, celery, and carrots in the pot and fry for 2 minutes (stir vigorously!)
  10. Put the beans in the pot and fry for 2 minutes (stir vigorously!)
  11. Put the zucchini and bell pepper in the pot and fry for 2 minutes (stir vigorously! if your arm feels like it's about to fall off: that's normal, keep stirring!)
  12. Put the lid on, turn down the heat and let the vegetables simmer for 15 minutes, stirring occasionally
  13. The arm can't rest unfortunately, because now the tomatoes are diced and if desired the olives are cut small (I always leave them whole in soups).
  14. Before the 15 minutes are up, throw in the olives (after about half the time)
  15. Chop the basil
  16. When the 15 minutes are up, put the vegetable broth in the pot, stir
  17. Put in the tomato paste, chopped tomatoes and basil, season with pepper and salt
  18. Throw in the parmesan rind (I tie it with kitchen string so it's easy to fish out again)
  19. Bring to a boil, turn down the heat and let it simmer gently for an hour (on my monster pot half a point on the electric stove is enough)
  20. Fish out the parmesan rind and throw it away
  21. Put in the spaghetti and cook for 10 minutes

I then eat the whole thing simply with bread. You can also put sour cream in the soup, or very Italian, grate parmesan on top. With a glass of wine.

Re: Factor: Google Charts

Re: Factor: Google Charts - I really should use Factor more often. Every time I see how practical a visual REPL is (in Factor, graphical representations of objects can be embedded in the normal output, similar to old Lisp machines), it tempts me.

Nuclear meltdown in Japan increasingly likely

BBC News - Japan earthquake: Explosion at Fukushima nuclear plant. That was it with the hopes that maybe it would still turn out alright. And people are still running around claiming that something like this could never happen to us, because here everything is much safer. Funny enough, I do remember incidents in cooling systems that were only admitted long after they occurred - and the failure of the cooling system is the problem in Japan, the tsunami and the earthquake were just the triggers.

What I wonder, though, is how will the catastrophe in Japan change our perception of nuclear energy? With Chernobyl and before that Harrisburg, secrecy was relatively easy - but Japan is a country where all inhabitants are highly technologized. The joke about at least 5 cameras per Japanese might be exaggerated, but the number should be high enough to make secrecy more or less absurd. And the high integration into the internet leads to publication channels that were unthinkable in Harrisburg and only conceivable for utopians in Chernobyl.

Surely, energy companies and the government will now show solidarity and talk about how earthquakes and tsunamis in Europe are not a problem. And thus completely miss the actual problem, because as mentioned above, cooling systems can fail not only because of earthquakes and tsunamis. Therefore, such a problem is quite conceivable here as well, if the cooling system fails for other reasons. And why should we believe our energy companies (and the government), who are regularly caught lying, more than the Japanese energy company, which is also known for lying?

It will be difficult for politicians to lie convincingly about such things. And maybe, just maybe, people in Europe will wake up from their wishful thinking that nuclear energy is so safe.

Twitter's megalomania

consistency and ecosystem opportunities - Twitter API Announcements is an email where Twitter pretty much leaves all reality behind. Just to remind you: Twitter is this cute service where you can send 140-character messages - and I'm not saying that to make fun of it, it's often quite practical to search there when something is currently happening. But when I then read this bloated nonsense about "prevent diffusion of user experience" and other bullshit bingo in the email, I can only wonder what they're smoking. The real thing behind it is probably rather an attempt to close the platform to control and exploit it more - for example, the uproar about this absurd fat bar in Twitter has probably caused some panic at Twitter. Because if all users leave the official client, no one will look at the bought trends anymore ...

Python Tools for Visual Studio

Python Tools for Visual Studio. If you are on Windows and a number cruncher - SciPy and NumPy are now directly available on the .NET platform with these tools. And I wonder why Apple doesn't include something like this with Xcode, as it would certainly be popular in the university environment (just think of Sage).

ABCL - Release notes v0.25

ABCL - Release notes v0.25. New version out and ABCL is increasingly developing into a really usable Common Lisp implementation. Since it runs on the JVM, you also have easy access to many libraries (if you want to) and since 0.24, Quicklisp also runs smoothly with ABCL, giving you easy access to many Common Lisp libraries. However, there are some issues with the CL libraries, as many programmers do not consider ABCL (and there are still deficiencies in the CLOS area).

BBC News - Voyager: Still dancing 17 billion km from Earth

BBC News - Voyager: Still dancing 17 billion km from Earth. It is often forgotten and because it is still one of the most fascinating missions - the Voyager probes are still active in service. And they are still making important contributions to research. More of that!

J Source

J Source is now available under GPL3. The craziest programming language in active use is now even more accessible. But beware of the Source: it's C, but C from someone who thinks in J and writes in J and only abuses the C compiler for it.

blueMarine - Home

blueMarine is a project I was previously unaware of, taking inspiration from Lightroom and Aperture. However, it currently has no RAW editing functions (while Darktable has non-destructive editing), but focuses solely on image management. This might actually work in my favor for Linux, as I usually just want to view images there, with editing mostly happening on the Mac.

darktable | news

darktable seems to have completely passed me by unnoticed - an open-source alternative to Adobe Lightroom for Linux. I should really take a look at it. I really like Lightroom, but it's always good to know an alternative, as there's no guarantee that I'll always like Adobe in later versions ... (and for Linux I will always need an alternative as long as Adobe doesn't support Linux)

fantasm - Project Hosting on Google Code

fantasm - Project Hosting on Google Code. Definitely worth checking out, a workflow engine in Python. Something like this could be quite interesting for projects at work.