Back in May, inspired by the likes of @levelsio, I decided that it was time to try my own hand at building products. I’d been looking into teaching myself how to program for a long time but had never managed to get any further than a tutorial or course here and there. To break that cycle, I simply wanted to start building something.


To give you a bit of context; I don’t exactly have a technical background. After finishing my bachelors degree in Psychology I went almost straight into my first job in a business role. Here and there I’ve dabbled with some programming tutorials and web stuff, but I’m not what you’d call prime programming material. This is exactly the reason I want to learn how to code and build products. To show people that with just a laptop and some dedication you can start at (almost) zero and become a proficient builder/programmer/developer.

To get there, though, takes more than a couple of tutorials. After finishing a number of different ones, each time just thinking about what my next one would be, I noticed it wasn’t really getting me any further. The safety of having the solution to a problem just a click away is very different to starting from scratch and building something.

Wanting to build but not knowing what to build, I set out the find the target of my first project. My main aim wasn’t to make any money from it but to find something that would be enjoyable to work on often and something I’d like to use myself. After sharing a couple of ideas on Twitter and asking for people’s opinion the result was a web app that allows you to quickly create an event, invite people and track attendance.

The idea was as follows: build a web app that allows people to create an event and easily invite people to that event. I wanted to do this by providing a place to manage event, view who’s attending and providing a link to text around so people can indicate whether they’re coming. This is where the fun started, because now I could get started on actually building something. The very next question was: how? As a beginner, there were only a few things I knew that I could definitely do:

  • Making a mock-up of what it should kind of look like
  • Coming up with a name
  • Finding no-code tools to help me build an MVP
Here’s what that looked like

My goal was to get something usable up and running as quickly as possible, which is also where I ran into my first mistakes. Eager to have something to show for my efforts, my focus was initially on building the landing page. After coming up with the mock-up you see above, I had suddenly added a feature to the product simply because I decided on the tagline “I would like to…” which implied it needed options to pick between. So instead of simply having the option to create an event, I now had to look into building a “ Find an event” feature too. This didn’t dawn on me until a few days later.

Keeping it simple

After ripping that feature out again I decided to get some more feedback from actual people. Things like product/market fit and competition were not a great concern for me on this project because it was more about learning how to do this stuff than to immediately start making money, but it’s still nice to know if you’re building anything remotely useful.

n = small but still nice to have some confirmation

At this point I’d built more than just the landing page. I’d found Webflow to build the actual page, Airtable for the creating and saving of events and Zapier to send people who created an event an email containing a link to manage their event and a link to text to people to invite them, the MVP was basically finished (credit to newCo.app for providing some great resources on building MVPs without code). Learning how these tools worked, setting them up and getting everything to work correctly took a couple of days. This also meant that the part that I could build without code was practically finished. As I mentioned earlier, one of the main reasons for me to start building products in the first place was to learn how to code. Learning to code is also a very slow process, and I was keen on making more quick progress. After experiencing the ease of using no-code tools to build something I went looking around for plug-and-play alternatives for things like a database to store the events people made and a way to provide people with an account. After using both Firebase and Netlify to get working accounts on the website I had again focused on adding something visual to the page that looked cool. But accounts that don’t actually do anything are somewhat a waste of time.

Looks cool, but ultimately pretty useless

At this point I decided that not every day needs a visual update with new functionality. Learning how this no-code version could be rebuilt with code written by myself is going to take some time, because there are no shortcuts when learning how to code. As of the writing of this post I’m knee-deep in learning more about JavaScript and databases. Before I started working on this project I’d try to do this by finishing endless tutorials and hoping something sticks. I’ve now found out that you’ll never feel like you’re ready to start writing actual code and it’s better to find something you’d really like to build. You’ll still have to consult tutorials here and there but you can do it a lot more precisely and efficiently if you know what you’re looking for to help your project along.

Starting this project has been super useful so far. There’s still a long way to go but by simply starting I’ve already learned a lot in a relatively short amount of time. If you’re thinking about building products yourself and you’re wondering what to do, I’d say:

  • Just start building, you’ll find out how things work as you go along.
  • Find the right balance between tutorials and real-world projects. You won’t make it by only doing tutorials but you also won’t make it by avoiding them at all costs.
  • Design comes later. While it might feel good to be able to show people a name, a logo or a super slick landing page, make sure you prioritize actual functionality above design at the start.
  • Ask for help. If there’s one thing that I’ve noticed it’s how helpful the online community of Indie Makers is. And almost all of them will be more than happy to help you out.

I’m still very excited about this journey and look forward to improving my skills, shipping my first products and making those sweet, sweet first online euros. Always looking to connect with more Indie Makers so be sure to hit me up on Twitter or come join us in Beginning Creators. Not to forget: check out the actual project I’ve been talking about the entire time.