Behind the Make: HackSource
Last month I was browsing Reddit and came across a thread titled “Spent the last 6 months building a programming tutorial search engine, what do you think?” and it just caught my eye.
After reading all the comments I decided to visit HackSource and two hours later I was still browsing the thousands of resources it had indexed.
It was at that point I knew I needed to reach out to Drew and see if he’d be up for sharing a little background on his make process for HackSource and, well, here it is.
In 100 words or less, what exactly is HackSource?
HackSource is a searchable database of programming books and tutorials. Learning resources are sourced from well know e-learning providers like Udemy, Edx & Coursera as well as niche providers that go deep on specific topics. Resources are curated into categories, subjects and topics using natural language processing.
How did you come up with the idea for HackSource?
I learned to code using exclusively online resources. As I was learning, I noticed the sheer volume of educational content is staggering and finding up to date, high quality, and relevant content is a challenge. I thought it would be helpful to index the best learning content to provide people like me a centralized place to discover resources so they could spend more time learning and less time searching and comparing resources.
How long did it take you to go from the idea to actually building your first version?
About 8 months.
I have a habit of picking overly ambitious projects to learn new technologies. HackSource was no different. Halfway through building an obligatory todo list app in Ember JS, I decided to start building HackSource.. It worked! I now know Ember. But it was really slow going in the early days of this project. Not quite the lean startup methodology but I’m happy with how things worked out.
How did you go about building the first version of HackSource?
I didn’t do much market research or validation. I figured if I could help people answer the question, “what is the best way to learn <technology xyz>?”
I would be providing value so I just jumped in. Worst case, I knew I would build something to solve my own problem and learn a new technology (EmberJS) in the process.
Did you run into any challenges along the way in building HackSource?
My biggest issue was (and still is) I look at HackSource as a learning playground. I didn’t clearly define any MVP requirements upfront so I started building features that interested me technically like natural language processing, external content catalog syncing, and user authentication. I believe most of those features will be differentiators for HackSource in the long run but they weren’t needed for the MVP and added a lot of complexity to the creation of the site.
How did your launch day go?
My Product Hunt “launch” went poorly. I just threw it up on Product Hunt and asked my friends and family to upvote it. I sat around waiting for it to catch on. It didn’t happen. I never made it to the featured page and finished the day with just 15 upvotes.
Although it took a couple attempts to hit, Reddit did much better. I posted to r/learnprogramming and received 720 upvotes, thousands of page visits and a lot of really supportive comments. The post finished the month as one of the top 5 posts on r/learnprogramming.
Looking back at HackSource’s launch day, would you do anything different?
Yes, I would have done a lot differently with my ProductHunt launch. My suggestions for others are:
Hone your pitch – I jumped right into Product Hunt and did a terrible job explaining my own product. Post in smaller communities to see what resonates with people. Use what works, discard what doesn’t and keep iterating.
Build your network – Launching is easier if you have a network. Put yourself out there on the interwebs and build relationships with other makers.
Beautify your landing page – Clean design is table stakes these days. If you don’t make your landing page pop visitors will bounce. I spent 10 bucks on my hero image (from Fiver) and it has paid dividends.
Do you have any advice for other makers on how they too can have a positive launch on Reddit?
Most redditors are immune to traditional marketing BS. As such, I recommend creating posts with a personal edge and/or hard (quantifiable) numbers. If you create posts with one (or both) of these in mind, you’ll have a big advantage.
What are some milestones that HackSource has hit since launch that blow your mind?
1. 19K learning resources indexed from 30 different learning providers.
2. 11k user sessions in the last 90 days
3. I made my first 10 bucks from advertising on the site last month.
Without giving away any of the magic of your system, how challenging was it to develop a way to index over 19k resources from 30 different learning providers?
It was a challenge. Automation has been baked into HackSource from the beginning. I created custom aggregators scripts for each of the integrated content providers like Udemy, Edx, Treehouse etc. Building and maintaining aggregators to index course data for each provider has been a grind but it will ensure the content library is always growing and up to date and eliminates a lot of manual data entry.
It looks like you are using Carbon as your advertising provider. Do you have any advice for other websites looking to generate revnue using Carbon?
No advice specific to Carbon. More generally, I’d recommend others considering ads as a form of monetization to focus on quality content and getting consistent traffic.
When considering ads, look for ads that make sense in the context of your site and remember that in order to make a site sustainable through ads, traffic is paramount.
Now that you have officially launched HackSource, what are some short term goals you are working towards?
I’m looking forward to adding some features to help people gauge the quality of content featured on HackSource. I also want to provide curated learning paths so people know where to start when learning a new topic.
What is one website or resource you used during making HackSource that made the process 100 times easier?
IndieHackers. It’s a community of other solo makers who share learnings and bounce ideas off of one another. This project has in many ways pushed me out of my comfort zone so having a place to learn and get feedback has been crucial. I regularly visit the forum to gleem insights from those more experienced than myself.
Are you interested in doing an interview with Behind the Make about your latest make?