Posts from 2007

Questions or comments? Email me.

Tue 18 September 2007

Easy blogging with Pivot

This Entry is Archived!

This article was originally published on September 18, 2007 (9:00:00 AM) over at A still-breathing version of the article can be found at

The GPL-licensed Pivot blogging software stands out among blogging applications because it requires no database, no extra libraries, and minimal installation effort. While it's still in an early stage of development, its flexibilty and the ease with which it can be set up make it ideal for those new to maintaining their own blogging Web sites.

To use Pivot, you need a server that's running PHP 4.1.0 or higher. Unlike WordPress or Movable Type, Pivot requires no MySQL database; it stores most of its data within XML files. Pivot also strives to use no extra libraries so as to be available and usable by as many people as possible.

The simplest way to install Pivot is by using Pivot Setup. Download the setup zip file, unzip it, and open the resulting pivot-setup.php script in a text editor. Set your password and save the file -- nothing else is needed. Upload the script to your blog directory, which must have permission (chmod) settings of 777. Open the direct link to the script in a browser. If your server is ill-equipped, or needs something changed, Pivot should alert you first thing, as it checks before anything in the script is run. If you're good to go, just follow the instructions for an easy and successful installation. Pivot should automatically pull the files it needs from and set itself up for you.

If for some reason you can't get the aforementioned method to work, you can set up Pivot manually by downloading the entire package (1.40.3 Dreadwind is the latest version as of this article), uploading it to a Web server, and configuring it to your needs. The project provides a pretty well-written guide to the manual installation process.

Pivot has many of the features you'll find in other blog systems. Users can register and log in to an account, reply to a blog post, or reply to another commenter through use of a threaded comment system. Pinging and trackback capabilities are included, as well as a simple search that indexes all blog posts. Since it's still young, Pivot lacks the number of free templates that WordPress and Movable Type have, but there is a growing archive at PivotStyles.

Pivot supplies RSS feeds without any extra work, though you can only get a feed for all posts, not just, say, one category. RSS feeds can be made available in either RSS or Atom format.

You can find a few plugins and extensions for Pivot, but as with some of the documentation, they can be hard to locate. A good list of the basic ones can be found in the Pivot Documentation.


Pivot is, of course, still young and in development, and with that there are bound to be a few drawbacks. There's currently no support for any form of a static page, which restricts users to just writing the blog -- any other pages must be created by hand. Some users within the community, however, seem to have found ways around the issue. Getting technical support can be difficult at times, as there's really no designated support portion of the project. There is an active community, as well as a recently started Pivot Documentation Project that helps to alleviate some of the problems.

Another issue is that recently Pivot's servers seem to have gone through long bouts of downtime, which makes getting any support virtually impossible.

If you're looking for a lightweight blog application, Pivot may just fit your bill. It has by far the easiest installation I have encountered for a piece of blogging software, and it offers much of the functionality and usability that most other blogging applications have. If you're running a high-traffic site, you probably want to look instead at a more traditional blog that uses a database back end, as using XML files to store data in that situation may put too much of a load on your server. For a smaller site, though, Pivot's definitely worth a look at.

Tue 31 July 2007

Keep users informed with PHPList

This Entry is Archived!

This article was originally published on July 31, 2007 (9:00:00 AM) over at A still-breathing version of the article can be found at

If you've ever considered throwing together a mailing list to keep the members of your group, project, or organization informed, you'd be hard-pressed to find a better application for that purpose than PHPList, a free and open source newsletter manager.

PHPList is a Web-based application written in PHP, and relies on MySQL databases for storing information. If you're leery of setting up PHP, MySQL, and a Web server, you can opt to pay for a hosting package with a service that offers PHPList preinstalled and configured, such as Host Color or SiteGround.

However, setting up PHPList isn't that difficult. You can download the software as either a ZIP or a tarball, depending on your needs, and basic documentation is included within the downloadable PHPList package. If that doesn't cover your needs, there are other places to turn, such as the more extensive online documentation or the PHPList forums. Make sure you have a Web server and PHP installed, and a MySQL database to throw all your data in. Depending on how your site is hosted, you may have a basic database already set up -- check with your provider to make sure.

Once the prerequisites are in place, simply download and unpackage the contents of the archive. Edit the PHPList config.php file and make sure all the variables --username, password, database ID, and default language -- are set. The configuration file is pretty well documented with comments concerning what each option is. Save the file, then open the PHPList installation page ( in a browser. The installation procedure asks for some general configuration settings, such as whether to offer RSS feeds with your lists.

Once the software is installed, you can tailor your signup page to your needs. PHPList offers many different options for obtaining information from users at signup, which can then be used in the mailing process. For instance, you can ask for users' country of origin, and then down the road, if you'd like to send a newsletter to all users from a particular country, it's a snap -- that data is already stored.

Integrating PHPList signup and address management pages into a Web site's existing design is simple, since PHPList templates are fully customizable. You can even apply different templates to different messages and signup pages.

Using the Free PDF Library, PHPList can automatically create and attach messages as PDF files to ensure that formatting and graphics are kept intact.

PHPList lets you track the messages you send, so you can tell how many of your users actually opened a message. You can also specify a certain time or date for a newsletter to be sent, and PHPList will wait until that moment to send it.

The software includes some email bouncing tools that try to prune unused and nonexistent email addresses. In my time using the program, it managed to kick out 95% of the fake addresses I tossed in there. There are options for some advanced bounce handling tools, which help distinguish between situations such as "this email address has never existed" and "this email address may be experiencing some slight downtime."

Users too can control PHPList's behavior. For example, at any time a user can choose to opt out of receiving a newsletter. Users choose to receive messages in full HTML or text-only mode. They can also change almost all of their information on record -- name, location, interests, even their email addresses.

I've found very few disadvantages with PHPList. Some could make the argument that users should be able to reply to any of the newsletters, but then you're getting more into the territory of Mailman, which is an actual email discussion application, somewhat different from PHPList. I found the bounce handling a bit confusing at first, but looking at the different documentation resources proved to be a help. There's a slew of FAQs and documentation, as well as an entire community of people to ask for support. After exhausting those resources, you can resort to the paid support from tincan, the product's sponsor.

All in all, PHPList is a versatile and easy-to-use application for managing newsletters and mailing lists.

Tue 05 June 2007

Simple polling with LimeSurvey

This Entry is Archived!

This article was originally published on June 05, 2007 (8:00:00 AM) over at A still-breathing version of the article can be found at

Setting up a survey on your Web site can be a simple task with LimeSurvey, a flexible and easy to set up tool for conducting a survey.

The LimeSurvey project began in 2003 as PHPSurveyor. Last month the project was renamed LimeSurvey in order to make licensing easier by not including PHP in the title.

You can try a demo of LimeSurvey or download the full application.

A typical LimeSurvey installation requires a server with PHP installed, as well as a MySQL database to store the data in. If you're wary of going setting it up yourself on a server, many hosting companies offer LimeSurvey installations, such as Hummingbird Hosting or UCHosting. Both of these hosting services allow users to set up a survey script with minimal work.

To manually set up LimeSurvey, you must have a server that has PHP 4.2 or later installed, along with the mbstring (Multibyte String Functions) library, and a MySQL (4.1 or later) database for LimeSurvey to store data in. To take advantage of LimeSurvey's token system, you need to have the LDAP Library installed in PHP. The script itself takes up about 10MB of disk space.

Installing LimeSurvey just requires uploading the survey software to a directory of your choice, editing the project's config.php file and making sure all the necessary fields -- such as database name, location, and email settings -- are filled in. Once they're set, run a simple installation script by navigating to it with your Web browser.

If you're familiar with HTML, you can easily create custom templates to give your surveys a similar look and feel to the rest of your site. If you're not, there is a template editor function built in to LimeSurvey that allows you to create a custom template for your surveys.

LimeSurvey's flexibility is its main driving point. The software is offered in a total of 19 different languages. With LimeSurvey, you can have out an unlimited number of surveys at any time. You can set different surveys to be public or private, and allow users to take a survey multiple times or only once via a "post once" token. LimeSurvey supports many different question types, ranging from the simple Yes or No variety to choices such as 10-point scales, open-ended answers, or dropdown choices.

With most of the question selections, you can opt to include a field for users to describe why they chose the answer they did. You can branch a survey out by setting certain choices and questions to appear in response to earlier decisions. There is no limit to the number of questions you can include in a survey, and the program also offers ways to automatically email, notify, or invite users to a survey, or to remind them to take it if they've not already done so.

You can view your data and results from within LimeSurvey, or you can back up the data by exporting it to simple text, CSV, or Excel files. Exporting to an XML format is not yet available, though it is listed on the road map for LimeSurvey version 2.

Users can choose to stop the survey and continue at a later time, keeping their data intact and ready upon their return.

My testing didn't uncover any large faults in the software, but if you need it, you can get support in a number of ways. The project provides an online documentation wiki. You can visit the project's online forum to ask a question, where most likely a developer or knowledgeable user can help you out. You can also visit IRC channel #limesurvey on, which many users frequent, and many are willing to help out. If your need for support is more pressing, you can email a member of the project, but if you do this they ask that you donate a small sum to the project.

If you're in the market for a survey tool, LimeSurvey is one of the best choices around. It has excellent usability and support, and when you take into consideration that some hosting companies offer packages with it pre-installed, as well as it's large list of features, it becomes apparent that LimeSurvey is quite possibly the most flexible, easy to use choice to make.

Wed 02 May 2007

Review: Moneydance 2007

This Entry is Archived!

This article was originally published on May 02, 2007 (8:00:00 AM) over at A still-breathing version of the article can be found at

Linux users have a multitude of choices for personal finance applications, including GnuCash, KMyMoney, Kapital, and others, not to mention being able to run Quicken under WINE. One good alternative that runs on multiple operating systems and manages finances with ease is Moneydance.

Moneydance isn't free, but it does run on Windows, Mac OS X, Linux, Unix, and Solaris, due to it being coded in Java. It offers all the basic features most users need, such as checkbook balancing, basic exchange rates, and easy importing from Quicken, while also offering some more interesting and useful tools to judge the state of your finances, such as graphs that can indicate your net worth over a period of time, and easy reminder setups to make sure you're almost always in control.

You can download a free trial version of the software that's limited to 100 transactions, with some of the features disabled. The Linux downloads come in two versions: with or without Java prepackaged. If you want to unlock the software's full potential, you'll need to purchase it for $30.

To install Moneydance in Linux, open a terminal window, navigate to the directory where you downloaded Moneydance, and run ./ if you already have Java installed, and ./ if you downloaded the version bundled with Java. The Java-less installation checks to make sure you have Java installed before going through with the installation, and if not will automatically download Java for you.

The first time you run the program, you're presented with three options: you can create a new file to record all your transactions in, open an existing file, or import a file in QIF, OFX, or OFC format. When you create a new file, Moneydance uses its own format, with the extension of .md. If you import a QIF file from Quicken and save your data, it takes the Moneydance format. Upon my first attempt at importing a QIF file, I found that Moneydance duplicated some of my prior transactions from Quicken. A quick visit to their forum explained an easy workaround. I had to set up each of my accounts, checking and credit card, manually, and then import the information from the QIF. This wasn't too big of an issue, and the problem seems to stem from how much data is actually available from the imported files. In short, filetypes won't always play nice with each other, but it can be made to work.

After you create a file, you choose what your primary currency is. Moneydance offers 44 different choices. Next, choose whether you want to run in a standard or minimal account set. A standard account set includes checking accounts, loan accounts, liability accounts, as well as general income and expense accounts. Minimal account sets include just checking and savings, and leave you to import your data from other financial management programs.

Setting up accounts is pretty simple. You need to enter standard bank account information, such as the account and routing numbers, for Moneydance's check printing and online banking functions. If you're setting up a credit card account, you can enter a card's annual percentage rate, while liability accounts ask for your initial liability.

Once your data is set up, you can begin entering transactions. If you're security-conscious, you can encrypt your data with a choice of either 56-bit DES or the somewhat slower Triple DES. If you ever need to get your information out of Moneydance, you can export it to .QIF or Moneydance XML files.

If you have finances in multiple currencies, you can view the current exchange rates in other countries. This is updated via a list from Moneydance, as long as you have a current Internet connection. If you have multiple accounts set up, Moneydance will also automatically calculate your net worth. If you own stocks, you can grab an extension that will automatically synchronize with the latest Yahoo! stock lists. You can set reminders that will automatically alert you of an upcoming transaction or bill. The interface to the program is intuitive -- in just minutes I had all of my information entered.

Moneydance supports online banking, but in order to get it set up you have to do some legwork. First and foremost, you need to make sure that your bank supports direct OFX connections. Setting up an online banking account or bill payment is easy -- for either, go into the transaction register of your account, and in the top left you should see a tab for online transactions. Drop the tab down and click on either "Set up online bill payment" or "set up online banking," depending on your needs. Moneydance works with a large list of banks; if yours isn't on the list, you can manually set up an account after you get your bank's OFX ID and URL. After you've configured your bank, you need to input your user ID and PIN that your bank gives you.

If you have some form of Web-based banking with your bank, Moneydance can import your settings and transactions from there, provided the bank supports OFX. I was not able to import the settings from the Web site successfully, but I was able to obtain a downloadable file (.OFX) from my bank, which Moneydance accepted with ease.

Moneydance also offers advanced budgeting and monitoring tools for your finances. You can have up to 10 budgets going simultaneously, and Moneydance can even calculate an initial budget based on your previous transactions. To create a new budget, open the Budget manager from the dropdown menu located at the top of the program. If you'd like to review your budget, select View -> Show Budget Status in the top menu, and you'll be presented with a graph in the top of the main toolbar. You can also create a budget report for a specific time period, and Moneydance will show you how over or under budget you were.

Moneydance can manage loans easily. You can set up a wide variety of loan options, varying the APR, the amount of payments per year, and the total amount of payments you'll be making. The software automatically calculates your monthly payment, but you can set a specific payment as well.

Moneydance will print on pre-printed checks, but will only print the date, amount, and the payee. It can't print your routing and account numbers, but you can opt to print your address. Printing checks itself is simple -- you go through the register and mark whatever transactions you intend to be checks as "to be printed," then select the Actions dropdown in your transaction window, and set it to print your checks. Here Moneydance worked out well for me -- I don't write checks a lot, but for setting up mass bill payments it was easier to use the software than to write each individual check out.

Moneydance also offers its core API so that users can develop their own extensions through Python and Jython. It includes sample code, necessary libraries, and an ANT build file to allow compiling and signing of extensions. The project's developer page also includes sample extensions, as well as links to a mailing list for Moneydance development and common issue resolving. When in Moneydance itself, you can obtain a list of available extensions via an Internet connection from the Extensions menu in the top bar, or by clicking the "Check for new updates/extensions" link below all your account information. An extension that I found particularly useful was one that imports Yahoo! stock quotes.

If you need support for anything Moneydance-related, you have a couple of options. Read the User Guide first, as many times it can answer your question right off the bat. You can also try the online support forum, with topics ranging from installation and configuration to Moneydance development, and even general finance talk. There is also a mailing list, as well as a Yahoo! discussion group. For matters of a more private nature, the company offers email support.

Of course, when you first find that you need help, you can always turn to the Help section of Moneydance itself -- 16 chapters of tips, tricks, and tutorials ranging from simple transaction input to a full-on guide to configuring your online banking experience.

Moneydance isn't without its drawbacks, one chiefly being that it's not free software. As a personal finance application, though, Moneydance is worth checking out. Its intuitive interface and easy setup should be a welcome choice for any new Linux users looking for personal finance software, and the ability to develop extensions may attract seasoned users looking to get the most out of their experience.

Tue 27 March 2007

Review: Dreamlinux 2.2

This Entry is Archived!

This article was originally published on March 27, 2007 (8:00:00 AM) over at A still-breathing version of the article can be found at

When it comes to choosing a Linux distribution, people tend to stick with the major players, such as Ubuntu, SUSE, or Fedora. However, every once in a while a distro comes along that offers a look at Linux in a new and fun way. One such distribution is Dreamlinux, a Morphix-based implementation of Linux that can be run from a single CD or installed on a hard drive. Dreamlinux 2.2 aims to offer a full range of desktop applications while providing a wealth of multimedia tools for easy production of professional-grade media.

Dreamlinux installs easily. For a basic Dreamlinux installation, you'll want to have at least 128MB of RAM, 3GB of free space, and a processor that runs at at least 500MHz. Depending on your hardware, you may have to edit your BIOS settings to force a boot from CD. Dreamlinux should automatically detect all the hardware, but if for some reason it cannot, it will present a list of more basic options to get started, and you can tune and set up the rest upon installation. During the installation, Dreamlinux prompts you to select English or Portuguese as your language of choice, but you can configure it to install with a different language.

Once the system is up and running, you have two options: you can continue running with a live CD, or you can do a full installation. If you plan to just try out Dreamlinux, the live CD offers an excellent look at the system and can guide you through much of how it works, and lets you store data on a USB storage device.

If you want the entire experience, a full installation is recommended, especially if you intend to work with the XGL 3-D interface, which takes advantage of newer graphics cards to produce some great graphical features for the X Window System. XGL works only when the distribution is installed on the hard drive. A function within the Control Panel, aptly titled HD Install, handles the hard drive installation.

Dreamlinux runs with Xfce as the default window manager, and it is full of style cues from the Mac OS X environment, the most notable nod being the Application Panel, which is handled by an independent version of Enlightenment's Engage. The distro comes with a simple set of applications suited for the average user, including 2.0.4, Firefox 1.5, Icedove (unbranded Thunderbird) as an email client, and aMSN 0.97 for instant messaging.

Dreamlinux has excellent support for multimedia, in terms of both creating and viewing. It comes pre-installed with XMMS for playing music, Grip for playing and reading CDs, Audacity for recording, Kino for editing video, Blender for modeling, and GimpShop for basic graphical work. In terms of multimedia support, it comes ready and set up with all the necessary codecs to play MP3s and DVDs. All of these applications make Dreamlinux a good choice for a multimedia system.

While Dreamlinux shares many likenesses with other modern Linux distributions, it has a few tools of its own that stand out -- most notably Mkdistro, a collection of four shell scripts for building and remastering distribution ISOs. MKdistro was developed by Nelson Gomes da Silveira, one of the cofounders of the Dreamlinux project, with the intent of letting users with any level of technical knowledge edit, design, and create a Linux distro suited specifically for themselves. This is likely the reason why the developers chose to adopt a Morphix-like philosophy -- that is, aiming to make the system as modular and changeable for the end user as possible.

Some restlessness

While much of the software works like a dream, not all is perfect. Dreamlinux is still relatively new, and as a result its community is still in its own developing stage. The distribution's developers are Brazilian, and the community seems a bit divided due to a language barrier.

In using the software, I ran into some small hindrances. Upon first running the system, Internet connections are not automatically configured, which can throw some new users off. A graphical interface guides you through the connection process, but it would be more efficient to have Internet connectivity automatically configured, and keep the GUI around just to allow users to make modifications as necessary. aMSN also had difficulty starting up correctly at points, and one time refused to even start at all. I downloaded Gaim and used it as my instant messaging client instead with no problems.

Nevertheless, the distribution itself looks good and functions well. The Mkdistro tool will be useful for users who want complete control of their systems, and the overall ease of installation and use Dreamlinux offers is good enough that the average user can download and install the distribution and jump right in.

Wed 17 January 2007

Easy discussions with Simple Machines Forums

This Entry is Archived!

This article was originally published on January 17, 2007 (8:00:00 AM) over at A still-breathing version of the article can be found at

Many Web sites host discussion boards to bring together people with common interests, to help diagnose problems, or to gain a following for a project. Popular discussion board software includes phpBB, Invision Power Board, and, on the low end, PunBB. One system that is growing in popularity is Simple Machines Forum (SMF), which offers extended features while keeping to a minimalistic approach.

SMF forked from a project called YaBB SE to add advanced templating to the original software. It is free (as in beer) and distributed under its own license. It claims to have minimal server impact while providing the features and abilities that larger forum systems carry around. The software itself is written in PHP, and uses MySQL databases to store user profiles, post counts, and so on. Its use of server-side includes also allows the forum system to be easily integrated into Web sites.

SMF is lightweight, easy to use, but still full of features. Besides basic community features, such as private messaging, user icons, and individual profiles, SMF has a unique package management system that allows board administrators to update or install modifications with a few clicks. With many other forum systems, the process involves manually editing key files and reuploading. Security issues are not prevalent, but when they pop up, the developers are quick to nip the issues in the bud.

The software logs most major functions, such as an administrator changing a template piece or reordering a page, with the time and the IP address under which they were done. Administration may be "time locked," wherein the action is restricted to only so many tries within a certain time period. Login attempts to regular user accounts from any one IP address can be time locked and limited too.

Simple Machines offers administrators several different courses of action for dealing with troublesome users. The system allows for three different types of bans: a full ban, in which the user is kicked off the board; a "no-post ban," which allows the user to view the board and read topics, but not to post replies; or a timed ban, where a user can be banned for anywhere from an hour to days, or longer.

Simple Machines boards support Wireless Application Protocol (WAP) as well. When someone accesses a page using a WAP, WAP2, or I-mode protocol, the software detects that and displays a page that's reduced in size, without unnecessary elements such as borders, larger graphics, or other media. You can view replies, make replies, and browse; however, in my experience, posting new messages and the log in/out functions don't always function properly in a WAP setting. They work fine in WAP2/I-mode, though, which are both essentially equivalent to the WAP environment.

All in all, Simple Machines Forums works well. The system can cater to a large or small community. It's versatile, secure, and easy to set up. If you need help, you can read a list of Frequently Asked Questions at the software's Web site, and communicate with an entire community of other Simple Machines users that can help and answer questions. An online manual gives an overview of almost every function you could need. With helpful developers, a secure system, and tons of possibilities, Simple Machines Forums is a good choice for a community setup.

Ryan around the Web