I just think it’s a really cool thing. It’s really interesting and very satisfying to produce something that works. Something that didn’t exist—from specification to refinement to implementation to improvement. I just find it very enjoyable and creative and satisfying, and I feel so lucky to have this as my paying profession.
It was what I always wanted, actually. I was a hobbyist programmer as a teenager. My parents discouraged me from it because they saw no future in it. I studied chemistry in college but kept coming back to programming little things just for fun. After graduating, I couldn’t really see myself doing anything else, so I set out to find a way to get someone to pay me to write software.
I eventually started in a research assistant position, as well as working at a web development agency. Both of which I found somewhat satisfying, but I didn’t really like them very much. Eventually, I realized my big dream of forming a product company that makes BrowserBox and also a SaaS product, CloudTabs. Our business is primarily around selling licenses, not producing customizations.
But I really like making software, and even though I have less of a chance to do it these days than I once did—because of all the other things you have to do running a business, especially a small business—I think even if I wasn’t being paid or making something that people wanted, I would be doing software anyway, just because I think it’s cool.
And I’m not especially a geeky type of person, although maybe liking software contradicts that. I just think software is this creative and inspiring and satisfying thing. It’s cool to see it around you in the world, and it’s cool to know that you can be part of that—you can be part of producing that. And I just feel it’s a really inspiring thing, and I feel so lucky that somehow I developed this interest when I was a small child. And I kept coming back to it, and now it’s such an important part of the future, I guess you could say.
I don’t really enjoy staying up on trends, like the latest framework or whatever. I like knowing the latest language features. And I don’t think I’m a hardcore CS geek—I’m not super interested in esoteric theories and algorithms—but I do value elegant and useful and efficient algorithms.
I don’t know, I just think it’s something so fascinating and interesting. And it’s cool that it is something so interesting to think about and be involved in, but also to be able to create yourself. There are lots of interesting topics out there, like in biology and so on, where you can create to some extent, but a lot of it is studying how things work. Software, it seems, is kind of a raw creation in a lot of ways, and I just find it fascinating and invigorating.
Is that weird? Is it weird to get so much out of the non-monetary aspect of it, just the sheer enjoyment of it being a thing that I can participate in and experience and enjoy? Is that super weird? Are there other people out there who just really like that? It’s not just a job; it’s something you like.
In my "fun time" code, I hardly ever use libraries, electing to implement them myself from scratch. Sometimes, the libraries I write actually get used; sometimes they lie there, never touched again.
Professionally, I get pretty annoyed by other programmers who don't care how things work or want to use a library for something simple (i.e., left-pad level simple).