The story of the Gömböc. About strange geometric objects and self-righting turtles. There are so many things in the world ...
Archive 23.5.2011 - 20.6.2011
LR/Blog – Export directly from Lightroom 2 to your Blog!. I didn't have this for some reason, but now I do. With this, you can export photos directly into the WordPress media library to use them in posts. Could help me in cases where I don't want to take the detour via Flickr.
A What Is Inside A Cat. A very interesting document that describes the implementation of Wraith Scheme in great detail, specifically also the implementation of parallel processes.
SparkleShare - Sharing work made easy. Badly blogged, but this looks quite promising at first glance - a simple Git server is used. Unfortunately, it seems to be based only on SSH Git, not HTTPS, at least I don't see anything about it in the docs - HTTPS would be more universal (even if passwords would then have to be stored). What is still missing is an iOS or Android client (Android is apparently in the works), but OSX is already supported. It seems that the most activity in the open-source alternatives to Dropbox is happening here - but I'm still wondering how the server behaves with massive file additions and deletions - for example, I have the current raw photos of the last few months in my Dropbox. A "raw" Git repository grows very quickly to unimaginable sizes ... (and you probably also have to do regular packs so that changes to DNG files don't blow up the repository). One small detail on the side is still important: SparkleShare uses a public IRC server for synchronization messages - so even with self-hosting, all clients are on this server and exchange their triggers via it. Should be kept in mind, because this would be a classic attack vector (and if the IRC server fails, the self-hosted system also hangs). SparkleShare is open source, so you can certainly also plug in your own IRC server here and simply use your own packages.
Healthcare reform: Dental treatments are set to become expensive. Great idea, to give one of the medical professions with the highest incomes an extra boost. Because, it doesn't matter if you don't have any teeth in your mouth, you can still whistle La Paloma. And soup is much cheaper than solid food anyway.
SONY PRS-505 Firmware-Update + Customizing - MobileRead Forums. Important for the Russification of my old PRS 505 - after that it now works completely in Russian and with Russian eBooks. And it wasn't that complicated after I found it. The Russian menus only appear after you have gone to the Locale settings once. And don't forget the unicode font so that the menus and books can be displayed at all. And generally convert books to LRF, not to ePub - for incomprehensible reasons, ePub still shows garbage when displaying Russian books. Calibre easily converts to LRF.
Bundeswehr-Dozent: Plagiator gives back his doctorate - at least he's not being as silly as the last cases (especially Koch-Mehrin with her "but everyone already knew I copied" defense). But this idea that a revoked doctorate has no effect on a lecturer's career I find quite strange ...
The Postillon explains: What can the National Cyber Defense Center do?. Awesome. Simply awesome. Next, they'll buy a computer... (I doubt it, though, probably its purchase will be canceled for budget reasons)
Honeybees Might Have Emotions | Wired Science. Pessimistic bee is pessimistic!
Skulpt. A Python implementation in JavaScript, client-side. Also in the browser. Nice hint that you shouldn't even try to crash the server, you would only stub your own toe ... (otherwise, this is probably one of the many projects "just because it can be done")
Maxima. Nice book with many examples of how to use Maxima. Since the Schockwellenreiter just wrote about Maxima again and I liked the wxMaxima interface in his post quite a bit (and unlike some other programs, it also looks good on OSX), I will probably play around with it a bit. Especially since it is much slimmer than Sage (even if it of course can do much more, as it integrates many other math packages).
JQuery Form Wizard. Interesting small plugin that processes complex forms through steps - and the routes through the form can depend on the data chosen in a previous step. Additionally, #-hacks are used to make the form steps appear in the history (in this form, this is absolutely fine in my opinion).
josevalim/elixir is a programming language for the Erlang environment and its virtual machine, which integrates into the Erlang environment and has a similar focus as Erlang. However, Elixir provides a Ruby-like syntax and some interesting extensions as well as, of course, interoperability with Erlang code (otherwise it wouldn't make sense, because Erlang is not just the rather strange language, but above all the server structure and the libraries).
HTC Desire wont be getting an official Gingerbread update. Of course, Android is so great, but device manufacturers ruin it with their useless extensions and deliver devices with too little equipment, so that new system releases stay out. If I really switch to Android, it will probably only be one that is directly supplied by Google, then at least I don't have to deal with such nonsense like Sense (or be blocked from new system releases by its forced installation). Yes, I know, I can root and rom - but that's just as much of a non-argument for me as jailbreak on iOS devices.
Tumult Hype. Interesting - I had actually expected this much earlier, a tool for creating animated presentations using only HTML5 and JavaScript. Essentially what Macromedia Director or Asymmetrix Toolbox used to be.
Interactive Console for the C Programming Language - Google Project Hosting. Sounds interesting if you want to play around with Low-Level-APIs and sometimes want to interactively crash your system.
Asciiflow - ASCII Flow Diagram Tool. Diagram. In ASCII art. With an interactive environment in JavaScript. In the web browser.
Black Stone Raiders
Already on Friday evening - but only uploaded today. We were at the concert of the Black Stone Raiders with Jean-Paul Bourelly on guitar, Darryl Jones (the bassist of the Rolling Stones) and Will Calhoun on drums. Quite a wild story, the picture is already typical for Bourelly, who really shouts around during the concert. Very loud, very strange in parts. Reminded me often of Jimmi Hendrix (Bourelly is also said to be like that). It was interesting, but I don't think that's my kind of music.
Green Space Maintenance
In MĂĽnster, there was once again entertainment in the green spaces (actually already the second weekend this year), the first time for Juliana. We had fun again, my personal favorite was Ruben Grimm, really great music and brilliantly performed. I also made a small video of Ruben Grimm.
Florian (Author) thinks I might be interested in burrahobbit and he's right: persistent data structures (i.e., functional persistence) in Python, with time behavior comparable to normal data structures. So far, he has dictionaries and sets.
Bonn
Drove to Bonn with Juliana - visit to the Russian consulate for documents. Not completely successful, but we then also looked at Bad Godesberg and Bonn, also beautiful.
Recently on Flickr
I have uploaded new pictures to Flickr. Here they are - unsorted and uncommented. Ok, one comment must be: my princess is here!
Cloud9 meets Bitbucket - Cloud9 IDEs Posterous. That's nice, because Mercurial is my preferred versioning tool and Cloud9 can now directly support it - and thus also access Bitbucket projects. It's getting more and more interesting.
Metaverse Ink Blog» Blog Archive » The 4,096 “bug”. Why OpenSim operators should set up their grids with region coordinates below (4096,4096) - the higher coordinates simply cause too many problems and it doesn't look like these problems can be easily and compatibly fixed. Since region coordinates are internal to the grid, it shouldn't be a problem if multiple grids lie in the same coordinate ranges.
Why aren't you using git-flow? - Jeff Kreeftmeijer. Sounds like a few sensible tools that make git a bit easier to use for standard cases. Of course, you can manage everything on your own, but why did you buy a computer in the first place ...
Comparison to Python | Cobra - just blogged for completeness, as the language has some interesting ideas. Specifically, I would like the contracts as explicit syntax, Python only allows similar things in a roundabout way. However, the language is otherwise just one of the many niche languages. And honestly, Python is more than just the indentation - what about the very sophisticated metaprotocol of Python in the various niche languages? PyPy in combination with Rpython and the new ctypes for pypy is much more interesting.
Clack - Web Application Environment for Common Lisp. This finally looks really nice and lean - most Common Lisp web frameworks are just too big, too complicated. This looks much more pragmatic, a simple routing, a lean request and a function that reacts to it. One could play around with that, installation is trivial thanks to Quicklisp (I'm so glad that Quicklisp exists now, the asdf-install hassle was really annoying). In its approach, it reminds me a bit of Turbogear for Python - various existing libraries are bundled with Clack, so to speak a lean web best practices. There is already an application framework that also runs in the minimal environment, Caveman.
Polycode. Looks like something like Processing for C++ and Lua - so it's actually a C++ library for creative projects (2D/3D), but at the same time there is a Lua-based scripting layer with which you can program directly with the same APIs. Sounds a bit similar to Cinder, except that there is no scripting solution included, but only a C++ library.
CouchDB: The Definitive Guide. And since it fits so well, here is the link to a book on CouchDB for online reading. It is also available online in German (and of course in English. And also in French). However, the German version seems to be incomplete - you keep encountering English pages.
Simple JavaScript Applications with CouchDB - CouchApp.org. Interesting approach: entire applications are implemented in HTML+CSS+JavaScript and stored directly in the CouchDB, also persist their data in the CouchDB. Reminds me a bit of Frontier, only here CouchDB and JavaScript are used instead of the Frontier Roots and UserScript. The big advantage: if the application actually gets by with the elements used, you get the easy scalability so to speak for free - because CouchDB can be easily scaled by starting multiple instances. Maybe it becomes clearer what it means in this tutorial.
Its About The Hashbangs. Blogged because it is a pretty good description of what is wrong with these #! in addresses. The part after the # is only client-side, the server never sees it - any form of server-side redirection and server-side routing is completely out of the question. Also, server-side access controls are largely out of the question, the server only sees the main page. For single-page applications like TiddlyWiki, this is all fine - everything is already in one file and it is the declared purpose of these applications to be structured this way. For websites like Twitter or even news sites like those of Gawker Media, it is simply absurd. Twitter can perhaps guarantee due to its banal structure that the URLs to tweets also work with #! in the long run, in that a corresponding JavaScript part remains in the homepage forever (which is already pretty silly), but news sites will sooner or later simply drop the old #! URLs - and thus produce massive link rot.
Function Reference/site url. I need to go through this more carefully, because if a site is supposed to run in parallel under http and https, then there must no longer be any absolute references, everything must be routed via these functions. A few plugins (jQuery Lightbox and Infinite Scroll) also cause problems here, so bug reports will probably be necessary.
Shedding Bikes: Github's Favorite Joke. Why social networks in combination with code and geeks quickly become asocial networks. One reason why I also keep my distance from Github - I have an account there to set favorites and make bug reports, but I prefer to host my projects on Bitbucket. And even then, I'm very glad that Mercurial (as well as Git) as a distributed version system allows me to switch to other systems or switch to self-hosted sites (Rhodecode would be useful to install in the long run). Update: Github reacts and finally builds in blocking.
SSL and Cookies in WordPress 2.6 « Ryan Boren. Although originally written for WordPress 2.6, it is still valid. I had to do a bit of hacking, as my WordPress server is not directly connected to the network, but behind a firewall (iptables with DNAT helped), but now I have properly secured admin cookies and am better protected against WLAN sniffers at public hotspots. The WordPress idea is really nice - not 100% security, as with my login cookie comments can still be posted under my name, but at least the administration is protected. However, it conflicts with the Safer Cookies Plugin, which I previously used to at least pin my cookies to the IP. Additionally, there is a patch that has gone through 3.1 and enables securing the login cookie as well.
cloud9 is the software behind Cloud9ide.com - an IDE that runs entirely in the browser and is programmed in JavaScript based on Node.js. An interesting project, the current version also offers an offline mode, so you can easily work on projects on your server via the browser and then continue working locally in the offline case (on the train or in WLAN-sparse hotels in Swabia) and later resynchronize. I myself am IDE-incompatible, but programming in the browser has fascinated me for many years, simply because you can access your projects from anywhere, even without having your own computer with you. If I ever want to take a closer look, someone has written an installation guide for Ubuntu. Support for iOS devices is also in the works - so this could also be a nice way to access your own projects via iPad while on the go.
Hackers broke into Lockheed Martin. Holy cow, worst case scenario. Who bets that now cybersecurity laws in the USA will be tightened, after attacks on companies in the defense industry can presumably be portrayed as a matter of national security?
Spring cleaning for some of our APIs - The official Google Code blog. Good example of why cloud services are simply a bad idea as a basis for projects that have any significance beyond "playing around". The provider of these cloud services and APIs can simply shut them down at any time - and Google once again shows how to piss off a large number of developers with such actions. I can only quote from one of the comments: Why should we ever use any API from Google again?
IPhone PPTP VPN – GRE Protocol Issues | it-fabrik blog. Argh. That's exactly where my experiments failed - the VPN doesn't work over Edge - and it's probably because Telekom filters GRE (verified via a WLAN connection and then everything works fine). Why do these stupid mobile providers mess around in the network, they should just provide a connection and that's it. Now I have to manually turn on the VPN in WLAN environments that I don't trust, just because the Telekom people think I shouldn't be able to establish VPN connections over their sacred network. You're supposed to be able to do this via another APN that assigns public IPs and doesn't have a NAT box in between, but whether it's then billed as a flat rate with the tariff, of course, no one can say. I hate mobile providers and their protectionist behavior and their chaotic network structure.
clj-android. And while I'm at it, a framework for Clojure and Android. Although it all seems a bit raw (for example, it requires a fork of Clojure to work around some issues with Dalvik). And just for playing around with Clojure on the go, the Clojure REPL might be interesting.
scalaforandroid - Scala for Android. And for completeness, a project for creating Android applications with Scala. Scala does require a large runtime library of its own, but scalaforandroid uses a tree shaker (Proguard) that only transfers the used classes of the library during packaging, keeping the volume small.
mirah/pindah - GitHub. Mirah is a language inspired by Ruby, but continues to work with static types and is therefore closer to Java in terms of performance. Type inference takes the pain out of types, as you can often skip the declarations. Codemakros also offer interesting approaches for internal DSLs. Pindah is a framework and toolset for writing Android applications with Mirah. Mirah offers the advantage over JRuby that no separate runtime and no dynamic interpretation is added - the applications should therefore be significantly closer to Java applications in terms of performance.
Ruboto: Ruby on Android. A small article at the IBM Developernetwork with a small example application in Ruby for Android. Ruboto currently has the problem of rather high startup times for applications and rather large application size, as the entire JRuby is delivered with it.
Ruboto is a framework and an app for Android devices. With the framework, you can write Android apps in Ruby (based on JRuby, which, unlike JPython, can not only keep up with regular Ruby but also sometimes leads in performance) and with the app, you can script interactively in Ruby directly on the Android device. Maybe a reason to dust off my Ruby-Foo ...
MS Optical Super Triplet Perar 3.5/35 Mark II. A reissue of an exotic lens for Leica M - this time with direct M-mount, no more screw mount with adapter. It would indeed tempt me, but I already have a 35mm and with the Zeiss C-Biogon, the triplet can't really compete. The compactness of the lens is great, though. I hope the 200-unit production run sells out quickly, so I won't be tempted anymore.
Zotonic - Hmm, should I take a look at this? A CMS in Erlang that has some interesting features on the list - and aims a bit in the direction that Drupal also has, i.e. rather a CMS construction kit than a pure pre-made blogging solution. The admin interface also looks quite tidy.
hij1nx/SugarSkull - GitHub. Because I recently had single-page JavaScript apps (an example of this type of application would be TiddlyWiki): this is a simple library with no prerequisites, with which you can build simple parsing and automatic function start for hash-routes. So basically something like the Django URL Handler, but in JavaScript and purely on the client.
Seesaw - GitHub. Since GUI programming almost always annoys me, this is quite interesting: a Clojure library that brings Swing into a much more compact form. So that you don't have to write your fingers raw for simple GUIs. And since MCL-IDE now also supports Clojure, it might actually be time to take a closer look at the whole thing.
Tequila Suicide | Blogrebellen Kreuzberg. It's so stupid that it couldn't be more stupid (and only insurance agents could be so dumb to actually try it, so Ergo is almost believable). And well, at the Blogrebellen there's also a funny comic about it.
Single Page Apps with Node.js. - blog.nodejitsu.com - scaling node.js applications one callback at a time.. A few interesting projects linked from the article that are interesting for web applications that live in a single HTML page. Bookmarked for later.
llama font - say it in llama. The Llama Font. I can't think of anything else to say about it. Someone must have painted all those llamas ...