I began my tech career by tinkering with HTML. It was nominally my “gap year” before college, but in fact it was my second year after graduating high school and I still was very lost and very depressed. To pass the time, I made YouTube Disney fan videos and started a google Blogspot blog. The tagline for “Bemusing Jo Bingo,” my blog, was “I am a feminist… but what does that even mean?” Very embarrassing, I know.
In the blog post edit feature, there was an option to edit in HTML. At first, I only did this to embed YouTube videos (this was early enough that this wasn’t natively supported by the default mode). Soon I found I could control the size of the video in pixels, or in the percentage of the width of the web page. My eye began to wander to the rest of my blog posts… could I make this italic? Bold? And should I use <b> or should I use <strong>? (I’m really dating myself here.) I found myself taking an online course teaching me the anatomy of a web page, Hypertext Markup Language, and Cascading Style Sheets. In short, I learned about structure vs. appearance. HTML was the substance of a page: the actual text, what was a paragraph, what was a footer or title. CSS was form: font, size, color. The next year I started college and soon I entered a Web Design minor (to my disappointment, there was no Web major).
In this Web minor, I learned a new concept of “language” that I’d never suspected before: computer language. Computer languages are a way of talking to a computer and telling it what to do. The newest languages I learned were JavaScript and Python. I found them more versatile and powerful than HTML and CSS. They had more rules, and way more words. They could influence both structure and appearance, but I soon found my interest mainly lay in structure, in “backend.” This was the action of a computer behind the scenes, before the web page was ever formed. The logic behind every computation.
After a particularly inspiring course titled “Introduction to Computer Programming,” I discovered that beyond the world of Web and the World Wide Web there was a discipline called “Computer Science.” If web development was a fascinating book, Computer Science was the whole library. My eyes widened and I quickly hastened to the necessary office to begin the Computer Science major as quickly as possible.
As a Computer Science major, I learned about an even more generic concept than web page structure or computer language. This was the “data structure.” Here “data” can be understood as meaningful information, and “structure” can be understood as a useful and readable arrangement. Essentially, a data structure was a way to read and manipulate information.
Here I had found the heart of my passion. This increasingly generic and conceptual understanding of computers and technology was what I craved. How had a multi-thousand dollar MacBook been reduced to this mathematical concept expressed in a few lines of code? Something that I could write – something that I could master? Here I finally understood the allure of the atom to scientists. I had found the simple building block that could power the largest cities. I had found a nearly philosophical way to express very technical concepts. In finding this structure and language to communicate and build the world, I found myself. I was a computer scientist.