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%.
Measure. Don't tune for speed until you've measured, and even then don't unless one part of the code overwhelms the rest.
We spend a lot of our time in the modern, web services-driven technology industry ignoring performance issues. What's the point of micro-optimizing a 3ms function call when each request spends 8 or 9 seconds inside the SQLAlchemy ORM? Well, sometimes it's nice to practice those optimizion skills anyway, and today I'm going to walk you through micro-optimizing a simple problem and we'll see just how much better we can do than a naive solution... even though we probably normally shouldn't.read more
Until recently1, my job was to synthesize a deep understanding of operating systems, networking, system administration, and my company's application and to use that synthesis to fix our existing systems and design better ones. A lot of folks in the technology industry (particularly in the bubble of Greater San Francisco) use the word "DevOps" when putting out job postings for roughly those tasks, and I just wanted to briefly write about why this word is somewhere between inaccurate and offensive and why you shouldn't use it.read more
My fiancée persuaded me to go through my drawer of old electronics and I thought I'd post a picture of some of the (working) portable computers that we went through today:
Combined, they might have as much computing power as the iPhone 6 I recently acquired. Probably not, though. It certainly is interesting to look at what has and hasn't changed over the last 20 years.
Also poked at today (but not pictured)
Hello friends. As you may remember from a few years ago, I am an iPhone user. Like several million of you, I decided to upgrade to the iPhone 6 this year. I thought I'd share some really brief impressions:
We do not disclose an individual user’s data to third parties unless (1) you have given explicit consent to each such disclosure, (2) we are required to comply with a legal obligation or (3) if our business or assets …
I was installing MacTeX on my MacBook Pro today and had an amusing realization. First, some background: for those of you who don't know, TeX is a phenomenal family of typesetting programs originally written in 1978 by two of the giants of 20th Century computer science, Don Knuth and Guy Steele. Most people now use it in conjunction with a slightly more modern set of extensions called LaTeX released in 1981 or so. I used TeX/LaTeX to typeset several thousand pages of homework and other assignments in college.
Now, in early 2014, the download for the OS X distribution …read more