UTOSC 2009 Is Full Steam Ahead!

And with that, I've uploaded all my slides for the Utah Open Source Conference. My goal was to have them ready by last night, so I'm a bit late. Still better than last year where I only had one presentation and I was still updating my notes the night before. If you're looking for me make sure to check the schedule as there have been some changes, and there may well be more to come. Also look for my late addition where I'll be joining Gabe Gunderson of izeni to talk about VoIP (specifically FreeSWITCH and Asterisk).


Drug Policy

Lately I've put a bit of thought into the state of drug policy in our nation. It's really not in dispute that illegal drugs are a major problem which doesn't seem to be on the road to solution. It's been over 20 years since Reagan declared a War on Drugs. The war has been rather successful in much the same way the War on Terror has, it's built up our police force and ruined the lives of countless people but really hasn't reduced the amount of drug usage.

Now before we get all into this, I guess I should lay down my stance on drug usage. Generally speaking I'm against usage of mind altering substances. There are exceptions of course, such as doctor prescribed or over the counter medicines (although I do try to avoid those whenever possible). I generally steer clear from even caffeine because a) it has never affected me much, b) I don't care much for the typical caffeine conveyances (soda) and c) I would prefer to not get addicted.

I did find it rather interesting in Michael Pollan's book, Botany of Desire, that nearly every (or maybe he did say every) culture on Earth has some sort of mind altering substance which it condones. So in once sense it's rather hypocritical of us to deny one person his drugs just because his choice differs from our own. But of course the details do matter and meth is different from pot is different from caffeine, so we can't simply lump them together.

It's only natural that we would choose to legislate something with such potentially harmful side effects, and it's human nature to want to punish those who can't follow the rules. But we have to be realistic about the results. While it may feel good to put those no-good pot smoking hippies in jail, what we really have to judge in our approach is whether we're decreasing the amount of crime and violence associated with drug abuse and whether those hippies are actually any better off. That's really the direction I'm coming at this from.

As a recent report from the CATO Institute found, when Portugal decriminalized (which is not the same as legalized) all drugs they actually saw a very positive outcome. John Tierney recently wrote on that topic as well. And Freakonomics a few months ago had a very enlightening debate about legalization.

To sum up, I'm not encouraging drug usage but I don't believe our current prohibitionist laws are doing anybody any good, from the law abiding citizen spending tax money to house criminals to the addict himself who might very much like to get sober. It's the ethical and economical thing to do.


Presenting at UTOSC 2009

I will be presenting at the Utah Open Source Conference (UTOSC) again this year. On tap are 3, count 'em, 3 presentations. I'm still not quite sure what possessed me to submit 3 abstracts but I did and (just to spite me I think) they accepted all of them.

Refer to the schedule for any last minute changes but for now here are the times I'm speaking.

Hope to see you there.


Berry Syrup

It's an annual tradition here to make syrup from the berries we have growing around the property. We don't have many of each but we do have a few, including strawberries, raspberries, chokeberries, and red currants. We also had some left over huckleberries from a previous trip to the mountains. I toss them into the freezer and save them until the harvest is done.

Making syrup is pretty easy. It starts with tossing the berries into a pot with some water and warming them up. I had about 2 pints of berries, give or take. It was about 50% currants, 20% chokeberries, 20% huckleberries and 10% raspberries. We didn't get enough strawberries this year to do much with other than snack on, and the kids ate most of the raspberries fresh.

After cooking them of a bit they'll soften up and start to fall apart. You can smash them with a potato masher if you want, or this year I tried out my new stick blender which I gotta say was really fast. The resulting texture isn't exactly what I hoped for though. I pushed them through a strainer but the mesh wasn't quite fine enough to get out all the tiny little bits. That doesn't happen with the masher so I'd probably only recommend the blender if you've got a really tight filter.

Add sugar until the taste is just right. For my 2 pints of berries I put in about 3/4 cup of sugar and another 1/4 cup of corn syrup. But you may like yours more or less sweet than I did.

Once the sugar is all dissolved, pull it off the heat and pour into the containers of your choice. I've saved a few cute syrup containers that I like to use but as you can see it ended up filling more than I thought. But that's the kind of problem I'm happy to have.


Making (Canadian) Bacon

I've got an informal list of life goals, upon which are many food-related items. One of the highest ranked and longest lived is my goal to make bacon. Today I made significant progress toward that goal.

Scroll back a few weeks. I finally broke down and on a whim bought Michael Ruhlman's book, Charcuterie. Among the recipes is of course one for your normal pork belly bacon, and another for canadian bacon. The latter is much easier to accomplish because it uses a pork loin, easily found at any megamart, but pork belly on the other hand is a challenge. I've been keeping my eyes and ears open for it, and so far the best I've found is a place that can get me pork bellies by the case. Not wanting to commit to $80 worth of meat straight out of the gates, I opted for the canadian variety.

Next problem was acquiring some sodium nitrite, aka pink salt, which is a very crucial element of curing meat. Unless of course you're fond of botulism of course, in which case go ahead and skip this step. I'm not so I didn't. Technically I suppose since this bacon is cooked within a few days of curing and since the cure is relatively short, there's not much risk of botulism. Mostly in this case the nitrite gives you the pink color and a bit of flavor.

Either way the darn stuff is near impossible to come by. I found meat cures at the outdoor store but that was all premixed with seasonings. I found Morton's Tender Quick at both Fred Meyer and Albertson's. That's could do in a pinch because it's quite similar to Ruhlman's Basic Dry Cure, but I wanted better control over the ingredients (for example, in this recipe there's no sugar, so the Tender Quick would have been all wrong).

There's the Internet and supplies of pink salt are readily available, but the shipping was pretty steep everywhere I looked and I didn't want to spend a ton on my first try (see above re: pork bellies). The solution came when I went on vacation to Oregon and had a chance to stop by Market Supply in Portland. They had it right there on the shelf for a whopping $1 per pound. Bingo!

The day of reckoning came. I stood with meat and cure in hand. Most of the process is spent in waiting. Bring the brine to a boil...and wait for it to cool. Put the meat in the brine...and wait for it to cure (2 days). Take the meat out, pat dry...and wait for a pellicle to form. Put the meat on the grill to smoke...and wait 3 hours to hit 150°.

One important note about this process is that I expected the meat to take on its pink hue while it was in the brine. It came out slightly pink but mostly a lifeless gray. I was somewhat concerned, although having invested so much already there was no way I could give up. So I smoked it and the pink came right out. The color ended up a wonderful rosy shade which I really must say is much more appetizing.

From start to finish it was 3 days. Not bad really. The results speak for themselves. The texture is much like any ham you've tasted, which is why Pizza Hut gets away with using the same meat for "ham" and "canadian bacon" on their pizzas. The color is pretty much the same too, and since it's a loin lacks any significant fat or gristle. The flavor though is outrageous. The smoke is what first hits you. Then the salt, since I left mine in the brine about 10 hours longer than I was supposed to. But ignore that and focus on the flavor. The spices are mild but compliment the pork nicely. It's a wonderful combination and save my mistake on the salt, very balanced.

Next step is to build a BLT out of this. Ruhlman's been running a BLT Challenge this summer and I plan to compete. I've got all my other components ready so sometime soon expect an update with the results. I can't wait!


Book Review: Infinite Jest

Title: Infinite Jest
Author: David Foster Wallace
Published: 1996 by Little, Brown and Company
ISBN: 0-316-92004-5

Without a doubt this was the worst book that I've read in a long long time. I suppose "read" is a bit of a stretch since I couldn't get through more than 30 pages before my head was spinning. Was there even a plot? I scanned through the rest of the book and it seemed to be more of the same. I just didn't feel like I could put myself through that sort of torture so I abandoned ship.

Ostensibly it's a book about addiction, philosophy and comedy. I found none of the above, unless the addiction was that of the author who possibly was high as a kite while he wrote. One would thus also assume that the reviewers on the back of the book were sharing in the ganja. I can't find any basis for their glowing reviews.



My first, and only, direct experience with homeopathy was a bottle of teething tablets I bought on the advice of a friend. That was a few years back. I didn't look closely at them at the time since they came recommended. The did kind of seem to work because whenever the baby was crying and we put one in his mouth he immediately stopped crying. Sometimes that was enough to coax him back to sleep, but often the effect wore off before that. In those cases typically multiple tablets didn't help.

So what does that mean scientifically? Bupkis. I have nothing to compare the tablets to and I have no idea whether they worked any better than a simple sugar pill would have. That's not science, that's an anecdote. Correlation is not causation, etc., etc.

Instead, here's a great article about homeopathy covering its history, theory and state of scientific research. The long and short of it is that to date no convincing evidence has been found to show that homeopathy is anything more than well shaken water. When that occurs it's only logical to conclude that it is in fact not a valid medicine. I mean, at some point we have to move on to other research and leave the losers behind.

I ended up throwing away the teething tablets before the next baby came along. I can't recall whether we ran out or I just chucked them on principle. Either way, I shan't be purchasing any more.


Mail Client Duldrums

Lately I've been feeling rather disappointed by Evolution. I've been a long time user (7 years I think) and for the most part it works great. But it's that "most part" bit that really is starting to grind. The last few iterations that I've tried (whatever is bundled with Ubuntu Feisty, Gutsy, Intrepid and Jaunty) have all had a a few quirks, none of them the same of course, For instance, The Intrepid version had an annoying habit of leaving messages marked as unread, even after I, you know, read them. Made for an annoyance when filing messages away. Worse, many of the messages that Evolution said were read, weren't really marked as such on the server so sometimes messages would magically unread themselves.

So I decided to give KMail another shot. I tried it last year sometime I think it was and decided it just didn't cut the mustard. But I'm a few revs forward on KDE now so it was worth a try. Over the last few days I have found it to be less annoying and much snappier than Evolution so I am considering a permanent switch, but it too does have issues. One major oddity is that when I open up a new folder, the unread messages count will reset while the folder is rescanned. That's just crazy. I can see why in a way, but there's just no need for it. A second complaint is that there's no way to move to the next message without closing the currently open message and opening a new window (I turn off the preview pane).

On the other hand, KMail excels in a quite a few ways. Contact auto completion is much much (much!) faster. I like the idea of the "favorite folders", although to date I haven't made much use of it. I like the way it integrates with my Spam Assassin. It handles multiple identities perfectly (although the configuration is kind of spread out).

Of course the elephant in the room is Exchange support. It's a necessary evil at least at my company (better than Groupwise!). Evolution has an Exchange plugin which works via Outlook Web Access to give you all the features of Exchange in Linux. In theory anyway. While many features do work, not all are flawless. The address book doesn't work for me. My calendar doesn't seem to sync with the server calendar. I've had previous problems with server-side calendar reminders not working, although the version in Jaunty seems to work fine.

Is there anything better out there that I should take a look at? Exchange support would be great, but frankly I don't use all the extra features all that often and if I have to fire up Outlook (via terminal services) once a week, that's not a deal breaker. I would like it to be rock solid, though.



I'm working on an upgrade of a RADIUS server and I need the ability to verify that my changes won't alter the behavior of the server. So what would be really nice is a way to record all the network traffic going to my RADIUS server with a tool like tcpdump and then resend it to my test server and compare the results. As luck would have it, there is such a tool and it's named tcpreplay.

While I haven't run the full tests on my RADIUS server, I have done a few simple tests with ICMP and UDP packets just to verify that it will work with protocols other than TCP, despite its name. It does. Here's an example.

In on root shell, run the following command to capture packets:

# tcpdump -np -s0 -i eth1 -w icmp.pcap icmp and dst host

Then, in another shell, start a ping to the IP address in question:

$ ping -c 5
PING ( 56(84) bytes of data.
64 bytes from icmp_seq=2 ttl=64 time=1.63 ms
64 bytes from icmp_seq=3 ttl=64 time=1.49 ms
64 bytes from icmp_seq=4 ttl=64 time=1.55 ms
64 bytes from icmp_seq=5 ttl=64 time=1.55 ms

--- ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4021ms
rtt min/avg/max/mdev = 1.490/1.567/1.639/0.049 ms

Now you've got a PCAP file that you can feed to tcprelay. This is a very basic, and fun, way to run tcprelay so that you can watch and confirm each packet. There are many other options for how you can alter the replay.

# tcpreplay --intf1=eth1 --oneatatime --verbose icmp.pcap
sending out eth1
processing file: icmp.pcap
reading from file -, link-type EN10MB (Ethernet)
15:45:37.376377 IP > ICMP echo request, id 58216, seq 1, length 64
**** Next packet #1 out eth1. How many packets do you wish to send? 1
Sending packet 1 out: eth1
15:45:38.383298 IP > ICMP echo request, id 58216, seq 2, length 64
**** Next packet #2 out eth1. How many packets do you wish to send? 1
Sending packet 2 out: eth1
15:45:39.391925 IP > ICMP echo request, id 58216, seq 3, length 64
**** Next packet #3 out eth1. How many packets do you wish to send? 1
Sending packet 3 out: eth1
15:45:40.394081 IP > ICMP echo request, id 58216, seq 4, length 64
**** Next packet #4 out eth1. How many packets do you wish to send? 1
Sending packet 4 out: eth1
15:45:41.398076 IP > ICMP echo request, id 58216, seq 5, length 64
**** Next packet #5 out eth1. How many packets do you wish to send? 1
Sending packet 5 out: eth1
Actual: 5 packets (490 bytes) sent in 15.14 seconds
Rated: 32.4 bps, 0.00 Mbps/sec, 0.33 pps

Statistics for network device: eth1
Attempted packets: 5
Successful packets: 5
Failed packets: 0
Retried packets (ENOBUFS): 0
Retried packets (EAGAIN): 0


New Phone: Samsung SCH-i760

My boss surprised me the other day with a new phone. Nothing was particularly wrong with my old phone, but we had a bunch of these new Samsung phones due to some staffing changes so I got nominated for one. Ostensibly it's to make on-call easier since I'll be able to read and respond to emails without having to run home. Hopefully that will work out.

So far I think the phone will work out alright. It's fairly bulky, but so was my LG enV, so no big change there. The screen seems big enough to be functional, although it certainly has its limitations. Can't say I can see much solution there short of packing around a netbook though. I love finally being able to synchronize my calendar, something that in theory the enV can do but which Verizon (curse their souls) forcibly disabled. Mobile email also cool. I've installed some applications such as Facebook, Twitter, IRC, that may or may not be really useful in the long run but are fun to have around.

But of course there's bad news too. The battery life is not what I'd like it to be. I'm not sure how it compares to other smart phones since this is my first, but with any reasonably heavy usage I'm looking at charging it a few times a day, and that's going to be my usage pattern during on-call, so I'm a bit disappointed.

It also runs Windows Mobile. I was rather apprehensive about it, but so far it's doing better than I thought. I'd give it a solid mediocre (which is high praise from me).

The application support is disappointing, although not really unexpected. See, with a Free/Open Source background I expect high quality software to just be available for free. With Windows Mobile, yeah not so much. There are a few but they're somewhat hard to find. I could really use an apt-get if you know what I mean. This is an area where Linux users get pampered and it's tough to go without.

Those are the major drawbacks. The one other minor glitch I would mention is that whenever I'm connected to my wifi it constantly tries to bring up a data connection. Well what's the point of that? To get the thing (I named it Aristotle) to knock it off I set up a dummy ISP connection using the irDA port. Hee, hee.

It's a keeper so far. We'll see how I feel after I go on-call this weekend. If you see this blog full of Brittany Spears posts you'll know it's driven me off the deep end. Your pity is all I ask.



Subscribe to zmonkey.org RSS Subscribe to zmonkey.org - All comments