August 08, 2018 by Marco Cecconi
I didn't post much in the past year due to moving, starting a new job and having a ton of life issues to deal with. I'm now in my first proper holiday since and I'm happy to post a little bit more.
In the past year, though, I've been posting thoughts on Twitter--as I did not have time to work on full posts, but I still wanted to share. So today I'm putting a few of those thoughts together here.
I'm pretty sure the right answer to "hey this project has great performance, let's make it better!" is not "Why bother?": why do you think it has great performance in the first place? Because we bothered. 😂
People often accuse me of being obsessed with code performance, even from day zero.
The thing is that perf is the easiest, most immediate way of reducing tech debt.
The prejudice that highly performing code is unreadable is totally false in the common case.
People imaging doing perf is like making sure to use every CPU cycle like Abrash and Carmack manually interleaving floating point ops with fixed point ops to fill the Pentium pipeline.
Not so! Perf work is in large part removing cruft and leaving essential, easy to read code.
It's changing that n^2 algorithm and using that other n log n. It's avoiding creating 10 million objects because of an oversight. It's making sure you have less code, less layers, less everything useless. Huge readability and productivity improvement!
My obsession is not performance, my obsession is quality code. It is just a fact that if some code performs 10x or 100x slower than it should, it's invariably poor quality code. Many don't realize how fast software should be nowadays, if correctly written.
If you read all these tweets together, my thought becomes quite clear. Bad performance is techincal debt, and not an "imaginary" kind of techincal debt--I'm not redefining the term--but an actual, bona fide indicator that there is debt to be paid. I do not have enough experience to say that this is true in all cases but, if you are not measuring the performance of your app, you are missing out on a great, easy to collect indicator of the amount of technical debt present.
Hi, I'm Marco Cecconi. I am the founder of Intelligent Hack, developer, hacker, blogger, conference lecturer. Bio: ex Stack Overflow core team, ex Toptal EM.Read more
February 03, 2021 by Marco Cecconi
A lesson in building communities by Stack Overflow's most prominent community manager emeritus, Shog9Read more
December 02, 2020 by Marco Cecconi
Some lessons learned over the past 8 years of remote work in some of the best remote companies on the planetRead more
November 25, 2020 by Marco Cecconi
Our newest open source initiative, intelligent cache, is available for useRead more
November 19, 2020 by Marco Cecconi
In this post, Salvatore Sanfilippo puts together a list of qualities that I believe make the most difference in programmers’ productivity.Read more
What began, in Boole’s words, with an investigation “concerning the nature and constitution of the human mind,” could result in the creation of new minds—artificial minds—that might someday match or even exceed our own.Read more…