Programming with People

I wanted to share three quick thoughts on programming.

1) The code we write reflects our social interactions.

Keeping up a happy and healthy culture helps us write great software. Taking care of others helps us write great software. I remember a friend describing a codebase he'd worked in. The code was obviously designed so that people could "gate off" certain sections of code in various ways and not need to interact with anyone, in a codebase that really could've benefited from not doing that. What about code that could be made simpler, more accessible, easier to understand, or that simply was collaborated on? How do you affect others, even as a backend/low-level engineer? The end product is all about people interacting with something, and so is the code-- every step of the way. Social skills are valuable. Even more so when building the codebase with and for others.

2) Recognizing that the work you do is something anyone can learn, talking with and taking on beginners, and being humble is crucial.

One reason to do this is that we are all always learning, even with lots of experience-- and programming is so broad, and we are all beginners in many fields. Gating off "beginners" from discussion also stunts your ability to  benefit from different backgrounds, fields, and viewpoints.

3) Programming can be wonderful when highly collaborative and interdisciplinary.

I love lots of different subjects, and I think by doing so, I bring a different perspective to my coding. Want to try out your art project over the weekend? Want to play music? Want to do science, or write, or organize a community, or anything else? You will bring what you've learned from programming into that, and bring what you learn from that into programming. And that is a beautiful thing.

Violin, Theoretical Physics, and Indie Games

Building a GLSL Shader Compiler