Feature preview: the story behind, and the future ahead of the itch app
When I first joined the team here at itch.io I was asked what my favorite part of the site was. Sure I could have said it’s our dedication to indie creators. I could also have highlighted some of the fantastic games that developers have put up over the years. Instead I went specific– I love the itch app.
If you didn’t know let’s bring you up to speed: we have an app and it’s good. Very good. You can do nearly everything you can do on itch.io all wrapped up in an awesome black/pink interface. If you haven’t tried it out yet, you can do so here. Another thing that makes the itch app so rad is the fact that it’s made by one of the nicest people around, Amos Wenger. He recently took a break from developing to answer some of my questions.
Why don’t you tell us a little about yourself?
Sure! I’m just your standard, run-of-the-mill 26-year-old half-French half-Swiss dude. Studied computer science, dropped out, worked in music and video for a while, and now I’m here! Claim to fame: I once made an entire class of CS students implement the BitTorrent protocol for a Java course. (The sysadmins didn’t love that). I’ve also been playing the piano & composing for years, and recently picked up the violin. (It’s hard. My arms, give me back my arms.)
What are your responsibilities at itch.io?
We’re a small shop, so we share a lot of responsibilities. I do anything from fixing bugs or adding features to the website, handling almost everything related to the itch desktop app, but also customer support on occasion, and working together with devs to ensure that their game runs fine and their launch is a success. I’m also involved in strategic decisions and making sure everything runs smoothly with the team.
I work from home, so the hours vary. I’m also half of the Europe timezone in the team, so all of us together can keep an eye on what happens at all times!
How did you get involved with itch.io?
I don’t remember exactly how Leaf and I met, but it was through our respective programming languages. I created ooc at university, an object-oriented language that compiles to C, because I really didn’t feel like writing C for an assignment. Then it gained momentum, a small community gathered and I had the privilege of rewriting the compiler several times. Leaf made moonscript, which compiles to lua, along with a whole bunch of other projects, and now they run the entire itch.io website! I think it’s fair to say that he beat me hands down.
We talked shortly after I got out of another job (early 2015), and he could use some paid help. I’d been using itch.io to publish a pet indie game project of mine, and was already in love with the platform – so it was a very easy decision for me to make. It’s been two and half years and I still can’t believe I get to build tools for indies full-time 🙂 Super grateful to be here.
Tell us a little bit about the current itch app.
The itch app is like having an older sibling install and manage your game library for you. If a human is able to install a game, the app should be able to do it. The slogan is “the best way to play itch.io games”, so I’m trying to make it live up to it! We’ve worked hard to make it work on Linux, macOS and Windows, and install a variety of games no matter what their format. I’m also really proud of the patching system we came up with: at the time of this writing about 32’000 builds have been pushed with butler. We get fan mail about it all the time, which is weird for a command-line tool – but good! Those builds are then processed by our backend so that app users can get their games up-to-date with even smaller patches.
I’ve blogged a bit about the itch app already, like the details of the patching system and also a timeline of its first year. I’m always happy to share the details of my work since it’s all open-source and the community is involved at every step. The github project has over 200 contributors, and there’s over 30 user-contributed translations that make it accessible to even more people.
Although the app does a lot, it started small and the goal was to be able to move fast even as a small team. This means that everything has to be made as efficient as it can be. Testing, deployment etc. are all automated and it allows us to iterate quickly and fix bugs in a timely fashion!
What features are you working on that people can look forward to?
The next big feature is obviously the frameless look, which has been requested countless times and will definitely lead us to dominate the market in no time!
On a more serious note, I’ve been hard at work rewriting some fundamental parts of the app for the next past months so that it’s even faster than it already is. I won’t get into technicalities here (but remember I have a blog and I’m not afraid to use it!) – but basically, it’ll start up faster, react faster when navigating your library, and handle cases of “owning too many games for your own good” better. I own about 300 games on itch.io, and Leaf even more, so it has to be fast when we mess around with it!
I’ve also been working on a not-so-secret project that I’ve teased quite a bit on my twitter feed: live video capture for all itch.io games. It’s 90% working, which means it’s about 50% there. I’m really excited to ship that to everyone, but performance and reliability go first!
What’s your favorite feature of the itch app?
My heart is torn. One one hand, I really like the itch.io sandbox – which runs games in a controlled environment, giving them access only to what they absolutely need, and it’s a feature that few people realize even exists! On the other hand, we have a pirate translation for the whole app and it will never, ever stop being funny.