Code School Expectations

If you were to base my levels of satisfaction/disappointment at the code school I attended purely on my expectations, you would come to the conclusion that it was absolutely terrible. And yet I can still often be heard recommending it to many people. Just because my expectations were not met, doesn’t mean that it was a bad experience. In a world where results are what matters, the end result of going to code school exceeded my expectations in ways I didn’t even dare to imagine before attending.

My path into technology was a little windy. After high school I went to college and declared a creative writing major with a minor in ancient Greek. After deciding that this was way too much reading even for me, (someone who averaged 5 novels read a week in high school) I decided to switch to art school and study graphic design. Somehow the admission officer convinced me to do the Web Design and Interactive Media major instead of graphic design and I ended up in my first computer class since middle school. Despite my fears that I wouldn’t be able to keep up the the programming aspect of the program (I have a deep fear of math and numbers), I ended up completely falling in love with the code. After deciding that art school wasn’t technical enough for me, and that I really didn’t like being told to do homework, I dropped out and started teaching myself to code. I didn’t have a community around me of other technical people, and I didn’t know where to find one. I was also having trouble uncovering what topics I actually needed to learn. When I eventually hit the wall of all I knew how to teach myself, I enrolled in a code school with high expectations of coming out as a programming ninja rockstar.

This is what I expected versus what I actually got out of code school:

Expectation: I was going to become an expert in all the languages they taught in 4-6 months of studying 40 hours a week.
Reality: I didn’t become an expert in any language while I was at code school. This isn’t a bad thing. The point of code schools shouldn’t be to learn any specific language(s) or framework(s), but to learn the fundamentals of programming and how to learn. It hasn’t been two years since I graduated, and the popular JavaScript framework has changed at least twice. Employers are looking for skills in frameworks that hadn’t even existed when I was at school, and the languages that were popular at that time are almost never asked for anymore. When I was looking for code schools, it was super important to me to learn PHP. Less than a year later, as I started looking for a job, I couldn’t find a single posting that wanted PHP. I have had three jobs since leaving code school, and they have required completely different stacks.
Conclusion: I have a strong understanding of how basic programming concepts work at a fundamental level. It is much easier to look up the syntax for a for loop in a specific language than it is to understand at a high level what a for loop actually does. This is way more valuable to me than being a language specific expert would be.

Expectation: The school would have an in-depth curriculum that would teach me everything I need to know without having to look at other outside sources.
Reality: No curriculum can be all inclusive, and more importantly, no curriculum should be all inclusive. The most important thing is to learn how to learn these technical topics. Besides all the technical topics you need for a programming job, there are also countless soft skills that these schools don’t address. Again, the point of code school isn’t to become an expert in any specific language.
Conclusion: The school helped me discover all the tools I would need to make myself a programmer, and supported me on my journey to get there.

Expectation: Code school was going to teach me things just like high school. I would read a textbook, listen to lectures, and then answer questions / do assignments on each topic. Then I would be tested on it and I could forget everything.
Reality: The number one thing code school taught me how to do was Google. It seems simple: type something in to google, get answers. Not so much. The code school introduced me to a bunch of new resources I hadn’t been exposed to in the past, and helped me learn how to tell the difference between helpful and not helpful resources. I learnt how to go out and find the knowledge I wanted to gain, and I was introduce to many interesting topics that I was able to explore on my own.
Conclusion: Because the code school didn’t actually teach me things directly, my code school experience was exactly what I made of it. In a way, the lack of structure allowed me to have a totally customized experience.

Expectation: I would go to classes during the day, maybe do a little homework, and that was it.
Reality: There is so much more that needs to go into learning to code than just the technical aspects. Like anything else, you get out of it what you put in. To really get the most out of code school you also need to be building your network and working on your soft skills.
Conclusion: Thanks to some (extreme) pushing on the part of the code school, I eventually started going to meetups. I am now crazy involved in the community, I am on the leadership team for the Portland branch of Women Who Code, and a co-organizer for PDXNode. I mentor at several other meetups, I’ve led workshops, and I even gave a talk.

I definitely had other expectations and I definitely got so much more out of going to code school than I could fit in this post. My bottom line conclusion here is to make sure not to let failed expectations shape your view of the experience, the reality can end up way better.