I’m a bit fascinated about KI lately. What finally made me interested was a report about George Hotz using machine learning to build a self driving car. And a deeply respected Friend of mine, Flavio Trolese, working on an “Cloud Power for Image KI” startup.

The ide is that working as a coder, I really appreciate how source code is managed by git nowadays. It’s a bit of a learning curve, but then it gets intuitive and very productive in managing simultanously changing code.

One of the core concepts of git is to “merge” the codes for two features into a new code base that contains both features. When changes not interfere they can be merged automatically. But when both changes touch the same lines of code, manual interventions is needed.

Most of these interventions are booring. The way the “conflicts” are presented is not intuitive for most of mankind. There’s tools, but anyway, solving such issues take developer time.

I think we should be able to build tools, using state-of-the-art open source technologies, automating most of the conflicts.

I try to blog about my progess into this. Maybe I succeed:-)

Some links for today:


A framework I’m currently giving a try. It includes some nice tutorials, like MNIST, the “hello world” of computer vision.

Awesome Deep Learning

One of many awesome lists. Lost of links to tools, tutorials, special areas…

Gmail Blog: Computer Respond to this Email

Similar use case: learn from millions of (merges|mail threads), and figure out an appropriate (resolution|reply).

Building Program Vector Representations for Deep Learning

A Chinese Paper I’ll give a try reading:-)


Custom Schema during Database Migration from SQLite to MySQL using Taps

Migrating data from one DBMS to another one can be tricky business.

Here’s a nice way to migrate data from an SQLite3 file to a MySQL database using taps. Well, the nice way is actually well documented here: Taps for Easy Database Transfers.

So this post is actually about working around a simple problem: SQLite doesn’t have a scope for decimal columns, but MySQL does. When taps rebuilds the database schema in MySQL it simply assumes those decimal columns had scope 0, which makes them integer columns. The data migration will thus result in rounded values in all those columns!

And here’s how you can workaround this problem for Ruby On Rails projects. Replace the all-uppercase placeholders with your info.

# Start the taps server on the original SQLite DB
taps server sqlite://DATABASE_FILE 'TAP_USER' 'TAP_PW'

# Create the database as per database.yml, assuming proper privileges
rake db:create

# Manually load the schema
rake db:schema:load

# Pull the data, but skip the schema and don't copy the schema_migrations table
taps pull -e schema_migrations -s 'mysql://USER:PW@localhost/DATABASE' http://TAP_USER:TAP_PW@localhost:5000

Be aware that taps uses the default encoding for it’s MySQL connections, so you might have to set something like this in your ~/.my.cnf


Hope this helps:-)

Debian unstable regains Xen Dom0 support

Good news everyone!

After a long time with no “modern” Linux Kernel available in Debian or Ubuntu for usage as Xen Dom0, the “Big Bang” release has been uploaded to Debian unstable. This actually means all the hardware support etc. from Kernel 2.6.32 AND Xen a simple ‘apt-get install’ away. Maybe we can even get Ubuntu Karmic DomUs running…

There’s some other goodies in it too, see Ben Hutchings Blog.

Voyage on ALIX Setup Notes

Can’t login using SSH

When you can’t login using SSH after installing Voyage Linux on a CF Card, this might come from extracting the voyage-XXX.tar.bz2 not as root. This results in some /dev/ nodes not being created.

Simplest solution: re-extract as root and run installation again.

cpio failes to update

If you’re getting the following error after apt-get update/upgrade from Debian Etch:

Unpacking replacement cpio …
Replaced by files in installed package tar …
dpkg: error processing /var/cache/apt/archives/cpio_2.6-18.1+etch1_i386.deb (–unpack):
unable to create `./usr/share/locale/da/LC_MESSAGES/’: No such file or directory
dpkg-deb: subprocess paste killed by signal (Broken pipe)

Then run these commands:

mkdir -p /usr/share/locale/da/LC_MESSAGES
mkdir -p /usr/share/locale/gl/LC_MESSAGES
mkdir -p /usr/share/locale/ko/LC_MESSAGES
mkdir -p /usr/share/locale/nl/LC_MESSAGES
mkdir -p /usr/share/locale/ru/LC_MESSAGES
mkdir -p /usr/share/locale/sv/LC_MESSAGES
mkdir -p /usr/share/locale/tr/LC_MESSAGES
mkdir -p /usr/share/locale/zh_CN/LC_MESSAGES

Now you the update should work…

How to fix broken NX user authentication after OpenSSL fix

It looks like OpenSSH Keys generated on Debian derived distros (Ubuntu/Voyage etc.) are REALLY bad. I’m currently rolling out OpenSSL key updates as adviced on

One casualty of this update was my NX server using freenx. It just tells me that I can’t be authenticated. In the log /var/log/freenx.log it shows the following:

— NX SERVER START: -c /usr/lib/nx/nxserver – ORIG_COMMAND=
HELLO NXSERVER – Version 2.1.0-71 OS (GPL)
NX> 105 hello NXCLIENT – Version 2.1.0
NX> 134 Accepted protocol: 2.1.0
NX> 105 login
NX> 101 User: shuerlimann
NX> 102 Password:
NX> 404 ERROR: wrong password or login
NX> 999 Bye

This post talks about the NoMachine NX Server, but gave me the necessary clues:

The magic command for freenx from
on Ubuntu is

sudo rm /var/lib/nxserver/home/.ssh/known_hosts

This is necessary, as the SSH host key has been updated… Well, a more informative error message would’ve been nice, but I’m thankfull to the guys who produce freenx, anyway;-)

Working with plain ugly HTML

I’m currently doing some webdesign for the Shisha distributor we get our Al Fakher Shisha Tobacco for Agrabah. It started as a clone of the Al Fakher homepage. It’s just plain ugly HTML!!! I realy hate this copy’n’paste code after doing a good while of Ruby On Rails work… Even PHP is nicer…