27

Who the fuck started this "Performance doesnt matter" bullshit?! Seriously!

Comments
  • 6
    To quote Guido Van Rossum: "not execution speed is too​ slow, development is too slow!". While performance has its point, in 90% of the software projects I came across, it wasn't the cruital part
  • 2
    In 99% of the time, performance doesn't matter.
  • 0
    @theZorgEffect Well who decides this? If i have a program which runs on a PC (arg works with server too), and this program needs any ressource available, and runs for 5 minutes, than its the devs duty to take these ressources for the shortest ammount possible. Same goes for apps, i wouldnt use devrant if it would take 30 seconds to start, like any google app does (on my phone). The only exception here is spotify, it is performant but its memory efficiency is a disaster.
  • 2
    @willol Can you give an example? Because for me it does matter if i habe to wait 20 seconds before anything happens when i want something from a program, and it does matter if a program runs for 30 minutes or 5.
  • 0
    @vortexman100 it's all about balance of efforts - is it feasible to just scale the machine up? Then do that. Or if not, then start optimizing...

    "We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3%. A good programmer will not be lulled into complacency by such reasoning, he will be wise to look carefully at the critical code; but only after that code has been identified" — Donald Knuth
  • 0
    @theZorgEffect What about choice of language? Why write a backend in nodejs when you could write it in go. Go is effortless faster, and easy, hence the obvious choice for something like a backend. (i know, not everything is a nail when go is the hammer, but i am interested how this idea could spread so wildly)
  • 0
    @vortexman100 because nodejs easier to find people easier packages and you cand find tons of tutorials.

    But Go is such a bad example...
  • 0
    @curlyDev Can you elaborate?
  • 0
    @vortexman100 Go is new(not that known) used in small projects.

    For me as a developer there are more jobs in nodejs than go(there is none at the moment) so GO is a waste of time(as a money maker and bussinesses are money makers).

    More than that finding resources for Nodejs is far easier.(javascript is used by frontend so you can train one to become backend as well rather easier than teach him a new language).
  • 0
    @curlyDev Oh ok, i thought you would complain about a technical thing... Well, of course its new, but i think itll come. And untill then, its in my freetime
  • 1
    It's not that performance doesn't matter. It's just more important to make your code cleaner and easier to read, even if it does mean sacrificing a little speed.
  • 0
    It's about knowing how big the performance difference is.

    In most languages, a for loop is faster than higher level constructs such as foreach, map, filter, reduce, etc.

    But the difference is often negligible in practice, and a map or reduce can be much cleaner.

    Now if you query a database in that loop... That might become noticeable.

    It's not about microseconds, it's all about how your app / website *feels* to end users, and knowing which optimizations matter.
  • 0
    @bittersweet I understand (and already now that this micro optimizations are often stupid) but i am talking about stuff like this https://iron.io/how-we-went-from-30... This is just stupid. Why would anyone be willing to do this (When asked to write such application now). You would trade good performance and scale for something like "Oh well they did this before that way, so i have to follow." I understand that stuff like PHP is necessary due to the lack of most providers webserver options, but if you even have the choice?
  • 1
    😱. try to understand the concept of premature optimization. First you make it work. then you profile. then you refactor the bottleneck. then you repeat steps 2 and 3, untill you decide the performance is acceptable. this is why, in first iteration "performance does not matter".
  • 1
    Performance matters to my massive C ego. 'Nuff said.
  • 0
    @vortexman100

    PHP (especially 7.x) actually scales quite well if set up properly. The "if set up properly" condition applies to almost every backend system though, and is often more of a systems architecture & budget thing than a language choice thing.

    And there are so many considerations... if you need to finish your project in 2 months, it might be much easier to hire a team of twenty PHP, Python or Ruby devs than twenty skilled Go devs.

    Personal preference, and even the technically superior options will sometimes just lose from HR, logistics and time constraints.

    Each step of the process you need to balance all factors. It's never an easy answer, As a Lead Dev you'll need intuition.

    However, it's a good practice to reevaluate your systems often. It's very dangerous to let optimization and "rewrite" tasks float to the low-priority part of your backlog... because they'll stay there forever, until it's too late.
Add Comment