White Paper: Why Performance Management?
Hello, Guest | Login | Register

Author Archive

Helpful Tools for Software Developers

Coding is often just a small part of software development. There are lots of other tasks to attend to. Here are some tools to help with all aspects of the job.
Keep a Paper Trail with Paper Trail

Who did what when and to which? Don’t guess. Track changes with this Rails add-on.
Typekit: Banishing Blight from the Browser

A new kind of startup—a font service provider—turns Verdana into Vavoom!
Hijack: Living on the Edge of (Ruby and) Rails, Part 4

Hijack can debug most any running Ruby process. Here’s a hands-on introduction.
Living on the Edge of Rails, Part 3

The inside look at Edge Rails rumbles on.
Living on the Edge of Rails, Part 2

Edge Rails has more treats in store for early adopters and lazy developers.
Living on the Edge of Rails, Part 1

What’s new in Rails? Lots and lots. Over the next week, peek into Edge Rails and look forward as Rails 3 chugs to release.
Of Spiders and Scrapers: Decomposing Web Pages 101

Not all sites proffer slick RESTful interfaces and XML feeds. In those cases, collecting data requires some good, old-fashioned scraping. This week, let’s look at some of the tools and techniques required to scrape a site.
Don’t Repeat Yourself. Use Rails Templates.

Rails is a productive environment — once you install gems, plugins, and initializers, configure routes, generate code, migrate databases, and tune your environments. Rails templates can automate all of that busy work.
Extend Your Scripting Language with SWIG

SWIG makes it easy to write an extension for your favorite scripting language (or languages). Learn how it works.
Hands-On with Adobe Browserlab

One day, we won’t have to worry about browser eccentricities. (I have a dream.) Until then, tools like Browserlab make the horrible realities of Web development tolerable.
Sifting Through Billions and Billions of Bytes

Here are ten or so invaluable resources for software developers.
Building Small Sites with Webby

Webby is ideal for a content archive, a small business or governmental website, and even small catalogs that link to PayPal for commerce. Here, learn how to use Webby to create a site fast.
Rip: A New Way to Package Ruby Software

Tired of juggling Ruby gems? Try Rip. It’s a one-size-fits-all, no fuss, powerful package manager.
Google Web Elements: Essential as Fire, Water, Earth, Air

“Build it and they will come?” Try “Embed it and they will stay.”
Balsamiq Mockups: Pencil and Paper 2.0

A new tool, Mockups, models graphical user interfaces and Web applications.
Here’s a hands-on review.
Sunspot: A Solr-Powered Search Engine for Ruby

Search can make or break your website. Sunspot and Solr give you an intuitive engine that maps directly to your Ruby objects.
The Ugly Truth About the Web

Tired of Arial and Verdana? Add some sizzle to your Web pages with a new open source project that can render any font in a page. (Flash not required.)
Shifting Applications Into Gearman

Gearman enables a new level of software abstraction. With this lightweight infrastructure you can to outsource work to better-suited computers, run tasks in parallel, and combine code written in different computer languages.
Micro-Frameworks: Big Things in Small Packages

Are Rails, CakePHP, Django, and Catalys too big for your taste but you still want the benefits of DRY programming? Maybe it’s time to get small with micro-frameworks.
Hey, Don’t Dump. Debug!

Are the “Two Ps” (print statements and prayer) all that comprise your debugging strategy? It’s time you were introduced to the Interactive Ruby Debugger.
MySQL: Alive and Kicking

Despite some of the concerns floating around the MySQL Conference this week, there’s some good news coming out of the event. The MySQL developers are returned to a “release early, release often” schedule and the pending 5.4 release has a number of features worth keeping an eye on.
The Fast and the Furious On Rails

Protecting the sanity of Rails developers is job #1! Reduce new project setup time and speed the installation of essential gems and plug-ins with new application templates.
Don’t Make Me Write HTML

No one likes writing — or reading — HTML. Thankfully there are tools like Markdown, HAML and SaSS to make your hypertext life easier.
Rails 2.3 Makes Finders Fancier

Checking out improvements to Rails’ ActiveRecord object, including dynamic scopes and batches.
Lua, Lua, Oh, Oh

Compiled programming languages and scripting languages each have unique advantages, but what if you could use both to create rich applications? Lua is an embeddable scripting language that is small, fast, and very powerful. Before you create yet another configuration file or resource format (and yet another parser to accompany it), try Lua.
A Tour of the Linux File System

Take a tour of the Linux filesystem. Drive down /bin Street, cruise over to /usr Lane, and buy some souvenirs over in /dev Drive.
Flex and PHP

Flex and PHP builds highly-interactive, media-rich and Internet-connected applications that can run in every Web browser.
Piquant Picks for the Penguin

A faster file system, bugs squashed — inquire
within, Tony Soprano meets Firefox, and Zander keeps his
Flex, JavaFX, or Silverlight?

Which, if any, rich Internet application is right for you? Why?
The 2006 Holiday Shopping Guide

Have a penguinista in your life? Need the perfect holiday gift? Look no further! Here’s a parcel of presents that’ll please even the pickiest geek. Best of all, none will put your eye out.
“Portland” Ready for Prime Time

Portland Project releases unified interface for desktop graphical environments, included in major Linux community distributions

As the Web expands, so does Linux. And Redmond may not be able to keep up.
The Big Five-O

A whirlwind tour of my history in computing.
Patently Wrong

The United States patent system needs a lobotomy. Or just stiff medicine.
The Guppy and the Whale

Bigger is not always better, unless it is.
Big in Europe

A recent poll of European Union local governments shows increasing adoption of free and open source software. Indeed, uptake of the Penguin is happening everywhere, albeit quietly.
Change Made Easy

Change owner, mode, and group of an entire directory all at once using chown. For example, chown -R a+rw joe:dev dir makes dir and everything in dir world-readable and -writeable, and sets owner to joe and group to dev.
The Woe of the Web

The World Wide Web is fifteen. Like a typical teenager, it’s pimply, ungainly, and still has a lot of growing up to do.
Fingering Processes

If you want to know what process(es) are running a certain application, use pidof. For example, pidof /bin/zsh yields all process ID’s running /bin/zsh.
Understanding Open Source Licenses, Part Two

More than the protocols, backbones, and servers that underlie the Internet, open source licenses have
facilitated the exchange of source code and ideas. Here’s a look at academic and reciprocal licenses and how to use them.
The Boston IT Party

Once again, Massachusetts is in the middle of a revolt. And while the state may not go so far as dumping copies of Word over the side of the Eleanor, like the original Boston Tea Party, it’s the intention that counts.
The “M” in “LAMP”

MySQL 5 promises many new features.
The X File

To run X clients securely, use ssh -Y host. DISPLAY is automatically set to encrypt and tunnel X protocol back to the X server.

The demise of the software industry is being greatly exaggerated.
Exclusive: Interview with Monty Widenius

With MySQL 5 now widely available, the MySQL founder weighs in on the competition, the future of the MySQL database, and how to manage contributed code. Here’s ten questions with the co-founder and CTO of MySQL AB.
Directories Made Easy

Use mkdir -p to create a hierarchy in one fell swoop. For example, mkdir -p a/b/c/d makes directory d in directory c in directory b in directory a.
Fundamentals of Copyright Law

The phrase “open source license” refers to a large number of agreements that license the
copyrights inherent in software widely, fairly, and with the fewest restrictions possible. This article —
the first of two — describes the tenets of copyright and explains the intents of an open source license.
The second article in this series explores individual licenses, such as the GNU Public License and the
Apache License.

To see the list of groups you’re a member of, use id -Gn. id has effectively replaced groups and whoami.
Faster, Simpler Version Control

Tired of CVS? Try darcs. Creating a repository with darcs is as easy as cd ~/myproject; darcs init; darcs add -r *. Use apt-get install darcs to install or see the darcs wiki for source, tools, and more info.
Look at Files in Reverse

To look at a log in reverse (most recent events first), run tac logfile | less. tac reverses the lines of any file. Use tac - to read from stdin.
Move Wisely

If you’re not careful, mv can overwrite existing files. Move files wisely with mv –backup=existing -v. To save typing, set VERSION_CONTROL to existing.
MySQL 5.0 Now Available!

MySQL AB, developer of the world’s most popular open source database, today announced the general availability of MySQL 5.0, the most sigificant product upgrade in the company’s ten-year history. Starting today, MySQL 5.0 can be downloaded under the open source GPL license at http://dev.mysql.com.

Google’s Folio Portfolio

Google’s attempt to index print books has come under fire from publishers. How foolish.
Add Users En Masse

You can quickly create new user accounts or update existing accounts with the newusers command. Create a list of accounts in a passwd-like file and run the command newusers file.
Customized File Metadata

Build your own view of file metadata (permissions, file name, file size, and so on) with the stat command. Use -c (or –format=) to display the fields you want, in the order you want — perfect for processing with scripts!
Beware Root

Avoid logging in as root. Instead, use sudo to run individual commands as the superuser. As Spider-man says, “With great power comes great responsibility.”
Disable A User Account

To temporarily disable a user account, run password -l username. To re-enable an account, use the -u option.
Process Lookup Made Very Easy

Need to find or kill a process? Use the utilities pgrep and pkill. For example, the command pkill -INT -u root sshd sends the INT signal to the sshd process owned by root.
Easy Parsing

If you have a comma-delimited file, use cut -s -d, -f n file to extract the nth field from each line of file. The -s option skips lines without the delimiter.
Compressed File Tools

View and process a gzip-compressed file (such as an archived log file) without expanding it using zcat, zdiff, zmore, zless, zcmp, zgrep, zegrep, and zfgrep.
Download from the Command-Line

wget is an invaluable utility. Use it from the command-line or a shell script to download a web page, an entire web site, a tarball, or just about any http: or ftp: URL. wget can also help debug HTTP and FTP connection problems.
31 Flavors? Yum!

Which would you prefer? Chocolate day in and day out or a new flavor every day of the month? Much maligned, the smorgasbord of Linux distributions is really quite delicious.
Watch a Log File

If you want to watch a log file, use tail -F. The -F option prints new content as it’s appended (like -f), but also re-opens a file if it’s created anew, as occurs when a log file is rotated.
Perl One-Liner

You don’t have to know Perl to use Perl. The command-line perl -p -i -e ’s/oldstring/newstring/g’ * replaces all occurrences of oldstring with newstring in all files in the current directory and makes backup copies of the original files.
GNOME 2.12 Now Available!

The GNOME project has released version 2.12, “the latest version of the popular, multi-platform free desktop environment, providing all the tools a user needs for everyday work, and a platform for developers to write new software.”

Find Any File Fast

Need to find a system configuration file but only remember a part of its name? Use locate. It’s faster than running find / … and much simpler to use. (Run updatedb often to keep the locate file database up-to-date.)
Reference the Directory Stack

If you use pushd and popd to maintain a directory stack, use ~n on the command-line to reference the nth element of the stack with (where n is 0, 1, 2, and so on).
Run a Job at Boot

If you want to run a command every time your machine boots, but don’t have access to the init scripts, use cron’s @reboot qualifier.
Apple Move Sweet as Pie

Intel processors in the Apple G6? Yawn. Mac OS X on Intel processors? Yahoo!
The Tux Top Ten

The top ten moments in Linux history, open for debate.
Door 1, 2, or 3

Three open source licenses is more than enough.

Do the Mambo

The new linuxdlsazine web site is an assembly of open source tools.
Dear Bill

Poor, poor Microsoft. It has gobs of cash, a small army of employees, and the greatest monopoly ever and it’s still boring as hell. Microsofties, bring the flames!
Linus’ Law to the Letter

Open source is more than a mantra; it’s also a best practice.
The Emperor Penguin: An Interview with Linus Torvalds

Perenially pragmatic, Linus Torvalds, Linux’s creator, talks abou the kernel, its future, and his favorite pet projects.
Buy or Build

Star Talers

Fear, uncertainty, and doubt. Sounds like a Grimm’s fairy tale.
Plumbing the Depths

After almost two decades of working with computers, I want to give it up. Instead, I want to become a plumber. Plumbers have it made.
Deja Vu

Last month, I expressed boredom with the personal computer. Beyond gigahertz, gigabytes, and wireless, I complained, personal computers sold today look and feel a lot like those sold ten years ago.
Same as it Ever Was

Every so often, something truly magical appears and changes the universe forever. Recent marvels like wireless and digital content are just two examples that come to mind. Each changed our expectations of what’s possible.
The Reinvention of Novell

With the recent acquisitions of Ximian and SuSE, Novell Chief Executive Officer Jack Messman has transformed a marginalized company into a mover-and-shaker. Look out, Red Hat - and Microsoft - Novell has big plans for Linux.
A Dimming Bulb

Back in 1985, in my last year of graduate school, I was lucky enough to get a “real” office, including a door, a lock and key, a telephone, and a shiny, new Sun 3/110 workstation. After timesharing with the general population on VAX 11s for three years, the Sun machine was a godsend: a bitmapped screen, shell windows, and all the processing power of a 16 MHz 68020. (Man, those were the days!)
Looking for the One

If you ask a Perl aficionado a programming question, he or she is apt to reply “There’s more than one way to do it.” That response isn’t trite or boastful: Perl offers many different ways to solve the same problem.
Free As In Puppy

Riffing on “free as in speech, not free as in beer,” critics often quip that Open Source is “free, as in puppy.”
High-Powered Lines

In the near future, the city of Cincinnati, Ohio will become the first municipality in the country to receive broadband over power lines (BPL). The service, which promises at least one megabit per second download and upload speeds, can be accessed via any electrical socket using an adapter that closely resembles a large cell-phone charger. The technology is proven, the Federal Communications Commission is endorsing it, and unlike DSL or wireless, BPL can go anywhere that power goes. And BPL is cheap: the basic one mbps service is priced at $29.95 per month.
I See All

I am happy to report that I’ve finally completed Madame Pearl’s “Clairvoyance for Fun and Profit” correspondence course. For the modest tuition of $1,000, I’ve received hours of expert instruction via webcast, a sheepskin for my office (soon to be parlor), a deck of tarot cards autographed by Madame Pearl herself, and a shiny new iBall, a wireless crystal ball that peers into the future.
High Five for OSDL

As this month’s linuxdlsazine goes to press, the mainstream media and the technorati (the geek paparazzi) are widely reporting on the Open Source Development Labs’ creation of a Linux legal defense fund. Briefly (and you can read more details in our “Report from the Front” on page 8), OSDL’s fund will subsidize the legal expenses of any Linux end-user that’s threatened by broad intellectual property claims, such as SCO’s assertion that code in the Linux kernel infringes its copyrights. OSDL plans to raise $10 million for the fund; the fund’s been seeded with $3 million by IBM, Intel, and others.

Like the heart and lungs, accounts payable and accounts receivable keep a company pumping. Money goes out; raw materials come in. Products and services go out; money comes in. If more money comes in than goes out, the company prospers. At least that’s the theory — and the goal.
What is Linux?

If someone asked you to describe Linux, what would you say? If you’re pedantic, perhaps you’d say, “Linux is an operating system kernel.” If you’re practical, maybe you’d explain, “Linux is an operating system where you can inspect and change any of the components.” Or, if you’re evangelical, perhaps you’d proffer, “It’s like Windows, only there’s no blue screen of death, and it’s free!”
A Novel Novell?

I am guessing that the news about Novell’s intention to acquire SuSE came as quite a surprise to all of you. It certainly surprised me.

While email may now and forever be the Internet’s ultimate “killer app,” there was a time when BBSs or bulletin board systems — electronic equivalents of the neighborhood message board — ruled cyberspace. Back then, email systems were sparsely connected, and sending email often required you to remember or discover transmission paths. (Perhaps some of you remember specifying routing instructions in email addresses with %, !s, and @.) Instead, computer hobbyists and nascent Internet users dialed-up services like Usenet and The Well to meet, debate, discuss, and yes, flame.
Better than Panther

After fifteen years, I’m paying for it. Sure, I could be patient, and maybe get it for free later, but I want it now — and am willing to fork over cash to get it. So, with a satisfying click of the mouse, it’s mine.
Total Recall

I woke up today with recall on my mind. No, not the drama playing out in California these days — the recall I have in mind has much more significance. Hear me out.
The Death of the GPL?

While Red Hat’s complaint and IBM’s countersuit provided fan-pleasing left and right hooks to SCO on the first morning of the most recent LinuxWorld Expo, the most important story of the show lay underneath the flurry of press releases, swagger, and bluster: for the first time ever, the vaunted GNU Public License (GPL), the constitution of much of the free software world may be put to a legal test.

Let’s say that you’re a system administrator responsible for a large set of computer systems — everything from Linux servers to Macintosh desktops. Like most system administrators, you’re very busy, tracking down problems, installing new software, monitoring systems, and helping end-users. Sounds pretty typical, huh?
The Colonel of the Kernel: Q&A with Andrew Morton

2.6 is coming, and Andrew Morton, a modest, humble, approachable, and very capable system software developer is leading the charge. Hand-picked by Linus Torvalds for the task, Morton talks about the next production kernel, the kernel development process, and what would happen if SCO won its case against IBM.
Not the Anti-Tux

This past month, I received much more email than usual. The reason? The Microsoft ad and the Microsoft CD-ROM included with the August issue of linuxdlsazine.
Oh, Woe is SCO

As this month’s issue of linuxdlsazine goes to press, the SCO fear and uncertainty dreadnought continues to strip-mine the landscape of Linux. Each day of the last week brought more SCO allegations and threats. SCO even took Linus’ approach to developing the kernel to task, practically calling the massively collaborative model near-willful infringement. But while dung spewed from Utah, IBM shrugged it all off. In fact, Big Blue looks Very Cool Blue so far.
Boa Constructor

While the “P” in “LAMP” most often brings to mind Perl or PHP, the other “P,” Python, is no third-wheel. Indeed, with powerful language structures that support objects, dynamic data types, and dynamic typing, and a rich trove of core and contributed programming libraries, the variety of applications that can be built with Python is quite astounding. The Python Users page (found online at http://www.python.org/psa/Users.html) lists just a small sampling: there’s a content management system framework (Zope); a Quake level editor (Quake Army Knife, or “Quark”); and an entire web site — PalmStation.com — written solely in Python.

The Internet was originally conceived to improve communication between far-flung researchers. Today, of course, the Internet can be used by anyone, virtually anywhere, to send and receive information of all kinds. Email, newsgroups, web sites, and more recently, blogs, and RSS feeds are all methods to share information.
X is the Spot

Back in 1989, I discovered the X Window System, and almost immediately, I fell in love with it. X was fun to play with and a blast to program for. In fact, I was so enamored of graphical user interfaces and the ins-and-outs of windowing systems, I spent the next three years or so working on little else but X. I even had the privilege of participating as a member of the X Consortium, shuttling regularly back and forth between coasts for X technical conferences and hands-on “interop” sessions. Indeed, to this day, I trace my eventual career in consumer software and computer game development back to the day when I launched X on my Sun 3/60 workstation.
Extreme Linux

In the past several months, a good number of corporate, government, academic, and research institutions — Pixar, the Lawrence Livermore National Lab (LLNL), the Centers for Disease Control (CDC), Shell E&P, and others — have announced the installation of substantial, high performance Linux computing clusters. In the case of LLNL, for example, the largest of its three new clusters (built by Linux Networx) is composed of 252 Pentium 4 processors, capable of a theoretical peak of 857 gigaflops, making it one of the fastest clusters ever built. In the case of Pixar, a 1,024-processor blade cluster (using 2.8 GHz Xeons) from RackSaver is replacing the company’s existing Sparc-based render farm.

While email and instant messaging are great ways to stay in touch — and are nearly ubiquitous — those “killer apps” are just a little dull. After all, why send email to your brother when you can just as easily reach out and “frag” him?

Electronic mail is both a blessing and a curse. On the one hand, email is so convenient: You can send email at any time from almost any computer, and email is great for staying connected to colleagues, friends, and family members, especially if you’re separated by time zones or great distances. Moreover, email costs nothing and is easily shared with groups of any size. On the other hand, email can be overwhelming. Today, it’s not unusual to receive hundreds of email messages a day. Sure, reading and replying to all of that correspondence has to be done, but filtering and filing all of that email (not to mention fighting spam) can be downright daunting and time-consuming.

As this issue of linuxdlsazine goes to print, the biggest story in the Linux world is SCO’s “not less than” $1 billion law suit against IBM. News of the suit spread quickly over Web, blogs, and wire. InfoWorld ran the headline, “SCO Sues IBM Over Linux,” while c|net wrote, “SCO Sues Big Blue over Unix, Linux.”
At Your Service: An Interview with JBoss’ Marc Fleury, Scott Stark and Bill Burke

With over two million downloads in 2002, JBoss is arguably the de facto standard for deploying Java-based Web applications. With its advanced features, microkernel architecture, full implementation of the J2EE stack, and an unbeatable price (it’s free, available as source code released under the Lesser Gnu Public License), JBoss — like Linux and Apache — has been widely adopted by developers and corporate IT departments.
Around the Linux World

I’ve just returned from Linux World in New York, and besides a mild case of jet lag and frostbite, I’m back in the swing of things, trying to herd 50,000 words into something resembling a magazine. (Drop me a line and rate my wrangling skills.) And, in addition to recovering from my trip to the Big City, I’m also trying to form an opinion on this most recent Linux World. Everyone asks, “How was the show?” and, to be honest, I’m not sure what to say.
The Ultimate Team Organization Software

A successful project depends on six things: smart people, smart planning, lots of hard work, and communication, communication, communication.
A Very Happy Marriage

This month’s issue of linuxdlsazine is our second annual “Java” issue. As we did in March of last year, we’ve set aside the features of the magazine to explore new and emerging Java technology that you’re likely to hear more about — and if you’re a Java programmer, probably code with — in the months ahead.
Crystal Space 3D

In 2001, revenue from the sales of video games exceeded $9 billion, a new record. By the end of October 2002, sales of video games had already surpassed $6 billion, and was expected to eclipse $10 billion by year-end, setting yet another record (a final revenue tally for 2002 was not available as we went to press).
Keeping the Web in Web Services

Web Services have unleashed a raft of technologies, but are any effective? A number of developers say no and suggest that the Web already offers everything you need to build a great Web Service. And more.
Out in the Open

One of the many amazing and marvelous facets of the Open Source movement is its volunteer spirit. All across the Internet — on the Web, and in newsgroups, blogs, and CVS trees — people from all walks of life, spanning all parts of the globe, contribute their time, energy, and expertise to the cause. It’s quite remarkable, and even though I’m exposed to Linux projects every day, I still find the whole Open Source process fascinating.
Priced to Move

If you live in the San Francisco Bay Area long enough, your view of the world gets a little warped. “Hot weather” is anything above 75 degrees, “rain” is a four-letter word, and the East Coast might as well be a part of the European Union.
Bigtime Linux

As we wrap us this issue of linuxdlsazine and wrap up the year, I keep asking myself a simple question: Is Linux better off now than it was a year ago?
Creating Web Services with AXIS

Java developers interested in building Web services will find the AXIS toolkit
Write Once, Serve Everyone

Web services promise to integrate businesses, connect all kinds of devices, and rally the computer industry around standards. You’ve heard the hype — here’s what the hubbub’s all about.
Java Regular Expressions

Java’s string processing capabilities are far better than those found in C, C++, or Visual Basic, but aren’t quite as powerful as, say, Perl’s. While the Java String class provides convenient methods such as indexOf(), lastIndexOf(), and startsWith(), you still have to write quite a bit of Java code to do something like break a colon-delimited record into a set of fields. Until now.
Hip Wrappers in the House

In March 2002, Sun Microsystems released Version 1.4 of its Java 2 Standard Edition (J2SE) software (http://java.sun.com/j2se/1.4). J2SE is the core of the Java platform. While other Java kits are specialized (e.g., J2ME is targeted at small devices and J2EE provides a range of server and e-commerce solutions), J2SE provides fundamental components that every Java programmer can use.