So I had a wild idea a while back now:
I'm starting a new project today. I'm going to build a mini-course on Array.reduce()!— Kyle Shevlin (@kyleshevlin) June 14, 2021
I've seen a lot of confusion about this method, and I'd like to help people out.
For added difficulty, I'm going to try and get it done in just a week. 😅
You may have noticed that it's been a little more than a week since I wrote that tweet. 😅
There were a number of reasons that happened, but the main culprits were my estimate was way off, and burnout & depression hit me pretty hard this summer and fall.
But we're here now! Despite the challenges, the first version is built and ready for the world. Is it the greatest course platform the world has seen? Absolutely not. Could it use dozens of improvements? Hell yeah. But it's here, and I am proud of that.
For the rest of this post, I want to answer some common questions I imagine people will ask me about courses.kyleshevlin.com.
Why did you build it?
The biggest reason is to have control over how the content is created and released. Working with other course platforms has been great and very worthwhile, but I have had my struggles with timing and format. There have been weeks where I worked 16+ hours a day to get the content ready in time. By building a platform of my own, I get to write courses exactly how I would like to and publish them when I want to, for better or for worse.
I write my blog using MDX and will be writing all the lessons on my course platform with it, too. It makes it super easy for me to add code snippets as well as fun, little interactive React components right in the middle of my writing. It has become my favorite way to write long form content.
Another reason is just to prove I can do it. I've never really taken making serious money into my own hands. I don't expect this to make me rich by any means, but proving to myself that I'm capable of creating value of my own accord means something to me. I'm not highly motivated by business, by money, by growth, so attempting to do this is a big step out of my comfort zone. It's attempting to do something I don't find natural, but believe I am capable of doing and it will benefit my family's life.
How did you build it?
If you look into the tweet thread, I explain in some detail how I got started. I literally copied the code of this blog into a new directory and started ripping out the bits I didn't need and building the bits I did need. I wanted my branding to be consistent from kyleshevlin.com and courses.kyleshevlin.com. Eventually, I'll probably create a shared component library for the two apps.
So, to be specific, it's built with Gatsby Here are some of the other pieces of the tech stack:
- Supabase for my database & auth
- Stripe for payments
- Netlify for deploys & serverless functions
- Emotion for my styling
- MDX for my authoring
- Vimeo for my video hosting
Some of this may change as time goes by, but for me, this was the simplest way I could get started, and I'm a big fan of keeping things simple.
What courses are you offering?
Right now, only the course on Array.reduce() will be available. I have started planning some additional courses to make next. Please feel free to send me a tweet with course suggestions.
Are there any "extras" that come with the course?
Yes. When you purchase a course, you'll get an invite to my private Discord server so that you can ask me questions about the material and get help from other people learning the material.
Will your egghead courses be on your platform?
The short answer is no. They will remain on egghead for as long as they will have them there. If those topics find their way on to this platform, it will be done as a revamp of the material. New videos with new written content for each lesson as well.
What are your goals for the platform?
I've never been a goal-oriented person. I think of myself more as a trajectory-oriented person. I try and get my life moving in the direction I want to head and see where it takes me.
To that end, I don't have MRR or DAU goals. Instead, I would like to see the platform have satisfied students. I would like to derive enough income from the platform to pay off my student loans early. I do not anticipate making enough money from it to quit a day job, and I am more likely to view it as a supplemental business.
My trajectory is aimed towards sustainability. Can I make it as simple as possible to make quality content doing a little bit at a time, rather than these all out sprints I've done in the past.
What are your next steps for the platform?
There are two things remaining on my TODO list:
- I may shoot a few more videos for the
Array.reduce()course for those lessons that currently don't have one
- Implement "licenses" so that a business can buy bulk access to a course
After that, I have a few ideas for the next courses. My hope is to keep them very tight and small. Once I have a few products to put out there, I will work on allowing you to buy bundles of courses in some fashion.
What can I do to help?
Thanks for asking. The simplest answers are:
- Buy the course if it will help you
- Fill out the feedback at the end of the course when you finish it
- Share the course with people who could use it
- Cheer me on via Twitter
Thanks for taking the time to read this. I look forward to seeing you over on my course platform and seeing where this journey takes us.
Here are a few options for what to do next.