The stuff I built on my own or as part of a team, from experiments and hacks to professional projects.
(2022-)
The Hat is a word guessing party game. You can play it with friends, family or colleagues. Together in the same room or online via video call.
(2017-2018)
SpeakApp is an attempt to re-imagine messaging with voice-first UI and speech transcription. Voice messages are incredibly convenient to send on the go but annoying to read and that's what we were trying to fix.
I was lucky to be part of SpeakApp team and work hand in hand with word class developers, designers and executives. I was leading backend/infra/web team and built the backend, web client and a whole bunch of internal tools.
(2018)
Prank It! was an experiment we did at SpeakApp that explores the idea of applying "filters" to voice recordings. Each filter is a simple set of operations that creates theme like western, war zone, zombies movie, etc. Record a message, add a theme, share it with your friends, have fun!
For me it was a nice opportunity to combine my audio engineering and programming skills. All filters were written in JavaScript and tuned in a purposely built web playground to be bundled with native iOS app.
(2018)
Political situation is hard in Russia and media reflects it. While TV is full of government propaganda, resources like Meduza cover the opposite site. But reading it is depressing - someone got arrested, killed, or there is a new law that only makes thing worse and harder. So how your fellow comrade copes with it? With humor!
One day I was reading Meduza and realized that their headlines have a very distinct style which could be easily picked up by a markov chain. Some python magic and voilà! You got a bot generating surreal news and sending it to telegram channel!
I shared it with some groups and pretty much everyone found it funny and quite a few people told me that they started confusing real news with the fake ones. They would read a headline from the bot and say "wait what, this sounds too real" or read actual news and question if this happened. Real life can be just as crazy as machine dreams.
Check out the lightning talk I gave about this project (RUS).
(2015-2016)
Elfkins Communications Robot is a smart toy that enables safe, screen-free communication between children and their loved ones. The Elfkins platform helps families overcome the frustration with challenging schedules, disparate time zones and difficulties with children staying on camera.
I was contracted by Empath Interactive to create Elfkins backend and infrastructure.
(2015)
I started playing with Telegram Bot API the moment they announced it. After creating a few simple bots, I found that when someone sends bot a file, it doesn't receive the actual data, but the file id instead. This id can be used by the bot to download the data or forward file without downloading it.
Suddenly I realized that you can move around terabytes of data without ever downloading it. What would you use it for 🤔 Piracy of course 🏴☠️
So I created a telegram bot that maintains a catalog of user sent songs any one can search through. All I had to do is maintain an index of artists, titles and file ids.
It received some media hype and I was getting like 2000 new users a day for a week. I kept it running for some time then shut it down, because piracy is bad and chat UI is not that good for listening to music. You can still find the source code here.
Building it I made a nice python library that makes bot creation fun and simple. It's still used by multiple projects and influenced API design of other libraries.
To solve the usability problems, I also made a web ui and player for the catalog, but it got shut down along with the bot.
(2012)
Being a huge indie games fan I co-organized a cozy game jam where we had a lot of fun prototyping our ideas.
(2009)
Implementing lisp is a rite of passage for many developers. Reading SICP inspired me to create mine. Learning how interpreters, compilers and machines work was an amazing experience. To this day, SICP is my #1 recommendation for people trying to understand programming.