About this Site

This is my personal website, where I post documents and software I've written, in the hopes that you'll find them interesting or useful. It includes serious articles, useful programs, and purely whimsical stuff too. Since this is a personal site, this site's content is not endorsed by David A. Wheeler's employer, government, or guinea pig.

If you find any of my material interesting, please link to it and recommend that material to others. I'd appreciate it! You don't need to ask permission to link to the material on my website; just link to it. There's no legal requirement to ask for permission to link (at least in the U.S.). In April 2000, Federal Judge Harry L. Hupp in his ruling on deep linking Ticketmaster vs. Tickets.com, Inc, 2000 U.S. Dist LEXIS 12987 (D. Cal. 2000), stated that, "hyperlinking does not itself involve a violation of the Copyright Act... since no copying is involved". In a few cases I know that some URLs will change; in those cases, I try to post recommendations on what to link to instead, and I highly recommend that you follow my recommendations (for your own sanity's sake!). The notion of asking for permission to link is just silly; the whole point of the World Wide Web is to enable links. If you don't want people linking to specific material, keep it off the Web.

And yes, that includes well-known sites like Slashdot and Groklaw. Feel free to recommend my stuff even to sites that may pound me with lots of simultaneous readrs. Which brings me to my next point...

Yes, I've been Slashdotted, eight times so far. A version of my Why OSS/FS? Look at the Numbers! paper was a feature Slashdot article on July 9, 2001, April 20, 2002, and September 30, 2004 (as I revise it, hopefully a future revision will be Slashdotted again). My source lines of code (SLOC) work was a major Slashdot feature on both June 21, 2001 and July 5, 2002, and both it and my paper analyzing Red Hat Linux's SLOC were key features in a July 30, 2004, article that CPAN has $677M of Perl code. My short article computing redevelopment costs of Linux kernel 2.6 was featured in an October 13, 2004 Slashdot article. On December 30, 2003, my article #3 on writing secure programs was Slashdotted (that was my article, though not this site). Although I'm not counting it, I guess I should mention that on February 24, 2004, Slashdot posted my review of David J. Agan's excellent book Debugging (you can see the Slashdot version and my slightly updated review). I'm also not counting the August 13, 2004, Slashdot article on "Open Source in California Government"; the 2004 California report recommends exploring open source software and it prominently references some of my work. Go ahead and Slashdot me again, I'm ready! In fact, I'd be delighted, since Slashdotting usually means that more people will read and use my material. Slashdotted! (logo by solas, at northco.net

This site began September 12, 1999; some content predates the site. It was originally hosted by LinuxAvenue, but on November 5, 2001 (after about 2 years) I switched to Webframe.org in the Netherlands, which worked well for nearly four years. At that time the website ran on OpenBSD, an operating system with a deservedly excellent reputation for its security. Webframe then got bought out and changed business directions; after some discussions, there was an amicable agreement that I should transition to a new hosting site. So on June 9, 2005, I switched hosts to planet.perens.com, run by Bruce Perens... which is where the site is currently hosted.

Currently my website runs on the Debian GNU/Linux operating system, one of the more popular Linux distributions (especially for servers). The web server (the program that actually transmits data to you) is now lighttpd (that's a recent change). I've used Apache (the world's most popular web server) for a very long time, and was very happy with it. Apache is popular simply because it does a great job reliably serving pages; I only changed web servers because my provider did; both seem to work well.

I was able to easily switch between these different locations in a way that most people didn't even notice, because I made sure I owned my domain name (and trademark), dwheeler.com, right from the beginning. I strongly recommend that website owners directly own their own name!

I maintain the content on a separate protected GNU/Linux "test" system, where I run various programs to maintain changes. Those include document processing programs (like a Docbook toolchain) and little scripts I've written (using XSLT, sed, shell, and so on). When writing text, I usually use the excellent text editor vim (yes, vim rules, though I do use emacs once in a while). I then use rsync and openssh to send the updates from my test system to the main website. The tool rsync does an amazing job at sending only what needs to be updated, so my updates can happen quickly, and openssh protects my communications from attackers. Using this approach, attackers will find it difficult to take over the update process, and even if an attacker takes over the main website, I always have a master protected copy (at my test system). I've intentionally decided to serve only static pages from my website; this makes my site much harder to attack and gives excellent performance too. Not every website can decide to use only static content, with a separate site used for actual changes - but if you can, I suggest it. Nothing makes a system immune to attack, but I've tried to make it less susceptible.

Much of the material is written using simple HTML. One wonderful thing about HTML is that it's a fully open standard: the specification is publicly available, not controlled by any one vendor, implementable by anyone without restrictions (such as software patent licensing), and supported by multiple products. Open standards are a good way to avoid the Pottersville anti-pattern. I make sure that the HTML placed here is adaptable - I intentionally avoid specifying specific fonts, absolute font sizes, fixed table widths, and so on. The world wide web can be accessed on a variety of devices (handhelds, big screens, cheap systems usings old televisions, printed to printers) by people with a variety of needs (acute vision, poor vision, the blind, and so on), so it's important to let users determine how the information is displayed to them. I know how to use cascading style sheets (CSS), and I do use CSS, but I try to rig my HTML and CSS (especially on the front page) so that browsers that don't understand CSS can still display it reasonably. In fact, in general I try to be conservative in my use of HTML - not everyone has the latest software, and keeping things simple lets me concentrate on content instead of on useless fluff. Keeping things simple also means relatively fast download times for people with slow connections. If you want dancing bears, sorry, none here. Here, content is king.

I try to be quite generous with how I license material on my website; my goal is generally to make information available for others! But please respect the limits I've placed on them. I often choose a "copylefting" license for stuff I post on my site; I don't make any money directly from the material, and by licensing it that way I hope to receive back improvements as payment instead. Most of the material here has licensing information attached with it.

Please do not mirror my paper Why Open Source Software / Free Software (OSS/FS, FLOSS, or FOSS)? Look at the Numbers! without permission. I often update that, and others haven't kept up, so I've decided to simply prevent mirroring for now. Its license is at the end of the paper. I hereby announce that on my death or permanent mental incapacitation, my paper Why (OSS/FS, FLOSS, or FOSS)? Look at the Numbers! is automatically relicensed to the world under all of the following licenses; the user gets to pick which one(s): GNU Free Documentation License version 1.1 or later, the GNU General Public License (GPL) version 2 or later, or the Creative Commons Attribution-ShareAlike License. I may decide to revoke or change those terms before my death or permanent mental incapacitation; whatever terms are posted here upon that unfortunate event (for me) will be the release terms.

More recently I've begun putting ad space from Google on my site. Lots of people have asked to put ads on my site, and in the past I've refused to do so because of other factors I worry about. In particular, I jealously guard my independence, and I will continue to protect myself from being swayed by any vendors. Also, I also want to make sure that my readers aren't deceived (e.g., by "articles" that are actually unmarked ads, a practice I find deceptive). However, I do end up with a lot of little expenses that add up. It also costs me a lot of time to make this information available, which obviously I could use in other ways. So how can I cover those expenses without directly accepting ads from specific parties? After thinking about it, I realized that Google ads are a great answer. By letting Google pick the ads, I avoid being influenced by any party (I won't even know who is advertizing in most cases). Since they are clearly marked as ads, they aren't deceiving to readers. So, I think using Google ads meets my requirements; it enables me to be completely independent and avoid deception of readers. What's particularly nice is that Google uses web site content to identify the most relevant ads; that means you're likely to see products or services that you want to know about. I like the idea of inserting pieces of information that is especially likely to be useful to my readers. If you truly hate ads, use the Firefox browser and install the Adblock plus extension, though obviously you will then miss out on the helpful pieces of information too.

Trademark notice: "dwheeler.com" (TM) and "www.dwheeler.com" (TM) are trademarks identifying products and services developed by David A. Wheeler. Obviously, you can use that phrase when referring to my site and materials - please do, that's what trademarks are for, to identify someone's material! But if you think it'd be fun to write a book without my permission and use one of my marks in the title, or in some other way misuse them in a way that might mislead the public, think again. In particular, I've owned the domain name for years, and domain names have worldwide recognition, so don't try to steal it. (The problems of Katie Jones, owner of the katie.com domain, caused me to add this notice to clarify things.) In the past I asserted trademark status for "OpenFormula" so that whatever vendor-neutral standards body would have a clear, unencumbered right to it, and to make sure everyone can implement it. At this point that seems to have been accomplished, so I no longer assert a trademark status for "OpenFormula" (I'll let OASIS deal with that if they want to).

If you want to search my site using Google, without Google Adsense, you can do that here:

You can find out who links to this web site using Alta Vista.

Feel free to go back to the home page.