Seems more applicable to an imperative style, and IMO even still the advice is too dependent on special/actual case details to be generally applicable as a “rule of thumb”.
This is just one specific example amongst many of how redundant logic could be simplified because sometimes the branch is an implementation detail and you want to push it down, and sometimes it’s not and you want to push it up.
I agree with part of the article, because I didn’t read the rest. I truly dislike the use of single letter variable names: f
, g
, h
and foo
, bar
, baz
. My advice: use descriptive variable names.
function twoIfs
, function complicatedIf
, var simpleAnd
, etc. Makes it so much easier to read examples instead of remembering “oh yeah, f
had two ifs in it, h
had the if/else, g
calls f
which calls h
which,…”.
Also see this often in other examples: "A
for ‘Truthy variable’ " 😓 Wtf. Laziness is good when it makes things easier, not harder.
My advice: use descriptive variable names.
The article is really not about naming conventions.
Should have still used them. It was harder to read this way.
The blog author is literally using de-facto standard for placeholder names.
The var names used by the author are perfectly fine. They don’t cause any issue, nor do they make things hard to read.
Saw this posted on hackernews yesterday, along with hundreds of comments of people completely misunderstanding the advice given. Glad to not see any of that here.
What’s up with that capitalisation, I thought it was about git lfs at first, really confused me lol