XKCD plots in d3. And this in JavaScript and directly in the browser. Would be something for the math fans out there who always think they have to post plots.
Archive 31.7.2012 - 19.10.2012
IBM Worklight - Mobile application platform. Eclipse-based and presumably Java-infested in a typical IBM fashion, but still perhaps worth a look: an IDE for mobile applications that a) includes both client and server and b) supports multiple target systems (iOS, Android, web applications). So basically something like Titanium Appcelerator or Phonegap, but with server infrastructure and management tools included. And you can choose how portable you want to be and integrate native extensions if you need them (and of course sacrifice parts of portability in the process).
Lomography Belair X 6-12. Awesome - Lomography actually has an interesting product. Medium format 6x12/6x9/6x6 with interchangeable lenses (two come with it) and all at an extremely moderate price (starting at under 200 US$) - ok, the lenses will probably be Lomo-typical more like bottle bottoms, but hey, who cares - they are interchangeable optics! Someone will eventually find a way to make lenses out of glass. The only drawback is the processing of 120 film rolls - this has now become an adventure (or a shipping frenzy). Still, it's the first time that the "preorder" button on a Lomography page makes my fingers itch.
BBC News - Apple loses UK tablet design appeal versus Samsung. And the ruling is also quite creative: Apple must run ads stating that Samsung did not copy. Especially in light of the ongoing other proceedings, the judge said only a prominent action can correct consumer perception. I think this really hurts Apple now.
Mushroom Salad with Chicken Strips
Another episode of "Cooking with rfc1437" - this time Juliana was the cook and I was just the photographer and assistant. And there was a salad with wild mushrooms, in our case porcini mushrooms, after all it is the right season for it. Our ingredients:
- about 250g wild mushrooms (we actually had 500g porcini mushrooms, but only used half of them for the salad)
- lettuce (we forgot to check how much we had beforehand, so there was definitely not enough)
- one bell pepper (which we added because otherwise there would have been too little salad)
- cherry tomatoes or dwarf tomatoes (8-9 pieces)
- 180g chicken breast fillet
- a bit of parsley
- 2-3 cloves of garlic
- half a lemon
- hot paprika powder and ginger to marinate the chicken
- vinegar, oil and apricot-mustard sauce to make the salad dressing
- pepper and salt for the mushrooms
For the preparation, we took a lot of pictures again, so the points here are based on the pictures above.
- We used the recipe as a basis, but changed it significantly. It comes from a book that we received as a wedding gift and has already served us well several times.
- We had already cut the chicken into strips in the morning and marinated it with hot paprika powder and ginger.
- Cut the porcini mushrooms into small pieces and fry them with olive oil. They need about 15 minutes to be done.
- Then fry the chicken strips thoroughly.
- Squeeze the lemon
- optionally eat the lemon zest
- Mix the mushrooms with the finely chopped parsley and the briefly fried garlic
- Pour the squeezed lemon over the mushrooms and mix everything well
- In between, ask the husband to mix a salad dressing from vinegar, oil and apricot-mustard sauce (the apricot-mustard sauce is actually something like jam or chutney, we just had it in the fridge, of course any other variant would work too)
- Cut the lettuce and put it in the bowl. And yes, that was really all we had, it was a bit little.
- Therefore, quickly chop a bell pepper
- Mix lettuce, bell pepper and the dwarf tomatoes with the salad dressing
- Put the mushrooms on the salad (do not mix anymore, it looks prettier)
- Arrange the chicken strips on the salad
- Once again the spices we used for chicken strips and salad dressing, the oil was already in the picture. The vinegar was simply balsamic vinegar.
- serve the whole thing with bread
- and then eat!
The result was very tasty, but for next time we plan to have a larger amount of lettuce and I think making the salad dressing with part of the lemon juice instead of vinegar would also be a good idea. But it was a very tasty salad that also fits perfectly with the season.
Moby is a package for Racket with which you can create Android programs. Integrated in DrRacket, you also have a suitable IDE in which most things can be tested. So much to try out, so little time.
PharoDroid is an implementation of Pharo that runs on Android tablets - but really like on the desktop, so no special touch support. Therefore rather cumbersome to use, but it's a start.
ownCloud’s Latest Community Edition Adds Video Streaming, and Easy Mounting of Third-Party Storage. Sounds nice, especially the mounting of cloud storage. I wonder if it only resides in the cloud and is passed through, or if it is also additionally downloaded to the server. But I could maybe play around with my small installation. The improved sync also sounds good, as the previous one is really a bit strange with its regular timestamp file check.
Streak - CRM in your Inbox. Strange - that thing completely passed me by. Ok, maybe that's because they call it a CRM and that's boring by definition for me. But in reality, it's not a CRM at all, but rather a kind of spreadsheet with mail integration and filters - you can define rules and sort mails into boxes and evaluate, filter, sort all these things according to various criteria, whatever. And the whole thing is integrated into GMail, directly into the web platform (which of course means it only works there and not, for example, in the mobile clients). And suddenly the whole thing is interesting again, because if you deal with larger quantities of email-controlled workflows, you can use something like this well. At least if you have your emails in GMail. Their architecture is also not uninteresting, as they use pretty much everything Google has to offer.
LLJS : Low-Level JavaScript. I don't understand what the point is of compiling a low-level language (a JavaScript dialect with C-like type definitions and constructs) to JavaScript, which is not exactly low-level in its execution model. But in case of doubt, the standard argument applies: because it can be done! However, this is probably more of a project that I only link to because it's weird, but I probably won't use it myself anytime soon.
Comtypes: How Dropbox learned to stop worrying and love the COM. Filed for future use. Accessing COM APIs in Windows from Python with fairly lean means. Could be interesting for one or the other admin tool in the company.
DataNitro. If you want to program your Excel spreadsheet in Python, this is the place to go. Might be interesting for one or the other number cruncher who uses Excel as a frontend.
Android-x86 - Porting Android to x86. Hmm, could this be a fun toy for my old eeeBook? I mean, it would be a pretty fat tablet with an integrated keyboard and an incompatible processor, what could possibly go wrong?
Pyjnius: Accessing Java classes from Python | Txzone. Very interesting side project of Kivy - with this you can quite easily integrate and use Java classes in Python without having to switch to Jython. It is based on Cython and JNI and integrates directly into native Python. Kivy is slowly becoming a real alternative for Android development that I should take a closer look at.
Beef Roulades with Parsnips
Something new - cooking with documentation! Juliana wanted to have the whole thing documented to show it off, so we took turns waving around the cooking utensils and the camera. And surprisingly, it all worked out - and it tasted great too!
So the ingredients for today's menu:
- four beef roulades (about 850g of meat)
- 3 parsnips
- one carrot
- some celery
- green onions
- spices (pepper, salt, ginger, hot paprika)
- 250g bacon
- a few cucumbers
- a few cloves of garlic (feel free to use a few more)
Preparation came in sections, as this is quite time-consuming, especially with the time. So here is the preparation including the breaks (the steps are oriented towards the pictures, so just look at the appropriate picture above for each step):
- Chop celery, carrots, and green onions finely and prepare them for the broth in which the roulades are braised
- Mix bacon, diced cucumbers, and finely chopped garlic and prepare them for the filling of the roulades
- You need sharp mustard to spread on the roulades. Also in the picture are the cucumbers - they were with chili on them, which are great for roulades.
- Spread the mustard on the roulades, don't be too stingy.
- Distribute the filling on the roulades.
- Repeat the whole process with each roulade. Also visible are the roulade rings with which I hold the roulades together.
- Then all roulades are filled and rolled up.
- Sear the roulades
- Until they are nicely browned all around.
- Remove the roulades from the pot
- And add the vegetables for the broth
- Sear and braise the vegetables thoroughly (for a few minutes)
- Put the roulades back in the pot and fill with water and red wine so that the roulades are about 3/4 covered.
- Bring the broth to a boil and then braise the roulades for 2 hours at 190 degrees in the oven. The pot is hopefully oven-safe?
- Start with the parsnips about 1 hour before the end. (Well, it was more like 45 minutes before the end for us, but it was enough)
- Cut the parsnips into sticks
- Fry the parsnip sticks in the pan, season them with ginger, hot paprika, and pepper, braise them thoroughly until they are soft, then add some salt
- The broth must be pureed and turned into a sauce with cream and sauce thickener
- When the roulades are done braising, remove them from the pot and puree the broth
- Mix the pureed broth with cream and then add the sauce thickener
- Prepare the sauce back in the pot, bring to a boil, and add the roulades again so they lie nicely in the sauce. It just tastes better.
- Look forward to the meal
- And bon appétit!
It was fun to cook and even more fun to eat. Very delicious. Parsnips are a bit like a mix of potatoes and carrots with a slight cinnamon note in the taste. It was the first time for us that we prepared and ate them, it was very delicious. And the roulades were absolutely the highlight this time.
#21866 Remove AtomPub from core – WordPress Trac. Pappnasen. There have been bugs for years, yes. But they could have been fixed. Instead, AtomPub is being removed - but completely ignoring that the old WordPress XMLRPC stuff doesn't do the same thing - for example, it doesn't provide proper metadata updates for media uploads, which will result in only being able to use the AtomPub Plugin to sync images from Lightroom to WordPress with an export service in the future. There are still one or two things in this area that don't work properly, which is why I have always preferred to work with AtomPub from Lightroom. Now I can look forward to having to overhaul my entire image workflow after WordPress 3.5.
Jetstrap - The Bootstrap Interface Builder. Maybe check it out - with this you can design Bootstrap sites in their structure without having to fiddle with the CSS yourself. The output can then be used as a basis for your own website. Looks quite nice.
X11-Basic Homepage. And since I'm on the topic of Basic - X11 Basic is a GFA Basic clone that has many extensions and runs on all possible systems. Among other things, there is also an Android version - although on my Galaxy Nexus the font is no longer elderly-compatible and on the Nexus 7 I'm considering reaching for a magnifying glass. With this Basic, however, it's more about being able to maintain old habits rather than really working with the new systems - the Android specifics are quite manageable.
RFO BASIC! for Android. Fun system to play interactively with Android stuff - and especially to do that on the go. Basically a souped-up Basic with support for various Android sensors and access to all kinds of system services (e.g. SQLite), so you can really do a lot with it. Basic programs can even be converted into APKs that can be distributed as standalone apps. This brings back the feeling of programmable calculators from the 80s - amateur programs, but self-made hacks and tools.
Mr McNamee suggested that repressive regimes would “laugh till they choke when the EU next lectures them regarding free speech online”: via Clean IT: Die EU-Kommission will das Internet überwachen und filtern, ganz ohne Gesetze.
Plug-ins for Adobe Photoshop Lightroom | Adobe Labs. If you use manual lenses on Sony NEX cameras and rely on ultra-wide-angle or similar, you might know the phenomenon: asymmetric darkening and an asymmetric color cast in the edge areas. Can this be corrected in Lightroom now using a reference image and this plugin.
Jforc Contents. J for C Programmers. To make their brains smoke and steam. Which is not always a bad thing. There is even J for Android, so you can play around with it on the go. Especially compact languages are particularly pleasant on mobile devices with small screens. More functionality fits in when the function is noted compactly. However, you then also have to live with the fact that the code looks a bit like line noise.
toastdriven/django-tastypie. I think I've mentioned this before, but it doesn't matter, it still looks interesting - an alternative to django-piston with significantly more functionality (for example, quite extensive options for authentication and authorization). What does it do? REST interfaces for Django models including their relations. In various formats (XML, JSON, YAML).
linq.js - LINQ for JavaScript. What it says on the tin. LINQ for JS objects and arrays. Which can make the code more readable when dealing with structured data from services that are rendered in the browser via JS.
Postgres-XC project Page. Multi-Master (Read and Write) Cluster for PostgreSQL. Supports replicated setups as well as partitioned setups (or mixed forms).
Online Python Tutor - Learn programming by visualizing code execution. Great if you're learning Python as a beginner and want visual support to understand what the code is actually doing.
pyMCU - The Python Controlled Microcontroller. Alternative for those who would rather use Python instead of Arduino and its Processing-based development environment. Since I've been playing around with Android, Java has lost much of its terror for me; you get used to everything. Presumably, my COBOL experience from the first 10 years of my career helps here; once you've been through that, almost everything is acceptable.
amoffat/sh. Cool little module that integrates external commands as if they were functions. You simply call a function git with a few named parameters and get the git output as a string. Makes shell scripts in Python much more compact and readable. Exactly the right thing for sysadmins.
MS Optical Sonnetar 50mm f/1.1 Test pictures | Japan Camera Hunter. It's simply interesting that there is a lone wolf in Japa (where else?) who produces handcrafted lenses with M-mount in single production.
Android Bootstrap. Hmm, maybe I should check it out - it should help you get a framework for an application done faster than if you manually put all the pieces together yourself. The idea behind it is a bit like the various HTML and CSS bootstraps - a base that you then further edit. Although I don't find the normal Android APIs so terribly complicated in general.
Buildroid for VirtualBox | BuilDroid. An alternative for AMD CPU owners and VirtualBox users to the previous part from Intel: this starts Android in VirtualBox and makes it available as an emulated system. Sounds quite interesting, especially since I already work a lot with VirtualBox and therefore this might be less stressful for me.
Supercharge Your Android Emulator Speed - Developer.com. Interesting - Intel has its own Android images based on x86 and a virtualization driver that allows the Android emulator to run at native speed. The downside is that it conflicts with VirtualBox and you can only run one or the other. But if you absolutely have to work with the Android emulator (e.g. because you don't have a developer device with you or because you can't have all device forms as hardware), this is definitely still interesting.
David Waring - Remember the Milk CLI. I switched from OmniFocus to RTM because OmniFocus is a data silo on Apple systems - and especially for tasks, I don't want to be tied to a platform but be able to move to any arbitrary one. And RTM is the only service I have found so far where you can define recurring events with appropriate power (specifically, the "repeat after X units after checking off" is important). Well, here there is a Python CLI solution with which you can even use the Linux command line for your tasks. And with that, todo.sh is probably done for me, because that way everything ends up in a database.
Leipzig
On the occasion of our first wedding anniversary, Juliana and I went to Leipzig and, among other things, visited the zoo there (and also the Museum of Musical Instruments and the Ethnographic Museum, but there are no pictures of that).
Lazarus 1.0 release available for download. Great, the Pascal IDE is now available in version 1.0. And also for OSX. I've always played around with the pre-releases and it's really impressive what's all included. Nevertheless, I ended up with RealBasic, but I still have Lazarus and FreePascal installed and play around with them from time to time.
Cameron Lairds personal notes on varieties of Python implementation. And if by now there are too many Python variants to keep track of: someone has already done that, keeping track. And yes, there is a whole bunch of different distributions and implementations.
Numba vs Cython - Pythonic Perambulations. Another alternative to Cython and PyPy, with which you can marry LLVM and Python for performance gains. Here, real Python code is accelerated without modification via decorators, which is an extension to normal Python, so all libraries remain available and only the performance-critical routines are post-processed with LLVM.
Another rescue package. That's why I probably won't link to media anymore in the future. Newspapers and such nonsense. And to be quite honest? I even hope that Google removes German publishers from the index. Completely. Then let the screaming and later complaining begin, as in Belgium. At least the entertainment value would finally be there again.
KDE Necessitas project - Welcome to KDE Necessitas project. Hmm, it has received a new homepage, but more importantly, a new Alpha4 which will soon become Beta1. And from Beta1, ABI compatibility is guaranteed and then it will be a real alternative for Android development. Ok, C++ is not really much better than Java for me - quite the opposite. But it has the advantage that you can write apps with QT and C++ that can be made available as desktop applications with little effort. So just take a look when I find the time.
rawson.js - a camera raw previewer in javascript. Jupp. A RAW module for JavaScript. It's crazy what can be built with JavaScript. Although, after the PC emulator running in the browser that boots Linux, nothing should surprise me anymore.
commonsguy/cwac-anddown. Another Markdown implementation - this one uses sundown internally and JNI and the NDK to have a fast implementation of Markdown on Android. Worked flawlessly for me with the Nexus.
LuminosoInsight/python-ftfy. A handy little tool that cleans up various inconsistencies in text encodings after something has gone wrong. This is of course no substitute for correct use of encodings in Python, but sometimes you get your input from external sources (or have legacy data from old programs from times when the whole Unicode stuff was not yet so well developed) and have no influence on how the data looks - in that case, this is a very practical little tool.
kmike/marisa-trie. Very practical - there are quite a few things done in Python with Dicts that actually belong in other structures. Especially the prefix search and the search for existing prefixes is practical. And all of this with a C extension also quite fast.
Arduino - MacOSX. What fascinates me about Arduino: the simple interface of the IDE (which is just an enhanced Processing) and the pile of crazy projects around it, such as Digispark, a mini-board that can do less but is tiny and runs directly from the USB port. You can really think about things like water level sensors for plant irrigation or similar. With the prices for the mini-board, this becomes directly realistic.
myabc/markdownj I should check out, because JMD is somehow still a bit buggy and the developer is no longer doing anything with it. This is a port of the original Perl sources, so it heavily uses Regular Expressions, but that shouldn't really cause big problems with my UniversalBrain program structure, since I cache the HTML output. Maybe it behaves better than JMD. Although, of course, the question is whether it can be properly integrated as a library.
mitotic/otrace. Interesting alternative Python debugger designed for debugging and tracing multithreading applications. It's less about stepping sequentially through the Python code and more about analyzing an environment that dynamically changes through threads (the normal Python debugger is a bit cumbersome here).
Nizhny Tagil in August
Who has wondered where I have been - we were on vacation in the Ural Mountains. Here is a stack of pictures. Yes, vacation and family photography. I'm going to be so bourgeois!
Cletus/jmd. Since PegDown doesn't run on Android because the underlying parser wants to generate a dynamic parser class, which is not allowed there, take a look at this. It should also be quite comprehensive and is based on the Markdown# project for C#.
mitmel/SimpleContentProvider. Looks like a simple ORM that automatically generates an Android Content Provider. This makes the creation much slimmer in code.
sattvik/neko. Also noted for later, Clojure for programming Android applications with a few bindings for the Android APIs. Although the question remains whether they have tackled the startup problem, or if that still limits the use of Clojure.