Hello! What's your background, and what are you working on?
Hi. I'm Joel Hooks. I co-founded egghead.io, a platform for delivering short form screencasts to web developers. I live in Vancouver, Washington, and help home educate our five kids.
I started my professional career as a 3D modeler/animator. It took me 13 years to realize that I needed to do something different if I ever wanted to push myself to more ambitious heights.
My goal has never been to "be a programmer."
I read Hackers & Painters by Paul Graham which thoroughly convinced me that if I ever wanted to control my destiny and not be stuck something had to change.
"I need a startup... or something," was all I could think after finishing the book. But how do you get there? Where do you start building the skills required to create something?
If all you have is an idea, fat chance. Ideas are worthless. Execution is everything.
So I started studying economics, business, and computer programming. Learning to code was a significant challenge, but once it clicked it clicked. I landed my first job as a professional programmer in 2009 after a year of self-study.
My first job lasted almost a full year, and I was spending my free time working on open source projects, mostly writing unit tests and documentation. This lead to my first conference talks, two book deals, and a lucrative gig as a consultant where I was a "senior technical architect."
Fake it til you make it!
Consulting was a great experience overall. I was able to work in lots of different businesses of all sizes. It gave me direct experience in product development, project management, and countless lessons in what not to do.
In the background, I continued to study and started taking Amy Hoy's 30x500 in 2011. It took a couple of years for that to click, because I couldn't get past the "solution first" approach.
In the summer of 2013, the lightbulb clicked, and I started egghead.io with my co-founder John Lindquist. Since November 2013 we've grown to 12 people working full time on egghead and $275,000 monthly recurring revenue selling access to high quality, bite-sized screencasts for web developers.
What motivated you to get started with egghead.io?
"Sell to your audience."
My first attempts to get something off the ground with a product business were depressing failures because I tried to deliver a product solution to an audience I didn't understand. So I changed my tune. Instead of continuing to look to solve problems for audiences I didn't fully understand or belong to, I started to look towards the group of people I already related to, and where I already had an audience.
Software developers were my tribe. I knew their problems. I knew where they hung out on the internet, and I was a trusted member of the community.
It's true that programming computers is hard. Programming computers is also a lucrative career. I was living proof that you could learn to code and jumpstart a career in a relatively short timeframe.
The question was, "How do we help people get there?"
In 2013 AngularJS was cresting its peak. I attended the BaconBiz conference in Philly, and everybody asked me what I was working on. What was my product? "I dunno, I think I'm going to write a book on Angular or something?" It was a bit embarrassing, but I did start the book.
My co-founder John was creating these excellent AngularJS screencasts on YouTube and giving them away as embedded videos on egghead.io with a donation button.
I was more eager to make money on the internet than I was to produce the content, so I pestered John for months to let me see what I could do with his badass videos. Looking back, the "first sale" that I made through egghead.io was convincing John that I could execute.
What went into building the initial product?
Early on, it was me doing everything outside of content creation. In the same way that we couldn't burn John out on the content front, it was vital that I stay sane and happy as well.
There is a lot that goes into making an online product:
- Server-side Development
- Front-end (UI) Development
- Internet Marketing
- User Experience
The ability to dig in and code was, and continues to be, a significant advantage.
I chose to build the site using Rails and followed the RailsApps tutorials, which got me authenticated users and Stripe integration. In two weeks, we went from nothing to having a subscription-capable video blog deployed on Heroku.
Chris Savage, co-founder and CEO of Wistia, gave us video hosting for free. For free! How cool is that? I just sent him an email and asked, and he hooked us up.
Very quickly I knew that I didn't want John to be the only person creating content. There's a ton of pressure for content producers who are the sole contributors to a premium subscription service. It can be unrelenting, grueling, and often leads to burnout.
For egghead to succeed, we needed to bring in other instructors to add variety and take that burden off of John's shoulders. We reached out to our network of friends in the industry and persuaded people to produce content on the promise that I would "work it out," and they would get paid.
We went from just John creating content to several people creating content, and we started delivering on our promise to give people premium content on a regular basis.
This sequence of events happened from October 2013 to February 2014, when I quit my full-time job to focus on egghead.io full time. On-site training engagements subsidized my income for the next couple of years, which allowed me a lot of freedom to "work" a few days a month while building egghead the rest of the time.
egghead.io has been profitable since launch.
How have you attracted users and grown egghead.io?
After John was persuaded to let me sell his work, we packaged his 50 videos in a zip file and sold it for $50. He had a list of donators, and I had the email list that I was building on my blog.
We made $6,000 in the first week and 100% validated the idea. It also gave us a budget to work from and a little side cash in our pockets.
After we sold the "first 50" zip file, the next step was to build a subscription service. We wanted to provide a members-only stream of screencasts that people would pay a monthly or annual fee to access. The trouble was that at the time we didn't have any premium content, just John's first 50 videos and a promise to make more.
Both of us had steady, full-time jobs at the time. I was ready to stop consulting and work on egghead full time, but the bills still need to be paid.
With the site up and running, we used our email list and sent the pitch. Without any actual premium content, and with a site that was still very much a work in progress, we asked our audience to commit to a year of premium egghead.io for $99.
And they did. People trusted us. It was inspiring, and I started working late on getting the platform up and running while John began working on the content.
Building an email list has been essential throughout the entire process.
We also try and follow good SEO practices by creating compelling content and describing it well in text. Our organic traffic is pretty solid, but building the email list has been the key.
As we've grown, we've gotten more sophisticated with email. When somebody watches a free course, eventually after four or so videos we will ask for an email to continue. From that, we send them a series of emails based on the topic they were watching so that it is more targeted to their interests.
One thing that's helped us has been releasing free community resource content in collaboration with open source product maintainers. We collaborate with maintainers to create courses for their projects, which are free to view for everybody. They link to their course lessons in the documentation for their tool, and we get to pitch egghead to those who watch. The result has been open-source maintainers making regular checks for their work, and our reputation and membership grows at the same time.
Since we started asking for email addresses, we've added 200-300 people a day to our email list, which in turn has led to robust conversion numbers and a continuous uphill growth trend.
What's your business model, and how have you grown your revenue?
egghead.io makes money through subscriptions. We provide a steady stream of new content that covers the range of libraries and frameworks that are useful and current for modern web development.
When our MRR was relatively low, we also traveled around giving on-site workshops for corporations as well as some for the public where we sold tickets. Workshops allowed me to quit my full-time job and focus on egghead.
We've seen slow and steady growth since we started. There have been a few hiccups where MRR has stayed flat or even slightly receded.
When we dip into the red, it's a sign that churn is beating growth, and it can cause feelings of "WTF panic!" when you aren't exactly sure why it's happening. That horrifying dip in mid-2016 was one of those situations. I'm still not sure why that happened, though there was some correlation to our organic search traffic numbers which might play a part.
I'm not one to obsess over analytics. I get a daily text from the system that tells me how many customers we've added, what the daily revenue was, and what the current MRR is. Beyond that, I don't pay much attention and try not to panic when things look a little weird.
Pricing has always been a challenge and often feels like the cause of the churn/growth struggle. The most prominent issue for me has been that the feedback loop is very very slow. When you make a pricing change, you can't tell how it has affected your business for months. If you're continually making changes, it's hard to qualify what it is doing to the bottom line. I've learned patience.
I've tried several approaches to pricing. We put a focus on annual subscriptions, which is excellent for lowering churn and getting cash revenue in the door, though it can also prohibit overall growth and might be restrictive to people that aren't able to make such a substantial financial commitment. When we did away with monthly plans entirely, it caused a lot of emails asking about monthly plans.
2017 felt stagnant, because we didn't have weekly +$1,000 to MRR like we'd frequently experienced in the first two years, but when I looked back at the numbers in December, we experience roughly 20% revenue growth, which is a substantial number.
What are your goals for the future?
egghead.io is a platform that provides marketing, production, and accounting support to content creators. We've focused exclusively on web development as the scope of the content we produce. I want to expand that scope to something more like "bootstrapping a business on the Internet" and teach the fascinating range of topics in that basket.
The most rewarding aspect of this entire process for me by far has been the ability to change people's lives for the better objectively.
We have two groups of customers.
- We are helping lots of our members learn new skills that lead to more opportunities, better salaries, and increased agency in their careers.
- We also give our instructors a platform to share their knowledge and expertise, get paid royalties, and amplify their voices in a way that boosts their careers as well. We help them pay off their mortgages, put food on the table, and gain the freedom to take more risks with their jobs since they have steady incomes from their screencasts.
We want to push the envelope on this and take the best parts of what has worked so far and incrementally improve them. We want to pay more royalties and help more people experience freedom in their work lives.
Creating a great experience for content creators happens when we look at what makes creating content a pain in the ass and work on removing that pain. Content creators can focus on sharing knowledge, and we take that raw material and give it structure and polish. We provide supporting materials and connect content via learning paths that help the consumers get the knowledge they need for the goals they have in a fluid/non-linear way.
On the flip side, I've got the daydream notion that egghead can serve as a job training engine. We've been hiring people that don't code professionally to review content for a fair rate. They are producing supplementary material for our courses, and eventually they'll learn to code along the way if they want.
This pipeline makes me excited to think about the potential for job creation as we grow and expand. Not only does it give us an excellent pool from which to promote from within, but if it works out well we can also serve as a job placement service connecting qualified applicants to employers that will continue to help them grow professionally.
Since we bootstrap, money is an obstacle. It's slow. The appeal for taking investment dollars is acceleration. We could hire more and grow quicker, but I also know that I'd likely get overwhelmed. Slow and steady is how we are going to continue to operate.
- We don't have deadlines.
- We don't work overtime.
- We require people take time off.
- We don't have a massive backlog.
- We don't estimate.
- We don't have stand-up meetings.
- We don't SCRUM™.
- We don't relentlessly sprint to be Agile™.
Calm. Incremental. Consistent.
That's how we plan to get there, and not having any outside pressure makes that possible.
Running a business is also a learning process for me. egghead is my first online business. I've read a lot of books, but that isn't a substitute. Our calm, deliberate pace has allowed me to learn and grow. It's allowed me to wear all of the hats, and slowly take them off and let somebody else be responsible for parts of the business. As a control freak, it's taken me time to learn and accept the fact that I don't have to control everything, and I don't even have to like everything all the time. It's okay; we can fix it or improve it later.
What are the biggest challenges you've faced and obstacles you've overcome? If you had to start over, what would you do differently?
Before egghead, I'd never been responsible for hiring or firing employees. I'd been a team lead, which provided some experience managing technical teams but not doing the hiring and firing.
Staffing up has been the most significant learning curve for me, coupled with the fact that messing up in this regard is horrible. When you hire somebody, and it doesn't work out, the corrective action profoundly affects people's lives.
The thing that I learned most about hiring is that, for me, we need to work together for a period (contract) before we leap to a full-time relationship to ensure that we are compatible.
These days I have had success with a "discovery engagement" period where we pay an individual to take a look at our systems related to their expertise, ask us questions, and give us a report that contains recommendations on things they think could be improved. We can then use these ideas as projects for them to tackle as a consultant to implement the features or suggestions that they have presented.
If it works out, great. If it feels right, we can talk about a full-time agreement or maybe continue with a part-time relationship if the individual prefers.
If not, we have a list of suggestions, they get compensated well, and there are no hard feelings.
Have you found anything particularly helpful or advantageous?
Not working so hard.
Seriously. There is a cult of "productivity" that I just don't follow. In the early days, I was burning the midnight oil to get everything rolling. But it's entirely vital that I not burn out, so over time I've reduced my hours. I take days off frequently. I will sometimes spend full days just relaxing around the house. I take vacations. I chill.
You don't need to kill yourself to succeed. It depends on your goals and aspirations, but I'm working to provide myself more time versus more money. These are often related, but I try hard to optimize for happiness over profits.
I'm not a big fan of traditional education. My five kids have never been to school, and when I tried, it was slow and tedious. While I don't like school, I'm a huge fan of education.
Taking online classes has been beneficial. In particular, Amy Hoy's 30x500 and Brennan Dunn's Consultancy Master Class. Both of those were tipping points for me when I took their feedback and knowledge and applied it. You can take all the expensive classes you can afford, but if you don't apply it, it's just wasting your time.
I've also noticed that if you take somebody's knowledge and advice to heart and apply it, they are more willing to help you and answer questions. Don't ask stupid questions. Do your research. Try your best, and ask excellent questions. When people see you trying and making an effort to respect their knowledge and time, they reciprocate. Often with friendship!
Amy Hoy, Alex Hillman, Joanna Weibe, Nathan Barry, Patrick McKenzie, Brennan Dunn, Nick Disabato, Kai Davis, and many others have been so supportive through their sustained effort to teach and share what they know.
Reading books has always been helpful to me. I'm totally fine paying for my mentors, and at the most basic level this is what you're doing when you buy a book. Obviously, a book can't provide you with specific feedback, but it can give you advice.
Over the years there have been many books that have helped me understand that I could create a business and think outside the work-a-day box. The following isn't an exhaustive list, but more a chronological list of books that helped seed that idea of independence and entrepreneurship:
- Rich Dad Poor Dad: people hate on this book, but it's a solid push to do something and has a lot of excellent references.
- E-Myth Revisited: this book is all about systems, focused on franchises. The advice that it gives is repeatability and writing down how your thing works so other people can do it.
- 7 habits of highly effective people: don't worry about things that are out of your control.
- How to Win Friends and Influence People: the title explains it. This one lives up to the hype. Read it every year.
- Hackers & Painters: this inspired me to knuckle down, learn to code, and sparked the idea that I could make money on the internet.
- 4-hour work week: systems, systems, delegation.
There's a lot more, but those are all cornerstones or represent epiphanies I had when I was working a 9-5 and felt stuck.
What's your advice for indie hackers who are just starting out?
The most significant mistake I see people make is that they start with the solution. They think they see a problem, and they jump straight to the idea. Then they build the idea before they have any customers.
If I were to start again from scratch, I would look at myself and identify the audience that I am a member of. I'd take that self-identification and begin to build up my authority and expertise to that audience. I'd write blog posts to build my audience and provide them with guides filled with useful information at a reasonable price. I'd talk to folks that purchased my materials and see what other problems they were experiencing, and I'd consider how I could help them solve those problems.
This approach is applicable across a broad swath of careers and topics. It's tried and true. It doesn't take capital or massive time investment to get started.
Instead of looking for mentors, hire mentors. Hiring mentors has proven to be effective time and time again for me. At times it has been a genuine sacrifice and required a "family meeting" to invest in mentorship, but it has been worth it.
Where can we go to learn more?
If you have any questions, I'm more than happy to try my best to answer them in the comments below.
—, Founder of egghead.io
Want to build your own business like egghead.io?
You should join the Indie Hackers community! 🤗
We're a few thousand founders helping each other build profitable businesses and side projects. Come share what you're working on and get feedback from your peers.
Not ready to get started on your product yet? No problem. The community is a great place to meet people, learn, and get your feet wet. Feel free to just browse!
—, Indie Hackers founder