Christian Schell

Hey, I'm Chris, a PhD student from Würzburg, Germany, who earned his master's degree in HCI and used to develop web applications for a living.

How To Efficiently Deal With Huge Numpy Arrays

TL;DR: Preallocate, use h5py and think :)

Since I stepped into the world of crunching big amounts of data for analysis and machine learning with Python and Numpy I had to learn some tricks to get along. Here are some tipps I wished I had when I started.

Do It Yourself LSTM with TensorFlow

After reading the great post Understanding LStM Networks by Christopher Olah, I was curious how an actual implementation would look like in TensorFlow, without using its built-in nn.rnn_cell.LSTMCell.

First steps using the League of Legends API

TL;DR In this post I show you how to get comfortable with Riot's League of Legends API. We'll build a script to query the outcome of a summoner's last game. You can see the final Ruby script here – download it, insert your API-key and and run it:

Visualizing 3D movement data

Last week I turned in my machine learning project. We had to build and train an algorithm that detects gestures made in front of a Microsoft Kinect to control a simple image slideshow (there’s a video).

Getting along with JSON using `jq`

Last week I stumbled upon jq. It's a shell command that let's you search, filter and parse JSON. It's like grep or sed for JSON.

Don't use a CNAME record as main DNS entry

Last week I changed the main record of my domain from A-Records with fix IPs to CNAME-Records pointing to another domain. So instead of having something like

Rediscovering Tcpdump

This week I rediscovered tcpdump. Like Wireshark, this command displays your network traffic. Unlike Wireshark, it’s a shell command and is therefor a more convenient choice for server admins who rely on ssh.

Migrating a VM from Xen to KVM

My company is migrating to a new infrastructure for its virtual machines and switching from XenServer to KVM. This week we had to tackle the migration of existing Xen-VMs to the new hypervisor – turned out that this has been trickier than I thought it would be!