6 ms·
People may bring ego into programming because of some kind of pathology (eg the need to always be right or in control) but I think in many cases it's because th
by weitendorf 2y ago
People may bring ego into programming because of some kind of pathology (eg the need to always be right or in control) but I think in many cases it's because they truly care about the work. And the problem is not that they truly care, but that there is a mismatch between the amount of influence/control/autonomy they wish to exert on their work and the amount they are actually able to exert on it.
I wasn't there, but my understanding is that essentially all programming in 1971 was done in large corporate settings or universities/research institutions. Those are environments where it's rare for any individual (even someone nominally in charge of a project) to have full creative and technical control over something, and even when they do, it only lasts as long as the project/grant or until their employer puts them on something else.
Compared to the 70s there are effectively no barriers to a passionate engineer starting their own software project as either an open source project or in their own startup, and I'd argue that those are settings where it's actually highly beneficial to bring ego into programming. It's pretty much the same notion as "founder mode" or why BDFL is one of the most popular forms of governance for FOSS.
Personally I'd recommend anybody who "brings ego" to their dayjob to take a stab at FOSS or a startup rather than trying to fit a square peg (caring a lot about their work) into a round hole (the realities of working on large projects).
- MichaelZuo 2y agoWell the ‘pathology’ is clear, isn’t it? They’re not actually smart enough to keep track of what every other team is doing, at any point in time. FOSS works because there’s usually only at most a few dozen balls in the air simultaneously, so someone who believes they can keep track of balls in the air gets by without looking ridiculous. But that’s just not viable when there are hundreds or thousands of balls in the air simultaneously… their eye muscles literally couldn’t move and focus fast enough.
- dasil003 2y agoI think FOSS really only works well for infrastructure type of projects, things where the customers are downstream programmers or at the very least very technical sysadmin types and power users who can understand the gory details to some reasonable depth. Those projects work because they are centered around proven abstractions that are broadly applicable, thus allowing for a tight charter and some stability in requirements. End user software by comparison, has not really been successful in the FOSS model. There have been many attempts, but they perenially lag behind commercial offerings, and thus primarily see adoption from the ideologically motivated and/or very cost sensitive users.
- 01100011 2y agoSometimes a person's dedication and care expresses itself to others as ego. Sometimes it is just ego. I think we've all implemented some clever trick in our code that we started to feel proud of. It's hard not to do. Even if you just contribute to a small piece of the project, you still might have those instances of pride. We're all human, and it's fine to take a little motivation from your accomplishment. But hold on loosely. Be critical of your baby and be willing to throw it out if it isn't the best approach. I used to really like driver/embedded programming because it seemed like there was a 'best approach' or idiomatic solution for most problems that eliminated ego. It felt more like electrical engineering. I often felt programmers working on higher level software treated their work like a personal art project and that turned me off from it.
- weitendorf 2y agoThe problem with "ego" as a concept IMO is that it carries negative connotations with most people and isn't exactly well-defined - some people might see it as always a bad thing (I think you might fall into this camp given that your phrasing "dedication and care expresses itself to others as ego" rather than saying it merely is ego). Personally I think that that is ego, but that ego is not necessarily a bad thing. There is nothing wrong with taking pride in your work, nor in recognizing that you might actually be more knowledgable/skilled/correct in some particular matter than someone else and communicating that to them - as long as that sense of knowledge/skill/correctness is not misplaced, not expressed cruelly, and the actual reasoning is explained. To me, that is "good ego". But if someone thinks they always know better than someone else in all cases or isn't even willing to open discourse/explain why that's "bad ego". I guess to me, the sentiment expressed in this article is one that I feel strays too far into the realm of toxic positivity or crabs-in-a-bucket where merely being opinionated or passionate about your work is a bad thing because sometimes other people get their feelings hurt when you explain why their approach won't work well. I just don't think being egoless is necessarily good. I certainly wouldn't sit there smiling while something I worked on for years got destroyed by other people, because it'd be impolite or egotistical to point out that they're destroying something. But of course, there is a difference between something actually getting ruined, and having a meltdown because someone started naming variable in snake_case instead of camelCase.
- romanows 2y agoCheck out Hackers, by Steven Levy, for some fun tales from early in computing.