Blog Archives

The weight of code

From Bjorn Freeman-Benson’s talk Airplanes, Spaceships, and Missiles: Engineering Lessons from Famous Projects Bjorn is discussing the ferrite core memory of the Apollo guidance system. These are very, very robust memory systems. … But the problem is that they actually

Tagged with:
Posted in Software development

Sum-free subset challenge

A set of integers is called sum-free if no element of the set is the sum of any other pair of elements in the set. For example, {1, 10, 100} is sum-free. Let’s look at pulling out a sum-free subset

Tagged with: ,
Posted in Math

Poetic software

From David Jacobs: Code is like poetry; most of it shouldn’t have been written.

Tagged with:
Posted in Software development

Extreme syntax

In his book Let Over Lambda, Doug Hoyte says Lisp is the result of taking syntax away, Perl is the result of taking syntax all the way. Lisp practically has no syntax. It simply has parenthesized expressions. This makes it

Tagged with: , ,
Posted in Software development

Dogfooding

Dogfooding refers companies using their own software. According to Wikipedia, In 1988, Microsoft manager Paul Maritz sent Brian Valentine, test manager for Microsoft LAN Manager, an email titled “Eating our own Dogfood”, challenging him to increase internal usage of the

Tagged with: ,
Posted in Software development

Hacking debt

The term technical debt describes the accumulated effect of short term decisions in a software development process. In order to meet a deadline, for example, a project will take shortcuts, developing code in a way that’s not best for future

Tagged with:
Posted in Software development

A web built on LaTeX

The other day on TeXtip, I threw this out: Imagine if the web had been built on LaTeX instead of HTML … Here are some of the responses I got: It would have been more pretty looking. Frightening. Single tear

Tagged with: ,
Posted in Software development, Typography

Wrapping a function in a burkha

Terrific quote from Jessica Kerr via Dan North: If you feel like you’re missing an inside joke, here’s an explanation. In object oriented languages, languages that don’t simply support object oriented programming but try to enforce their vision of it,

Tagged with:
Posted in Software development

Can regular expressions parse HTML or not?

Can regular expressions parse HTML? There are several answers to that question, both theoretical and practical. First, let’s look at theoretical answers. When programmers first learn about regular expressions, they often try to use them on HTML. Then someone wise

Tagged with: ,
Posted in Software development

Randomized studies of productivity

A couple days ago I wrote a blog post quoting Cal Newport suggesting that four hours of intense concentration a day is as much as anyone can sustain. That post struck a chord and has gotten a lot of buzz

Tagged with: ,
Posted in Software development

Teaching an imbecile to play bridge

From Data and Reality: The thing that makes computers so hard to deal with is not their complexity, but their utter simplicity. … The real mystique behind computers is how anybody can manage to get such elaborate behavior out of

Tagged with:
Posted in Software development

Management principle from Dune

The other day Atamert Ölçgen quoted a passage from Dune in response to something I’d posted on Google+. I haven’t read the Dune books, but the passage puts generalists in a favorable light, and since I’m something of a generalist,

Tagged with:
Posted in Software development

Beethoven, Beatles, and Beyoncé: more on the Lindy effect

This post is a set of footnotes to my previous post on the Lindy effect. This effect says that creative artifacts have lifetimes that follow a power law distribution, and hence the things that have been around the longest have

Tagged with: , ,
Posted in Uncategorized

The value of typing code

Tommy Nicholas recently wrote a blog post advocating typing rather than copying-and-pasting code samples. I thought this was the most interesting paragraph from the post: When Hunter S. Thompson was working as a copy boy at Time Magazine in 1959,

Tagged with:
Posted in Software development

Top down, bottom up

Toward the end of his presentation Don’t fear the Monad, Brian Beckman makes an interesting observation. He says that early in the history of programming, languages split into two categories: those that start from the machine and add layers of

Tagged with: ,
Posted in Software development