Blogs

Last week it made the news that Apple wants to fight the “Right to Repair” their smartphones. If you own a car or a bike, just imagine that their respective manufacturers are fighting a right to repair to get an idea of how unbelievably cocky Apple are (oh wait, if you own a tractor, this is what John Deere are doing!). I get that they want to save money on providing manuals and stuff but pretending to protecting their customers from batteries on fire is ridiculous.

Docker-Tutorial Teil 1

Dies ist der erste Teil einer Tutorial-Reihe zur Container-Lösung Docker. Hier erklären wir, was Docker ist, wofür es sich sinnvoll einsetzen lässt und wie Sie es verwenden. Der Workshop basiert auf der aktuellen Docker-Version 1.3. Im Prinzip ist Docker alter Wein in neuen Schläuchen. Schon lange gibt es auf Unix-Systemen Runtime-Umgebungen, die von dem Host-System abgekapselt sind, auf dem sie laufen. Selbst der gute alte Chroot funktioniert so ähnlich; fortgeschrittenere Lösungen dafür sind die Jails von BSD oder komplexe Lösungen wie Virtuozzo oder OpenVZ.
Looks like someone at Google finally came to realize that the Eclipse IDE is “not so good”. That is to say, it’s bloated, slow and the user interface is a mess. As an alternative the well-known Java IDE IntelliJ could already be used for Android development in the past. Now Google has released a preview of the new Android Studio which is based on IntelliJ, too. It features a preview of layouts for different smartphones and tablets.
In fact there’s nothing iOS specific about using lists and arrays in Objective-C, although I guess most people see no reason to use Objective-C just for the fun of it. However if you like, you can install the Objective-C frontend of the GNU Compiler GCC on almost every platform that exists. To make use of the array classes you have to install the Foundation library from the GNUstep, too. Anyway, there are two classes that implement what other languages know as arrays, lists: NSArray and NSMutableArray.
Recently I dug out my old and cheapo Sitecom N300 X2 (WLR-2100) router because I wanted to use it to attach my lab server to it via ethernet and set up a route to my other router which is responsible for the internet connection. That is a Telekom Speedport router which is capable of using the “splitter-less” ADSL2+ non-standard Annex J, but I digress. Yes, I am really naive. Of course this doesn’t work because you can’t setup routes on either of these devices.
When you encounter an app crash with an error message like “ NSInvalidUnarchiveOperationException: Could not instantiate class named NSLayoutConstraint”, the problem might be, that you are running a app compiled with iOS SDK 6 on a device with iOS 5. To fix the problem select the appropriate Storyboard or XIB file, and under “Interface Builder Document” uncheck “Use Autolayout”
If you like to develop iOS applications in Java you should take a look at RoboVM. The RoboVM compiler translates Java bytecode into native ARM code that runs directly on the CPU. The compile time tools are licensed under the GPLv2. Update Apr/2016: RoboVM has discontinued its development. See the libGDX main developer’s blog post for more information about the background and viable alternatives: http://www.badlogicgames.com/wordpress/?p=3925 (it’s Multi-OS engine)
During the last six months I have written the same mobile app for the three major (or to-be major) platforms, that is iOS, Android and Windows Phone. The app called WORTOMAT is a simple game in which you have to find words in a grid of 25 characters. There are plenty of Boggle clones out there, each with a different twist or distinctive design but none with a German dictionary, so this was what I was going for.
Walmart has also jumped the Node.js bandwagon and put a lot of effort in moving (parts of?) their sites to the async JS framework. In that course they encountered a memory that apparently was located in the Node.js core. After Eran Hammer of Walmart “had been tracking [the bug] down for months” (!) the turned to cloud provider Joyent, who went to employ Node.js founder Ryan Dahl and sponsoring Node.js development.
There are two types of file access in Windows Phone applications. One is about creating files from within an app that can be read after an application restart. The files are saved in a kind of sandbox that isolates the application specific data from access by another application (hence the name IsolatedStorage). Another way of accessing files is about reading files you ship with an application, such as XML or text files.