Live data from Hacker News

Thoughts on the software industry (2022)

linus.coffee

61–70 of 86 posts

Re: Thoughts on the software industry (2022)

#61
post #10

Earlier quoted context omitted.

> The most passionate software engineers I know might be able to claim similar joy, but they have overwhelmingly quit their corporate gigs and fly solo. I have done the solo thing and have come to realize I much prefer coding for others. There’s just too much annoying bullshit in running a business and I don’t need to deal with almost any of that as an employee despite getting basically all the same freedom, impact,…

> There’s even a point where things switch from your boss telling you what to do to your boss asking you what to do. How? Actionable step by step, please. Measurable, with before-and-after descriptions.

Step 1. Figure out how to accomplish higher-level goals where the details haven’t been fleshed out yet.

Step 2. If you are still relying on steps, you did not actually complete Step 1.

Re: Thoughts on the software industry (2022)

#62

Earlier quoted context omitted.

> On the other hand, software engineering is about sprints, useless deadlines, using the wrong tool for the job, writing code to increase shareholders value, high-performing-team obsession, useless C-level execs, broken tech interviews… That is not at all what "Software Engineering" is. It is Management's view and practice of what it should be based on the fad of the month/year, simplistic efficiency/productivity mod…

Barry Boehm is the epitome of the process-obsessed, elegance-hating middle manager

I have had this argument before and No that is not quite true. For people not familiar with his work - https://en.wikipedia.org/wiki/Barry_Boehm

His research was a product of his times when programming/coding was considered a clerical job with the real brain work being done by System Analysts and System Designers who produced System Requirements Specification Documents and System Design Specification Documents. He was the first to show that software development costs would outstrip hardware development costs and the importance of its Risk Management through a Spiral Model. He brought "big picture" engineering process lens to the management of software development which became "Software Engineering" today.

All of these ideas are still valid though they would need to be modified for current times given the decades of experience we have had since then. Software development at the Individual level involves creativity/art/craft/individual flair and companies must acknowledge and provide means for expression of these psychological needs. OTOH, Software development at the Company level is all about Risk Management in the service of its Business Goals and hence needs a reproducible process and associated methodologies. We need to find a balance between the two.

Re: Thoughts on the software industry (2022)

#63

Earlier quoted context omitted.

>I'm financially successful, but not very I read about some research recently where the researcher asked people how much money they earned and how much they would need to feel financially secure. No matter how much they earned they all felt they needed about 50% more. It seems we are programmed to feel mildly dissatisfied no matter what our circumstances. I guess that is what drives us on.

This point of view is very popular and I've seen zero evidence for it throughout my entire life. Consider you might be living in a bubble where "the hedonistic treadmill" tired trope makes perfect sense... and that bubble is fairly small. Ever thought of it? Practically every person I ever asked told me more or less this: "Yeah sure, who would not want 100K a month? But I am not willing to forfeit my personal and fam…

I’m not sure whether you are agreeing or disagreeing with the points I made.

Or perhaps you just had something you wanted to get off your chest.

Re: Thoughts on the software industry (2022)

#64

A word of caution for highly intelligent but otherwise regular (not well connected) people. The software industry is the most manipulated industry on the planet and in human history. If you work on any significant, high exposure project, be prepared for unimaginable political f***ery. It's also one of the least meritocratic industries in existence because most big companies have monopolies and can afford to be extrem…

Do you have experience working in big software companies or not ? Is this advice also valid for those refusing to work in big software companies or not ?

(Or is this about monopolies using underhanded tactics to try to shut down high profile projects of their smaller competitors ?)

Re: Thoughts on the software industry (2022)

#65

Earlier quoted context omitted.

This point of view is very popular and I've seen zero evidence for it throughout my entire life. Consider you might be living in a bubble where "the hedonistic treadmill" tired trope makes perfect sense... and that bubble is fairly small. Ever thought of it? Practically every person I ever asked told me more or less this: "Yeah sure, who would not want 100K a month? But I am not willing to forfeit my personal and fam…

I’m not sure whether you are agreeing or disagreeing with the points I made. Or perhaps you just had something you wanted to get off your chest.

Me saying that I heard your takes many times but never seen it anywhere should have tipped you off that I disagree.

Not sure what your response contributes to any discussion though. You did not try to defend or enrich your position.

Re: Thoughts on the software industry (2022)

#66

Earlier quoted context omitted.

Barry Boehm is the epitome of the process-obsessed, elegance-hating middle manager

I have had this argument before and No that is not quite true. For people not familiar with his work - https://en.wikipedia.org/wiki/Barry_Boehm His research was a product of his times when programming/coding was considered a clerical job with the real brain work being done by System Analysts and System Designers who produced System Requirements Specification Documents and System Design Specification Documents. He wa…

I agree that risk management is important for software companies, in the same way it is for construction companies, and part of that involves software engineers.

But I think pretty much any business has risk management processes that involve domain knowledge, and a much larger and more distinctive part of any kind of engineering involves non-business considerations and tradeoffs that AFAIK Boehm didn’t really concern himself with. For example, a civil engineer designing a bridge is thinking about wind shear, traffic volume, vehicle weight allowances, and so on, just as a software engineer is thinking about latency, throughput, error propagation, and so on. To me, these sort of non-business-logic but very much domain-specific considerations are what comprise the core of software engineering (as compared to programming, which I would classify as just getting the business logic correct without any meta-considerations).

This comment is poorly edited, but essentially Boehm’s processes to me are better described as “software business management” than “software engineering”.

Re: Thoughts on the software industry (2022)

#67
post #13

As someone who does play music, although not professionally, I don't really agree with the analogy that writing code is like playing music. You don’t expect to learn how to play the piano by reading a book, but you might expect to pick up a programming language or concept because you read about it. Really, it doesn’t work that way. You have to read it, and then use it and practice it and make a hundred mistakes, and…

i hear you ;) although i'd counter with the idea that it isn't code-writing which we practice continually to master the art, but world modelling: we model the world within the constraints of code in our mind, to become experienced enough to do so reliably, then usefully within different contexts code is the instrument, not the music

In that analogy, the programmer is more like a luthier then, not a musician. Great luthiers generally aren't also great musicians. Completely different set of skills

Re: Thoughts on the software industry (2022)

#68

Earlier quoted context omitted.

I’m not sure whether you are agreeing or disagreeing with the points I made. Or perhaps you just had something you wanted to get off your chest.

Me saying that I heard your takes many times but never seen it anywhere should have tipped you off that I disagree. Not sure what your response contributes to any discussion though. You did not try to defend or enrich your position.

Assuming you were responding to my statement "It seems we are programmed to feel mildly dissatisfied no matter what our circumstances." I can't see how that squares with the paper I talked about. Of course you can raise your anecdotes but that proves nothing.

Re: Thoughts on the software industry (2022)

#69
post #48
post #39

Programming is so different than software engineering, to the point some people (like me) love the former but little by little are starting to hate the latter. Learning for the sake of learning, being able to be picky about what to learn, feeling like a god by creating your own worlds, trial and error… these are all traits of programming. On the other hand, software engineering is about sprints, useless deadlines, us…

I think you are confusing the working conditions of writing software in a corporate environment with software engineering. To me software engineering is about skilled application of a wide range of engineering concerns to programming, such as architecture, data modeling, and QA processes. I find such engineering fun and meaningful. As a software engineer, you understand that is not enough simply to write code that wo…

I think that the original advocates of software engineering -- people like Margaret Hamilton -- were promoting an approach akin to chemical engineering.

Chemistry is about understanding chemical elements and compounds and the ways they react with each other to form different compounds. This includes the synthesis of new compounds, to understand the mechanism by which they might be created and the properties of the new compound; accordingly, chemical synthesis by a research chemist tends to take place in small amounts.

Chemical engineering is about the production of chemical substances, reliably, at massive scales for industrial purposes. Chemical engineers elicit and apply the manufacturing processes necessary to synthesize these chemicals by the kilolitre or more, which may be totally different from the processes the experimental chemist uses in a lab.

Similarly, programming is the act of writing code for a computer to fulfill some task, or explore some computational idea. Software engineering is the application of a standard, defined process to reliably produce code at massive scales for industrial purposes (enterprise applications, etc.). Architecture, data modeling, and QA are part of it, but the heart of the discipline is finding and applying the means to organize a large team to produce software that is robust, scalable, and maintainable to support an organization over the long term.

People who fancy themselves artisan programmers chafe at the industrialization and standardization of software engineering. But, as Milt Bryce said, "There are very few true artists in computer programming; most are just house painters".

Re: Thoughts on the software industry (2022)

#70
post #48
post #39

Programming is so different than software engineering, to the point some people (like me) love the former but little by little are starting to hate the latter. Learning for the sake of learning, being able to be picky about what to learn, feeling like a god by creating your own worlds, trial and error… these are all traits of programming. On the other hand, software engineering is about sprints, useless deadlines, us…

I think you are confusing the working conditions of writing software in a corporate environment with software engineering. To me software engineering is about skilled application of a wide range of engineering concerns to programming, such as architecture, data modeling, and QA processes. I find such engineering fun and meaningful. As a software engineer, you understand that is not enough simply to write code that wo…

"Software Development" includes programming, engineering, and "the BS involved in working for the tech industry as part of a team". Your title can be [software] programmer, software "engineer", software developer, or a plethora of other things.
Post reply on HN