In the Pragmatic Programmer it talks about your knowledge portfolio and recommend that you invest in it regularly. In fact, it draws the analogy of a stock or financial investor and how they invest.
I discuss my experience in investing and my thoughts on the content of the Pragmatic Programmers book.
The only major difference or disagreement I have between their suggestions and my experience is that today most of the content you’d find in books or trade magazines is available online in blogs, videos, and other media. However, in some cases, the best documentation is in a recently written and maintained book.
Here are some of the things I mentioned in the podcast:
Over the last few weeks I’ve been using macvim and janus to write code. The more I learn about VIM, the more I love it.
It’s not so much that VIM does things that I find particularly natural or “better”, but rather it’s that it’s extremely powerful for opening, managing, and editing files. Each little trick I get brings me more and more to the place where I can code as fast as I can think.
The Pragmatic Programmer (book affiliate link) tells us to know our text editors. The more I get to know about my text editor, the better off I am.
This turned out to be a great interview with David Heinemeier Hansson. He’s the creator of the Ruby on Rails web framework and a partner at 37 signals. We discussed what inspired him to build Ruby on Rails and work in Ruby. We talked about how 37 signals approaches things. We went into the Rails community and its ecosystem.
On entrepreneurship, David tells us that building a company and concept has never been easier or cheaper. The barrier to entry is extremely low. You need more than programming power or business acumen to start a company. You need people who have an actual skill that will move the product or service forward.
I’ve been reading the Software Craftsmanship mailing list where they were discussing whether software is a craft. Someone brought up the concept of what makes a “Master Craftsman” in software and I started thinking about how to determine if someone is an expert or master.
There are a few concepts out there including these:
Someone who has read at least 3 books on a subject.
Someone who knows more about a subject than someone else.
I’ve been working on the curriculum, what I want to teach and what to include to help people pick it up. Of course, it’s always interesting both in applications and other areas like this one to figure out what is essential and what can be omitted. The obvious inclusions are explaining MVC, and demonstrating Models, Views, and Controllers. I also feel like testing is essential and several tools that are either included with Rails or help in building it.
I’ve been using MindMeister (affiliate link) to organize my thoughts. I’ve broken the curriculum up over 6 weeks to basically include the following:
Rails Structure, Setup, and Tools
If there are things you would like to learn that don’t appear to be included in this curriculum, please email me and let me know.
During the summer of 2009, Eric Berry began recording screencasts about Ruby and Rails similar to the screencasts at RailsCasts.com. He also invited other Rubyists to join him and provide recordings for the Ruby community. This is where I got involved. I did my first screencast for Teach Me To Code on Ruby on Rails Routing. This resulted in two things. First, I realized that recording wasn’t that tricky. Second, TechSmith sponsored my efforts by donating a license for Camtasia Studio for Mac and an AT2020 USB microphone.
Having been a longtime podcast listener and feeling empowered by the success of a screencast, I decided to start a podcast. I contacted Gregg Pollack and asked him about recording podcasts and got a lot of great advice from him about putting one together. In the process, I interviewed him as the first recorded episode of what became the Rails Coach podcast.
After a few more months, I had built a small community around the podcast. At the same time, Eric was becoming more interested Groovy and Grails and was focusing on other things related to his family and career. Recognizing that the majority of the audience at Teach Me To Code was Ruby and Rails developers and that his interested were taking him in the direction of Groovy, Eric asked me to take over providing the screencasts and managing the site.
I became the primary producer of screencasts in April 2010. Eric is still involved as a content producer. I combined the Rails Coach podcast and renamed it the Teach Me To Code podcast and incorporated a blog for articles in May 2010.
Eric has done an amazing job setting up systems such as the Disqus comments and UserVoice forum for suggestions. I have been extremely happy to move things along and keep the community and discussion alive.