Writing great software is an immense joy in my life. I truly enjoy working with business users and other developers to craft software which can make a marked and immediate difference for a business, something that presents real value. There isn’t a lot of rocket science here, it goes to the fundamental desire of all humans to make a difference in our world.
Fortunately for those who are looking for ways to do so, our world is full of situations that need to be adjusted. One of them, with all due respect to those in our industry who cling to their cherished degrees from universities, is that you do not need a four year degree to craft great software. Now certainly we all know people who have been successful without a traditional education, in fact you’re reading the blog of one right now. And I will be the first to tell anyone leaving High School that a four year degree is your most certain path to success in software development. But for some, that ship has sailed.
For some, the reality of life is such that leaving work is beyond their reach because of the need to support themselves. One such person as this is Christopher Jackson, a good friend of mine that has exceptional analytic skills but who also finds himself functionally unemployed currently, having lost his last job to a downsize from the economy, he now acts as a substitute teacher in the Fort Worth Independent School District for the incredible sum of $73 dollars per day. Compare that to the average salary for an entry level developer, approximately $56K/year, and I believe you will agree that cultivating his interest into a marketable skill set should have an impact on his life. Chris has always had an interest in writing software, but it is hard to find time to go back to school while working.
As such, Chris and I have come to arrangement, one that is an experiment for me but which I firmly believe in. Effective today, January 9th 2011, Chris has begun an unpaid internship with my company TimRayburn.net LLC which puts on Dallas TechFest and other projects of mine. During the internship, he will be working with me to increase his basic skills in development, and learn how to craft software from the ground up. Initially, he will be working on assignments with little real-world application, but eventually he will be assisting me on actual projects that deliver real world value. As I’m sure some will be curious on how I have structured this plan, I will lay out at a high level what is involved:
- A commitment to dedicate time to the effort. Chris will be spending time with my at least three days a week for multiple hours.
- A commitment from his spouse to support him in this effort. Chris is newly married, and his spouse needs to be on board if he is to have the support he will need at home.
- A time boxed commitment, for us initially of six months. This will allow Chris to commit, while also knowing that it has an end point, and that if he chooses to continue than changes can occur at that time.
- A penalty for not meeting the commitment. The details of which will not be public, but which are notable enough to impact his life should he decide to walk away from the commitment.
- A reasonable third party arbiter, trusted by both myself and Chris who will be able to settle any disagreements around the penalty should that need arise. My wife Kate will be serving that role, which for Chris and I who have been friends for over 15 years is agreeable.
I do not know how this will go, but I am certain it will generate blog posts as I learn while I teach. Any suggestions?