[LWN Logo]
[LWN.net]

Sections:
 Main page
 Security
 Kernel
 Distributions
 On the Desktop
 Development
 Commerce
 Linux in the news
 Announcements
 Linux History
 Letters
All in one big page

See also: last week's Development page.

Development projects


News and Editorials

The ALSA (Advanced Linux Sound Architecture) sound driver provides an alternative to the older and more common OSS/Free driver. The ALSA project has been around since early 1998 and has achieved a level of stability that makes it worthy as a substitute for OSS/Free. The project is currently working toward the 0.9 stable release; the third 0.9 beta release came out on March 20. The question that comes up is: why use ALSA?

[ALSA] The ALSA Introduction sheds some light on the question. The goals of the ALSA project include maintaining backwards compatibility with the OSS/Free API while providing a more capable Library API for ALSA based systems. This allows a large number of existing OSS/Free based applications to run with the ALSA driver. The OSS compatibility is provided via an optional set of loadable modules, so those who do not require backwards compatibility need not expend unnecessary system resources on it. In addition to being able to run OSS applications, the ALSA driver has a number of native applications that use the ALSA Library API.

One of the more obvious differences between ALSA and OSS/Free is that a working ALSA based system uses a number of small loadable modules, whereas OSS comes in the form of one large module. If MIDI support is not required, the module need not be loaded. This makes ALSA a good candidate for embedded Linux applications.

The ALSA sequencer code is designed to give better response times for MIDI sequencer functions, making an ALSA based system suitable for a wider variety of uses than just simple playback. The goal of this part of the project is to be able to run real-time MIDI functions on Linux that compare with older Macintosh and Atari ST systems, a non-trivial feat on a multitasking OS like Linux.

The ALSA API is more fully featured than the OSS/Free API and utilizes more of the features found on modern sound cards. It may be necessary to switch to ALSA in order to utilize all of the features of newer sound chips, such as the digital audio input on the nifty CMI8738/PCI chip, which supports true 44.1Khz digital audio input without noisy resampling. The OSS/Free API closely mirrors the hardware design of older SoundBlaster sound cards, but that is a design that is becoming increasingly outdated. Since they have started from the beginning, the ALSA developers have, presumably, been able to study the shortcomings of the older drivers and work on those weaknesses.

ALSA is not currently supported by all of the major Linux distributions, for instance, it is included with SuSE, but not with Red Hat. Installation on a Red Hat system requires removal of the OSS driver and addition of the ALSA modules in the /etc/modules.conf file. This process is detailed in the the ALSA documentation, but is nonetheless a non-trivial job that would likely scare off those who are new to Linux. The SuSE distribution makes the ALSA driver installation fairly easy. ALSA will likely be included in the Linux 2.5 series kernels natively, if that happens, it will probably show up as an option in more Linux distributions. Give ALSA a try, it works rather nicely.

Richard Stallman on Savannah. Last week's LWN development page looked at project hosting sites including Savannah, the GNU project's SourceForge-based project hosting site. Richard Stallman wrote a letter to LWN that clarifies some of the issues that we reported on. Among other things, Savannah is currently only open to GNU projects. We also made the mistake of grouping Savannah with "open source" hosting sites; it should be listed as a "free software project" hosting site.

Backup Software

Announcing Paranoid Backup. A new Perl based backup system, Paranoid Backup, has been announced. "Paranoid Backup is designed to work with cheap tape drives and cheap tapes without shoeshining or losing data; to never overwrite old backups; and to use as few tapes as possible."

Clusters

New stable release of heartbeat. Heartbeat 0.4.9, a new stable version of the heartbeat clustering code, has been announced. It is the first version tested by the automated Cluster Test System (CTS) which allows it to be hammered with tens of thousands of failovers. "This is a significant milestone for the project, and contains a great many new features and bug fixes from many contributors, new and old".

Databases

An Introduction to MySQL. The MySQL site has started a new articles section; An introduction to MySQL is the first feature article.

PostgreSQL Non-FAQ Documentation. A new set of PostgreSQL documents has been published by Justin Clift. Included are quick reference materials, bug workarounds, performance tips, and more.

Documentation

LDP Weekly News, March 20th, 2001. Changes at the Linux Documentation Project this week include updates to the NVidia Configuration guide and the modem howto, along with a new document on how to write HOWTO documents using LinuxDoc.

Here, also, is the Linux Documentation Project Weekly News for March 13, 2001, which managed to escape mention in last week's LWN. It covers the new Bugzilla guide, an ambitious Malay translation project, and updates to several documents.

Education

SEUL/edu Linux in Education Report. The SEUL/edu Linux in Education Report for March 19, 2001 is out. This issue features discussions of teaching systems administration to students, using Linux for teaching English as a second language, and more.

Embedded Systems

BusyBox 0.50 released. A new version of BusyBox has been released. BusyBox provides a number of common command line utilities in a single binary file.. "This release adds several new applets including ifconfig, route, pivot_root, stty, and tftp, and also fixes tons of bugs. Tab completion in the shell is now working very well, and the shell's environment variable expansion was fixed. Tons of other things were fixed or made smaller."

Peer to Peer

The practice of peer-to-peer computing: Introduction and history (IBM developerWorks). Todd Sundsted discusses peer-to-peer computing in an IBM developerWorks article. "In spite of the hype, P2P computing is important, and it's beginning to look like the paradigm with a large enough slice of mindshare to move a number of promising technologies from the wings into the limelight. Therefore, it's important to understand where P2P computing fits into the broader technological landscape."

Standards

Linux standard deviation impedes developers (ZDNet). Examining the flipside to the advantage of Linux distribution diversity, ZDNet looks at the issues applications developers face with so many choices. "There are many reasons you don't see a lot of commercial application software for Linux, but I have to put the lack of a single porting standard near the top. In my view, it even impedes the progress of open source software. The effort spent porting code and packages to multiple distributions is effort that could -- and should -- be spent making the packages themselves better."

LSB-OS test suite beta. LSB-OS 0.7beta has hit the wires. This is an additional test set that gives further API coverage in support of the Linux Standard Base.

Window Systems

KDE-Women launches. [Katie] A new site at women.kde.org has hit the net. As stated in the introduction: "We want to build an international KDE forum for women by providing a place where women can present what they already contribute to KDE and where women, who want to contribute, find a starting point."

GtkFB: GTK+ for the Linux Framebuffer (LinuxDevices). LinuxDevices has run an article by Red Hat's Alexander Larsson on using GTK+ without the X Window System. "In the upcoming GTK+2.0 release, GTK+ will support rendering directly to the framebuffer instead of using the X Window System. This is good for embedded systems such as PDAs and other systems with very limited resources, because they are able to run without the overhead of an X server while still taking advantage of the power of GTK+ and the large base of existing programs."

Web application servers

Zope 2.3.1 beta 3. The third beta release of Zope 2.3.1 has been announced. See the changelog for a full list of what has gone into this release - it is almost entirely bug fixes.

Section Editor: Forrest Cook


March 22, 2001


Application Links
GIMP
Mozilla
Galeon
High Availability
ht://Dig
mnoGoSearch
MagicPoint
Wine
Worldforge
Zope

Open Source Code Collections
Berlios
Freshmeat
OpenSourceDirectory
Savannah
Le Serveur Libre
SourceForge
Sweetcode

   

 

Programming Languages


Caml

Objective Caml 3.01 released. A new release of Objective Caml has been released. "Caml is a strongly-typed functional programming language from the ML family." (Thanks to David Mentre)

Haskell

Why People Aren't Using Haskell. Dejan Jelovi discusses the slow rise of the Haskell language. "The fact that Perl, Python and Ruby have become popular while Haskell has stayed a marginal language is a failure of the Haskell community. The Haskell community has failed to build a useful distribution [of] Haskell, and it has failed to position the language as something that people can use to solve their problems." An interesting read.

Java

Using Tomcat (O'Reilly). James Goodwill writes about Apache's Jakarta-Tomcat server in an O'Reilly OnJava.com article. "The Tomcat server is a Java-based Web Application container that was created to run Servlet and JavaServer Page web applications. It has become the reference implementation for both the Servlet and JSP specifications. The purpose of this first article is to give you a basic understanding of web applications."

Lisp

Gnu CLISP 2.25 released. A new version of Gnu CLISP is available. This release features non-blocking binary i/o, support for IA-64 under Linux, and better ANSI compliance among other things.

Perl

Perl 5 Porters for March 19, 2001. The March 19, 2001 edition of Perl 5 Porters is out. This week's topics include Perl 5.6.1-TRIAL3, goto, the reset bug, the distributive arrow operator, and more.

The Perl You Need to Know Part 22: Warts and All (Web Developer's virtual library). Aaron Weiss discusses Perl features and gotchas in an article on Web Developer's virtual library. "This month we get negative, putting a big mirror up to the camel that is Perl, and taking stock of its lumps. It's only fair. As a Perl developer, you benefit from knowing not only the strengths and capabilities of a programming language, but also its limitations."

Perl/Tk binary available. New RPM source and binary packages for Perl/Tk have been made available.

PHP

PHP Weekly Summary for March 19, 2001. The March 19, 2001 edition of the PHP Weekly Summary is available. This edition covers PHP 4.0.5 RC1, extensions for YP/NIS+, ClibPDF, IMAP and DBX, and a PHP FastCGI version of PHP.

Python

This week's Python-URL. Dr. Dobb's Python-URL for March 19, 2001 is out with the usual collection of interesting stuff from the Python community.

Python-dev newsletter for March 14. Michael Hudson's Python-dev summary for March 14, 2001 by is out. It covers "a quiet fortnight" in Python development, including a bunch of work on new approaches to numbers and numeric types.

Python 9 conference notes (Python Journal). The Python Journal features notes from the Python 9 conference, recently held in Long Beach, California. Read about Python on the Palm Pilot, PSF projects, big applications, language design, and more.

Using Mix-ins with Python (Linux Journal). Chuck Esterbrook discusses Python mix-ins in a Linux Journal article. "Mix-in programming is a style of software development where units of functionality are created in a class and then mixed in with other classes. This might sound like simple inheritance at first, but a mix-in differs from a traditional class in one or more of the following ways. Often a mix-in is not the ``primary'' superclass of any given class, does not care what class it is used with, is used with many classes scattered throughout the class hierarchy and is introduced dynamically at runtime."

Python creator: Perl users are moving to Python (EnterpriseLinux). Enterprise Linux interviews Guido van Rossum, creator of Python. "if all you need to do is simple text processing, you might use Perl. Python, much more than Perl, encourages clean coding habits to make it easy for other people to follow what you are doing. I've seen a lot of people who were developing in Perl moving to Python because it's easier to use. Where Python wins is when you have users who are not very sophisticated but have to write some code."

gdchart-py 0.6 available. Version 0.6 of gdchart-py has been released. "gdchart-py is a Python interface to GDChart, a library for creating charts and graphs in PNG, JPEG, and GIF format."

Tcl/Tk

Wave Surfer 1.0 released. Version 1.0 of Wave Surfer has been released. "WaveSurfer is a tool for recording, playing, editing, viewing, printing, and labelling audio data. WaveSurfer is suited for a wide range of tasks in speech research and education."

Section Editor: Forrest Cook

 
Language Links
Caml
Caml Hump
Tiny COBOL
Erlang
g95 Fortran
Gnu Compiler Collection (GCC)
Gnu Compiler for the Java Language (GCJ)
Guile
Haskell
IBM Java Zone
Jython
Free the X3J Thirteen (Lisp)
Use Perl
O'Reilly's perl.com
Dr. Dobbs' Perl
PHP
PHP Weekly Summary
Daily Python-URL
Python.org
Python.faqts
Python Eggs
Ruby
Ruby Garden
MIT Scheme
Schemers
Squeak
Smalltalk
Why Smalltalk
Tcl Developer Xchange
Tcl-tk.net
O'Reilly's XML.com
Regular Expressions
 

Next: Commerce

 
Eklektix, Inc. Linux powered! Copyright © 2001 Eklektix, Inc., all rights reserved
Linux ® is a registered trademark of Linus Torvalds