3

It's funny how beginner programmers think you can step into the industry and coast by on using established algorithms, thinking they will never need expert knowledge themselves.

A few years into the industry and I have realized that when it comes to highly customized requirements and you need to write and test complex algorithms yourself, that's when you better have your expert knowledge backing you up because aside from A.I. assistance, nothing is going to help you.

Oh, how complex it can get. I've had to think about rethinking entire architectures that gave me weeks of real headache, algorithms that required the deepest fine-tuning, tree traversion, generics, interfaces, extension methods, factory, singleton, decorator, facade, etc.

In short, you better know your way around the language you are programming in. You also need to know your algorithms and optimizations because when things are black box to you, that's not a good feeling.. especially not when people are relying on your expertise. The real world is complex and thus we model its complex models.

Comments
  • 0
    @retoor That is insignificant.
  • 2
    That's stupid.

    I'm self taught and thought I wasn't good enough to get work in programming. Once I broke through I regretted not trying it earlier. 90% of devs suck, HIGHLY correlated with education.

    Bsc? Shit
    Masters? Can barely use a computer
    PhD? Requires other people to type for them.

    Formal education is retardation. Don't let your dreams be dreams
  • 1
    Self taught is valid. Fuck formal education.

    If you can't manage, just switch into another position.

    I'm not gonna need crazy fucking algorithms to do my work, never. Everything, every requirement can be simplified to be doable without crazy shit.
  • 1
    As you say in your intro, it’s beginner developers. They have a log to learn. They have a lot of crazy ideas, and that’s totally normal.

    You shouldn’t focus on what they think when they begin and instead give them a chance to get better.
  • 1
    @lungdart I see your point, but that isn't true. Serious people who took their education seriously instead of partying have a deep body of knowledge and application.
  • 1
    @Tounai Yes, they should get better. The sad truth is that the industry normalizes this lazy way of working and no longer puts great importance on delivering with high quality.
  • 1
    @CaptainRant
    The industry is literally driven by pair pressure and business needs.
    The first one is your responsibility, the other is a pragmatic need.
  • 0
    It's like graphical programming with nodes/blocks, yes you can do some stuff in it until it gets complex.
    Same thing with programming blocks that standard library or external libraries and frameworks provide, they're just blocks and not "do everything for me" magic box.
  • 1
    @CaptainRant someone is traditionally trained. :)
  • 1
    In truth, "reinventing the wheel" as they call it is the best education, and to be fair, they have students do a little bit of this in various universities. Say implementing malloc in C, for instance.

    The problem is they don't have them do this *enough*. It's what some mathematicians call "painting the fence", in reference to how math itself is usually taught in an almost frivolous manner, without affording the apprentice any serious time to ponder deeply into what they're doing, actively barring them from gaining any semblance of better understanding.

    No: one simply solves the problem, by following some described method on a mindless, step-by-step basis, without knowing why you're doing what you're doing. Hence, painting the fence.

    More or less the exact same idiocy can be applied to programming when it comes to education. Do not take things apart, just solve the problem. Don't think about it. Just get it done.

    And that is why nothing fucking works.
  • 0
    @lungdart I'm not from that realm.
  • 0
    @Liebranca Well said. It is important to truly teach and to deeply understand.
Add Comment