Can we just remove “slow” from the programmer vocabulary please?

author Posted by: whaledawg on date Nov 26th, 2008 | filed Filed under: general

Fast

So I answered this question over at Stack Overflow and another poster said this:

glReadPixels/glDrawPixels is slow.

Now, assuming he’s correct(has OpenGL really figured out a way to optimize everything but bit blitting?) you still have to ask “Slow for what?” If you’re only reading and writing pixels every 10 seconds who cares how slow it is.

Working on my game engine, I’ve come up with 4 scenarios:

  1. Happens once at load
  2. Happens every time a user enters input
  3. Happens every time an internal alarm goes off
  4. Happens every frame

So is reading/writing pixels slow at load time? Who cares? Every time a user enteres input? That only happens a few times a second. When an alarm goes off? This could get costly, but you can also control the granularity here. Every frame? Well, that’s 30-60 times a second. Now speed might actually count for something.

But if some asshole on Stack Overflow convinces me that it’s slow, I won’t use it the 75% of the time when its speed is irrelavant. Fuck Your Mother. I’ve just made a whole lot of things I may need to do take 10 times longer for no visible gain.

These “slow” decriers are the same people who convinced me for years not to use virtual functions. They have “overhead”. Do you know what the overhead on a virtual function is vs. a regular function call? A table lookup. Fuck Your Mother it’s just a table lookup to see which function to call. So I cut out a huge amount of object oriented technique(and most of the interesting stuff) to avoid a God Damn table lookup.

Anytime anyone calls a technique slow we should remember that “slow” is a relative term. 9 times out of 10 the “slow” technique takes me much less time. I’ve come to the conclusion that my time is more valueable than the fucking computers, and if you feel differently I have to question your actual knowledge as a programmer.