programming languages

programming languages

Are Design Patterns How Languages Evolve?

Paul Graham’s essay, Revenge of the Nerds, is a nearly pornographic love letter to Lisp. If you can manage to read all the way to the end, there’s an interesting footnote buried at the bottom: Peter Norvig found that 16 of the 23 patterns in Design Patterns were

By Jeff Atwood ·
Comments
Gee, I Wish I Had Spent More Time Alone With My Computer

programming languages

Gee, I Wish I Had Spent More Time Alone With My Computer

I was recently reminded of this Dani Berry quote: Danielle Bunten Berry (February 19, 1949 – July 3, 1998) was an American game designer and programmer from St. Louis, Missouri. Born Dan Bunten, Berry underwent what she always referred to as her “pronoun change” in the early 90s. Some of her

By Jeff Atwood ·
Comments
Unwanted Modeling Language

programming languages

Unwanted Modeling Language

If you develop software long enough, you’ll eventually run into Universal Modeling Language. This happened to me last year when we started working with our offshore vendor. UML is a diagramming standard that allows you to model software in a universal way. This could be theoretically be helpful if

By Jeff Atwood ·
Comments
Respecting Abstraction

c++

Respecting Abstraction

In a recent post, Scott Koon proposes that to be a really good .NET programmer, you also need to be a really good C++ programmer: If you’ve spent all your life working in a GC’ed language, why would you ever need to know how memory management works, let

By Jeff Atwood ·
Comments

programming languages

You Can Write FORTRAN in any Language

A recent user-submitted CodeProject article took an interesting perspective on the VB.NET/C# divide by proposing that the culture of Visual Basic is not conducive to professional software development: We’ve seen that the cultures of VB and C# are very different. And we’ve seen that this is

By Jeff Atwood ·
Comments

programming languages

Hackers and Pastry Chefs

In Maciej Ceglowski’s cutting counterpoint to Paul Graham’s Hackers and Painters, he cites a key difference between software development and painting: writing software doesn’t get you laid. There’s nothing whatsoever distinctive about the analogy to painters, except that Paul Graham likes to paint, and would like

By Jeff Atwood ·
Comments
Raleigh Code Camp Tomorrow

software development concepts

Raleigh Code Camp Tomorrow

If anyone reading this is local to Raleigh-Durham and signed up for the 2005 Raleigh Code Camp at NC State, fair warning: I’ll be presenting there. The speaker schedule is packed with interesting sessions. Mine is on User Friendly Exception Handling Strategies at 10:15am. I haven’t had

By Jeff Atwood ·
Comments

parsing

Parsing: Beyond Regex

I’ve blogged ad nauseam about how much I love Regular Expressions, but even the mighty regular expression has limits. As noted in Daniel Cazzulini’s blog: A full-blown programming language cannot be parsed with regular expressions. But given the limited number of programming languages (successful ones, let’s say)

By Jeff Atwood ·
Comments

java

John Carmack on Java, Phones, and Gaming

John Carmack, the primary developer of Doom and Quake at id Software, posted some great comments on his recent experiments with cellphone game development in Java. My favorite? there is something deeply wrong when text editing on a 3.6 ghz processor is anything but instantaneous. That’s quote of

By Jeff Atwood ·
Comments
Are You There, God? It’s Me, Microsoft.

software development concepts

Are You There, God? It’s Me, Microsoft.

Although you eventually outgrow them, any developer worth his or her salt bears the scars of a thousand tiny religious wars. It’s an occupational hazard, as Steve McConnell notes in Thou Shalt Rend Software and Religion Asunder: Religion appears in software development in numerous incarnations– as dogmatic adherence to

By Jeff Atwood ·
Comments

regex

If You Like Regular Expressions So Much, Why Don’t You Marry Them?

All right... will! I’m continually amazed how useful regular expressions are in my daily coding. I’m still working on the MhtBuilder refactoring, and I needed a function to convert all URLs in a page of HTML from relative to absolute: <summary> converts all relative url references

By Jeff Atwood ·
Comments