Best Lightweight Backpacking Gear

February 1st, 2015 No comments

There’s no reason to suffer under a 40 pound pack on your next  backpacking trip. I’ve included some of my favorite ideas below for reducing pack weight without compromising safety or comfort.


If you’re not careful with clothing choices you will easily add unnecessary pounds to your pack. Here are some basic tips for ultralight clothing: synthetics are lighter and dry faster, use layering to match conditions and choose clothing that can work in multiple situations. Down is still a favorite for it’s light weight and high loft (puffiness).

A typical cotton t-shirt can weigh 10oz (size large). Throw three of these into your pack and you’ve added about 1.9 pounds. Instead, pack one Mountain Hardwear t-shirt that weights 3.8oz and wash it on the trail.

There are high-end ultra lightweight down jackets that weight in the 5oz to 7oz range but these come at a steep price, as much as $300. Examples include the Mountain Hardwear Ghost Whisper and the MontBell Plasma 1000.  One budget friendly alternative is the Hawke & Co. down vest which can be purchased for under $30. In size medium, the Hawke & Co. vest weights 6.4oz. Despite it’s use of low-end down, it’s packable, warm and works well when temperatures are in the 35F to 60F  range. This vest layers well with a lightweight shell for added warmth.

There are some really good options for lightweight wind shells with many weighing less than 2oz. The Mountain Hardwear Ghost Whisperer 1/4 zip with no hood weights a mere 1.7oz (with tags removed).


Recently at a trailhead, I overheard a man say to his wife, “We’re good to go, I’ve got six liters of water in my pack”. That’s more than one and a half gallons of water for a 5 mile hike with eight stream crossings and one alpine lake. About half a mile into the hike I found this couple “broken down” on the side of trail, packs off and exhausted. Instead of carrying all the water you might need for the next 24 hours, use a lightweight water filter like the Sawyer which weights 2oz. Of course you can go even lighter if you can tolerate water treated with tablets. The foul chemical taste of these is not worth the weight savings for many backpackers. Another easy way to save around 5oz is to leave your wide mouth Nalgene bottle in your dorm room and instead take a free plastic bottle that weighs an an once, or less.

  • Best water filter: Sawyer mini water filter
  • Best water bottle: A free 500ml – 1000ml water bottle with a squirt nozzle.

Stoves and Cooking

For ultralight backpacking, carry no more than you need to boil water. A 600ml titanium cup is a good compromise between weight, size and utility. This is enough to boil two cups of water which is typically the most you’ll need to re-hydrate large meals. Two cups is also enough for a large cup of coffee or tea and oatmeal in the morning. A 600ml cup will hold your windscreen, ultralight stove (see below), lighter, backup matches and fuel.

I really enjoy using a homemade alcohol stove that weighs 0.025oz (about 8 grams). But this is not a good choice for everyone and I don’t recommend this type of stove for those who are especially clumsy. The alcohol typically used in these small stoves burns with a near-clear flame and in bright sunlight can be impossible to see. The fuel in these stoves can spill creating a very dangerous situation. If you think a homemade alcohol stove is for you, I recommend a simple side burner design which boot faster and waste less fuel compared to other designs.

The other popular lightweight stoves for boiling water are canister stoves and solid fuel stoves. Canister stoves are easy to use, have adjustable flames can can also be used for normal cooking. Solid fuel tablets are super simple, weight competitive with alcohol stoves but take longer to boil water and burn with a strong odor. If you enjoy tinkering with stoves and consider this to be an enjoyable part of your wilderness experience then alcohol and solid tablet stoves are a good choice. If on the other hand you want to boil water quickly with minimal fuss, go for a canister stove.

Trekking Poles

My lightweight suggestion on trekking poles is to take one and not two. You’ll get about 90% of the value from a single pole as you’ll get from two. I have switched to poles with cam locks and will never go back to twist locks. Cam locks are very easy to set and in my experience don’t slip like twist locks. I also use my trekking pole as the single tent pole for my tent thereby eliminating the need to carry a separate tent pole.

Tents and Shelters

The lightest 1 to 2 person tents weigh about one pound and are made from cuben fiber. These tents typically require a single pole and you can use your trekking pole for this. For comparison, a traditional ultra lightweight tent made from nylon, with sectioned tent poles and a rain fly will weigh around 2 to 3 pounds. It’s possible to reduce your shelter weight to around 8oz by using a bivy sack or a tarp.

ZPacks makes some of the best ultra lightweight backpacking gear and their tents and backpacks are popular with experienced backpackers. Occasionally ZPacks gear shows up on eBay (search for ZPacks gear) or on Craigslist but don’t expect to find a super bargain. This gear is highly valued and even when used can fetch a premium.

Categories: backpacking Tags:

Sending Email with PHP, PHPMailer and Amazon SES

January 21st, 2012 No comments

Sending email with Amazon’s SES is easy. To get started you’ll need an AWS account with SES sending enabled.

This example uses PHPMailer and builds on some PHPMailer examples.

    $to         = "";
    $from       = "";
    $subject    = "a test subject";
    $body       = "email body content goes here";

    $mail       = new PHPMailer();
    $mail->IsSMTP(true);            // use SMTP

    //$mail->SMTPDebug  = 2;        // enables SMTP debug information (for testing)
                                    // 1 = errors and messages
                                    // 2 = messages only
    $mail->SMTPAuth   = true;                  // enable SMTP authentication
    $mail->Host       = "tls://"; // Amazon SES server, note "tls://" protocol
    $mail->Port       = 465;                    // set the SMTP port
    $mail->Username   = "YourSESSMTPUserName";  // SES SMTP  username
    $mail->Password   = "YourSESSMTPPassword";  // SES SMTP password

    $mail->SetFrom($from, 'First Last');
    $mail->AddReplyTo($from,'First Last');
    $mail->Subject    = $subject;
    $address = $to;
    $mail->AddAddress($address, $to);

    if(!$mail->Send()) {
      echo "Mailer Error: " . $mail->ErrorInfo;
    } else {
      echo "Message sent!";

For an example of using SSL with SES and PHPMailer see

Categories: php Tags:

Set Custom Activity Result on Back Button Click

May 28th, 2011 No comments

The android Activity documentation for setResult() states: “to set the result that your activity will return to its caller.” So why does setResult(MyActivity.MY_RETURN_VALUE) not return your custom value to the calling activity’s onActivityResult() event? To return a value other than RESULT_CANCELED you need to Read more…

Categories: Android Coding Tags:

Installing Nginx with php-fpm on Ubuntu 10.04 and 11.10

January 9th, 2011 No comments

Nginx with php-fpm is a high performance alternative to the traditional apache PHP combination. In my experience, nginx with php-fpm uses significantly less memory, in some cases only a third of the memory required to run apache and PHP. For this example a fresh install of Ubuntu 10.04 desktop was used. Starting with a fresh install of 10.04, you should be able to follow these steps and finish with a working nginx with php-fpm box.

Update: These instructions were recently confirmed to work with ubuntu 11.10 (AWS ami-a562a9cc) and PHP 5.3.8.

Open a terminal and update your install.

sudo apt-get update
sudo apt-get upgrade

Read more…

Categories: linux, php, nginx Tags: , ,

Android Selected State ListView Example

December 5th, 2009 3 comments

Sometimes we need to maintain the selected position in a list. This example was taken from a real-world, off-road application where users interact with the application in a bumpy environment and need a fool proof way of changing the sort order of items in a list. When an item is clicked in the list and that row becomes the selected row as indicated by a different background color. The user can then change the position of the selected row using the Move Up and Move Down buttons on the screen.

Here’s a screen-shot of this example running in the emulator.

Android Selected State List Example

Android Selected State List Example

Read more…

Categories: Android Coding Tags: ,

Back Road Cycling Hardwick, Greensboro and Woodbury Vermont

December 5th, 2009 No comments

I spent three great days in August visiting family and cycling in the Hardwick, Vermont area. The weather was perfect, three consecutive days with no rain, maybe the longest dry streak of 2009 for the North East Kingdom. My brother Spencer let me borrow his hardtail mountain bike which I setup with Dura Ace SPD-SL pedals. Not exactly a common sight on mountain bikes but it worked out well for this trip. Also acquired a UVM Cycling jersey for the trip. I had no idea UVM Cycling was so successful for the 2008-2009 season, first and second at the Collegiate National Cycling Championships. Catamounts on bikes..makes sense to me.
Read more…

Categories: Food, cycling Tags: , ,

Upgrading from Android 1.1 SDK to 1.6 SDK

October 7th, 2009 No comments

I recently upgraded from Android 1.1 SDK to 1.6 SDK and encountered a few issues during the upgrade process.

The first mistake was not reading the upgrade instructions carefully. I misunderstood the statement: “If you currently have version 0.9 or 0.9.1, then you don’t need to uninstall…” to mean 0.9 SDK. The instructions are actually referring to Android Developer Tools (ADT) version 0.9 not the SDK version. After getting a half-baked 0.8 and 0.9 mix of ADT, I uninstalled all of the Android Developer Tools and started over with a fresh install of the 0.9x ADT. And just like months ago, the https URL did not work and I had to use to download the latest tools.
Read more…

Categories: Android Coding Tags: ,

Leadville 100 2009 Mountain Bike Race Videos

August 25th, 2009 No comments

Here’s a collection of Leadville 100 2009 videos in approximate chronological order. This race in Leadville, Colorado is 100 miles long, and all portions are above 9,000 feet. There’s also a 100 mile run for those seeking an something a little more challenging.

Much has been said about certain high profile participants and it reminds me of the you-can’t-surf-here-it’s-our-beach attitude. Thousands of riders participate and there are just as many different ways to experience the race. Some ride slow, some ride like possessed demons. It’s all great.
Read more…

Categories: cycling Tags:

Curtis’ BBQ Chester, Vermont

August 12th, 2009 No comments

Mid-Georgia style BBQ can be found in Chester, Vermont at Curtis’ BBQ restaurant.  Curtis Tuff moved from Georgia to Vermont in 1972 and has operated a BBQ joint in Putney, Vermont since the early 70’s. The location in Chester, VT is operated by Curtis’ daughter, an accomplished griller in her own right.

Yielding to our weakness for ribs we ordered a plate of ’em, glad we did. The ribs are looooonnnnnggggg! Not sure I’ve ever seen pork ribs this long before. These ribs are presented in their pure state, nothing added except smoke, no trace of rubs or even salt. The flavor was excellent and satisfied our craving for grilled meat.
Read more…

Categories: Uncategorized Tags: ,

Android ListActivity and Selected State

March 6th, 2009 No comments

Here’s a simple desktop dialog that allows the user to select an item from a list and then click an “Action” button to act on the selected item.

desktop list dialog

desktop list dialog

How it works – a user selects an item in the list, that row is highlighted, the user then clicks one of the buttons below the list, the application retrieves the selected index, acts on the selected item and the application continues. Simple right?
Read more…

Categories: Android Coding Tags: ,