I've been working with one junior and one not so junior programmer on a hobby project recently, and they are both "Right Way Guys". For a roughly 300 LOC project with a discord bot and some rust code that only we will be running for now, they insisted on complete documentation, separate VMs for QA and "prod", systemd deployments, a templating system for a few strings, an ORM layer for four (4) SQL queries.. this is a…
The situation you described doesn’t sound like “Right Way Guys”. It actually sounds like “Bikeshedding” [1]. This means giving a disproportionate amount of attention or importance to the trivial details while neglecting or giving less attention to the significant issues. Imagine a committee commissioned to approve plans for a Nuclear Power Plant. But the committee spends all their time discussing the color of the bik…
Advice for new software devs who've read all those other advice essays
341–350 of 361 posts
Re: Advice for new software devs who've read all those other advice essays
#342Re: Advice for new software devs who've read all those other advice essays
#343Earlier quoted context omitted.
>Thus actual solve time and absolute difficulty are almost orthogonal. No it just means luck is another factor. You have luck, intelligence and length of time. Time is correlated with possibility right? You can get lucky and guess the probability on the get go. Either way you introduced a third possibility here which goes further to illustrate that this quotation is inaccurate and not intelligent. >Again no, it was s…
> The statement was made without qualification to a specific situation. The overall stamens includes an “if you” which is a qualifier. So you seemingly don’t understand what those words mean and objectively wrong here.
He is saying if you write code as cleverly as possible then in ALL situations it will be impossible to debug by you, which is false. The quote is not intelligent.
You know all of this you're just sinking with the ship and trying to manipulate the situation your way while throwing insults at me on my ability to understand language. Insults are a signature move by someone who has clearly lost the discussion and you've lost definitively.
I think we're both done here. After that insult there is no further need to continue the conversation. Please leave.
Re: Advice for new software devs who've read all those other advice essays
#344I've been working with one junior and one not so junior programmer on a hobby project recently, and they are both "Right Way Guys". For a roughly 300 LOC project with a discord bot and some rust code that only we will be running for now, they insisted on complete documentation, separate VMs for QA and "prod", systemd deployments, a templating system for a few strings, an ORM layer for four (4) SQL queries.. this is a…
The situation you described doesn’t sound like “Right Way Guys”. It actually sounds like “Bikeshedding” [1]. This means giving a disproportionate amount of attention or importance to the trivial details while neglecting or giving less attention to the significant issues. Imagine a committee commissioned to approve plans for a Nuclear Power Plant. But the committee spends all their time discussing the color of the bik…
Re: Advice for new software devs who've read all those other advice essays
#345Earlier quoted context omitted.
I cannot stress enough how much you can reduce "how many things you need to hold in short term memory to do your job" by just keeping a notebook (or file, or wiki, or whatever works for you) and writing things down.
I've been writing everything down in a notes app recently and I love it. If I think of a good Christmas gift for my brother in July, it goes in the app. If someone recommends an interesting-sounding book, it goes in the app. If an app at work has a specific or convoluted build process, it goes in the app. As someone who spent his entire childhood getting in trouble for forgetting things, it's been life-changing. Comp…
Re: Advice for new software devs who've read all those other advice essays
#346Earlier quoted context omitted.
> The statement was made without qualification to a specific situation. The overall stamens includes an “if you” which is a qualifier. So you seemingly don’t understand what those words mean and objectively wrong here.
"If you" doesn't mean what you're implying it to mean, this is a deliberate twisting of the meaning by you. If you write code as cleverly as possible you can still solve a bug with a lot of time, with luck and/or with intelligence. He is saying if you write code as cleverly as possible then in ALL situations it will be impossible to debug by you, which is false. The quote is not intelligent. You know all of this you'…
And no it’s not saying in ALL situations you can’t solve ANY bugs. You only finish debugging when you solve every bug not just 1 of them. Further sometimes you’re going to write a clever bit of code that doesn’t contain a bug and thus doesn’t need to be debugged.
So it’s saying writing buggy code is easier than correct code, so avoid writing clever code or some of it is going to stay buggy. That’s what the quote actually means.
PS: Also, that wasn’t an insult it’s a statement of fact. You’re trying to twist the statement as not being qualified but it’s got a qualifier.
Re: Advice for new software devs who've read all those other advice essays
#347My best bit of advice for any programmer at any level: "Don't make stuff more complicated than it has to be!" Software is complicated. Large, feature rich software is even more complicated. That's hard enough to manage as it is. The last thing you want to do is to throw a million of abstraction layers, frameworks, libraries, precompilers, transpilers, build steps, validation hooks, style checkers etc. into the mix. E…
This is so hard in practice. I just had a junior dev rewrite some of my code so that: a builder calls a constructor which instantiates a builder factory which builds a builder then that second builder creates the object. This whole system only builds one type of object. He thinks that his solution is better because it’s more extensible. I can’t make him see why it’s bad.
Re: Advice for new software devs who've read all those other advice essays
#348Earlier quoted context omitted.
"If you" doesn't mean what you're implying it to mean, this is a deliberate twisting of the meaning by you. If you write code as cleverly as possible you can still solve a bug with a lot of time, with luck and/or with intelligence. He is saying if you write code as cleverly as possible then in ALL situations it will be impossible to debug by you, which is false. The quote is not intelligent. You know all of this you'…
Nope, nobody writes every single line of code in a program as cleverly as possible attempting to do so generally means you don’t finish. And no it’s not saying in ALL situations you can’t solve ANY bugs. You only finish debugging when you solve every bug not just 1 of them. Further sometimes you’re going to write a clever bit of code that doesn’t contain a bug and thus doesn’t need to be debugged. So it’s saying writ…
You're a liar. I clearly am typing english and reading your responses. You're typing to me in english so you know I understand it. What you said was therefore with 100% intent malice because it's simply not true. You are not a moral person. You're just an asshole and you know it. THIS statement can be claimed to be a fact, not yours, not even in the slightest.
I mean you know what happens when you call a stupid person "stupid" to his face and then say it's a fact? It's not an insult? Just a fact? You know this. No need to spell it out. You're an ass hole.
>Nope, nobody writes every single line of code in a program as cleverly as possible attempting to do so generally means you don’t finish.
You're just making stuff up at this point. A quotation made around a situation that can never occur according to you? You're just lying now.
>And no it’s not saying in ALL situations you can’t solve ANY bugs. You only finish debugging when you solve every bug not just 1 of them. Further sometimes you’re going to write a clever bit of code that doesn’t contain a bug and thus doesn’t need to be debugged.
No you're just adjusting the meaning to fit your agenda. You're going at a bit of of a stretch here. This conversation has descended into way to deep of pedantism thanks to your attempt to twist things in your favor.
>So it’s saying writing buggy code is easier than correct code, so avoid writing clever code or some of it is going to stay buggy. That’s what the quote actually means.
No. It's simplistic to say that clever code tends to be buggier. This guy took the extra step to say that clever code is "by definition" not debuggable. Again twisting the situation to fit your agenda.
Man you're done. You need to stop with the insults and stop with these pathetic attempts at explaining your point of view.
Re: Advice for new software devs who've read all those other advice essays
#349Re: Advice for new software devs who've read all those other advice essays
#350Earlier quoted context omitted.
It often IS your job to write code though, so saying it's not is false. The code has to be the right code however. More generally, "you are solving business problems by applying software systems" That's how I describe this to junior folks. The goal is to make them focus on the business need, then they can sub critical thinking for MBAs/managers/PMs and do the right thing.
I don't mind the way codingdave put it, though. Sometimes it isn't your job to write code. In fact sometimes it's the opposite, and your job is to talk to people and explain to them why code doesn't need to be written. Saying, "It's not your job to write code," might seem technically false, but in terms of getting the message across, I think it's striking and it works well. And getting the message across is the goal…