Disable Firefox AutoFill / AutoComplete in the Address Bar

September 26th, 2012 No comments

Firefox's AutoFill feature, which appears in new versions of Firefox, makes it more difficult to type a URL such as 192.168.10.1, if 192.168.10.100 is in your history.

To disable this, enter about:config and set browser.urlbar.autoFill to False.

So I had this dream...

September 23rd, 2012 1 comment

So the other night I had this dream.

The company I worked for was doing well.  Really well.  So well, in fact, that we ended up leasing the old Ikea warehouse in Richmond.  THAT'S how much space we needed for our operations.  (On a recent visit back to British Columbia, I discovered the warehouse in question torn down.  My subconscious was, ostensibly, not aware of this fact.)

Read more...

Use POTS for all outbound calls on an OBi110

August 6th, 2012 1 comment

A user recently stated that they wanted all outbound calls to be passed directly to their POTS line, with no interaction from the OBi110.  Here is one way you can configure an OBi110 to present the user with a POTS dial tone:

Physical Interfaces >> PHONE Port:
DigitMap: (<:>)
OutboundCallRoute: {li}

DIY: OEM Cruise Control on a 2006-2010 Toyota Yaris for $40 shipped!

August 2nd, 2012 1 comment

We're not even kidding.

We wanted to have cruise control installed on a 2010 Toyota Yaris.  We were dismayed when a dealer quoted $500 for an aftermarket system, even more dismayed when we read bad reviews about Rostra products, and finally, even further dismayed when we discovered this Rostra recall.

Then we discovered cruise control functionality is already built into 2006 and later model Yaris that were sold in North America.  There's no need for an aftermarket kit.  All that's really necessary is simply ordering a few parts and plugging them in.  Here's a Yaris cruise control FAQ with detailed installations and photos.  To order the parts, contact CTScott.

There are a few things about the instructions we would like to elaborate on.  The stalk can be very easily scratched, so we recommend you leave the plastic coating on until the installation is complete.  If you do accidentally scratch it, a little PlastX will have the scratch buffed out in no time.  Also, when they say the Torx T30 screws are tight...they're not just joking.  Be sure to use a T30 driver that you can put a great deal of force on - a Multi Tool or an L Key won't work as you're sure to break either the tool or your skin.

Thanks to CTScott and everyone who made this excellent DIY possible!

OBi110: How to use POTS if VoIP or internet is down

July 24th, 2012 No comments

Many users of the OBi110 route local calls via POTS, and use VoIP for long distance.  But what if your internet service is not working, or your VoIP provider's equipment is down?  Fortunately, the OBi110's Trunk Groups feature will allow you to configure the OBi110 to try different routes in a priority fashion.  For this example, let's assume our VoIP provider is configured on sp1.  This technique may be used with any combination of service providers or the LINE Port.

Read more...

Using an OBi ATA as an FXO port or Google Voice trunk for Asterisk or your IP Phone

July 22nd, 2012 No comments

If you need an FXO card for your IP PBX, expect to pay hundreds of dollars for a good one.  But what if your PBX doesn't have expansion slots, or is in a different location from your POTS line, or your project is for home/small office use and you require a device that works just as well for a fraction of the price?  You're sure to be delighted with an OBi110.  If you wish to add Google Voice to your call routing, any OBi ATA will be more than up to the challenge.

Read more...

Blocking Telemarketers with an OBi ATA

July 22nd, 2012 3 comments

No one likes telemarketers, but if you have an OBi ATA, you can easily blacklist them based on their Caller ID.  For this we'll use the ATA's excellent User Defined Digit Maps feature.

Read more...

Fixing SpamAssassin Spam/Ham Reports on cPanel servers

July 5th, 2012 1 comment

A few months ago, cPanel released an "upgrape" that caused SpamAssassin Spam/Ham reports to include blank lines.  This is a problem because folding continuation lines cannot contain only white space, so the header is invalid.  The result is that the report or other headers may appear in the body of the email if you use an email client such as Outlook, or AVG's email scanner.  Also, the subject may not appear.

Since the two cPanel techs we dealt with, as well as a tech from our datacentre, did not know how to solve the problem, we post the workaround that we wrote here.

Read more...

Using VoIP for POTS Voicemail with an OBi110

June 24th, 2012 No comments

Those of you who mix VoIP and POTS may find it useful to use VoIP-based voicemail when you're unable to answer your POTS calls.  There are a few reasons you might want to do this.  VoIP voicemail is typically free, but POTS providers often charge for it.  VoIP voicemail often has more/better features, such as email or SMS notification, or even multiple voicemail boxes for different people.  Also, it might be convenient to have one single mailbox to check instead of having to check both a POTS mailbox and a VoIP mailbox.

Read more...

Run a script on every column of every table in your MySQL database

June 23rd, 2012 No comments

Have you ever needed to recursively run a script in a loop on every single column in your MySQL database?  This PHP code can help.
// Start by getting the list of tables.
$tables_result = mysql_query("SHOW TABLES FROM `$database`") or exit("Error " . mysql_errno() . ": " . mysql_error());
while ($tables_row = mysql_fetch_row($tables_result)) {
 // Loop through the tables.  Get the list of columns from each table.
 $table = $tables_row[0];
 $columns_result = mysql_query("SHOW COLUMNS FROM `$table`") or exit("Error " . mysql_errno() . ": " . mysql_error());
 while ($columns_row = mysql_fetch_row($columns_result)) {
  // Loop through the columns in the table.
  $column = $columns_row[0];
  /* --------- Anything you want happens between here... --------- */
  echo "$table $column\n"; 
 
 
  /* ---------------------- ...and, here =) ---------------------- */
  }
 }

Cloning a Windows 7 hard drive

June 23rd, 2012 No comments

Recently when cloning a hard drive with Windows 7 installed on it, we ran into some problems.

We first attempted to use Windows' backup tools; this was unsuccessful as Windows refused to restore the image to the new drive.

We then attempted to use Ghost 11.5 (we didn't have the latest version handy).  Though it appeared to be successful, the computer would not boot afterward and simply displayed a black screen after POST.

We attempted to use CloneZilla which was not successful because the destination drive was slightly smaller than the source drive.  When we attempted to shrink the partition, Windows informed us we could not do this because there were several unmoveable files near the end of the drive.

What finally worked was a clean install of Windows 7 on the destination hard drive, then Ghosting the data partition from the source drive to the destination drive.

Vegetarian Quiche

June 9th, 2012 No comments

Dice ½ red bell pepper and slice ½ a medium zucchini, or other in-season vegetables.  Steam until tender and brightly-coloured, but not wilted.  Lightly saute one diced onion in one tablespoon butter or olive oil.  Arrange the vegetables in a 9" pastry shell and sprinkle ½ cup freshly-grated Parmesan cheese on top.  Beat together 5 eggs, 1/2 cup milk, 1/4 teaspoon curry powder, 1 teaspoon salt, and fresh ground pepper to taste.  Pour over the vegetables.

Bake for 45 minutes at 350F.  Cool for at least 10 minutes before serving.

$90 for PCI Validation?  Get real.

May 3rd, 2012 1 comment

Our merchant services provider, Global Payments, sent us a letter stating that we must be PCI Compliant, or face consequences such as fines, termination of our merchant account, and general woe and spiders.  We already follow the prescribed standards.  So, no problem?  No, problem: they want us to pay $90 to fill in a self-assessment questionnaire.

HA!  HA HA HA!  HA HA HA HA HA HA HA!  HA HA HA HA HA!  HA HA!  HA!

Read more...

Canada withdraws the penny in 2012

March 29th, 2012 No comments

The federal government has announced that Canada will withdraw the penny from circulation in 2012.  This means if someone offers a penny for your thoughts, they will have to pay by cheque.

I think they have not fully considered the ramifications of their decision.  For example, anyone selling something that costs a pretty penny will now need to sell a five pack if anyone wants to pay by cash.

If someone usually has to think for a minute before the penny drops, they will be in trouble.

Finally, people who are used to putting their two cents in will need to have opinions that are 2.5 times better.

How to Save for your Child's Education with an RESP

March 26th, 2012 No comments

One can never start saving too early for their child's education.  An RESP can even be opened for a newborn, as long as he or she has a Social Insurance Number.  Once you've opened an RESP, you'll be eligible for many government grants, such as the Canada Education Savings Grant (20% of your contributions up to $500 per year and a lifetime maximum of $7200), the Canada Learning Bond ($500 first year plus $100 subsequent years, if you qualify for NCB supplement), and several provincial grants.

Read more...

Canadian No-Fee, No-Minimum Bank Account Comparison

March 10th, 2012 No comments

If you like to do most of your banking online, there's no reason to pay fees for everyday banking, maintain minimum balances, or be limited to a certain number of transactions per month.  Here's a comparison of three selected Canadian financial institutions offering bank accounts with no monthly fee and no fee for typical banking transactions, and requiring no minimum balance:

ING DirectBMO IGA/SobeysPC Financial
ChequesFirst book of 50 free, then $0.25 each.First book of 25 free, then $0.20 each.Free
Canadian ATMs>2300>2500>3400
Savings AccountYesNoNo
Chequing account pays interestYesNoYes
BranchesFive cafés across Canada, no teller-assisted transactions.Teller-assisted deposits at over 900 branches free; other transactions $1.00 each.>200 Pavilions across Canada, no teller-assisted transactions.
Free email money transferYesNoNo
Link your other bank accounts and transfer funds back and forthYesNoYes
OverdraftsFree, up to $250 for 30 days.$2.50 per month plus interest or minimum $5 per transaction for a transfer from another account.$4.97 per month in which it is used, plus interest.
J.D. Power ratingFive starsThree starsFour stars

Notes:

  • BMO IGA/Sobeys does offer a savings account.  However, a fee is charged for withdrawls and the minimum balance is $5000.  Since this is the No-Fee, No-Minimum Bank Account Comparison, it is not considered in the above table.
  • PC Financial offers a savings account; a minimum balance of $1000 is required to earn interest.
  • In the event of a discrepancy between this comparison and the official terms of service of the financial institution in question, the later shall prevail.  (Please notify us if this is the case!)

10 Things We Didn't Know About ING Direct

March 10th, 2012 No comments


Mango's ING Direct account is another one of these things that makes him go, "Shoot!  Why didn't I do this years ago?"


  • Through their association with THE EXCHANGE ATM Network, ING Direct effectively has well over 2000 Canadian ATMs.
  • Owe someone money?  Giving a gift?  You can transfer money to any Canadian bank account, as long as you or the recipient know the transit, institution, and account numbers.  It works in a similar way to Interac e-Transfer, but it's free.  (They also offer Interac e-Transfer; receiving is free, sending costs $1.00.)
  • There is no transaction fee on ING Direct's Investment Savings Account.  You'll earn a higher interest rate than the big banks, AND you can use your savings account for as many bill payments, pre-authorized debits, and direct payroll deposits as you like.  (Similarly, there is no fee and no minimum balance required for their chequing account.)

Read more...

Canadians: Get a Free Copy of your Credit Report

March 10th, 2012 No comments

We never knew until recently that a Canadian could request a copy of his or her credit report, for free, by mail.  This seems like it would be a good thing to do every year or so.

In order to do this, you should contact both of Canada's credit-reporting agencies.  You can contact them by phone, mail, or fax.

http://www.transunion.ca/ca/personal/creditreport/consumerdisclosure_en.page
http://www.consumer.equifax.ca/cs7/Satellite?pagename=EFX/Wrapper&simpleurl=credit-product-list-ca/contact_us&locale=en_ca

If you need access to your credit report right away, you can order it, along with your credit score, online for a small fee. You may also pay a monthly fee and be notified periodically of any changes.  Your credit score will not be disclosed to you, for free.  However, typical use of having this information is simply to verify that what is on your credit report should indeed be on your credit report.  For this use, the free report will be perfectly adequate.

The report we received in the mail had our information obfuscated.  Though it provided us with the information we needed, it provided little information that could have contributed to identity theft, should the mail have been misdelivered.

For more information, see this document about requesting your free credit report from the Financial Consumer Agency of Canada.

Payment Processing in Canada: Beanstream vs. Authorize.net

February 13th, 2012 2 comments

BeanstreamAuthorize.net
Beanstream is compatible with many Canadian merchant accounts or will provide you with a blended-rate merchant account with no contract and no minimums.Authorize.net works only with Global Payments in Canada (high but negotiable setup fees / 3 year contract / $500 early termination fee / difficult to reach your account manager) and cannot provide you with a Canadian merchant account.  (Edit: Now compatible with Global Payments, Chase Paymentech, Elavon, and First Data.)
Beanstream provides Pre-Authorized Debit and Direct Depost for Canadian and US bank accounts.Authorize.net's eCheck.net product supports debit from US bank accounts only.
Basic fraud detection tools are free.Basic tools free, Advanced Fraud Detection Suite available at a cost. (Edit: Now free.)
Phone and email support available.Phone, email, and live chat support available.
Cutoff time is midnight Eastern.Cutoff time is configurable.
Beanstream's user interface is extremely fast.The speed of Authorize.net's user interface is satisfactory.
API very clearly documented and easy to use.API complex, but functional.
First level sales rep didn't understand complicated questions, but escalated to someone who did.Sales rep underquoted our fees, then refused to provide us with the quoted rate.  Later discovered resellers that offered better rates.

Both Beanstream and Authorize.net support payment profiles (new to Beanstream), batch processing, recurring billing, and virtual terminal; they have good reporting, and a powerful API.  Their fees are similar.  Our Authorize.net sales rep underquoted our fees, in writing, by $20/month, but refused to actually provide us with the quoted fees after we'd signed a 3-year contract with Global Payments.  Near the end of our contract, we discovered we could have obtained better rates from an Authorize.net reseller than by dealing with Authorize.net directly.  Our experience caused us to investigate Beanstream as soon as they released their payment profiles feature.

Beanstream and Authorize.net both offer a product that will satisfy any eCommerce merchant's needs, but we prefer Beanstream for its better support of Canadian merchant accounts, its PAD/Direct Deposit product, its clear pricing, and its superior customer service.

Truck Rentals in Canada: Budget vs. U-Haul

February 11th, 2012 5 comments

Budget has a new fleet of trucks.U-Haul's trucks may be new or ancient.
For one-way rentals, only a 16-foot truck is available, in limited parts of Canada.Almost all types of trucks are available for one-way rentals anywhere in North America.
Depots are in major cities.Depots are just about anywhere.
Trucks have a low deck.Trucks have a very low deck; very easy to load; lower clearance required.
$944.23 tax included for a one-way rental from Vancouver to Red Deer$1059.52 for the same move with a truck 57 cubic feet smaller and same insurance
You rent an empty truck.A dolly and furniture pads takes up valuable space in the truck; you can't remove them unless you want to pay for them.
Our truck was provided to us with a full tank of diesel.Our truck was provided to us with less than a quarter tank of gas.
Cube truck"Mom's Attic" over the cab
Diesel or Gasoline fuelGasoline fuel

The verdict: If each end of your move is in or near a city with a Budget depot, and a 16-foot truck will suit your needs if you're doing a one-way rental, we recommend Budget for their newer trucks and competitive prices.

If you're picking up and dropping off your truck at the same location in a major city, you may also wish to investigate Penske and Ryder.  (Note that these two companies have different insurance terms than Budget and U-Haul.)

If your move isn't near a large city, you're doing a one-way move outside of Budget's area, or you're doing a one-way move and a 16-foot truck isn't appropriate, U-Haul will often be your only option.

Computer case fan testing

February 10th, 2012 No comments

Mango's case has terrible ventilation at the front and as you will see, an intake fan doesn't really do much.  We tried every configuration to find out what the best possible cooling would be under these circumstances.  Mango doesn't own a hard drive, so perhaps the temperatures are a little cooler than they otherwise would be.

These measurements were taken at stock speeds with stock CPU cooling.  The case fans are Zalman ZM-F1 Plus 80MM, which come with a noiseless adapter that lowers the speed of the fan by about 1000 RPM.  We eventually settled on a single rear fan with noiseless adapter.

Read more...

Password prompt for PHP CLI

January 28th, 2012 No comments

Do you use PHP from the command line and need a password prompt?  This is how you do.

Windows:
$scriptpw = new Com('ScriptPW.Password');
$password = $scriptpw->getPassword();
The Windows version requires the file scriptpw.dll.  This comes with some versions of Windows, such as XP, but not others, such as 2000, Vista, or 7.  If you don't have the file, simply copy scriptpw.dll from the system32 folder of another machine to the system32 folder of your machine.  Then, from a Command Prompt window (running as Administrator for Vista and 7) enter the command regsvr32 scriptpw.dll

Linux:
system('stty -echo');
$password = trim(fgets(STDIN));
system('stty echo');
echo "\n";

Video Editing Software for Windows: Sony vs. Adobe

January 14th, 2012 No comments

These opinions were formed based on recent use of Sony Vegas Pro 10 and Adobe Premiere Pro CS5 on a computer running Windows 7 with a quad core Intel Core i7-2600K CPU @ 3.4 Ghz and 8GB of RAM.

Spoiler alert: Sony Vegas Pro wins!

Read more...

Offset printing: Good, Fast, and Cheap.  Pick any 3.

December 9th, 2011 No comments

When something is this good, we feel it is our duty to let everyone know about it...and for us, "everyone" is the readers of this blog.

We're referring to Juke Box Print Shop, which in our opinion qualifies as the coveted trifecta in any industry: good, fast, AND cheap!  How they do this, we're not sure, but we like it.  Here's our Juke Box Print Shop Review:

The finished product looks amazing.  Seriously.  They output 420 line screen which is an amazing improvement over the ~200 line screen we're used to.  The end result looks so good, it's barely distinguishable from photographic printing.

Read more...

Dymo Label Printer on a Tomato Print Server

July 8th, 2011 1 comment

In case anyone's wondering, and since we couldn't find any references to this anywhere, a Dymo LabelWriter 400 will work perfectly well with a Tomato Print Server.  We used an ASUS WL-520gU router with the Teddy-Bear build of Tomato firmware.  Setting up the printer on the router was just a matter of plugging it in, and installing the printer within Windows simply required a TCP/IP printer port to be created, using the IP address of the router, and the settings for Generic Network Card.

We noticed stability issues when printing large volumes of labels (50+) via a router with a small amount of RAM.  But for small batches this technique should work perfectly well.