Through his research and writings, Jon Bentley has made significant contributions to the art and science of computer programming. And he's the recipient of this year's Dr. Dobb's Excellence in Programming Award.
Before outlining a new taxonomy, Anany reviews the four most general algorithm design techniques: brute force, divide-and-conquer, decrease-and-conquer, and transform-and-conquer.
Bridge is one of a handful of classic games that have thus far eluded competent computer play. However, GIB, the Bridge program Matthew wrote and discusses here, proves to be a worthy competitor.
Which sorting algorithm is the fastest? Stefan presents his answer to this age-old question.
Joshua examines several incremental memory-management algorithms, including simple user-defined reference counts, before turning to analyzing the global connectedness of pointer structures.
Magnitude operation is widely used in signal and data processing for signal detection and power estimation in systems such as real-time displays for sensors, radars, sonars, and scanners for medical-imaging systems.
Bluetooth technology is an open specification for wireless communication. In Part I, Jim and Jason examined the voluminous specification. This month, they focus on the features of the Baseband specification.
Compared to analog filtering, digital filtering can provide higher overall system performance and reduce circuit complexity. Jim examines the technique of oversampling, which can be used to gain these seemingly contradictory benefits.
Lore is a DBMS designed specifically for XML. In the same way that SQL queries relational DBMSs, Lore provides the query language Lorel for issuing expressive queries over XML data.
PyGtk brings the benefits of a high-level programming language to Gtk+ developers, and gives Python programmers access to a modern, high-performance GUI toolkit.
Current reports present conflicting views of the job market for information technology workers. Richard goes below the surface to uncover the real story.
A recent dice.com career and salary survey on the IT industry gave some surprising (and some not so surprising) results. Susan reports on this study.
If you're in the market for a job, be prepared to answer a lot of technical questions during the job interview. Alex shares some of the questions you'll face and gives you answers you'll need.
Michael ain't misbehavin' as much as he's misinformin'. Of course, that's not his fault.
Ramblin' Jack Elliot has nothing on Al this month, as our man in C rambles from one topic to another.
JJ is a Java implementation originally designed as an educational programming language and environment. Although it's a subset of Java, JJ includes advanced programming features such as support for Design by Contract.
Caching often works well, but sometimes fails utterly. In this column, Jon examines why that happens and what you can do about it.
There's bad blood around Ecco's flat, as the good doctor and his sidekick Liane lend a hand to medical science.
Jeffrey examines the second editions of Radia Perlman's Interconnections: Bridges, Routers, Switches, and Internetworking Protocols, and Bruce Powel-Douglass' Real-Time UML: Developing Efficient Objects for Embedded Systems.