Posts on this site are never sponsored.

Free Canadian income tax software

Tired of paying for a program such as QuickTax / TurboTax or UFile to generate your personal income tax return every year? StudioTax is a free piece of software (donations are welcome, I’m sure) for Windows. StudioTax has apparently been around for four years. Every year so far, it has been CRA NETFILE approved.

According to the community (which you should check out, by the way), StudioTax should work great for most users. Try it out!

March 8, 2009 update: There are now free and student versions of TurboTax.

Peter’s Custom Anti-Spam for input forms Version 1.1

I decided to do a spin-off of my custom anti-spam image plugin for WordPress since people kept asking for it to be made available normal forms. Check out the eZ Publish version of this plugin if you are running eZ Publish 3.8+.

So, here it is… version 1.1 contains the features found in version 3.0.3 of the WordPress plugin (such as auto-generated audio for visually impaired users).

Download version 1.1 of Peter’s Custom Anti-Spam for input forms (April 16, 2008)

Previous releases:
February 24th, 2007: Version 1.0 (used by some savings institute)


  • PHP 4 or 5
  • MySQL 3+
  • GD Library and FreeType Library


Note: I am assuming that you have already set up your own input form and that you are using PHP for both the page that displays the input form and the script that processes the form. Here’s an example input form and an example form processor (both for PHP). These are definitely not the best examples, so I’d advise you to do a web search for other examples! In particular, make sure to always validate input values…

1) Extract all files to a folder on your server, most commonly the same folder that contains the input form and form processor.

2) Update your database connection information in cas_db.php, then run cas_install.php. You can remove cas_install.php once the database tables have been created.

3) Make sure that the temp_sounds folder is writeable.

4) Update settings and translation strings in cas_engine.php.

5) Enter this in your input form (see example_inputform.txt for a basic framework) where you want the anti-spam image to display:

include 'cas_engine.php';

6) Enter this in your form processor (see example_formprocessor.txt for a basic framework):

include 'cas_engine.php';

How to run a shell command without shell access: use a cron job!

Cron job icon in cPanel

There are times when installing a web application that you will need to run some shell commands. (OK, so there are many other times, but this is the most frequent scenario for me.) For example, you might have to set some permissions that are more complicated by the 755 and 400 stuff that can be done via FTP. You know, crazy code like this:

chmod a+rwx /home /home/mysite /home/mysite/tmp

(Stop snickering, you coding savvy ones!)

What to do if you haven’t been given shell access by your host?

Well, you could try to bug your host to give you shell access or send them whatever commands you need run. But a quicker solution might be to simply set up a cron job to run… right away. If you have cPanel, this is probably a built-in feature.

Cron jobs

If you have a command where it wouldn’t hurt if it was run several times, just set it to run every minute, then wait a few minutes before deleting the cron job.

Poof, shell command executed!

Wondering what in the world a cron job is? Is just a scheduled server task. Usually I use this it to execute a php script at a certain time or at certain time intervals. Read about cron jobs or maybe even read my post about how I discovered the wonders of cron jobs to run backups of small databases.

Find out who that phone number belongs to

Hounded by a 1-800 or other number who keeps calling? For some reason they won’t disclose who they are? Well, if they really have Caller ID blocked, you’re a bit out of luck. But if you know what the number is but it just so happened to be a private number, you can still do some investigating.

Check out this smart site. The premise is that we can all help each other out by entering whatever information we know about a particular number that called us. Each number gets its own information page. By sharing whatever information we have, we can uncover the identities of those people and companies who just won’t stop calling. Sometimes it’s a collection agency that has the wrong number. Sometimes it’s a phishing attempt…

Who called?

How to force a Mac OS X program to quit (the almost-equivalent to the Windows task manager?)

I’ve found that Mac OS X is certainly more stable than Windows, but once in a while, an application does freeze (argh NeoOffice!). When all hope is lost, you just want to close the program and cut your losses.

In Windows I love the Task Manager (either right-click on the taskbar and choose Task Manager or press ctrl-alt-delete) where I can force a program to quit. In Mac OS X, you can sometimes right-click (well, if you have a one-button mouse, ctrl-click) the program icon (in the taskbar-equivalent, whatever it’s called) and choose “Force quit”. If you can’t do that, try venturing into the Terminal program.

Edit: As you can tell, I am new to the Mac. As Chris has pointed out, you can just press Command-Option-Esc to access the Force Quit window…

Once in the Terminal, you can do the following:

1a) Type in “top” and press Enter. Find your program on the list and note the number on the left column.
1b) Type in “ps -ax|grep yourapp” and press Enter, if you know the system name for your program. For example, NeoOffice is “soffice.bin” so I used “soffice” in place of “yourapp”. Again, note the number on the left column.
2) Type “kill -9 thenumberyounoted” and press Enter. You need the “-9″ in addition to the number you noted.

Hopefully your program has been forcibly closed. Worked for me…