Archives for the Month of May, 2005

Vendor Independence

Frank Scarvo reports results of a survey at ComputerEconomics.com that IT decision makers value “reduced dependence on vendors“.
This indicates that software buyers must feel some level of dependence on proprietary software vendors, from which they desire freedom. Such dependence includes reliance on the vendor for maintenance and support and the necessity for the buyer [...]

Open Source Omniscient Debugger

Ever wanted to replay programs in slow-motion?

Making C++ more like Lisp

Brandon Corfman wondered out why his C++ program was longer than Lisp. C++ took 200 LOC, while Peter Norvig’s Lisp version took 45 LOC.

The future of source code editing

Demo of source code commenting on steroids.

Barriers to Learning Programming

Do you hate assembling toys, or furniture? There are always screws everywhere; and the diagrams are less than adequate. Well, writing programs with unfamiliar libraries is very much a similar process, argues Andrew Ko at the Human-Computer Interaction Institute at CMU in the paper titled Six Learning Barriers in End-User Programming Systems (pdf).
Because machines [...]

Enduring Legacy Code

Brian Marick blogging over at Exploration Through Example groups approaches to handling legacy code into three classes:

Rewrite and throw away
Refactor into submission, ala JoelOnSoftware
Strangler application, via Martin Fowler

Now if everything was a web application, the issue becomes one of integration and interoperation rather than replacement. e.g. Add a link in the legacy app, and hey [...]

Presentational XML

Like most armchair webmasters, I struggle to craft the right CSS file that is capable of dealing with the idiosyncracies of various web browsers. I quietly and secretly pine, like most webmasters, for the return to the days of table-ful designs, without being jumped on by the semantic folks. I herewith present: Presentational Layout Markup [...]

Complexity and Programming

Dan Sugalski on complexity in programming:
Better tools won’t address the flakiness or complexity issues in software because software, generally speaking, is constrained only by complexity and flakiness — they’re to CS what physics is to civil engineering. Adding a facility that removes complexity or flakiness, such as garbage collection, doesn’t make programs less complex or [...]