Keep in touch!

Douwe Osinga's Projects

Interesting projects, or not. The projects described here range from one night ideas turned into code to life-long endeavours. A lot of them are in a bad state right now though due to a decade of neglect. Slowly recovering.

Deep Learning Cookbook

I wrote a book for O'Reilly about Machine Learning. It will teach you a wide range of techniques, using projects similar to the sort of thing that you can find on this website. Word2Vec, GANs, music analysis. You should buy it! Oh and all the code is on GitHub.

Processing Evolved

Start from a simple square and follow different evolutionary paths to create a complex animation. Each step the AI will create a new animation based on the previous one and your prompt.

State animals imagined by AI

Generated using stable diffusion, here we have the states and DC each represented by an image of their state animals. Not all states have state animals, sometimes it is just the fish or the state bird

The AI not taken

Based on OpenAIs DALL-E-2, The AI not taken generates illustrations for well known poems. For each poem there is an associated artist (usually from the same time, maybe same style) that is used to create an image in that style matching each line of the poem.

Deep Travel

A world travel guide generated by GPT3 trained on a small set of descriptions of cities and their highlights. Even though the writing may sound natural and convincing, a lot of it is completely made up by the AI. Do not trust it for your next trip.


A tribute to John Conway, the inventor of the Game of Life. The cellular automation the cells canmove to the fields next door and are governed by a random matrix of attraction.

Never Sleep

They say New York is the city that never sleeps. But is it true? This visualization shows the relative popularity of bars over time for a variety of cities.

Visited Countries

One of my classical projects now in a slightly different packaging. Now supports both States and Countries.

An AI Guide to the US

Generated using stable diffusion, here we have the states and DC each represented by an image of their top attraction. Top attractions were determined using GPT-3 so it's a fully AI generated travel guide.

World Pop

Inspired by Gap Minder, this shows the population of the countries of the world by morphing their shapes from 1880 to 2020.

Gram Zoom

Gramzoom uses the key element of the Style Tranfer Algorithm to create an infinitely zoomable movie from any image. It works best with images that are self similar, but anything will really do. Can cats look evil? It might just break the Internet.

Geo Tweets

Extracting emojis from geocoded tweets allows us to show them over a 24 hour cycle on a world map andobserve when people do certain things, like drinking coffee, sipping beer or sleep.


Using Recurrent Neural Networks to generate Icons and Hieroglyphs. The icons are encoded in a machine learnable format.

Droste Movies

Small project to create movies from pictures that could "recurse", i.e. part of the picture could be replaced by the picture itself. Especially relevant in these days with everybodytaking pictures using cell phones all the time.

Visual Movie Recommender

A movie recommender trained not on people rating movies, but solely on the outgoing links from the wikipedia article. By forcing the recommendation vectors into two dimensions, we make it possible to explore movies and their neighbors.

Style Transfer Interpolation

Adaption pf the Keras implementation of style transfer supporting multiple style images.


An implementation of a Spotify-like song radio based on Word2Vec. Based on a large set of crawled playlists and using those playlists as sentence equivalents. The Word2Vec algorithm then produces a vector per song.

World Sizer

Reincarnation of a very old project that resizes countries to represent certain aspect of them

Mercator Projection

Mercator projection is bad. By making it possible to change the pole, we can see how really bad it actuallyis. Make Greenland small again!

Reverse Image Search

Use a pretrained image classifier to power a reverse image search engine like the Tineye or GoogleImage search. Returns only from a rather select set of images.

Deep Ink

An implementation of deep dreaming where the network is restricted to just black and white and starts with a blob in the middle. It forces it to draw from the center and create ink like patterns.

World map of

World map of uses Word2Vec to color a world map based on the distance between words and the names of countries. Country names are an interesting way to geocode the semantic values of words though a bit noisy.

Universal Numbers

Create universal numbers by comparing the edit distance between all numbers from wikitravel's phrasebooks and for each picking the 'median' one. As a side effect, create a tree an evolutionary tree.

Culture Lens

Translating words from one language in another seems straight forward enough. But translating one word to a different culture is sheer impossible. Breakfast translates to Ontbijt in Dutch, but what you get is rather different. Culture Lense shows this by using Image Search to visualize words not in different languages, but in different cultures.

Styled Museums

Using the Artistic Style algorithm to restyle pictures of museums in the style of their most famous painting. This way you get immediately an idea of what to expect at these museums. Uses data from wikipedia, wikidata andthe wikistats. Uses Anish Athalye Tensorflow implementation


From the pseudo-Japanese for 'Empty Camera', Karakame is an iOS app that let's you take a series of pictures from a scene where people walk in and out of the picture and will then remove those people. Neat if you are a busy tourist site.


The Archean project explores self organization by multiplying the six dimensional strings in a matrix world with a transformation matrix, a little like Conway's game of life, but then in full color. From a random pattern something more ordered emerges. Different every time!

Football Predictions

Mostly for the 2014 World Cup, with some adjustments to make it work for the European Championship in 2016,this model takes previous matches and tries to predict the future outcomes. The model is super simple andyet especially in 2016 did rather well.

Ballooning with Android

A few weeks ago some old friends came visit me from the Netherlands. Since we didn’t just want to sit around drinking beer and reminiscing about our salad days, we decided to undertake a Project. It was great fun. It also taught me that Dropbox is the new Unix pipe. The glue that holds your digital hobby project together.

Offline Movie Reviews

Toy app for me to learn Swift, but also kinda useful as it lets you take reviews of movies with you in the plane so you can decide what to watch while not having access to rotten tomatoes.

Twitter Bot

This project uses the twitter api to automatically generate tweets based on what is commonly tweeted. It listens to the general tweetstream and captures fragments. By randomly recombining those fragments something that reads almost like real tweets appears. It also gives an interesting insight into what the average user uses twitter for.

Word Color

Calculate the color associated with an image by averaging the images when searching for this word

The Travel Belt

The Triposo travel belt is an implementation of an old idea of mine to give people a sense of direction by adding little buzzers to a belt that are connected to a device that knows about locations, in this case a smart phone. Every time you need to turn in a certain direction, the buzzer in that direction will go off and you can move around time without having to look at your phone.

Mapped Web

Physical distances are not the same as psychological distances. Physical distances are easy enough to measure, but how do we go about measuring psychological distances? The Mapped Web does this by taking the chance that given a page contains the name of one country it will also contain the name of another country as a measure for psychological distance. The resulting images show us how close countries are to each other in psychological terms.


Vendian is an a-life simulation. Every creature runs a BASIC-like program and the program evolves. The best program wins. You can write your own programs or see evolution work.


Caerfai is a first attempt at simulating chemical reactions. The model is much too simple to be useful, but it gives some nice images and animations. Source is included and offers a nice starting point for similar endevours.


One of my better alife programs. Cambrium shows creatures crawling around the screen in search for food. The creatures are controled by a neural network and assembled out of parts.

Google Chat Bot

Ever wondered what Google would say if it could talk? Wonder no more. Enter three or four words and Google will finish your thoughts by searching for what comes next after these words. [Broken]

Sea Level Rise

Reimplementation of an old idea to show the impact of sealevel on the population. Combines population density. with an elevation map to show how many people are at risk given a certain amount of sealevel rise.


Land Geist is a combination of Googles Zeit Geist, Google Mind Share and Visited Countries. For keywords like 'war', 'poverty', 'party', this project shows which country (names) have the highest relative scores (google shares). [Broken]

Eddie the DJ

Eddie lets you manage your music on your computer by voice commands. Source in Delphi and Python included.


There is a monkey hitting a typewriter at random. He is only hitting letters and that the chance for each letter to get hit is equal. Do you have to wait on average longer, the same or shorter before the monkey will have typed 'abracadabra' or 'abcdefghijk' (i.e. a string with an equal amount of characters)? Let's find out.