Sunday, June 3, 2012

Code Academy Week 8: Not Just About Coding

On Tuesday I pair programmed with Brian from the M/W/F class.  Before we got down reviewing my code together, we decided to head to Chipotle and grab a bite to eat.  While eating we discussed our backgrounds and what brought us to Code Academy.  We dove into a great conversation about how Code Academy is not just a game changer in our lives, but how Code Academy is part of a much larger disrupt that is taking over education in our society.  I decided to take a little different direction with this week's post, and share my personal opinions on this subject.

We are told from the time we are in high school (and in many cases earlier in life) that in order to be successful you need to go to college.  Is this really true?  It has become normal in our society to pass judgement on a person based on their academic accomplishments or lack there of.  My favorite are companies that have a hard line rule about even interviewing a person that does not have a required degree.  Our society is so caught up in college and degrees that we are forgetting that there are multiple paths to finding success in life, and not all of the paths include getting a college diploma.

Do you know a person that has gone to college and later changed their degree several times before finally finding what they like?  How much of the current college debt is attributed to students not knowing what they want to do?  How many people have graduated from college and are now working in a field that has nothing to do with their degree?  I am confident you know someone that falls into one of these scenarios.  We will all continue to know someone who falls into one of those scenarios if we as a society do not change our mindsets.  Going to college is not the only way to be successful.  Not all students are ready for college right after high school. Once we become more accepting of these facts in our society, I think we will open the door for people to do some amazing things.

To be honest, this subject is very personal for me.  I do not hold a college degree.  I have been judged by others when they find this out.  Too many, it does not matter that I dedicated 4 years of my life as an apprentice in the tool and die trade.  I am a journeyman tool maker.  I started off my life becoming a craftsman who mastered the skills needed to build complex tools.  This includes understanding engineering, design, machining, and in some cases a little bit of black magic to get everything to work.  There is no four year degree (or even masters program) that can give you this type of experience.  I loved my time as a tool and die maker.  After completing my apprenticeship, I left to go to college.  Why?  Because that is what I was supposed to do if I wanted to be a success in the eyes of society.  For the most part I found college boring.  My favorite classes were those that involved labs.  Building and experimenting are my favorite ways to learn.  After two years, I decided college was not for me.  I took an engineering job that seemed to compliment my college and tooling experience.

Thirteen years later I have realized the mistake I made by bending to society's opinions.  I recently realized that one of the reasons I like coding so much is that it is so similar to the tool and die trade I fell in love with as a teenager.  As a tool and die maker we were given a rough tool design to work with.  I would then need to figure out the detailed design of tooling components I was going to build.  This is much like being given a set of user stories, and trying to architect how your software is going to be built.  In tool and die I would start machining parts by lathe, mill, and surface grinder.  Many people know how to run these machines, but only a true craftsman can make art from these machines.  My experience working with some great programmers over the past 8 weeks has shown me the same thing is true when it comes to writing code.  After building a tool you must have a trial and make sure your tool is producing parts that are in spec.  It is important to make sure the tool is running smoothly and does not have maintenance issues.  To the outsider this seems to be the easiest part of the tool and die process.  In fact, it is actually very hard for your common die maker.  One thing I have observed is that some of the greatest craftsman I worked with never spent much time with this process.  They mastered the "black magic" by planning for these issues when they were building the tool.  The same can be said in software development through means of agile and test driven development.

I could go on for days listing how my experiences of tool and die and software development are similar.  I would have never found this out had I not enrolled in Code Academy.  I was able to know in the first 4 weeks if software development was something that fit me or not.  I am not only learning about software development, but I am also learning how to learn.  This is something that is not taught in colleges.  It is my opinion that this type of education setup is going to be critical if we want to try and better our society in the future.  We need to quit pushing college as the only option for a person to find success in life.  In a recent controversial interview on 60 Minutes, Peter Thiel said "We have a society where successful people are encouraged to go to college,  but it is a mistake to think that college is what makes people successful."  If anyone has made it to the end of this blog post, then I beg you to please remember that quote.  Remember that quote the next time you make the assumption that someone is successful because of their degrees.  Remember that quote the next time you meet someone who doesn't have a degree.  Remember that quote the day your child questions the need to go to college or not.
Post a Comment