Archive

Understanding User and Kernel Mode

Most operating systems have some method of displaying CPU utilization. In Windows, this is Task Manager. CPU usage is generally represented as a simple percentage of CPU time spent on non-idle tasks. But this is a bit of a simplification. In any modern operating system, the CPU is actually spending

By Jeff Atwood · · Comments

The Trouble with PDFs

Adobe's Portable Document Format is so advanced it makes you wonder why anyone bothers with primitive HTML. It's a completely vector-based layout format, both display and resolution independent. With PDF, you sacrifice almost nothing compared to traditional book and magazine layouts except the obvious limitation of

By Jeff Atwood · · Comments

An Inalienable Right to Privacy

Privacy has always been a concern on the internet. But as more and more people let it all hang out on the many social networking websites popping up like weeds all over the web, there's much more at risk. Every other week, it seems, I'm reading

By Jeff Atwood · · Comments

Modern Logo

Leon recently posted a link to a great blog entry on rediscovering Logo. You know, Logo -- the one with the turtle. I remember being exposed to Logo way back in high school. All I recall about Logo is the turtle graphics, and the primitive digital Etch-a-Sketch drawings you could

By Jeff Atwood · · Comments

Size Is The Enemy

Steve Yegge's latest, Code's Worst Enemy, is like all of his posts: rich, rewarding, and ridiculously freaking long. Steve doesn't write often, but when he does, it's a doozy. As I mentioned a year ago, I've started a cottage industry

By Jeff Atwood · · Comments

Digital Certificates: Do They Work?

The most obvious badge of internet security is the "lock" icon. The lock indicates that the website is backed by a digital certificate: 1. This website is the real deal, not a fake set up by criminals to fool you. 2. All data between your browser and that

By Jeff Atwood · · Comments

The Great Browser JavaScript Showdown

In The Day Performance Didn't Matter Any More, I found that the performance of JavaScript improved a hundredfold between 1996 and 2006. If Web 2.0 is built on a backbone of JavaScript, it's largely possible only because of those crucial Moore's Law performance

By Jeff Atwood · · Comments

Nobody Cares What Your Code Looks Like

In The Problems of Perl: The Future of Bugzilla, Max Kanat-Alexander* laments the state of the Bugzilla codebase: Once upon a time, Bugzilla was an internal application at Netscape, written in TCL. When it was open-sourced in 1998, Terry (the original programmer), decided to re-write Bugzilla in Perl. My understanding

By Jeff Atwood · · Comments

Software Registration Keys

Software is digital through and through, and yet there's one unavoidable aspect of software installation that remains thoroughly analog: entering the registration key. The aggravation is intentional. Unique registration keys exist only to prevent piracy. Like all piracy solutions-- short of completely server hosted applications and games, where

By Jeff Atwood · · Comments

On The Meaning of "Coding Horror"

In a recent web search, I found the following comment [http://programming.reddit.com/info/1hdx7/comments] in a programming.reddit.com [http://programming.reddit.com] thread from eight months ago, completely by accident: > I think prog.reddit will continue to move in phases... a couple of days ago,

By Jeff Atwood · · Comments

Our Fractured Online Identities

Anil Dash has been blogging since 1999. He's a member of the Movable Type team from the earliest days. As you'd expect from a man who has lived in the trenches for so long, his blog is excellent. It's well worth a visit if

By Jeff Atwood · · Comments

Sorting for Humans : Natural Sort Order

The default sort functions in almost every programming language are poorly suited for human consumption. What do I mean by that? Well, consider the difference between sorting filenames in Windows explorer, and sorting those very same filenames via Array.Sort() code: Explorer shell sort Array.Sort() Quite a difference. I

By Jeff Atwood · · Comments