When I walked into my first Railsbridge workshop for women, I was a bit nervous about what to expect. But over the course of the next two days, my excitement won out as I learned basic coding principles like command line, variables, and objects. Since the workshop gave me initial exposure to Ruby, I decided to continue on that path and learn as much as I could on my own. I subsequently completed the Ruby track and HTML/CSS track on Codecademy, the Ruby Primer on Ruby Monk, Code School’s Try Ruby, and Rubeque’s practice problems. I began with online tutorials and then graduated to more challenging practice problems that involved unstructured assignments, such as writing a method that prints the maximum of a given set of numbers. These learning experiences gave me confidence to pursue a career in software engineering.
Thus, I began to meet software engineers at the health care startup Omada Health and at the ‘Women Who Code’ events that they host. The engineers there recommended Chris Pine’s book, Learn to Program, which really helped pull together the programming concepts I was exposed to in the other tutorials. I found that trying to do the practice problems alone was challenging, though it became easier when using social resources such as Stack Overflow. Thus, I really began to see the value of attending a programming bootcamp where others could help accelerate my learning and development.
I have found that when learning something new, practice and modeling is critical. It was only after I tried numerous practice problems and solutions, did I begin to recognize patterns in how the problems were solved. It reminded me of the first time playing with a Rubik’s cube, and how after watching someone solve it unlocked the secret in my mind. Often times when doing coding challenges, I would struggle with a problem for hours or even days. Eventually, I realized that this was not an optimal learning strategy since it did not allow me to identify the issue and iterate quickly, especially since the stumbling block would often be a tiny syntax error or typo.
In the end, despite all the struggle of solving a coding problem, the difficulty is actually what makes it so fun. The secret to happiness is not being great – the secret is growth. After all the frustration, the moment I run my program and it works, I get a feeling of elated exhilaration. Though I am typically a cheery person, there is nothing quite like the euphoric high that comes with hard-earned accomplishment. So when I found out that people get to do this as their job? I said: sign me up.