←back to thread

270 points imasl42 | 2 comments | | HN request time: 0.491s | source
Show context
spicymaki ◴[] No.45667521[source]
I feel that for long time people coming into the industry did not really care about code as a craft, but more of code as easy money.

This was first salient to me when I saw posts about opensource developers who make critical infrastructure living hand to mouth. Then the day in the life of a software engineer working in a coffee shop. Then the bootcamps or just learn to code movement. Then the leetcode grinders. Then developers living in cars in SF due to lack of affordable housing. Now it is about developers vibe coding themselves out of a job.

The issue is and will always be that developers are not true professionals. The standards are loosely enforced and we do a poor job of controlling who comes in and out of the industry. There are no ethics codes, skillsets are arbitrary, and we don't have any representation. Worst yet we bought into this egocentric mindset where abuses to workers and customers are overlooked.

This makes no sense to me. Lawyers have bar associations, doctors have medical associations, coders have existential angst.

Now the bosses are like automate your way out of a job or you will lose your job.

I always ask myself, in what other "profession" would its members be so hostile to their own interests?

replies(4): >>45667844 #>>45667913 #>>45672858 #>>45681241 #
yuye ◴[] No.45667913[source]
Because there's a difference between a "coder" and a software engineer.

Someone who finished a bootcamp might be able to write a simple program in Python, but that doesn't make them a software engineer.

I've said this out loud before and have gotten told I'm an elitist, that my degree doesn't make me better at software than those without one. That majoring in computer science teaches you only esoteric knowledge that can't be applied in a "real job".

On the other hand, the industry being less strict about degrees can be considered a positive. There definitely do exist extremely talented self-taught software engineers that have made a great career for themselves.

But I definitely agree with the need of some sort of standard. I don't care if some bootcamper gets a job at the latest "AI on the blockchain as a service" unicorn startup, good for them. I'd rather have people with formal degrees work on something like a Therac-25, though.

replies(2): >>45668645 #>>45687440 #
pirates ◴[] No.45668645[source]
As one of the “self taught software engineers that made a great career for myself”, I think you are correct. Maybe not so much in the “better or worse” sense, but there are definitely moments in my “real job” where I can recognize that the thing we’re talking about or working on is something that my colleagues had formal instruction on and I didn’t, and usually in cases like this they’re better suited to talk about and work though the problem. To me the biggest difference is that they had the time/opportunity to work on a huge breadth of different problems and develop their pattern matching ability, whereas I only get to work on problems specific to my role/employer, so anything extra I have to learn on my own time. But they already know it.
replies(1): >>45668868 #
1. AnimalMuppet ◴[] No.45668868[source]
Well... most people who get degrees, get CS degrees, which is not the same as Software Engineering.

Think about chemistry and chemical engineering. Chemistry is "where do the outer shell electrons go, how strong are the bonds between the atoms". Chemical engineering is "how do we make the stuff in multi-ton quantities without blowing up downtown". Those are not the same discipline.

I mean, sure, a software engineer had better know some about big O, and about how to use locks without getting in trouble. But they also need to know how to find their way around a decade-old million-line codebase, and what things they do today that are likely to turn into maintenance headaches a decade from now, and how to figure out what the code is doing (and why) when there's no documentation. I'm not sure that a CS degree teaches you those things. (For that matter, designing a Software Engineering degree so that it actually teaches you those things isn't easy...)

replies(1): >>45669368 #
2. ModernMech ◴[] No.45669368[source]
> Well... most people who get degrees, get CS degrees, which is not the same as Software Engineering.

Despite the name of the degree, most computer science students go on to become software engineers, so software engineering is a required part of many CS programs these days, whereas chemical engineering isn't really required (to the same extent) in chemistry programs. Depending on the program it can vary how much though. At my current place it's 3 semesters but others might have more or less. One course is a sort of simulation of a working software firm, and the other is a sort of 1 year internship with a real company or a research lab. This has not always been the case, as when I was in school I graduated without knowing version control. Today, git is taught to freshmen.

Although, we don't have many decade-old million-line codebases lying around to hand the students, we still try to give them the necessary skills they might need to work with one. But we can't teach everything in 4 years, some things have to be learned in the field on the job and from seniors engineers.