3 ms·
I beg to differ. What most of us are doing really isn't that complicated. It's no harder than anything you have to study in the 8th grade. The primary reason co
by ravenstine 5y ago
I beg to differ. What most of us are doing really isn't that complicated. It's no harder than anything you have to study in the 8th grade. The primary reason coding is hard is because we make it that way to make ourselves appear clever and intelligent. If you eliminate all the OOP, metaprogramming, and CS mumbo jumbo, and impose some actual standards, it's really a lot of writing wrappers around databases. Once someone can confidently do that then the more unusual problems become more solvable anyway.
Yeah, if you're doing game engines, systems programming, ML and whatnot, it's a different story. The vast majority aren't doing that, and you don't need all those skills just to be a software engineer.
One might not become a great SWE that way, but must they be great? I've known far more mediocre SWEs than brilliant ones. Even the um... sorta awful ones manage to skate by pretty well.
- AYBABTME 5y agoI think you're out of touch with the shear amount of base knowledge you had to accumulate to get to the point where all this seems like 8th grader level. It _is_ simple in the end, most of the time, but it's a freaking mile high pile of simple concepts built on top of each other.
- ravenstine 5y agoI could just as easily say that you believe that because you're in a bubble. Now I'm not arguing that per se, but rather that there's no way I can provide a counterargument. One could use your argument to suggest that any skill is hard because they are built on a massive pile of concepts, which isn't necessarily true or untrue being that it's a matter of degree. Eliminate the concepts in the field of programming that aren't required for making a Turing-complete language, and what you are left with isn't that crazy complex. It then comes down more to practice, which most people don't want to do because they don't see the inherent value, don't have their own ideas, or assume they aren't smart enough.
- AYBABTME 5y agoI've seen enough people try to learn from scratch to know that it isn't as simple as it seems when we stand on our pile of background. It's not impossible knowledge to acquire, but to be an effective engineer, there's a ton of stuff you need to know. Maybe try to remember the first time you learned about trivial things like Git, UNIX pipes, closures, big-O complexity, hashing, graph theory, refactoring, MMUs and ADUs, TCP windows, IP, HTTP, MVC, design patterns, encoding formats, queuing theory... there's a ton of "simple" stuff to know, many of which takes a regular person a few concerted days to get comfortable with.
- briHass 5y agoYeah, that's nonsense, or at least it is if you're talking about a system of significant complexity. Some simple greenfield app with a couple KLoC might not be complex, but most systems are hundreds of thousands if not millions of lines of code. They probably use HTML, JavaScript, CSS, Sql queries, a dozen or more libraries (which are also complex) on top of the actual core code. Inconsistent patterns and legacy code are also present, and you need to have a decent understanding of whatever domain you're working in. Just with that level of complexity, you need a unique attitude and problem solving ability that many people can't or haven't developed. You need to be willing to stare at a computer screen for hours, without quitting due to frustration or boredom.