Chris Oliver (known in the Twitterverse as excid3) is the creator of GoRails.com, a screencasting and learning service for developers interested in learning Ruby on Rails. He also built Hatchbox.io, a hosting service for web applications.
Other than being a successful developer-entrepreneur, Chris also hosts the Remote Ruby podcast.
On Wednesday, Chris joined me to record an interview for my podcast devpath.fm. We talked about his beginnings in the software industry, a number of his successes, and some of his struggles.
A common trend in Chris' life story (and most of the other developer stories I've had the good fortune to record) is a passion for learning new things.
So it's no surprise that he spends his time teaching developers the intricacies of Rails, as a large amount of his time is spent mastering the skills he shares in his screencasts.
During our conversation, Chris conveyed three or four really valuable insights about his own journey that contributed to the success he has experienced so far in his career.
1. Repetition works
Chris recounted the story of an early application he built. A GUI based tool for downloading Linux packages with spotty or nonexistent internet.
The process was tedious and took place over five years. He rewrote the application 6 or 7 times, but in the end, it was one of the most important steps in his journey learning to code.
Each iteration of the application was better than its predecessor. By the final rewrite, Chris had a firm grasp on Python and a really successful side project to boot.
This practice of repetition has followed Chris from that early side project, into his career as a consultant and educator.
During the interview, he said, "If I'm teaching something, I spent the last week learning it."
Furthermore, Chris related the idea back to mathematics in school. In school, you're introduced to a concept, then your teacher assigns homework. There is nothing like 40 instances of the same problem to help you retain the process and the concepts discussed in class.
Repetition works when you're learning to code. It's hard, but it works.
2. Learn in the open
That project Chris built, for downloading Linux packages without much internet access, was a pretty huge success for someone just learning to code. So much so, he was featured in a Linux magazine.
The reason Chris spent so much time on that little application could be traced back to the community he was involved in.
Chris talked about getting help from Linux users on forums and in chat rooms and wanting to give back to those helpful people. This project was his way of doing that.
Once he shared it, it started getting traction. Others, who had trouble with their internet access, downloaded the application and used it to download the software they wanted.
By putting the project out in the open, Chris found a large source of motivation to keep improving it and keep working on it. He also reaped the benefits of building something real people used. Later, Chris would land one of his first work opportunities because he was able to talk about the code he wrote when he was learning (that real people were depending on).
3. Break down the hard concepts
In the most difficult part of every interview, I ask my guests about imposter syndrome and I ask them to share an area they struggle with. Chris talked about his frustrations with the front-end and algorithmic thinking.
Man Working Using A Laptop by Oladimeji Ajegbile
When I asked Chris how he dealt with that problem, he told me it was just a matter of realizing each thing was learnable and achievable when it was broken down into smaller concepts. For him, breaking the problem down into pieces meant it could be solved, one step at a time.
Chris prepares for his screencasts the same way, breaking down a problem into a digestible video that his viewers can follow along with. Because it works.
Integrating some of Chris' techniques into your own learning could be a really effective way to build your skill set as a developer or build a business like Chris.
If you're interested in learning from veteran engineers like Chris, subscribe to my newsletter and follow along with the podcast. I have upcoming interviews with engineers all around the world who have built amazing careers for themselves.
Top comments (3)
Great to see dev.to and Jacob featuring Chris.
He's one of my favorite ruby person.
He shares a lot of his story in his 2 podcasts (remote ruby and business time) and his blog excid3.com/blog/. They are always inspiring.
He is a smart guy, definitely a treat to know him! π€
When I do get asked to recommend paid Rails content its a no-brainer to suggest Chris Oliver's GoRails.com for mastering specific concepts.
GoRails.com fills the gap which was left behind by Ryan Bate's RailsCasts.com
What I don't see is production/real-world rails app tutorials. I still use Rails and love it, and do feel guilty not sharing my knowledge since 0.8.6. I have drafted an open-source Rails course but it's on the back burner since I still have lots of AWS content in-front of me.
I've gotten a few companies off of Hatchbox and onto AWS. Hatchbox is a very good product, though I'm a big believer of upskilling instead of abstracting away knowledge (teach a person to fish).