The two options: Game development or boring database stuff
When I was thirteen years old, I thought programmers fell into two categories: game developers and boring, big-business enterprise developers.
"Yeah, in enterprise stuff, you just program a GUI and people can put data in, like their name, their salary, their boss' name, and their boss' salary," I explained to my brother. It was because the programming books always used employees and bosses as examples. So I decided that I would become a game developer. I was thirteen.
When I entered university, I chose computer science as my degree. By this time, I had lost interest in gaming, but I still loved programming. I would program games for fun, because it was either that or database programming, and MySQL seemed hard. And I knew that writing HTML wasn't actually programming.
I took a basic data structures class and a basic logic class my first semester in university. It was fun, but the end of the semester, I started to dread my future as a boring database programmer. I thought about switching majors. History, perhaps, or writing. Or music composition. I wanted to create, you see. I wanted to create beautiful things. I had written short stories and pieces for piano and orchestra, and it was always so fun. I started on a symphony, but realized that I didn't know much, so I never finished it.
Then I found out that my professors weren't teachers; they were researchers. I didn't know how you research something, but I figured that research was better than boring database programming. So I took a course on autonomous vehicles my second semester and I started reading research papers on how cars can drive themselves. I stayed on campus for the summer on a research fellowship and continued my work. I coded my algorithms and ran my experiments. My work didn't improve on anything, so I threw everything away. That's research, I supposed, lots of throwing stuff away.
Then I started to read. I found Paul Graham's essays. I learned the word "startup." I realized that there is a bigger world out there. And I found that creation is still possible, that programming can be beautiful.
