Mark's Magazine Articles

Note: new publications are posted at

A bibliography of magazine articles. I'll provide links to online versions when and if it becomes possible.

"Java: Good World Citizen". Java has built-in support for multiple character sets, making it easy to support Asian languages. Converting from one code page to another requires a change to a single parameter. This article gives a demonstration of how one might do this for a Chines web page. Placed with DDJ.


"Louis, Louis - The Preternatural Jukebox". Dr. Dobb's Journal, October, 2002. This article shows how to embed Microsoft's Windows Media Player in an ATL-based C++ program to create an MP3 player that adapts to your personal preferences.

"Star-Encoding in C++". Dr. Dobb's Journal, August, 2002. Star-encoding is a transform that can be applied to text before compression, giving significant improvement in performance.

"Rendering Transparent GIFs - Revisited". Windows Developer, July, 2002. Rendering GIFs with transparency under Win32. It's gotten a bit easier since I first wrote about it for DDJ in 1998.

CubeShow, PC Magazine, July, 2002. CubeShow is the PC Magazine utility for the July, 2002 issue. Both the utility and the source code are availal from PC Magazine

"Intel's JPEG Library", Dr. Dobb's Journal, July, 2002. An article that takes a look at Intel's free JPEG Library for Win32, and compares it to doing things the Microsoft Way.

"Building a URL Scanner With Java 1.3". Windows Developer, April, 2002. This article describes a Java program I wrote to scan through a URL database, flagging sites that have shut down, moved, or simply can't be reached.

C++ Algorithms: next_permutation(), C/C++ Users Journal, March 2002. A quick look at the STL function next_permutation(), with a practical example that uses it.

"XML Schema Validation in the Microsoft Universe", Windows Developer, January, 2002. Using Microsoft's XML parser to validate XML against schemas.


"A C++ Debug Stream for Win32", C/C++ Users Journal, September, 2001. An article describing an easy way to open a console-based debug stream under Win32. The stream is attached to a C++ iostream object, which gives it high marks for usability.


"Win32 Version Control", Dr. Dobb's Journal, June, 2000. An article written with Ping Ni in which we describe some of the joys of keeping versions straight when developing complex Windows programs.

" The Ultimate Home Jukebox", Dr. Dobb's Journal, January, 2000. An article written with Charlie Munro discussing ways to convert some extra hard drive space into a jukebox filled with hundreds of CDs.


"A Transparent ATL Controls", Dr. Dobb's Journal, March, 1998. Tom Armstrong and I wrote an article describing our technique for building an ATL control that displays bitmaps with transparent sections.


"A Fresh Cup of Zip", Dr. Dobb's Journal, December, 1997. The Java JDK 1.1 added support for Zip format archives to the standard library. This article gives some tips on how to use the Zip related classes, and how to avoid creating invalid Zip files.

"Patent Legislation Considered Helpful", Dr. Dobb's Journal Web Site, September 1997. In this op-ed piece I tout the merits of pending US legislation that seeks to make some medium-sized changes in the way the patent system works.

"Examining the zlib Compression Library", Dr. Dobb's Journal, January 1997. This article describes how to use the free zlib code to compress files. Detailed source code, plus a 32 bit ActiveX control accompany the article.


"Data Compression with the Burrows-Wheeler Transform", Dr. Dobb's Journal, September 1996. A new data compression technique, using a text transform discovered by Wheeler and Burrows. Detailed source code accompanies the article.

"Fast String Searching With Suffix Trees", Dr. Dobb's Journal, August 1996. A quick overview of the construction of the Suffix Tree data structure. Suffix trees give linear search times for string, with linear time and space for construction. Detailed source code accompanies the article.

"Lab Notes: Microsoft's Internet Assistant", Web Techniques, May 1996. A review of Microsoft's Word add-on, Internet Assistant, a tool for creating HTML documents.

A Floating-Point Problem", Windows/DOS Developer's Journal, April 1996. An example of how you can run into trouble when performing floating point comparisons.

"Priority Queues and the STL", Dr. Dobb's Journal, January 1996. An example of how to use STL priority queues, with an implementation of Huffman coding as an example.


"Precompiled Headers: Friend or Foe", Windows/DOS Developer's Journal, April 1995. When and where to use precompiled headers when building C++ programs.


"How Hot are the Tech Support Hotlines?", Windows Tech Journal, December 1994. A review of tech support policies and performance for the top four C++ compiler vendors.

"Coder's Companions", Windows Tech Journal, August 1994. A look at five popular Windows based source code editors.

"The Squeeze on Data", LAN Magazine, May 1994. A primer on data compression, plus a look at how it affects local and wide-area networks.


"Bimodal Interrupt Handling Under 80286 DOS Extenders", The C Users Journal, December 1992. An explanation of how bimodal interrupts work under DOS Extenders, with a specific example using Phar Lap's 286|DOS-Extender.

"File Verification Using CRC", Dr. Dobb's Journal, May 1992. An explanation of how to use the 32 bit CRC for verifying file contents, along with a portable example program.


"Data Compression Contest Results", Dr. Dobb's Journal, November, 1991. The announcement of the results of the Dr. Dobb's contest, which I judged.

"Using AT CMOS RAM", Tech Specialist (now Windows Developer's Journal), April 1991. An article on how to use the CMOS RAM chip built into the IBM PC/AT family of computers.

"What To Do When You're Past COM2", Tech Specialist (now Windows Developer's Journal), April 1991. An article on using Multiport RS-232 boards in C programs.

"Arithmetic Coding and Statistical Modeling", Dr. Dobb's Journal, February 1991. An article on high performance data compression.


"Quicksort", C User's Journal, August, 1990. This article describes techniques for implementing a Quicksort routine when the C standard library function proves inadequate.

"Using EMS - Finally!", Tech Specialist (now Windows Developer's Journal), October 1990. A short article on built in EMS memory management in Zortech's C/C++ compiler.

"Servicing COM Port Interrupts", Tech Specialist (now Windows Developer's Journal), May 1990. A comprehensive look at how to manage RS-232 interrupts using standard MS-DOS C compilers.

"Managing the Heap", Computer Language (now Software Development), February 1990. This article describes a technique used to untangle heap and pointer problems in C programs.


"Location is Everything", Dr. Dobb's Journal, December 1989. An article describing a technique for developing programs for embedded systems using MS- DOS compilers.

"LZW Data Compression", Dr. Dobb's Journal, October 1989. A description of a popular method of data compression.

Return to Mark Nelson's Home Page
Copyright (c) 1995-2002, Mark Nelson, All Rights Reserved.