Hacker News new | ask | show | jobs
by picks_at_nits 1948 days ago
I am deeply, deeply romantic about programming. I consider it an act of self-actualization.

But answering the question literally, I am not representative of everyone in the industry, and that's a good thing. It's easy to feel romantic about your vocation when you have a number of reasonable options for achieving modest financial security, and you thus had the privilege of choosing the one that most closely matched your idea of self-actualization and self-identification.

Not everyone in this economy has the same set of choices. For many, programming is the lowest-risk way to put a roof over their head and feed their family. We can make up little myths about how we romantics are obviously more passionate, work harder because it's our dream, are more deeply engaged, and so on.

But in the end, I think we'll find as we look around that those of us who feel romantic about something that is also an excellent way to make money at this particular place in time and space have won a lottery of sorts, and are definitely in the minority.

That's not a bad thing.

6 comments

> For many, programming is the lowest-risk way to put a roof over their head and feed their family.

It seems that to some extent the romantics are actually indebted to this cohort for pushing forth the ideas of fair compensation and fighting for workers' rights, because people who are passionate about their work usually end up getting taken advantage of.

Game Development is an example of what can happen when there are too many people passionate about their work. I'm not saying that everyone in that industry is taken advantage of but it's a lot more than the broader tech industry even though there's a lot of overlap between skill sets.
I would like to say that while this is definitely still a thing it has gotten better in recent years.

There has been a big push against crunch and there are more and more studios with a focus on work-life balance.

It should be noted that one of (if not the) biggest game release of all time this year, CP2077, was built on the back of terrible working conditions and months of crunch.
And yet we also see death threats against developers who delay games.
the recent emergence of many quality games from china might start reversing that trend thouugh...
My own writing on the subject of this industry falls into two pretty cleanly divided piles:

The writing about programming itself is "impractical" and "romantic," because that writing is for those who have an affinity with the "romance of programming."

The writing about getting a job, negotiating compensation, shipping products, hiring programmers, &c. is practical, because that writing is for everyone.

What is the difference between practical and romantic? Musashi wrote a book called The Book of Five Rings, which is as romantic as the name suggests, but half the book is an if-else set of instructions.
> We can make up little myths about how we romantics are obviously more passionate, work harder because it's our dream, are more deeply engaged, and so on.

This comment stuck out for me. There’s no shortage of people who “love their job” who aren’t actually good at their job. They can be very motivated to do the wrong thing and often have unearned egos.

I agree with your caution, I disagree largely with your reasons/the dangers you identify. I've avoided California, so maybe that has an impact, but I almost never have seen ego as a problem. I'm one of the only ones who will do impractical things sometimes (but just as often my crazy ideas are radically simpler).

My gut feel is that romantics have it the hardest. They are way more in touch with the potential & powers of it all, the overwhelming awesomeness that is everywhere, & how un-tapped, un-actualized the world-actual about them is. I don't have particular links, alas, but I think of MrDoob, author of the much loved Three.js library which has the lion's share of 3D on the web. He seems clearly to be engaged, to be interested, but he also has talked to himself not being great employee-material, suffering problems of motivation.

The really romantics have problems of alignment. There are few situations in the world where the passion is allowed to flow. There are few working environments that support the chaotic workflow & passion-driven-development. Agile: we all practice agile. What is agile but a way to insure consistent steady endless sprints, each slowly optimizing productivity? What an evil anethema, a plague upon those of us who work by our muses. The corporation, the industry, wants worker bees. And for many years that's probably a good way to function, probably a valuable personal development, of fitting in, declaring what you are working on, learning how to tackle problems. But in the long game, I think this mode of software development is a joke, is consistently low-ambition, squanders the immense potential we have. And I don't think you need long deep experience & talent to be squandered.

I once had someone vehemently complain to me about certain style rules in place in a code base saying, “only machines will ever read it, who cares how it looks as long as it works?” As someone who’s deeply passionate about software development it certainly made me look at this person in a different light.
Always remember: The next person to maintain it could be you.

Often that kind of view (who cares how it looks) is held by people, who leave and leave a mess for others to maintain.

insert Sussman quote about programs being written for others to read first and only last for computers to run here

It might be a lack of experience. I've seen people reacting like this when they are still very new to programming and feel pressured by the need to learn/adapt to stricter rules. After some time once they become more comfortable they pay more attention to the way something is written.
I've worked with people who would scatter literals throughout a codebase because they were too lazy to type out the names of variables and constants. I feel your pain.
> But answering the question literally, I am not representative of everyone in the industry,

I am deeply /deeply/ romantic about programming, but industry is dreck. Unimaginative, low potential, sapping, low-ambition, filled with endless middle- & low-roads & compromises. Countless stakeholders, endless non-technical-personals to "reason" with. Plans & designs & endless corporate aligning & planning. All for middling corporate plans, faint progress, carried forward under the weight of countless legacy systems & terrible decisions.

Programming & open source is this limitless potential, this endless imagineering & exploration. We are unencumbered by anything beyond what we might imagine, what we might want to do, free to think of how we want to represent, structure, develop things.

Not everyone is into programming for the same reasons. But I find increasing distance, increasing inability to articulate to others how amazing being a programmer is, what expressiveness & power we have, how unencumbered & free we are. Even if others don't share the ambition & sense of grandiosity, don't feel the immense pull of the vast humanistic work that we distinctly are the crafters & doers of, there's still such power to create & share & inform that is so rewarding, so immense, so imminent in the craft, & I deeply deeply crave seeing some recognition, somewhere, of some of it- of themselves!- at some level, in my fellow peers. It's ok if we have different reasons, different motivations, different engagements, but there is a might of human potential here that programmers are so uniquely connected to, so immersed in, and I want these fish to realize the water about them, even if they only aspire to be small fish.

I affirm strongly the question: how indeed can you not be romantic about programming?

Do you have any example code that enforces the idea of romantic to you? I've always just worked on business related tasks, and might have missed out on the romantic side of programming
I was romantic but jaded by many years experience plus the move from creation to glue code being what is needed for business
Maybe it's unique to me as a sysadmin previously and now as an SRE, but I quite enjoy gluing things together. Something about taking stuff that doesn't interoperate directly and forcing it to do so is elegant in its own right, without having to resort to scorching the earth and rebuilding everything from scratch.
I learned this the hard way. Thought I was special and passionate and hard working. Then I had a mental breakdown and could barely get anything done. All of a sudden money became the top priority I started seeing the world for what it really is.