Quest(ions): return Holberton

“You have a questioning mind,” she told me, while simultaneously not answering my question and walking away. That spellbinding statement rang in my ears as it sunk in. I do not remember what I had been asking, but my interlocutor was a woman who goes by Chozen Roshi, a Zen abbess from an Oregon monastery, where I was attending a meditation retreat.

Although, I have often struggled to understand myself better, frequently coming up short, no statement could have captured my spirit more succinctly than what Chozen told me that afternoon. In the years since, acting on the questioning imperative, I pivoted from my undergraduate studies in anthropology, to a master’s degree in molecular biology, and now to computer programming and artificial intelligence.

Each step that I have taken in my education has been towards fields with increasingly rigorous standards of truth. I became disillusioned with anthropology when I realized how subjective it was. The insights it can provide into culture can be illuminating, but often veer dangerously close to cocktail hour banter. I set out on a journey into molecular biology because it was an area where unfathomable complexity could be broken down into manageable pieces through controlled experimentation. Nevertheless, after working for a number of years in a lab environment, where progress is often slow and halting, I realized that the most gratifying aspect of my work was in the analysis and presentation of data. After attending a summer workshop in Python programming for biology graduate students, I found myself deeply engrossed in both learning the language and seeing all the incredible ways that computers can be used. It was as though a veil had been lifted off the world; a world where computers are an enormously important part of daily life, yet where I had mostly been blind to their inner workings.

Over the next several years I spent more and more time figuring out ways to use small Python scripts in my data analysis. When I was supposed to be reading papers about viruses and the immune system, I found myself instead researching the latest developments in machine learning and artificial intelligence and going through online coding tutorials.

One reason I am drawn to programming is its innate simplicity. Even though programs can be incredibly complex in their functions, they ultimately boil down to very basic building blocks. From those pieces one can construct powerful and beautiful things, from web browsers that allow us to interact on the internet, to IBM Watson, promising to deliver healthcare to the underserved. For a relentless questioner, like me, programming provides an endless source of puzzles to solve and hurdles to overcome.

As a graduate student in biology, my colleagues and mentors have frequently remarked that I think like an engineer. I have always been most interested in the process of coming up with new ways to do things, seldom resigned to any one area of research. In the field of biology, I developed new techniques and adapted old ones to test ideas about virus mutation rates. I also helped design a new device to test the effects of electric fields on the insertion of foreign DNA into bacteria. Even if the solution to a problem does not immediately reveal itself, the process of coming up with new ideas is what inspires me.

Today, through a combination of self-study and a few short courses, I have developed solid but, basic programming skills. However, I want to become a stronger and more efficient programmer. I want to be able to quickly test ideas and develop an intuition for the best approaches.

Learning how to program, however, is not the same as becoming a professional developer. As a career, software engineering appeals to me because it means constantly being challenged with new problems and having to come up with creative ways to solve them. In every field I’ve worked in I have most enjoyed devising elegant and efficient solutions that get to the heart of the problem. Being able to do that for a living would be a true gift.

I discovered Holberton School while researching the best way to learn the fundamentals of programming from the ground up rather than the surface level understanding inherent in many short-term classes or bootcamps. It is not enough to learn about a few useful libraries and where to place a semicolon for someone who really cares to understand the how and why of things. The curriculum at Holberton School emphasizes the basics of programming computers by starting with the C language and uses that experience to build up to more specialized languages and the areas in which they are used. Rather than teaching one thing, Holberton School shows how to find the the right tool for the task.

While one option might be to go back to a university setting for either another undergraduate degree or a master’s in computer science, these do not address all the benefits of a place like Holberton School. As someone hoping to begin a new career, I look forward to working with peers who feel a similar attraction and inspiration to learn a new discipline and who want to devote all of their energy to learning it. Moreover, one of the great assets of Holberton School’s curriculum is the internship experience to strengthen and consolidate what one has learned over the previous nine months. While learning the fundamentals is crucial, if one hopes to translate that knowledge into a career it is essential to get industry experience early on, something generally lacking from academic programs.

Programming is not an end for me, but a means to leverage modern technology to interact with and learn more about the world. Much as the development of written language transformed our society, computers have put tremendous capabilities as well as challenges within reach. As these abilities continue to evolve I want to be at the forefront of the their evolution, both to have a say in their direction and to be aware of their limitations. The best way for me achieve this is with Holberton School.