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
October 15, 2021 by Marco Cecconi
Multiple people with my name use my email address and I can read their email, chaos ensues!Read more
September 29, 2021 by Marco Cecconi
After years of building, our top-notch consultancy to help start-ups and scale-ups create great, scalable products, I think it is high time I added an update to how it is going and what's next for us.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
Software engineers go crazy for the most ridiculous things. We like to think that we’re hyper-rational, but when we have to choose a technology, we end up in a kind of frenzyRead more…