General Development Archive

SAX processing in Python

An application developer can choose any one of a number of strategies to read and use an XML document. In some very simple examples a script containing a number of regular expressions might do the job, but normally a more rigorous technique is required. The Simple API for XML (SAX) is one of the two key techniques for analysing and processing XML documents (the other is the more complicated Document Object Model (DOM)). Read the article here.

Subversion 1.0.3 Security Update Released

The Subversion development team has released version 1.0.3. This is a security bugfix release and the team suggests all Subversion users upgrade: "Subversion versions up to and including 1.0.2 have a buffer overflow in the date parsing code. Both client and server are vulnerable. The server is vulnerable over both httpd/DAV and svnserve (that is, over http://, https://, svn://, svn+ssh:// and other tunneled svn+*:// methods). Additionally, clients with shared working copies, or permissions that allow files in the administrative area of the working copy to be written by other users, are potentially exploitable."

Extensible Programming for the 21st Century

This article argues that next-generation programming systems will accomplish this by combining three specific technologies: compilers, linkers, debuggers, and other tools will be plugin frameworks, rather than monolithic applications; programmers will be able to extend the syntax of programming languages; and programs will be stored as XML documents, so that programmers can represent and process data and meta-data uniformly.

Batch anywhere and Independent Concurrent Batch

This article shows how to grid enable applications using the first two of the six strategies so the applications can run as single or multiple instance batch jobs that are location independent. It explains the characteristics of applications using these strategies and details what the application developer must, should, and can optionally do to implement these strategies. A major objective when using Strategy 1 and Strategy 2 is to ensure that the application is as flexible as possible regarding middleware products.

Reboot Linux Faster Using kexec

Even if your work doesn't require you to reboot your Linux machine several times a day, waiting for a system to reboot can be a real drag. Enter kexec. Essentially, kexec is a fast reboot feature that lets you reboot to a new Linux kernel -- without having to go through a bootloader. Faster reboot is a benefit even when uptime isn't mission-critical -- and a lifesaver for kernel and system software developers who need to reboot their machines several times a day. Kexec is currently available on the x86 32-bit platform only.

Xtreme Programming and Open Source Software Development

This article is about Open Source software development. Given the unrelenting ideal of better software that remains the guiding principle of the Open Source world, it is inevitable that it crosses paths with Xtreme Programming, in philosophy to a large extent and in practice to some. The author also examines some "Xtreme" influences on F/OSS development -- what these are and what these can be.

Model-driven development with the Eclipse

The Eclipse Modeling Framework (EMF) is an open source framework for developing model-driven applications. It creates Java code for graphically editing, manipulating, reading, and serializing data based on a model specified in XML Schema, UML, or annotated Java. This article will step you through the process of creating a model, generating code, using the generated apps, and customizing the editor.