Click here to Skip to main content
15,917,059 members

Welcome to the Lounge

   

For discussing anything related to a software developer's life but is not for programming questions. Got a programming question?

The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.

 
GeneralRe: Dumbing down code so it can be maintained by junior devs Pin
Munchies_Matt30-May-18 19:02
Munchies_Matt30-May-18 19:02 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
Michael Breeden30-May-18 0:44
Michael Breeden30-May-18 0:44 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
Harrison Pratt30-May-18 1:22
professionalHarrison Pratt30-May-18 1:22 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
W Balboos, GHB30-May-18 1:31
W Balboos, GHB30-May-18 1:31 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
Pete O'Hanlon30-May-18 1:39
mvePete O'Hanlon30-May-18 1:39 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
Member 1236478830-May-18 1:49
Member 1236478830-May-18 1:49 
GeneralRe: Dumbing down code so it can be maintained by junior devs Pin
Leng Vang30-May-18 6:53
Leng Vang30-May-18 6:53 
GeneralRe: Dumbing down code so it can be maintained by junior devs Pin
DerekT-P30-May-18 9:44
professionalDerekT-P30-May-18 9:44 
Member 12364788 wrote:
It would be unprofessional to write anything but the most efficient code possible.

Really?? Agreed, "efficiency" is certainly in the mix of attributes that a professional coder should aim for; but as the overriding consideration (implied by "most efficient possible") is surely not right. I would certainly be reluctant to deliver the "most efficient" code if it meant that it was virtually undecipherable by anyone but a guru-level developer; or was so rigid that a minor change to requirements would result in a total re-write. And coding purely for efficiency can certainly sometimes result in these types of solution.
There are of course (at least) two sorts of "code efficiency": execution efficiency (minimising elapsed time and/or other resources during the usual execution route) and source efficiency (minimising the lines of code / method calls etc).
These days hardware resources are typically very cheap compared to developer / maintenance costs so businesses will often opt to develop a simple, maintainable, and/or quickly-developed solution and offset any inefficiency by buying a few extra MIpS or MBytes.
As a (freelance) professional, part of my (unspoken) remit is to fully understand the client's requirement - do they need something mega-efficient (maybe to fit on an embedded chip), very quick to develop, something very flexible to maintain in the future, something that could easily be easily ported to another system (so maybe using a common subset of a tool or language), etc..etc..; and then to develop to meet those requirements.
In practical terms, "efficiency" can sometimes mean not adding a dependency to yet another external assembly (or to a specific newer version of an assembly). When I create a new VS solution, the LINQ modules are usually included by default. If a solution requires LINQ then I'll use it, but I'll try and avoid just a single usage of LINQ as that adds not only a dependency on an extra assembly, but a dependency that any future maintainer knows LINQ. (LINQ used simply as an example here).

Also, "more challenging" may mean a more sophisticated technique or concept; but sometimes it just means a new or different syntax. It may "challenge" the developer to learn that additional syntax, without actually "improving" the developer's skills. Instead of learning "better" ways, they just learn "more" ways to do something. It adds to the buzzwords on their CV but just gives them brain-bloat and I've seen junior devs "freeze", like a rabbit in car headlights, because they can't decide which technique they should use out of half-dozen ways they can think of to do something. Maybe for "dumbing down" code, we should instead think of "standardizing" techniques and avoiding conceptual aliases. (Really, what can an extension method do that a static function can't, and without risking future name clashes and ambiguities!)
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
foo210030-May-18 2:01
foo210030-May-18 2:01 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
Member 1352703330-May-18 2:47
Member 1352703330-May-18 2:47 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
Donald Woodford30-May-18 3:07
Donald Woodford30-May-18 3:07 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
Kirk 1038982130-May-18 3:40
Kirk 1038982130-May-18 3:40 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
Steve Naidamast30-May-18 4:01
professionalSteve Naidamast30-May-18 4:01 
GeneralRe: Dumbing down code so it can be maintained by junior devs Pin
Leng Vang30-May-18 5:59
Leng Vang30-May-18 5:59 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
Gary Huck30-May-18 4:13
Gary Huck30-May-18 4:13 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
sasadler30-May-18 4:32
sasadler30-May-18 4:32 
GeneralRe: Dumbing down code so it can be maintained by junior devs Pin
Leng Vang30-May-18 5:56
Leng Vang30-May-18 5:56 
GeneralRe: Dumbing down code so it can be maintained by junior devs Pin
sasadler30-May-18 8:24
sasadler30-May-18 8:24 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
Bruce Patin30-May-18 4:51
Bruce Patin30-May-18 4:51 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
ClockMeister30-May-18 4:55
professionalClockMeister30-May-18 4:55 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
RandyBuchholz30-May-18 5:23
RandyBuchholz30-May-18 5:23 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
Leng Vang30-May-18 5:51
Leng Vang30-May-18 5:51 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
Slow Eddie30-May-18 7:28
professionalSlow Eddie30-May-18 7:28 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
Gerry Schmitz30-May-18 11:06
mveGerry Schmitz30-May-18 11:06 
AnswerRe: Dumbing down code so it can be maintained by junior devs Pin
Greg Lovekamp30-May-18 11:53
professionalGreg Lovekamp30-May-18 11:53 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.