Switching to free software—system administrators

You are a system administrator for a small company—the captain of the firm’s computers. Doing your job well means that you may sail through the seas of information technologies unhindered, in short, the company’s IT infrastructure will stay in place. Should you mess up you will find that the email has stopped working, the web surfers are stranded and you have pinned your ship on the reefs and rocks that scatter the virtual world, or in other words, the company will not be functioning well and you be burning its money.

XMLStarlet: a Unix toolkit for XML

XML is everywhere. A quick Google search shows more than a 100 Million articles about the subject. The XML proponents gush about its ability to provide structure and yet remain human readable. The XML critics are quick to mention that XML is so verbose that being human readable does not necessarily make it human comprehensible. Both sides are correct. Yet, despite the ongoing arguments, XML is already integrated into many software products and the rate of adoption is still on the rise. And that means that you need to learn tools and techniques that will allow you to use XML effectively.

Skinning XMMS with BuildImage and Skencil

XMMS is a very nice program for playing music, but the default skin that comes with it is, well, “functional”. Fortunately, though, the program uses the same skin files as WinAMP 2.0 (several other programs use these skins as well, which I’ll call simply “AMP2 skins”). A “skin” is just a collection of images used to create the appearance of an application such as a music player (Figure 1).

Figure 1: XMMS unskinned (left) and with the default BuildImage Skin (right)Figure 1: XMMS unskinned (left) and with the default BuildImage Skin (right)

You needn’t eat spam (or worms)

Many who would cure us of spam look in the wrong place—technology—for the answer. These well-intentioned analysts rightly see this menace as resulting from a state machine that can be tweaked, but they should look to the I/O relationships of human behavior rather than communications protocols for the solution.

Freely available structures: XML Document Type Definitions you can use today

Organizations of all sizes are beginning to realize how content and its reuse across the enterprise can improve productivity—and the bottom line. The need for change is driven by the desire to better manage information assets (documents, creative ideas, illustrations, charts, graphics, multimedia, etc.) and eliminate costly processes that fail to facilitate the effective and consistent re-use of content. At the heart of managing content for re-use however lies the job of exposing the underlying structure of that information.

The fine art of computer programming

The free software and open source communities are changing what it means to write code. Specifically, they are extending its audience from a few fellow employees to, theoretically, anyone in the world who wants to read it. Code isn’t just for computers and colleagues anymore and, gradually, we are seeing the beginnings of a body of literary critics and an appreciative readership for source code.

Web site blocking techniques

For a variety of reasons, organizations have very strict policies regarding web site access. These policies usually mean that not all users have permission to access all web sites.

This article will explain two techniques that can be used to block web site access to specified groups of users at specified times, using Squid’s built-in mechanism and using squidGuard.


Many programmers are fluent in several programming languages. Most of these languages have some things in common. Loops and variables are fundamental features of most languages.

I want to show you a different way of solving problems. Haskell takes a different approach than you’re used to—to just about everything.

Why Haskell is interesting?

There are quite a few things about Haskell that make it interesting and unique:

  • Haskell has no loops because it doesn’t need them. There is no “for” or “while” in Haskell.

Xen, the virtual machine monitor

Virtualization is set to become a key requirement for every server in the data center. This trend is a direct consequence of an industry-wide focus on the need to reduce the Total Cost of Operation (TCO) of enterprise computing infrastructure. In spite of the widespread adoption of relatively cheap, industry standard x86-based servers, enterprises have seen costs and complexity escalate rapidly.

Virtualization is set to become a key requirement for every server in the data center


Everyone is eager to virtualize their working environment to take advantage of the abstraction layer it provides. Some may require resource isolation for enhanced security, others may need development environments for testing and debugging. Whatever your needs are, virtualization will save you resources through utilizing them more efficiently. This is done by exploiting synergies built on proven technologies, improving availability and reducing downtime, adding scalability through duplication and gaining a certain degree of hardware independence.

Gains from virtualization

The leap from virtual host to virtual machine

Back in the good old days, when men were men, women were women and the standard way for two computers to talk to each other was through a cable plugged into the serial port, was when I first took the plunge into this “internet” thingy and signed up with an ISP. Then, armed with a modem, a telephone line that doubled as a fax, Netscape 1.1 and a sense of adventure, I surfed web sites, emailed the few others I knew who had also taken the plunge and joined in on worldwide discussions on what we called “News Groups”.

The internet’s plague: spam

When the internet became a “thing” for the masses, it was around 1995. Well, it was a little earlier for some, and later for some others, but I think 1995 is a pretty good point of reference.

At the time, we all thought the internet could be a_ utopia_, a place where nothing really bad could happen because we were all connected to one another - almost literally.

Anonymity made things even more exciting: there was the freedom to be however we wanted to be (who has never, ever lied on IRC?!?) and to join groups we’d never dreamed of joining before.

A server for education

I recently encountered a group of very enthusiastic teachers, who wanted to convince me to try a new e-learning environment, with astonishing quizzes, and drills of extreme originality. However, as I’d last used computers in the seventies, I was initially sceptical. Back then computers had just been used to send humans to the Moon. It was hard for me to make the leap from those machines to the machines of today. And quizzes seemed to be a strange use of such a powerful resource.

Finding alternatives in developing software

Developing software within the free software model can be achieved with all sorts of different tools, but choosing the right tools can make a big difference to the success of your project. Even if you are developing a proprietary solution, there are benefits to using free software tools to achieve it. But what free software tools are available? In this article I’m going to look at the development tools available, from languages and libraries to development environments, as well as examining the issues surrounding the use of free software tools by comparison to their proprietary equivalents.


It all started with cavemen and their cave drawings. All cave drawings were WYSIWYM (What You See is What You Mean). I mean (no pun intended), if you saw a cave drawing, in which a hunter was chasing a mammoth, it meant that a hunter was chasing a mammoth. There were no two ways to interpret the cave drawings. Then came alphabets and words. With words came plain text or documents. Then came XML/SGML for adding information to a document relating to its structure and/or content. An XML document contains both content (words) and an indication of what role the content plays.

The importance of LDAP

All that you know about Lightweight Directory Access Protocol (LDAP) is wrong. From its inception to perceived usefulness, and ultimately, until the marketing department got a hold of it, LDAP has grown. It started as a useful protocol and a data structuring methodology (known by only a few), and became the latest and greatest way to synergize your action items and find parity with your eMarketing growth plan.

A laptop, a coffee, and disaster recovery

Last week, my laptop died a sudden spectacular death-by-drowning, as a full cup of coffee poured into its keyboard. It emitted a pop sound, and the screen and the power shut off.

What would your reaction be? Mine was to immediately unplug the power cord and remove the battery. Then I took it over to the sink and poured out the coffee. Remembering tales of people flushing keyboards with water, I ran some fresh water over the keys and then set to work. I removed the keyboard, the palm rest, a few of the inner cards, and let it sit without power for several hours. Apparently, not long enough.

Running BSD on PowerPC/PPC

When you think of the PowerPC processor, chances are you’ll think of just two platforms and, by association, two operating systems. Apple’s Mac OS X, which runs on Apple’s own hardware, and the AIX Unix operating system from IBM, which runs on their own PowerPC platform systems. In reality, there is a wide choice of potential operating systems that work on a wide range of PowerPC platforms. If you want a Unix-like alternative to AIX, particularly a free software one, then Linux seems the obvious choice, but there are others.

The history and future of SMTP

SMTP is an abbreviation for “Simple Mail Transfer Protocol”, and is the standard internet protocol for sending email from one system to another. Although the word “simple” belies the inherent complexity of the protocol, SMTP has proved to be a remarkably robust, useful, and successful standard. The design decisions that made it so useful, though, have given spammers and infectious code an easy way to spread their unwanted messages. Its recent evolution reflects the tug-of-war between those unsavory players and the administrators who want to protect their systems and their users.


Subscribe to RSS - Hacking