Earlier quoted context omitted.
Call me crazy, but my guess is that that may not have been able to happen without the decade of experience it took you to get to the Staff level engineering position at a big tech company which has enabled you to gain the skills required to review the AI code you're producing properly.
Totally true. But that's also a different point than "But I love using my knives!"
The Programmer Identity Crisis
251–260 of 317 posts
Re: The Programmer Identity Crisis
#252Earlier quoted context omitted.
I largely agree with sibling responses. BUT... How do have code review be an educational experience for onboarding/teaching if any bad submission is cut down with due prejudice? I am happy to work with a junior engineer and is trying, and we have to loop on some silly mistakes, and pick and choose which battles to balance building confidence with developing good skills. But I am not happy to have a junior engineer th…
Code review as an educational device is done. We're going to stop caring about the code before people who are bad programmers right now have time to get good. We need to focus on architectural/system patterns and let go of code ownership in the traditional sense.
Re: The Programmer Identity Crisis
#253Earlier quoted context omitted.
Code review as an educational device is done. We're going to stop caring about the code before people who are bad programmers right now have time to get good. We need to focus on architectural/system patterns and let go of code ownership in the traditional sense.
Aren't you effectively saying that no one will understand the code they're actually deploying? That's always true to an extent, but at least today you mostly understand the code in your sub area. If we're saying the future is AI + careful review, how am I going to have enough context to even do that review?
Re: The Programmer Identity Crisis
#254Earlier quoted context omitted.
> " ...without somehow realizing that most of us have our jobs because we need to pay bills... " Oh, I wouldn't say that. The hacker culture of the 1970s from which the word hacker originated often poked fun at incurious corporate programmers and IIRC even Edsger Dijkstra wrote a fair bit of acerbic comments about them and their disinterest in the craft and science of computing.
Well, most of them (the hackers from the 70s) probably did do it solely for the love of the game. We’re 50 years past that now. We’re in the era of boot camps. I feel semi confident saying “most of us” meaning the current developer work force are here for well paying jobs. Don’t get me wrong I like software development! I enjoy my work. And I think I’d probably like it better than most things I’d otherwise be doing.…
I think bootcamp era was a decade ago and we're past it now. Not long ago I saw something on here about how a lot of them are closing down and attendance is dropping for the ones still open - likely because of LLMs.
Re: The Programmer Identity Crisis
#255I 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…
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…
Re: The Programmer Identity Crisis
#256> One could only wonder why they became a programmer in the first place, given their seeming disinterest in coding. To solve problems. Coding is the means to an end, not the end itself. > careful configuration of our editor, tinkering with dot files, and dev environments That may be fun for you, but it doesn’t add value. It’s accidental complexity that I am happy to delegate.
Careful with the “doesn’t add value” talk. If you follow it far enough to its logical end, you get to “Existence doesn’t add value”
Re: The Programmer Identity Crisis
#257Earlier quoted context omitted.
This comes up whenever _anything_ is automated: "this is the end of programming as a career!" I heard this about Rational Rose in the 90's, and Visual Basic in the 80's. I don't think I'm sticking my head in the sand - an advanced enough intelligence could absolutely take over programming tasks - but I also think that such an intelligence would be able to take over _every_ thought-related task. And that may not be a…
Visual Basic didn't exist in the 80's. First release was 1991. Thanks for reminding me about Rational Rose though! That was a nostalgia trip
Re: The Programmer Identity Crisis
#258Earlier quoted context omitted.
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…
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 a…
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...)
Re: The Programmer Identity Crisis
#259Earlier quoted context omitted.
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 a…
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 h…
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.
Re: The Programmer Identity Crisis
#260I 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…
I think the profession of teacher comes close. There are extremely good and extremely bad teachers and everything in between. Knowing the subject you teach very well does not guarantee you can teach it well, often on the contrary. Maybe coders can see themselves as teachers to the machine. Either they teach character by character, or vibe idea by vibe idea, or anything in between.