How Not to Talk to Nontechnical People


angry baby at computer

Software engineers and other technical people often struggle to be understood by people who don’t share their technical knowledge. Their frustration is widely known; it’s led, for example, to a YouTube video with over 10 million views (and a rather lively comments section) depicting the plight of a software developer trapped in a roomful of corporate idiots: I’m not aware of any similarly-loved […]

Ternary Operators Considered Harmful


Conditionals are, if we’re honest, an embarrassingly large part of most programs deployed in the world. I say “embarrassingly” because a two-year-old understands conditionals, and we as developers often fancy ourselves creators of vast systems of profound, innate, and valuable complexity. Sometimes our use of conditionals is just for making a series of little form […]

Why Bad Software Succeeds


One of the hardest things to accept, as a justice-loving maker of software, is that a perfectly engineered and beautifully designed piece of software can go completely unused. Similarly, a lot of the software on which the world relies a great deal can be terrible — riddled with poor design decisions if not outright and undeniable […]

Ember Computed Properties and the Perks of Uniform Access


In almost any object-oriented programming system, you’ll sometimes have an object whose properties can be composed into more meaningful units of data about that object. For example, an address that you might use to send an envelope of papers consists of a number of properties — a street address, a city, a state, and maybe […]

Dealing with IE8: The Nuclear Option


IE piñata

Like every other web developer, I abhor Internet Explorer. I’ve already given a lot of good reasons why I can’t stand IE—in any version—in an earlier post. However, I will admit that the last truly unusable version of IE is IE8. Why IE8 is Broken IE8 is in a completely different world from every other […]

The Two Fundamental Elements of Computation: State and Transformation


I was recently having a conversation about how computers work. And it was in the course of that conversations that I understood quite how ignorant I’d been my whole life about the real fundamental elements of computation. I don’t think there’s a ton to be gained from writing an article on a programming site all […]

Good Sites Gone Sans


I viewed reputable websites purely in Comic Sans. The results were striking. A couple of weeks ago, I started setting my browser to display all the text content of reputable websites in Comic Sans MS, the most hated font in the world. The results were striking, like if you could watch C-SPAN with a “dress […]