Who are you and what are you working on?
I'm Martijn Brekelmans, a 20 year old Dutch computer engineering student.
I built SMG Music Display, a small piece of software for (Twitch) streamers. By connecting to music players like Spotify, YouTube, SoundCloud and many, many others, it shows your viewers what the song you're currently playing is called.
Though SMG is primarily built for streamers, I've seen it being used by amateur radio hosts, seen someone use it inside his car's Windows tablet to show what he's listening to, and many other interesting use cases.
Since building this application, I've started valuing financial freedom more and more, and hope to one day be completely financially free.
How'd you get started working on SMG Music Display?
How I got started is beyond simple. One day I decided to go stream some games on Twitch, and I wanted to share what song I was playing. However, there was no application that allowed me to do that! So I hacked up a command line script in Python to do it. A few day later, I decided to share the script on the Open Broadcaster Forums, which is one of the most popular streamer forums, as Open Broadcaster Software (OBS) is one of the most popular streaming tools out there.
People started asking for features left and right: "Can you add support for YouTube?", "Can you make a GUI?", "Can you make it not take up 25% of my quad-core CPU?" Because I'm a really nice person, I kept adding what they were asking for, steadily growing SMG's features and stability.
About 55,000 downloads later (which took almost 2 years) during a really boring week off, I decided to move SMG Music Display from the realms of free software to ask 5 euro for a license. Heresy! It turned out to be far more successful than I had anticipated, especially for me as a student. :D
How'd you find the time to do all this work?
I honestly didn't put much time into it each week. On average I'd guess about 3 hours per week, and the odd week maybe had a day or two where I worked 4 hours a day to get a specific feature done. Keep working on a tool for a few hours each week, and over 2 years it really adds up.
What convinced you to eventually start charging?
I'd actually like to share a funny (and somewhat technical) story about the beginning of SMG's transition to a paid product.
About one and a half years into SMG, I decided that maintaining the open-source SMG was not worth my time, and I put development to a stop. Because of this, I eventually lost the complete source code to SMG.
A good friend of mine had been consistently pushing me to "just ask for money for the damn thing", both before and after I lost the source. After a lot of pushing, I decided to spend one week on holiday setting up payment stuff. Only one big challenge remained: I didn't have the source code to SMG, so how could I ever update it? So here's how I did it.
SMG is written in Python + PySide, which are Python Qt bindings + cx_freeze, a tool to distribute Python applications as .exe files. I decided that reverse engineering the latest distribution was my best bet. Inside the distribution I found compiled Python code, .pyc files, and stumbled upon a tool to decompile .pyc into .py files. Initially the tool crashed during decompilation of my source, but by changing the source code of the decompilation tool I managed to retrieve the entire source code — even all the comments were preserved. I've never been more impressed by a piece of technology than this, and I don't think I would've been able to do this if I'd chosen any language besides Python.
Long story short, I got lucky.
How have you attracted users to SMG Music Display?
How did I attract my users? I got them by accident. For the first 2 years, SMG was completely free and open-source. That, together with the constant updates on the OBS forum thread attracted lots of streamers. Just before I put a price tag on SMG, it had over 55,000 downloads, and was the top downloaded plugin on the OBS forums (it still is).
Have you evolved your marketing strategies at all?
I'm only just beginning to think about strategies to increase awareness. I recently started up a Twitter account for example (you should totally follow! @smgMusicDisplay), but it's not really taking off. Then again, that's probably because I have no idea how to run a Twitter channel properly.
The only thing I ever did that genuinely affected my revenue was switching from Stripe to Paypal, which nearly doubled my monthly income. To help myself understand business better, I'm going to do a half year minor where I'll take courses like SEO, online marketing, website building, etc. I'm hoping to learn the right skills and meet the right people there.
If you had to start over, what would you change or do the same?
Yeah, that's a good question. I believe what made SMG so popular is that it was free for so long. However, I'd say that adding a price tag after such a long time was a really good decision, even though I never intended to make it a paid product when I hacked up the initial script.
Something I wished I'd done was to provide cool little "I'm using SMG Music Display" badges for streamers to put in their stream description, so I could've built up a brand name.
Get a Beautiful Mockup. No Photoshop required!
Choose from 5000+ templates.
What's your advice for others trying to do what you've done?
Do not listen to me, I simply got lucky. The only thing I can tell you is that if you are in a similar situation to mine — offering a somewhat popular open-source tool — try putting a price tag on it, and see what happens.
Yes, at that time I was seriously doubtful if I would even end up earning any money at all. I remember telling a friend of mine, "Well, if I get lucky I'll earn maybe 20 Euro per month, and you know that's kinda nice, right?" It turned out to be much more successful than I'd predicted. I never expected to make enough money to pay for my food, rent, etc.
Where can we learn more about you and SMG?
I have a Twitter account @smgMusicDisplay and a website set up for SMG. Also, feel very free to contact me for any number of reasons, even if you just want to mingle: firstname.lastname@example.org or the comment section below.