4 ms·
> Code is simply an unfortunate vehicle to do so. I disagree a bit. Code is the precision vehicle. A majority of our job is problem solving; some problems can
by oooyay 3y ago
> Code is simply an unfortunate vehicle to do so.
I disagree a bit. Code is the precision vehicle. A majority of our job is problem solving; some problems can be solved generally, other problems require precision. Not all programmers will ever encounter a problem that requires precision solutions.
> I also maintain that for a lot of the programming that makes the world go round, it's not that hard. People just convince themselves they won't be able to.
I also disagree on this. I've taught a good number of people to code to different degrees and I can confidently say that not everyone is going to have an appetite for this as a job or hobby. That's to say, hobby coding is different from career coding, the incentives are different, and attract/require different personality characteristics to be successful. I think infantilizing programming does no one any favors.
I like to describe it as a job where you solve many, many tiny problems and put them together. You must like breaking big problems down into small ones, coordinating and communicating asynchronously and clearly, and have a good head on your shoulders to tolerate the literal endless stream of failure that you'll encounter along the way without being too dissuaded. Lastly, you'll constantly be learning something new; sometimes learning about the same old things, other times learning things far outside your domain. The single most important tool in a programmers war chest is not knowing all the things, but where to look and how to discern good information from bad or so-so information.
- xkcd-sucks 3y agoCoding is basically management (not in the 'leadership' sense, but in the 'directing' sense); by comparison the things carrying out instructions are more predictable in behavior, and you can FAFO due to high speed and low cost of iteration. Some people really do need instructions made more precise and explicit than computer code!
- talent_deprived 3y ago> Coding is basically management Coding...is engineering. Put the world behind the wheel of a car and they can make it go places. This...does not make them an automotive mechanic.
- Melting_Harps 3y ago> Coding...is engineering. Put the world behind the wheel of a car and they can make it go places. This...does not make them an automotive mechanic. What a terrible analogy, just because you know the car's firmware doesn't mean you know how to properly diagnose something not related to the electronics (worn wheel bearings or suspension components) let alone how to diagnose or repair. While I agree coding serves engineering, it's always funny to me how quick people want to use the term 'engineer' when it suits them, but then developer when things go wrong and accountability is on the table. Furthermore, engineers tend to have licenses in their respective fields, something I don't personally agree with, and to this day I have yet to see the same in IC roles. Sidenote: As a former tech (mechanic) there were times when you would question not just an engineer's competence, but their entire sanity given how something was deployed, and needed to come up with a work-around for it to function correctly; which is why I think coders (at least the proficient ones) are more like techs.
- xkcd-sucks 3y ago"Operations Research and Management", basically quantitatively focused MBA, is considered an engineering discipline. Whether or not it is Real Engineering is maybe a matter of contention, but so is the question of whether "software engineering" is Real Engineering; anyway the point being the separation between "engineering" and "management" can be a bit fuzzy
- danielvaughn 3y agoYeah, I actually think code is a wonderful tool. Writing in a formal syntax to express your ideas is a very old human activity - the only difference between cuneiform and code is that code has this magic ability to actually do something, by virtue of the fact that machines can also understand it.
- skydhash 3y ago> by virtue of the fact that machines can also understand it. I'd argue strongly against understanding. Our computers are just sophisticated version of Jacquard Loom and music box.
- 20after4 3y agoThere could be more than one definition of "understanding" If a machine can interpret instructions and follow them then that is a sort of understanding. At least it has the same kind of result as handing instructions to a human and having them follow the directions to complete a set of tasks. Does the human understanding of instructions differ significantly? Yes a human can understand much more ambiguous instructions and perhaps complete a larger set of possible tasks, nonetheless it's a similar process going on at least on the surface.
- wintogreen74 3y agoIt may feel very similar but you need to be very careful with how you define words like "understand". There's (historically) no inference or extension with the machine. For humans "understanding" is on the path of "learning"; not so for typical machine code execution. The machine is not "interpreting instructions" but "just" mapping to unambiguous defined actions. This is still amazing but it's closer to a player piano than sentient intelligence.
- myownpetard 3y ago> The machine is not "interpreting instructions" but "just" mapping to unambiguous defined actions. Well in the case of Python, the interpreter is indeed interpreting.
- soco 3y agoActually if putting it that way, no trade ever is that difficult. Yet we have all seen quite some differences between plumbers' work haven't we? While yeah everybody could do it and maybe everybody could even do it well, the hard truth is that not everybody does it, and also definitely not every plumber does it well. So while it's nice and inclusive to say "just do it it's not that hard" the reality will bite you in the rear rather sooner than later.
- raducu 3y agoThere should be a difference between someone doing things professionally and an "amateur". "Programming" is not the same as "hacking". I can hack away in any new language and produce something that works, and I have the benefit of a programming background and decades of experience. That said, the areas where a hardcore, professional "programmer" is really needed, are quite few and will be even fewer in the future.
- wslh 3y agoAgree 100% about the future. From a historical perspective, programming is something completely new that will have more evolution beyond programming languages, frameworks and operating systems. Now in the world we have zillions of software engineers doing the same thing redundantly. In a way the software development industry protects itself not creating the tools to reduce the industry itself. This is a typical innovation dilemma for a whole industry. Not saying that this is conscious but there is a big focus on pleasuring ourselves with new things that continue a well known road of fancy programming languages, etc.
- soco 3y agoThere should be also a difference between "engineer" and "programmer" and in many countries and professions it is. As in, you surely can program after a few online courses, and even have some great results in that topic. For engineering though, it's another level needing way more and differentiated courses.
- courseofaction 3y agoI think you're right, especially for things like database applications, but also that when we're talking about things like agents or UI the goal is rarely anything to do with the structure of the code or data - it's to solve a real-world problem or create a real-world experience. The underlying process simply has to achieve the intention to be good enough.
- ianbutler 3y agoTo your second point I thought about including a disclaimer, but it made the original comment too wordy. Aptitude is correlated to, but not the only part of enjoying something. You can't fix people not liking something, that's just personal preference and totally fine. I took accounting in college and really didn't like it, no amount of assistance is going to make me like it and ill never be an accountant. I've been laughing to myself a bit, not about your comment, but because predictably there are so many people who chose the most uncharitable way to view, both my original comment and the people using these tools. Copying and pasting, never learning and becoming knowledgeable, as the most probable outcome that will come from this. That's just not how it works. Excluding the people who will stop anyway of which there will always be, what this will do is break down barriers for a lot of people (not everyone), who thought they wouldn't like it or couldn't be good at it and entice them, hook them, and then build them up. It's just a new way of learning programming. Hacking with LLMs is going to be the entry point for these people, not the final destination.
- oooyay 3y agoI hope my comment didn't come off as jest or cynicism, if it did I apologize and that's not the way I intended it. I agree overall that LLMs will lower friction and barriers to entry for some folks looking to get into hobby hacking, programming, or software engineering as a profession. Anecdotally, I think that's true beyond software. In wood working I find LLMs helpful when youtube leaves me with unanswered questions. More anecdotally, I have some high hopes for when LLMs can use tools, I think paired with the knowledge I've gained over the years that using an LLM that uses tools will be like the force multiplier I gain when using a compiler. To some degree, like any useful tool (eg: StackOverflow) there will be those who use it recklessly, but I'm less concerned about that because those people will always exist. The "anyone can do it" sentiment is highly inclusive, but also a bit falsey and what I took more disagreement with. I've met a good number of people who got into the industry of software engineering based on sentiments like that, thinking the job would eventually become "easy" and it never does for them. That or they falsely equivocate that sentiment with working at a FAANG, that these are just easy jobs where you get paid beaucoup bucks only to find out that's not so true, or at least not nearly as common as the sentiment invokes. That's worth being a bit cautious in language in my opinion, but I say that out of having experienced how hard it is to navigate this industry at times. To find out the things that you knew to be true that got you into it in the first place were false or falsey would be a big let down. I think these things are worth talking about and I don't want to make this industry look more gatekept than it is so I don't think I'm 100% right with my opinion, but I also don't want to give people false impressions. I appreciate you being willing to respond and talk about this stuff.