We used to hear a lot about the paperless office. Remember that? Back then we printed reports, filled out forms by hand, sent memos and shopped from catalogs and cursed junk mail. We used paper for pictures and greeting cards and other things we loved, too, but it was still a hassle sometimes. When the early days of the internet showed us a glimpse of a better way, we jumped at the idea.
That idea’s time has come. We now do business over email (or better), buy things online, download tickets to our phones, share pictures on screens and store them in the cloud. Computers may have spawned even more paper during their “terrible twos,” but that’s pretty clearly over. We can debate whether trading less paper for more energy is a net win for the environment, but it’s largely academic. We do need more sustainable energy, but we’re not going to give up technology and fire up the pulp mills again. That paper boat has sailed. Continue reading
Gina explains rain to our cat:
It’s water from the sky. It’s like a bath, but worse.
Tim Bray‘s Software in 2014 is a great survey of the state of software engineering, particularly on the server (good) and the client (bad). I’ve spent my fair share of time in both places, and my experiences match up with his conclusions perfectly.
Beyond cheerleading, my main reaction is to consider why server side development is so much better than client side these days. On the client, we’ve seen a massive tectonic shift over the last 5-10 years. Win32 had a comfortable monopoly for decades, hangers-on notwithstanding, but that ocean is well and truly boiled, and clearly for the better. The new trio of web, iOS, and Android have done some pretty amazing things for end user technology. It takes time for tools and best practices to shake out of young new platforms, though. You know it’s saying something when the web is the most mature of any bunch.
The server side seas, on the other hand, have stayed cool and calm. Tools and languages have improved steadily, and the rise of APIs and app platforms and DVCSes and cloud computing has done wonders for code reuse and modularity. The spectre of multi core and concurrency still haunts us, but we have weapons to fight it with now, and they’ll only get better.
At a high level, these changes have clearly been good for users of both client and server software. The difference is that server developers are their own users, more or less, while client developers are not. Reinventing the client platform from scratch was an epic Spolsky’s Folly that client developers will be digging out of for decades, and general purpose computing may not make it out alive, but it’s already a big net win for end users, businesses, and most other constituencies. It’s not always all about us engineers, and that’s a good thing.
Daniel Dennett provides the best explanation for the supernatural I’ve heard yet:
…the urge is very strong to interpret things that move in irregular ways…as agents. A favorite demonstration of this in introductory psychology is a brief animation…[that] shows two triangles and a circle moving around, in and out of a box. The geometric shapes couldn’t look less like people (or animals), but it is almost irresisible to see their interactions as purposeful, driven by lust, fear, courage, and anger…
We are born with an “agent detection device,” and it is often on a hair trigger. When it misfires, as it often does in stressful circumstances, we tend to see ghost, goblins, imps, leprechauns, fairies, gnomes, demons, and the like where all that is really there are waving branches, toppling stone walls, or creaking doors.
Fuck is the duct tape of the English language.
- unknown; quoted by Brian Eno in conversation with Stewart Brand and Danny Hillis at Long Now, Jan 21 02014