June 30, 2004
Rounded Corners with CSS and JavaScript

Rounded corners are one of the most frequently requested CSS techniques. As with many things in CSS, there are various ways in which this problem can be approached. In this article, I'll look at the pros and cons of some common techniques and introduce a new technique that utilises both CSS and JavaScript.

June 29, 2004
TV-out with a Matrox G400

This text describe how to get TV-out working with a Matrox G400 / G400 MAX card in Linux with MPlayer.


This document describes how to set up tv-output with DirectFB when using Matrox Dualhead hardware. It tries to be an easy guide to set up DirectFB and possible software alongside it.

How to create OpenOffice.org forms

In some situations, you want to create a document that contains some fixed text, but allows users to enter some items and perhaps take some actions on those items. Such a document is called a form, analogous to the preprinted forms everyone has filled out dozens of times. You can create custom forms in most of the OOo applications; forms you create without the Form AutoPilot don't have to connect to a data source (though they can -- see "How do I attach a data source to a form?" below). If the form isn't connected to a data source, information the user enters there is simply saved with the form. (You might do that when you want to send a form to a group of people for them to fill out and return.) Writer, HTML Editor, Calc, Impress, and Draw all support forms.

June 28, 2004
Squid Puts the Squeeze on Net Wrongdoers (Part 2)

Last week, in part 1, we got Squid up and running as a simple local http caching proxy. This week, we shall exercise our godlike admin powers and use Squid to control Web access for our users. We shall control the time of day they are allowed to surf, make sure their Web surfing goes through Squid, force them to authenticate to Squid, and create blacklists of their favorite Web sites.

Simple Configuration Tips Put Squid on the Menu

The Squid http proxy performs a large number of useful tasks. Today we'll look at http proxying and access controls. Squid's primary duty is to cache http requests. A typical LAN has much fatter internal pipes than external, so the bottleneck is usually your shared Internet connection. Caching Web pages speeds things up considerably, and conserves bandwidth. And you, the godlike admin, can restrict access to specific Web sites, networks, and users, as the whim ... I mean necessity ... dictates.

June 25, 2004
An overview of the testing modules available on CPAN

CPAN is filled with great modules to help you test your code. Here's a short list of what's available, so you don't reinvent the wheel.

Get More Out of Your Pipe with Apache and mod_gzip

Webmasters who are serious about running high-performance Web servers, and who want pleased and delighted visitors, have a great tool in Apache 1.3's mod_gzip. mod_gzip compresses pages on the fly, reducing their size considerably. Depending on the types of files served, you'll see size reductions ranging from 20%- 80%, and a nice increase in server efficiency.

June 22, 2004
PHP Gotchas

Over the next few weeks (perhaps months) will be attempting to highlight PHP "gotchas"; things that lead to developer slow-down and *****ing, when working with PHP. In other words the types of problem which aren't obvious up front and only become clear once you've "been there". Some will be purely technical issues (PHP configuration, legacy headaches etc.) while others will be more theoretical (what "works" and what doesn't in terms of code design).

June 17, 2004
What does your firewall sound like?

I though it might be fun to get some audio feedback from my firewall - I wrote a small script that makes a sound when ever a packet gets denied. Here it is the script in its simplest version:

June 15, 2004
Writng plugable programs with perl.

I used perl's flexible object system in the past to create programs that support plug-ins. This can be a very powerful feature, depending on how your program is meant to be used.

Recently, this subject came to my mind again when I participated in the Movable Type plugin contest. So I thought, why not let everybody know what can be done with perl to write pluggable programs? I wrote this tutorial, which is meant for people with some understanding of perl and packages, and I'd like to know what you think before I suggest it to the gods.

CVS backs up, distributes, and simplifies your config files

The average developer spends more time navigating, learning, and debugging configuration files than you'd expect. But you can save that time -- and loads of energy and frustration -- with one of the tools you probably use every day: your CVS tree. Take these tips on backing up, distributing, and making portable your peskiest Linux™ (and UNIX®) config files.

June 11, 2004
Microsoft Should be Kicked Out of Schools

Teaching a specific program by explaining exactly how to do something is a losing battle anyway. Instead of training computer-literate users, you create users who are helpless when the interface of a program changes. We've all worked with such users before -- the people who become helpless every time there's an upgrade. People whose work habits are thrown into chaos just by upgrading from Word 97 to Word 2000 because one or two of the features they depend on have changed slightly.

No matter which program a student uses, odds are that the interface and functions of any program, such as Word or Excel, will change between the time the student learns them in school and the time he or she uses them at a job or in college. Students might as well use a program like OpenOffice, which has all the functionality they need to do work in school -- at a much lower price for school districts.

June 09, 2004
Using Jabber as a log monitor

Jabber, the streaming XML technology mainly used for instant messaging, is well-suited to its most common task. However, Jabber is a far more generic tool. It's not a chat server per se, but rather a complete XML routing framework. This has some pretty far-reaching implications.


Consider this simple fact: for a given Element file and any other file of the same length (call it fileA), it is possible to choose a Basis file that, when munged with the Element, will produce fileA as the resulting Mono file. Therefore, if a copyright holder claims that she owns the information in all Mono files that are munged from her work, she is also claiming copyright over all possible binary files that are the same length as her work. For example, suppose that fileA is an MP3 of a Beatles song, and the Element file is an MP3 of a Britney Spears song copyrighted by Jive Records. It is possible to find a Basis file that, when munged with the Spears song, will produce the Beatles song as the Mono file. Jive Records certainly cannot claim copyright over the Beatles song (which is copyrighted by Apple Records), nor can they claim copyright over any other Mono files munged from MP3s of their songs.

What does this mean? This means that Mono files can be freely distributed.

June 08, 2004
Take the Poll

What tricks will BushCo pull to attempt to win the election in November? Well, he'll probably try something around or before October. Welcome to October Surprise! Where we explore what will happen before the November. Participate in the poll - What will happen before the 2004 election?

The October Surprise

Robert Parry has written a number of stories pursuing the strong evidence that Reagan and Bush made an all-out effort to sabotage Jimmy Carter's efforts to win the release of the Iranian-held hostages before the November election, the episode known as the October Surprise.

Just to make sure people remember the REAL Ronald Regan.

June 03, 2004
Making An Operating System Faster

An operating system's architecture has a much greater longevity than that of common hardware. Operating system researchers do not come up with new, much faster algorithms as consistently or frequently as hardware updates happen. Nevertheless, those involved in "producing" operating systems -- researchers, designers, implementers, and even marketeers -- have the arduous task of ensuring that the associated performance curves keep going up. There are not many viable players in the OS market (some might argue, even if rhetorically, that essentially there's only one). Still, it is a very tough market, and OS vendors must "improve" their systems incessantly.