
Paul Buchheit: Optimizing everything: some details matter a lot, most don't - paul
http://paulbuchheit.blogspot.com/2007/06/optimizing-everything-some-details.html
======
vlad
Great article! I love that you post here, give genuine advice on your blog,
and didn't present at startup school with the crazy and rude idea that you
were going to find employees for your company, like some of the speakers did.

But, I think you should mention the most important rule of optimization--don't
optimize something that doesn't even exist yet. When you create anything new,
just do it. When something bothers you once, twice, three times, then you know
what to address.

Another example of when optimizing early isn't just a waste of time, but can
hurt one in other ways as well, is when optimizing early is going to hide some
information from the developer(s) when they need it most.

For example, say one has a live stats page. One can always optimize and cache
the stats pages later on when one gets a lot of users and doing so will
actually make a difference in performance. But in the beginning, anything
"live" should be live so the developers can test things out and get instant
feedback, and not see a cached or confusingly optimized result.

How I try to think about it, is "anything that takes time away from creating
new things because something that used to work previously is now slow or
broken." THEN one should optimize. Anything else is a waste of time.

The WORST kind of optimization? PEOPLE RE-WRITING THEIR ENTIRE SOFTWARE OR WEB
APP IN ANOTHER LANGUAGE.

------
mattculbreth
Right now the Reddit post at
<http://programming.reddit.com/info/1wv6m/details> and this post have the same
score. Think there's anything interesting there, from a social news
perspective?

~~~
paul
But on reddit it also has 25 down votes. They are cranky over there...

~~~
mattculbreth
Yeah but we're renaming the alien after you and PG, so that's not bad.

