If it helps, I’m from the other side of networking and infra. You could swap the labels and make the meme accurate for me.
In the mid 1980s I learn the BASIC programming command GOTO and fell in love for a lifetime. If you look any anything I used to write in Ruby script or today in Python you’ll see my love affair with “if” “elfi” and “else” continues. My universe is nested “if” statements all the way down.
Early returns seems good, but personally I find code more confusing when things get arbitrarily separated out into functions, because to read it you have to keep scrolling back and forth between different parts of the page and either remembering where the other part is or typing a lot with ctrl-f, there’s more variables to hold results, and if the section of code to be separated into a function is picked just because of nesting depth reasons then it’s likely the function name isn’t going to describe what it does very clearly, leading to more scrolling and more having to keep track of things in your head.
It was fashionable at a time to avoid ifs and other imperative structures, but I tend to like them. Functional is nice and all but I like my code to be smart in the way it works, not in the way it’s written. Nested ifs are readable, collapsible, and easy to make sense of at a glance, there’s often nothing wrong with using them.
Same here! I can put together a half-descent network in just a few hours, but even programming simple stuff on microcontrollers is a major endeavor. And the documentation is usually terrible or nonexistent. And the tutorials are usually barely able to cover basic questions. At least in the space of networking, there’s enough context clues in the UI that I can piece together the solution I need.
If it helps, I’m from the other side of networking and infra. You could swap the labels and make the meme accurate for me.
In the mid 1980s I learn the BASIC programming command GOTO and fell in love for a lifetime. If you look any anything I used to write in Ruby script or today in Python you’ll see my love affair with “if” “elfi” and “else” continues. My universe is nested “if” statements all the way down.
Please avoid nested if statements. Instead use early returns when possible.
See video explanation.
Early returns seems good, but personally I find code more confusing when things get arbitrarily separated out into functions, because to read it you have to keep scrolling back and forth between different parts of the page and either remembering where the other part is or typing a lot with ctrl-f, there’s more variables to hold results, and if the section of code to be separated into a function is picked just because of nesting depth reasons then it’s likely the function name isn’t going to describe what it does very clearly, leading to more scrolling and more having to keep track of things in your head.
Ahh, I found you, Toby Fox!
I’m sure he’s fine, Sans/Susie.
If you like
ifstatements, you’ll love the pythoncasestatements for pattern matchingOhhh nice! I could see replacing dozens of nested
ifstatements with dozens of nestedcasestatements!It was fashionable at a time to avoid ifs and other imperative structures, but I tend to like them. Functional is nice and all but I like my code to be smart in the way it works, not in the way it’s written. Nested ifs are readable, collapsible, and easy to make sense of at a glance, there’s often nothing wrong with using them.
Same here! I can put together a half-descent network in just a few hours, but even programming simple stuff on microcontrollers is a major endeavor. And the documentation is usually terrible or nonexistent. And the tutorials are usually barely able to cover basic questions. At least in the space of networking, there’s enough context clues in the UI that I can piece together the solution I need.
Also known as AI 🤣