General Development Archive

Release of Open Dylan 1.0 Beta 1

"Dylan is an advanced, object-oriented, dynamic language which supports the rapid development of programs. When needed, the programmer can later optimize programs for more efficient execution by supplying type information to the compiler. Nearly all entities in Dylan (including functions, classes, and basic data types such as integers) are first class objects. Additionally Dylan supports multiple inheritance, polymorphism, multiple dispatch, and many other advanced features."

Avoid XML Pollution with Safe Coding Practices

Strong error handling translates into more reliable applications. When you load an XML document, it is best to catch errors early, before they have a chance to damage other data. I have noticed that many companies and developers make the same mistakes when they adopt XML technology. Learn how to avoid common XML coding errors when you design and implement error handling in XML applications.

The Realities of Software Testing

Unfortunately, in the real world you will never see a project perfectly follow any of the development models. You will never be given a thoroughly detailed specification that perfectly meets the customer’s needs and you will never have enough time to do all the testing you need to do. It just doesn’t happen. This chapter will help you understand that software testing doesn't alway go perfectly, and help you prepare for that eventuality.

Eclipse Customized Jakarta Slide Open Source CMS

This tutorial, first in a series, will walk through installation of a bundled Apache Tomcat and Jakarta Slide that will result in a working content management system. In Part 2 of this series, learn how to download the sources, set up Eclipse, and build the Jakarta Slide open source CMS. Part 3 will walk through the customization of Jakarta Slide with Eclipse to create a new store back-end adapter that will allow documents stored to Slide to also be stored in a database. Other options for creating stores will also be explained. Note that a free registration is required to view these articles.

Software Plasticity with Aspect-Oriented Programming

Most software is rigid in nature, making it difficult to reconfigure and modify without costly upgrades. Can software be made more plastic or malleable? Stephen Morris demonstrates how aspect-oriented programming provides an important tool in the race to achieve plastic software. If IBM's on-demand computing spreads across the industry, this requirement will become the rule rather than the exception. Will you be ready?

Next-Generation SOA Server Service Data Objects

Here are a couple of good articles from the SOA front. The first one provides guidence to architect a powerful and flexible Service-Oriented Architecture that integrates heterogeneous data, simplifying your IT solutions. The second article explores the next-generation business process server, which automates business processes and supports all styles of integration based on SOA and open standards.

Interview: Hans Reiser

In this interview, Hans discusses his background and how he came to create Namesys and Reiserfs. He looks back at Reiser3, describing the advantages it had over other filesystems when it was released and its current state. He then explores the many improvements in Reiser4, describing the plugin architecture and its exciting potential for future semantic enhancements.

Sin: Continuous Integration Rethought

"Due to being dissatisfied with the inability of existing open source Continuous Integration solutions to prevent developers from abusing the codebase, I've been prototyping a new proactive approach to Continuous Integration. Sin, a framework for Continuous Integration, is the result of this work. I discuss the problems with existing solutions and the advantages of Sin here."

GridShell Extends the TCSH and BASH Syntaxes

GridShell is designed to incorporate grid concepts into command shell environments. In this article, the author describes the motivation for GridShell and provides a high-level description of the extensions to the language interface the tool provides. GridShell extends the TCSH and BASH syntaxes. Users familiar with both will be able to write scripts that include these grid shell language extensions, and orchestrate and coordinate the execution of programs across the grid.