Tuesday, February 20, 2018

Loudly Organized | A DIY Tool Roll

There's just something professional about busting out a tool roll. I mean, show up with your surgical instruments haphazardly thrown into a bag, and there's little chance you'll inspire confidence. But unroll a neatly organized set of instruments, and the soldiers will practically line up for your to perform surgery on them. So yeah, I've always had a healthy appreciation for tool rolls and the like (and yes, bonus points if the kit fits in your pocket).

I don't technically need a tool roll for my job; not because I don't need tools, but because I've already got them nicely organized. However, I was looking for another easy, yet practical sewing project to cut my teeth on and making a tool roll was a natural choice.

I worked out my creation as I went: measuring, pinning, fitting the items in place and then repeating this process a couple more times.

The finished product came out surprisingly clean looking:

I punted on any sort of closure mechanism, opting for a rubber band. Though I may come back to this and see what I can come up with.

Next time I meet a client to talk about their idea, boy are they going to be surprised when I bust this bad boy out. Just like that Civil War surgeon, I shall inspire confidence through my meticulous set of instruments ready to tackle whatever gruesome task I throw at them.

Thursday, February 15, 2018

A Kosher Conundrum

If you keep Kosher, these three pictures are remarkably confusing:

For those not in the know, the outer box shows that the cookies are OU Parve. That is, the cookies contain no dairy products. The outer box also shows that the packets will have OU Parve printed on them. But the inner packets themselves, which have no ingredients on them, are marked as OU D. Where the D stands for dairy.

So which is? Are the cookies parve or dairy? Can I eat them after a burger or not?

Luckily, the good people at the OU Kosher Hotline were there to help:

Subject: Re: Giant Cookies Mystery

They are currently parave but company is transitioning to dairy

So there you have it, despite the fact that the packets are labeled dairy, the cookies are actually parve.

Oy, it pains me to think that these cookies are going to be transitioning to diary status. No word yet from the OU as to whether they are going diary because of a recipe change, or for other reasons.

Wednesday, February 14, 2018

Pick Me! Adventures in improvised lock picking.

Every so often I pick up my copy of How To Open Locks With Improvised Tools: Practical, Non-Destructive Ways Of Getting Back Into Just About Everything When You Lose Your Keys and get re-inspired to master experiment with lock picking. If you've never considered lock picking, it probably sounds quite devious, though it need not be.

With that said, the Commonwealth of Virginia doesn't take kindly to this hobby and considers just owning a set of lock picks as intent to break the law. All isn't lost though, as the point of the book is to use improvised tools.

So today I grabbed an old padlock and a bunch of possible materials to turn into lock picking tools and went to work.

15 minutes of crafting and fiddling later (which felt like an eternity!) I shocked myself by opening the lock:

This act falls squarely in the beginner's luck category. Though, when it comes to defeating locks, I'll take any success I can get.

As you can imagine, there are lots of resources on the web to help you learn this skill. And of course, YouTube is your friend. Happy picking!

Tuesday, February 13, 2018

A Desktop in the Cloud - Experimenting with Amazon WorkSpaces

Check out these pictures of two different computers in my house:

Ignoring the clutter, what you're looking at is two different snapshots of the same Windows 10 Desktop. What's remarkable about this is where the desktop is actually running: why in the cloud, of course.

Virtual servers completely changed the software development and small business game. Gone are the days of buying, configuring and maintaining physical servers. Instead, you can virtual turn them on and off at will. Curious if having twice the RAM will make your server run 10 times faster? Kick off, and ultimately throw away, a virtual server to give it a try. Need to launch multiple instances of a server? Don't bother hand configuring them, just create an image and launch as many instances as you want.

It's time for me to phase out one of my regularly used computers, and pick up a new one. And while shopping around it occurred to me that surely there must be a virtual desktop solutions like there are for servers. And of course there is, and of course Amazon AWS offers this service and of course there's a free tier to try it out. So that's what I did.

Launching a server is trivial, and so is getting access to it. I had no problem installing Cygwin and the Gimp on it.

The pics above show me running my virtual desktop instance on both my standard Windows, dual monitor environment, as well as a Chromebit Chrome OS stick. For the quick tests I ran, both performed well. As you can tell, the virtual desktop supports dual monitors, which is key. It also seamlessly handled audio in a YouTube clip.

I see that Amazon Workspaces supports taking image snapshots. With a bit of scripting, I'm confident I could trivially setup a weekly backup procedure that insured I always had access to working desktop instance.

The big question, of course, is lag. I'm writing this post on the virtual desktop and I'm not noticing any annoying lag. Though writing a blog post is hardly a way to push a computer. It's also not fair, because if I did go with a virtual desktop I wouldn't use their free 4 Gig tier, but would opt for something far more powerful. I'm fortunate to have a direct Ethernet connection to my FIOS router, which gives me solid network speeds. I'm sure this is helping in the lag department.

And speaking of network speeds, the virtual desktop has almost comically fast web access:

Even if the lag doesn't kill me, I'm sure there will be other limitations that will keep me from being able to use a virtual desktop exclusively. For example, will an AWS WorkSpaces instance grant me USB debug access to an Android device? That's probably a bridge too far. Still, a virtual desktop could be a hugely powerful tool. Especially in an environment where I don't have an IT department I can turn to, to fix whatever random issue is happening on my computer that day. AWS let me tame my server environment, man it would be great if I could do the same with the desktop experience.

Monday, February 12, 2018

A Cloud Settles over DC and a Mysterious Orange Goo

That's not a metaphor for the current administration. That's just a fact. Yesterday it got up to nearly 70°F and we had a morning full of rain. This all made for a surreal run through DC and the chance to grab some unique pics of the area.

You would think the orange gelatinous goo growing on the side of one of the trees near the Tidal Basin would be easy to identify. But alas, all my attempts to get Google to cough up an identity have failed. Any ideas what it is?

Friday, February 09, 2018

Needs More Grommets | Adventures in sewing a prototype

After I finished sewing my first solo creation, I was left with a question: how do a I add a shoulder strap to the (very simple) haversack I just made? I ended up adding grommets to the corners and using cheap carabiners to attach the strap to these endpoints. While the bag was comically funny looking, it was functional.

This got me wondering: what if I created a larger bag and sprinkled grommets at the corners liberally? I'd then be able to re-rig the bag to carry it vertically, horizontally, or dispense with the strap altogether and just attach the bag to a bike rack or other carrier. In my mind's eye this seemed like the ultimate in flexibility.

But I need not settle for imaging this. I had plenty of von Trapp fabric left, as well as a package of grommets. Why not create a prototype of what I had in mind and evaluate the idea in a more concrete way?

I essentially followed the same pattern described in the Ripstop by the Roll's belt bag tutorial, except I opted to make the bag much larger. Because this was a prototype, I skipped installing a zipper altogether. For dimensions, I went with a 7" wide, 5" deep and 10" tall bag.

You can see in the pics below how I went about constructing the bag. First, I figured out all the calculations on a sheet of graph paper (so not to scale!). Then I carefully cut and marked the fabric. Finally, I sewed the 8 seams to make the fabric into a bag:

And here's what the finished product looks like. You can see me demonstrating a few different attachment points:

So many lessons learned! Among others:

  1. I carefully cut the fabric to 30" and moments later realized I was supposed to cut it to 30½" to provide a seam allowance. D'oh! What's that saying about how often to measure, and how often to cut?
  2. The bag came out larger than needed. Having a prototype really makes that obvious.
  3. Even though the bag is 5" wide, it's crammed to access. I believe the fix for this would be to put the zipper on the long side of the bag. In a traditional bag, this changing from a top to side access zipper. But the whole point of this bag is that it can be carried either horizontally or vertically, so this doesn't really matter.
  4. I carefully placed and installed the grommets. And then most of them fell out while fiddling with the finished product. I'm not sure if it's my installation skills, the wrong choice of fabric or the wrong type of grommet for the task. But I know that before I try again, I'll be picking up a variety of grommets and doing test installations on different fabrics.

Even with all these lessons learned, the project was still a success. I had a chance to work on the fundamentals of measuring and using the sewing machine, and managed to make a creation in my head come to life. As for the grommet based attachment approach, the jury is still out on that. I'll have more hope for this design once I show that the grommets can be truly durable.

For now, REI need not worry that I'm going to put them out of business. But man, this sure is empowering and fun!

Thursday, February 08, 2018

Changing the World, One Minecraft Server at a time

I'm a big fan of mindfully using technology to make our lives better. Sure, zoning out to a movie or video game is fun and has its place. But I see huge potential for a more active approach to tech. Combine this with the fact that I'm in the middle of reading To Siri with Love, a parenthood story of a Mom with an autistic child, and you can appreciate why this TED Talk was such a winner.

The talk, How I use Minecraft to help kids with autism, is a straightforward one. An autistic dad, created a virtual space for autistic kids to play, and the results were wonderful.

It's truly a story of using technology to accomplish something profound.

It also underscores that the tech doesn't need to be exotic or cutting edge. The tools are already out there, we just need to put them to use.

Maybe it's time to learn Minecraft?

Wednesday, February 07, 2018

Let's Make Music, Version 2

Yesterday, I described three steps I took in the pursuit of generating better sounding music. Today I took yet another step: I implemented an alternative API for music generation. While the underlying functionality is still powered by Web Audio API oscillators, how I interact with those oscillators has changed significantly.

Here's a few guiding principles of the new system:

  • My audio generator continues to take in, and return a state context. This remains consistent with the visual creation language I described previously.
  • On this state context are a number of critical values: bpm, width and synths. bpm, as the name suggests, is the beats per minute of the audio being created. The audio generation system now works strictly in beats, rather than absolute time. width corresponds to how many beats the music generator is expected to account for. synths is an array of Synth objects which generate musical tones. The values of bpm and width are set to sane values, but the music generator can change these at will.
  • After width number of beats, the music generator is called again and expected to return a new set of Synth objects ready to produce music.
  • A Synth is an abstraction of an Oscillator. To simplify matters, it has two controls: frequency and gain.
  • By default, a Synth's frequency and gain are set to 0. To set either frequency or gain, you must provide a target value, a position in beats when the value becomes active and a duration in beats that the value should remain active.

OK, enough talk. Let's see some code:

Audio.setup(function(ctx) {
  var scale = [Note.C, Note.D, Note.E, Note.F, Note.G, Note.A, Note.B, Note.C ];
  ctx.width = scale.length;

  var adam = new Synth().gain(.5, 0, ctx.width);

  scale.forEach(function(n, i) {
    adam.f({ value: n, fadeIn: 0.01, fadeOut: .1 },  i, .5);

  var brenda = new Synth().f(Note.F, 0, ctx.width);
  for(var i = 0; i < ctx.width; i++) {
    brenda.gain((i / ctx.width) * .8, i, .5 );

  var charlie = new Synth().f(Note.octave(Note.C, 3), 0, ctx.width);
  for(var i = 0; i < ctx.width; i += 2) {
    charlie.gain({ value: .2, fadeIn: .01, fadeOut: .001 }, i, .25);
    charlie.gain({ value: .2, fadeIn: .01, fadeOut: .001 }, i + .5, .25);

  ctx.synths = [ adam, brenda, charlie ];

  return ctx;

For lack of a better convention, I used people names for the synthesizer objects above. You can see two common patterns. First, you set the gain as constant and tweak the frequency:

var adam = new Synth().gain(.5, 0, ctx.width);

This sets up adam to play at half volume for the current iteration. There's no frequency set, so this Synth isn't actually generating any music. When I say:

adam.f({value: n, fadeIn: 0.01, fadeOut: .1 }, i, .5)

I'm setting the frequency to n at beat i for half a beat. The values of fadeIn and fadeOut allow me to gracefully ramp up to, and out of the frequency. I learned the hard way, that without using an envelope of some kind, the tone is almost always ear splitting.

The other pattern is to set the frequency as constant, and change the gain on the fly. Consider brenda:

var brenda = new Synth().f(Note.F, 0, ctx.width);

brenda is configured to play an F note. However, with the gain at 0, no sound is generated. To create a series of half notes, I raise the gain appropriately:

for(var i = 0; i < ctx.width; i++) {
  brenda.gain((i / ctx.width) * .8, i, .5 );

This code is raising the gain a larger amount for every half note generated.

Give this code a listen:

Is this music? I supposed. Certainly after a couple of iterations it will make your head hurt. But it has too much repetition to be noise. Let's call it aurally interesting.

Here are some other examples:

I think it's noteworthy how the change in music API has vastly influenced the music generated. This is one of the joys of programming: we can invent, with relative ease, new metaphors for solving problems. And just by changing the metaphor, you can arrive at new solutions. I suppose this is the virtual version of deciding you can't make music with a piano, so you go out and buy a drum set.

The bottom line: I'm enjoying my new toy and thankfully you aren't being forced to hear me practice.

Tuesday, February 06, 2018

Still Mostly Noise - Improvements in my music generation toolset

I continue to try to wrap my head around composing little chunks of interesting sounding music. While I still haven't cracked the puzzle, I've made some important progress.

First, I brushed up on music theory with this TED talk: Transforming Noise Into Music | Jackson Jhin | TEDxUND. It's exactly the topic I'm exploring, as I strive to create audibly interesting snippets. If you've ever wondered what makes music, music, you'll enjoy this 10 minute talk.

Next, I refactored my code to allow for standard note generation with ease. So rather than saying:

 new Sound().frequency(261.626)

I can say:

  new Sound().f(Note.C);

Working with standard notes helps increase my odds of avoiding ear splitting frequencies.

The biggest improvement to my system came when I did a Google search to explain why I was hearing a clicking noise after most notes. The answer is explained here: Web Audio, the ugly click and the human ear. The clicking comes from halting the oscillator mid sound wave. A much cleaner way to handle stopping an oscillator is to gracefully lower the volume (gain) to 0. In my system, I'm already using a gainNode to control the volume of the note. So rather calling stop() on the oscillator, I tried this:

gainNode.gain.exponentialRampToValueAtTime(0.0001, t + duration + 0.03);
oscillatorNode.stop(t + duration + 3);

At t + duration + 'a fudge factor' I take the volume of the oscillator down to near 0. And the click went away! Whoo! You can read the full details of this here.

Doing more research on this, I came across Chris Lowis' Synthesis with the Web Audio API - Envelopes blog post. This article explains that synthesizers frequently use a strategy like the one above to control not just how a note finishes (decays), but also how it starts (the so called attack). And this makes sense, when you a strum a guitar string, it doesn't start off at full volume, it works up to this, and then fades off. I updated my code to implement this behavior as so:

gainNode.gain.exponentialRampToValueAtTime(gainNode.gain.value, t + Math.min(.001, duration / 32));
gainNode.gain.exponentialRampToValueAtTime(0.0001, t + duration + 0.03);
oscillatorNode.stop(t + duration + 3);

The result is that I'm ramping both up to, and down from, the max gain value. It's remarkable how large an impact this one changes has on my musical snippets. Instead of blasting ear splitting tones, I'm now generating sounds that have an almost organic, mallet'y feel to them. I'm not sure this is ideal, but it's far easier on the ears than a pure tone.

Currently, I've hard coded both the ramp up and ramp down to values. However, I'm thinking that this may be so essential that it may make sense to re-work my Sound API to give control over the this behavior. In fact, I'm wondering if my whole Sound / Score / Stack model is holding me back, rather helping me. My current thinking is that my API should expose oscillators directly, rather than try to abstract them away.

Here are some examples of my work, and as always, you can find the source code on github.

Thursday, February 01, 2018

Flower Power! An unplanned first solo sewing project

At the end of last year, with much assistance from Mom, I finished my first sewing creation. Today I hit another milestone: my first solo project. I started off with modest goals: to see if I could setup and properly thread the sewing machine my Mom gave me. Using the well worn manual as a guide, I managed to pull this off. There's so many nooks and cranny on this machine, it's a wonder I got this far.

I carefully positioned some scrap fabric, just like Mom had shown me, and made a line of stitches. It worked!

Juiced up on my own success, I searched my memory for a quick project to tackle. This haversack was the first thing that came to mind. As for fabric, I went with re-purposing a fatally stained table cloth. I figured the upcycled material would cushion any disappoint when this whole experiment went wrong.

I cut out a rectangular strip of fabric, folded it in to position and carefully pinned everything in place. And then remembered, oh crap!, you have sew the project inside out to have the finished side showing. After re-pinning the fabric, I ended up with this:

The top fold makes for the main pocket, while the smaller fold on the bottom, is a smaller pocket on the closing flap. For a better view of what I was going for, check out this video.

I carefully sewed the edges together, and to my great surprise, I had a bag that looked very much like what it was supposed to! Next, I needed to figure out a strap. For that, I busted out some metal grommets I had picked up last year. It took a few attempts to figure out how to install them, and of course, more care has to be taken to install the finished edges in the right position. The finishing touch was the discovery of some random cheapo carabiners I had lying around that fit in the grommets perfectly.

I cut a strip of 1" webbing and attached it to the carabiners. My first solo made creation was officially complete!

Technically, I should pose with the bag to truly show its scale and finish. Yet, I don't think I can quite pull off that look. Still, I'm amazed that what started as throw-away experiment, turned into a technically functional item.

Look out beginner level sewing projects, here I come!

Wednesday, January 31, 2018

These Moon Pictures are a Lie

I missed photographing the last few high profile celestial events, but I wasn't going to let happen with today's Super Blood Moon Eclipse Extravaganza. While DC won't get much of the eclipse, I wanted to at least attempt to grab a few pics of the moon in its super sized form. So I set my alarm for 3am, and by 4am, I had my tripod set up on the DC Mall ready to snap away.

I managed to grab pictures of the moon, the Capital Building and the Washington Monument. However, I wasn't able to create the composition of my dreams, where the moon was juxtaposed to the scenery. So I cheated, and used The Gimp to copy and paste the moon pic into place. So while the photos below were all snapped this morning, including the picture of the moon, the compositions are totally invented.

It was a humbling experience standing outside at 4am, in 24°F conditions, grabbing these photos. On paper, it's all so simple. In the field, everything from getting the scene in focus to dealing with numb fingers was a challenge. Though I do have to say, the DC Mall is the ideal place to experiment with this type of photography. The place was empty (finally, parking in DC was easy!), yet it's lit up enough and trafficked by security enough, that it feels safe.

I'll definitely be back. Though, maybe I'll try a bit of night photography in the summer.

Tuesday, January 30, 2018

A Little Language for Music Composition | A Programmer's Approach to Song Construction

I was surprised by how successful I was at creating small animations, known as Poetic Computations and wanted to try the same thing with audio. Fortunately, much of the heavy lifting has already been done by the Web Audio API. The fact that I know nothing about music composition hardly seemed like a reason not to give this a try.

There are quite a few slick music APIs and creation tools out there, but I was curious if I could extend the lessons learned with my animation framework into the realm of music.

In the case of animations, my platform only allows for the creation of line segments. By scaling, rotating, translating and copying these segments interesting animations can be constructed without a lot of effort. Could the same be true with music? Here are the primitives I developed to find out:

  1. Sound - a sound consists of a frequency, duration and volume (gain).
  2. Stack - a collection of items (sounds, stacks or scores) that are all played at the same time. I think this may be similar in concept to a chord.
  3. Score - a collection of items (sounds, stacks or scores) that are played sequentially.

By now, those familiar with music theory are surely shaking their heads. But from a coding perspective, there's a nice symmetry to working with the above.

Using these classes, I can programmatically build songs:

Conductor.play(function(ctx) {
  var left = new Score();
  for(var f = 100; f < 800; f += 100) {
    left.add(new Sound().frequency(f));
    left.add(new Sound().frequency(0).duration('/', 2));

  var right = new Score();
  for(var i = 0; i < 9; i++) {
    right.add(new Sound().frequency(200).duration(.25));
    right.add(new Sound().frequency(0).duration(.5));
    right.add(new Sound().frequency(400).duration(.25));
  return { song: new Stack().add(left).add(right) };

You can listen to this creation by clicking here:

And here's another example:

I was pleased at how quickly the code came together. And I do love the compositional nature of the system. But man, is making music hard! In fairness, I've got about 20 minutes of experimentation under my belt. I currently have the same set of skills a toddler has when he bangs on your piano.

My hope is that with a little research I'll get a better sense of what patterns lead to a more pleasant sound and then my career as amateur musical composer will be truly off and running.

In the mean time, feel free to grab my code and make suggestions as to what I should do to improve the system.

Monday, January 29, 2018

Pocket and Man-Bag Dump, January 2018 Edition

I have a blog post in mind that would benefit from a fresh pocket & murse man-bag dump. The last one I did was posted was in June of 2017 and there have been enough changes to warrant an update.

If you're not sure what a bag / pocket dump is, and you're curious, here's a good place to start.

First off, an overall pic:


  • USB Keychain Cable
  • P51 can opener with binder-clip to keep it closed
  • (2) paperclips, including a tactical black one!
  • Tweezers. Added after a couple of run-ins with ticks
  • Nitecore Tube flashlight. Bright and USB rechargeable. Dare I say, the perfect keychain flashlight.
  • My house key. Yes, there's one real key on my keychain.
  • A large safety pin
  • (2) pill containers holding useful meds
  • Whistle
  • Derma-Safe razor blade, the best utility blade ever

Not shown: two small rare Earth magnets that can be used as be used as an indestructible compass. They're stashed in one of the pill containers.

Other Pocket Items

I continue to use my wallet to hold a bit of cash and some utility items, but that's it. If I lose my wallet I'll be without my Ikea tape measure, but I won't be without my identity. Here's what's in my wallet:

  • Dummy Cards, including an already used Amazon Gift Card and an important looking Kinkos card
  • The card with a beach scene on it is a mirror
  • Couple sheets of stickers
  • Fresnel lens
  • Ikea paper tape measure
  • Strip of duct tape
  • Band-aids
  • Wire twist ties
  • Plastic bag (last used to avoid a motion sickness catastrophe)
  • Some money!

On to the bag, which is new for me. The lightweight Wsdear crossbody bag served me well, but one of the zippers eventually ripped on it. I would have probably bought it again, but Amazon has it as unavailable.

I'm giving a small'ish Nicgid bag a try. So far, I'm liking it. It's smaller than the Wsdear, but fits my stuff well (maybe too well?). I like the beefy zippers, which feel like they're going to hold up. Both bags have a large flat pocket on the bag to hold my phone, and a smaller flat pocket on the front which I can slip my money clip into.

Here's what's in the bag:

You can see that I've standardized on 4x6 inch, 6mil ziplock bags to store things in. I'm mostly happy with this, as it keeps items organized and the clear plastic allows me to quickly check contents. Also, as the containers pick up dirt and debris, I can toss them. The big catch: these bags all appears to have pin-hole openings near the top, which mean that they aren't fully sealed (which defeats the purpose of the zip lock nature, no?).

Everyday Stuff. Most of this stuff is boring, until you desperately need it, that is.

  • A-SPAN Street Guide. I hand out to folks when they ask me for money on the street. A-SPAN does amazing work to help those in need locally, and helping folks connect with them is far more valuable than spare change.
  • Keys
  • Flip & Tumble shopping bag. The greatest shopping bag ever.
  • Extra cash
  • Hair rubber band
  • Sun glasses. Broken, so I expect I'll replace these soon with another cheapo pair.
  • Tissues
  • TIP Flashlight. Super bright and rechargeable via USB.
  • Hand sanitizer with a kick
  • Twin Sided Sharpie
  • Buff. If it's hot or cold out, the Buff can save the day. Works as a sleep mask in a pinch. Lets me rock a headband when my hair gets too long.
  • Snacks. Compact, yet designed to give me a burst of sugar or fat on demand.

First Aid. For the level of first aid I'm trained at, basic meds and tape are what it's all about. Whether you're in the woods, or at a movie, over the counter meds at just the right time can be enormously helpful. And tape fixes everything else. New since my last pocket dump are a SWAT-T Tourniquet and ear plugs. I realized I needed to add ear plugs when the last three events we've attended with music left me wishing for them. Given the life saving nature of tourniquets and the versatility of a SWAT-T, it was a no brainer to carry one.

  • SWAT-T Tourniquet
  • CPR mask
  • Aquphor and various others meds
  • Ear plugs.
  • Pair of Nitrile gloves
  • Tape: small lengths of KT, Leuko, Duct and Gorilla.

Electronics. My smart phone is the answer to so many emergencies, from dealing with a down server, to 'surviving' a lengthy waiting room experience. I've found that having a handful of extras make it that much more useful. The keyboard turns my phone into a laptop; the headphones turn it into an entertainment center; and the Software Defined Radio turn it into an emergency command center. The battery and various cables keep the whole setup charged.

Hiking. These few items are the core essentials I'd take on any outdoor adventure. Most of these items cross over to more civilized uses as well. The lighter is just as useful for starting a campfire as it is for lighting birthday candles; the tea bag is just as handy in a hotel room with a coffee maker and no provided tea as it is on the side of a mountain.

  • 1x1 meter sheet of parachute material. Uses include: sit pad, signal panel, triangle bandage sling and anything else you can think of that involves a sheet of fabric.
  • Heat sheet emergency blanket
  • Heavy duty aluminum foil
  • Large sewing needle
  • Water purification tablets
  • Lighter
  • Heavy duty fishing line, which serves as cordage
  • True Liberty oven bag. I used to carry a 1 cup container, but found that it regularly raised alarm at x-ray security checkpoints. The True Liberty bag is far more innocuous, but can still be used to collect, carry and cook stuff in.
  • Tea bag. Among other uses, this is a nod to this if-you-get-lost strategy

So there it is, a run-down of what's in the old pockets and bag. Any questions?


Related Posts with Thumbnails