IBM touts SashXB as programming made simple in Linux

By Grant Gross
IBM says the Free Software release of its SashXB scripting language will lower the barrier of entry to creating applications in Linux and could help coding veterans cut the time it takes to create Open Source software.
This week, IBM released SashXB for Linux under the GNU Lesser General Public License. SashXB is a “Linux-ization” of IBM’s Sash for Windows, a technology that allows programers to build applications IBM calls “weblications.” Those are programs written in Web languages, such as HTML, JavaScript and XML, that can also take advantage of operating system functionality such as file systems, networking, and the user interface.

What the Linux release means is that people with basic programming skills who aren’t hardcore C coders can create Linux applications that “live” on the desktop by working with simple Web site-style code such as JavaScript.

A.J. Shankar, now an engineer with IBM, was part of the team that worked on the SashXB project two summers ago as part of the Extreme Blue internship program, in which teams of graduate students are given challenging technology puzzles to solve. The importance of the ground-up reworking of Sash to port it to Linux is that set of Web-based programming tools that weren’t available previously for Linux, he says.

“The tools that are available, that people take for granted in Windows, really don’t exist in Linux,” he says. “The barrier to entry is fairly high in Linux, as compared to Windows, in terms of writing applications.”

SashXB should open up Linux application-writing to people like Web designers, he says. The site has examples of “weblications” written in SashXB for Linux, including a networked checkers game, a simple Web browser and a stock ticker program. The SashXB team wrote a graphical ftp program, called SashFTP, in four to five days, with less than 1,000 lines of code. The C-code ftp program it’s modeled after has 30,000 lines of code and “has been in development forever,” he says.

That ease of use should appeal to veteran developers, as well as Web developers and coding newbies, Shankar says. “Experienced programmers will find that using Sash enables them to write applications much quicker than they would normally.”

Open-Sourcing the application should help it gain acceptance in the Linux community, Shankar says, and allows people to develop their own ways for SashXB to interact with their favorite technology. “We’ve made a lot of tools available for people to develop in SashXB,” he says. “If we haven’t provided a solution for you, you can provide it for yourself. Whereas, in the Microsoft world, generally, if a solution isn’t provided, you have to beg the developers to provide it, or you’re kind of out of luck.”

Shankar notes that SashXB can distribute applications with a graphical installer, and it downloads the program dependancies for you when you’re developing a new application. He also touts SashXB’s security measures — because its programs are distributed in JavaScript and not binary form, users have full control of the programs instead of having to trust the creator of a binary application.

SashXB uses Mozilla’s HTML layout engine, JavaScript
interpreter, and Component Model, and it uses several components from the
GNOME project. According to IBM, SashXB extends the Gnome desktop with Mozilla in the same way IE does for MS windows. SashXB creaes a new-hybrid Web development model for Linux, and it could also work with KDE in the same way.


  • Linux