Interested how Laravel works under the hood? → Check my Laravel Core Adventures Course

The €13.000 Video Course Launch That Made Me Believe In Myself Again

#business #course

On March 17th this year, I released my latest video course Mastering PhpStorm. Now, six months later, it is time for a first recap: How did the launch go? How much money did I make? What was different compared to my previous courses?

Mastering PhpStorm course banner

This article is about my latest video course, Mastering PhpStorm, which teaches you how to work efficiently in your favorite IDE and make it look beautiful and clean.

If you are interested in how my previous courses performed, check:


Let's start with what you are probably most interested in; the numbers!


  • Sold copies first three days: 210
  • Sold copies first six months: 400
  • Revenue first three days: €13.203
  • Revenue first six months: €24.410


  • My time (227h so far)
  • Design (15% commission on each sale)
  • Paddle (5% + 50¢ per transactions)
  • Server (€10/month)
As a reference: Around 50% of this income lands in my pocket. The rest gets cut by taxes and insurances.

The Launch

I released Mastering PhpStorm after my Laracon Online talk precisely six months ago. Conferences, where you present, are great opportunities for such releases because you already have the attention of a lot of viewers. It provides your launch an extra boost.

After my talk, I immediately saw a lot of purchases which felt just so good. You can research as much as you like; you will only find out if a course is of interest to others when there are purchases.

I was so excited seeing already over 200 sales in the first three days. It still just blows my mind when I think about it! The first days you will probably sell the most, and it will already tell if your course was a success. I can already tell, Mastering PhpStorm was a success!

Besides, there went a lot more work into preparing the launch by marketing through my newsletters, tweets, other conference talks, blog posts, streams, and podcast episodes. The goal is to convince your users about your product, even before the launch.

Measuring Success

But how do I measure success? Why was this course a success, and the others not so much? First, the numbers, of course, already speak for themselves. I sold much more in the last six months than with Laravel Core Adventures in the first year. This is a significant achievement on its own.

But what's more important to me is that I found a topic to help developers be more productive. That's why they buy Mastering PhpStorm. They want to have a cleaner IDE and become faster while using it. These are the values that come with this course.

This tells me I was able to find a common issue and provide a solution for that. So if you want to make a living from that, that's what you need to focus on.

The Idea

How did I come up with this course idea? It wasn't my idea at all. The first person mentioning it was Marcel Pociot. I was already sharing some PhpStorm tips on Twitter, and he suggested making a course around my tips.

I wouldn't say I liked the idea when I heard it. It sounded super boring to record videos about an IDE like PhpStorm. I imagined videos where I only talk about the settings of PhpStorm. That didn't sound like fun to me.

But as I kept sharing tips on Twitter, more and more people seemed to like them. Finally, after some time, it was clear: This is a topic people are interested in!

The difference this time was that I didn't come up with the idea; it was you. (and Marcel) This changes a lot. You can start with an existing, validated need instead of focusing on a personal need, secretly hoping others will share the same pain points.

This was one of the reasons I still created this course, even though talking about an IDE can be a bit boring. With Laravel Core Adventures and Build Chatbots with PHP I thought those products were valuable. With Mastering PhpStorm, you told me.

The Design

Design sketches of the character

For this course, I partnered up again with the guys from Complemind (like I did with Laravel Core Adventures). Markus and Martin are friends of mine and excellent designers. With their help, we came up with the beautiful spacy-80s-look for Mastering PhpStorm, which you know.

The Story Behind The Design

All of the design elements have their purpose and meaning. The spaceship stands for PhpStorm. It's the tool that guides you through the universe (= your application). The little robot is called Returnoid. It helps you execute and handle the spaceship. The astronaut is called ALTronaut, and it mimics you, the user. You are exploring the universe. Of course, it works without a spacecraft as well, but seriously, who would do that?

In the end, I'm here to help you control and navigate your spaceship :-) Let me show you some early sketches and logos:

Design sketches of the spaceship Design sketches of the robot Design sketches of the logo

The Stack

Screenshot of the backend of Mastering PhpStorm

Mastering PhpStorm is a website built in PHP and Laravel. The backend, where you can watch all the videos, is powered by Laravel JetStream. My payment provider, Paddle, is integrated through an overlay checkout form, which is very simple to use. The stack is very similar to Laravel Core Adventures.

The process of purchasing my course looks like this:

  • User clicks the buy button
  • Paddle form opens to handle the payment (this is all done by Paddle)
  • After the payment, the user gets redirected to a Thank-You page
  • In Paddle, I have set up a webhook for purchases
  • My app receives that webhook call and I create a new user and send out a welcome email
  • Through this email, the user can log in
  • Through a separate email sent by Paddle, the user gets the invoice

Only for my first course, Building Chatbots with PHP, I used a given platform called Podia. They can help you a lot by handling payments and providing a backend for your customers to watch your videos or download your products. I still switched to a more custom solution because I needed more control, and Podia wasn't handling taxes. (which Paddle does)

In the end, you have to think about the pros and cons of using an existing platform or creating your own.

Note: Next on my list is to create a boilerplate for my courses, so I can reuse the main features for every new course more easily.

What I Learned

1. I Don't Suck At Making Video Courses

After my first two video courses, I wasn't sure If I should follow this path. They weren't that bad, but overall it didn't look like I could make a living from such products. Mastering PhpStorm showed me that this is possible. I still have to do client work, but a big chunk of my income this year comes from this video course now too.

2. It's All About The Pain Points

Laravel Core Adventures helps you to understand how Laravel works under the hood. Laravel has many very developer-friendly features, and they require some magic under the hood to make them work. That's where your IDE, for example, has issues understanding Laravel and, therefore, cannot provide auto-completion. That's a pain point I was targeting with that course.

However, it just turned out that the pain point was smaller than I expected. That's why it is selling worse than Mastering PhpStorm, even though it is cheaper and has more content.

Note: Since Mastering PhpStorm is out, Laravel Core Adventure is also selling better. It shows how one product can increase sales of another product too.

While working with PhpStorm, I hated how it looked by default. I spent a lot of time changing that over the years. Additionally, PhpStorm has so many features that it isn't easy to know what to use. I felt the pain, but I didn't realize others were too. Mastering PhpStorm is an opinionated course where I share what tools to use, when, and how.

3. You Don't Need Pricing Packages

When you learn about video courses and pricing, you often read that you should provide different pricing options:

  • a smaller and more affordable version of your product
  • a middle-sized package with more content or goodies
  • an extensive package for users willing to pay a little extra to get all there is around your product

It still makes sense to do that, but Freek Van der Herten suggested going with one option this time. He has noticed that this is much easier for a user to make a decision; buy the course or not, yes or no. I was unsure about that, but I gave it a try. At this point, I have to admit that the main reason for my decision was that one package was easier to set up anyway.

I think this approach turned out quite well, and I'm happy I did so. However, one crucial aspect to consider is the following learning.

4. Purchasing Power Parity

Purchasing Power Parity (or PPP) means that your price should reflect the economic standards of your buyer's country. For example, €79 is quite some money in Europe, but it's worth way more in India. As a result, you have to provide different prices for different countries.

With my payment provider, Paddle, I can adapt prices for ~20 different currencies. This already helps a lot because they can show the correct prices automatically. Still, in Europe, you have many countries using the Euro, and their economic situations can vary a lot. That's why on top of what Paddle can do here, I provide different prices for additional countries too.

Since I work online, my audience comes from all over the world. Especially when you only provide one product package, it's crucial to offer a fair price for everyone.

5. My Good Old Friend Marketing Again

Everyone who is selling successfully will tell you that marketing is critical. Still, every content creator hopes that quality content can sell on its own, because they don't want to do marketing. Marketing is not fun. It's a whole topic on its own.

For this course, it was essential for me to improve my marketing game. Of course, there are many ways to do that, but I just kept going with what was already working: My PhpStorm Tips & Tricks.

Screenshot of my Twitter PhpStorm tips

Every week I provided a new trick for PhpStorm. I made a little video to showcase it and tweeted it to the world. Finally, after 30 tips & tricks, I created a little website where you can look through all of them more quickly than on Twitter. We are close to 50 tips now!

People liked those tips, retweeted them, and helped me promote my course for those who are eager to learn even more. I'm pretty sure this strategy helped me a lot in the last six months.

6. Finish Your Course Before The Release

It is common to release a video course before you finish creating all the planned videos. It lets you release early, and it is good marketing when you can add new content now and then.

But here comes a significant disadvantage: motivation. Finding the motivation to work on a released video course can get tricky, especially if sales are not going as planned. I felt this pain when building Laravel Core Adventures.

It is always good to add new content if it makes sense, but make sure that you have the majority of planned content already in place before you release it.

After The Release Is Before The Release

Mastering PhpStorm is pretty much finished. I covered the most important topics I had on my list. I have a few ideas for some additional videos, but not that many. This means I can keep working on marketing this course because it is still up-to-date, and I recommend it to every PhpStorm user.

But of course, I already have to think about new products. Video courses are great because they are finished at some point, as opposed to a SaaS product. But video courses are a pain too because they are finished at some point. So you have to come up with new ideas and products every time.

I'm currently looking into two new product ideas, and it would be fantastic if I could release something even this year. So let's see how that goes. 🤞

Thank You

If you read this, then you made it to the end of this enormous article. I want to say thank you to everyone who supported me on this journey and who trusts me as a teacher. You are amazing!

If you haven't checked out Mastering PhpStorm, you should do now and follow over 400 other developers.

Do you enjoy my posts?

Sign up for my newsletter to receive updates on my latest content.

You will receive monthly updates on my latest articles and products. I do care about the protection of your data. Read my Privacy Policy.