Welcome to the second Mini Code Adventure, a series of blog posts and videos that highlight fun and exciting projects that you get running in just a few minutes.
Now, let’s get to playing with Markov Chains!
Mocking data with Markov Chains
Markov Chains are a process that cultivates a statistical model of nodes. These statistics make it easy to generate new data, based on the likelihood of each node following another. The resulting data looks surprisingly realistic, especially if you feed it a lot of data.
People have done a lot of really cool stuff with Markov Chains, and thanks to some nice packages, you can easily do something cool yourself!
Here are a couple interesting things people have done:
- Using Markov Chains to create Twitter bots
- Making music with Markov Chains
- Garkov – Markov generated Garfield Cartoons
- Generating new Shakespeare Sonnets with Markov Chains
Pretty cool eh, and like I said…it’s really easy to start playing around. Check out the video for more details on what is happening. You can also find the source code at github, as well as a working example…or you can just code it yourself:
Step 1: Setup the project with Yeoman
Setup is really easy, just a few commands. Check out the post on yeoman if you’re curious about what it’s doing.
npm install -g yo
npm install -g generator-browserify
yo browserify #Note: Make sure you're in a good dir!
npm install --save <a href="https://www.npmjs.com/package/markov">markov</a>
Step 2: Setup the user interface
Now you just need to add up a button and a couple of textareas. This allow us to interact directly with the library. There are great examples for how to make nice looking Bootstrap controls, so you don’t have to spend any effort there.
Step 4: Do cool stuff!
Now you’ve got all the pieces and it’s time to start messing around! Try experimenting with different kinds of data to see what you can come up with.
So, that’s it for this session. Go forth, explore, make cool stuff!