DEV Community

Discussion on: Does programming require empathy?

Collapse
 
inigogb profile image
BaronVonHex

I believe empathy is really subjective but correct at the same time. Let me elaborate:

Programming in my opinion is first a way of expression of how us as humans think about a subject and second as a piece of technology that enables us to solve problems, craft new tools for specific purposes and much more. So when I start coding I do it with the mindset of delivering my best solution in the time I'm given but also thinking of the next programmer that, in the future, will be touching my code. Will he understand what I meant with this function? (I know, that's what comments documentation generators are for but nothing beats a good'ol naming convention of variables, functions and classes) Is my solution readable enough so it can almost be read like a book's paragraph but concise enough to be called clean code? In short I'm always thinking of ways to help future developers working with my code.

This empathy also considers our users, be it other devs or the clients. When coding always think about your user, specially If you develop UI. A menu suddenly vanishing by a misplaced button or excess of animation can scare future users and clients off your product so guiding them the best possible way through your UI could also be called a form of empathy.

Programming will always be about humans helping other humans.

Best regards!

Collapse
 
mortoray profile image
edA‑qa mort‑ora‑y

I think when I hear the word "empathy" I think about feelings. I realize this isn't the sole definition of the word, which is more broad to consider the though process and experiences as a whole of another person. In that sense I think you're right on both counts -- we want to write code that a future programmer will understand, and create an application that does what a user wants.

Though, I am uncertain about the future programmer. "require" is a strong word. Is empathy really required, or would following a strong set of clean coding rules and logic be sufficient?

(I have no doubt about the user. If you don't have empathy with them, your app will suck. And given the state of current UI's, I have to assume this lesson is lost on most UX designers.)