Category Archives: Uncategorized

Why all the Obama hate?

I am really struggling with all this anti-Obama rhetoric, coming from both the right and the left. From where I sit, while he hasn’t been perfect, he’s accomplished quite a bit for us since he’s been president. Consider:

  • Obama got through the most comprehensive healthcare program we’ve ever had, which will provide a needed safety net to many, and yet will save the government money.
  • The “bailout” (TARP) happened when Bush was president, and consisted of loans and asset purchases. Current forecasts are that the government will get 90% of that money back.
  • The recovery & reinvestment act — passed by Obama — has exceeded the estimates of 3 million jobs saved or created, as graded by non-partisan groups. Most economists argue it should have been bigger to make a better change in the economy. It’s widely credited with having stopped the bleeding.

I don’t get it. Liberals are claiming he’s not doing enough, but look at what he’s got to work with: Republicans filibustering just about everything in the Senate. I don’t think that’s Obama’s fault.

And the conservatives, as far as I can tell, are just yelling. I can’t figure this out. They want to cut taxes, cut the deficit, and increase defense spending. Good luck with that.

Amateur Radio Excitement

I’ve been keeping up with my amateur radio activities lately. The big news is that I passed the amateur extra exam at a hamfest in Wichita on Saturday. That’s the highest level of amateur radio licensing available, and only about 17% of hams have it. I passed it with 100% correct, as I did with my other two exams as well. Pretty happy with that.

I’m also getting ready to get a radio installed in my car. My FT-857D, which I’ve been using in the house, is really a mobile. I picked up antennas and cables for that at the Wichita hamfest. My brother, who is great with cars, will probably help me do that. I’m excited about that.

I also think I can get radio going on my bicycle. I need a half-wave vertical antenna to mount on it. Really the only challenge is how to attach that to the bicycle, as there isn’t exactly a thriving antenna mount industry for bicyclists.

Stories of Amateur Radio

It was back in July that I got my amateur radio license, and I haven’t written much about it since. It’s about time I do.

I’ve been really enjoying it. I am now wishing I hadn’t put off getting into it for so many years. It’s a lot of fun and promises to be a lot of fun for a long time.

Why?

I am frequently asked, “What can you do with amateur radio?” Yes, you can talk to people all around the world, but of course you can do that with the Internet. Talking to people all around the world can be done with no infrastructure in between, so that’s a pretty neat feature, but not compelling to everyone.

I have realized that the question is poorly-framed. I had asked that question myself for a long time and only recently realized that I was asking the wrong question.

I think the better question would be, “What makes amateur radio fun and a good way to spend your time?”

One thing I’ve discovered is that the amateur radio community has an amazing sense of community. Hams, almost universally, seem to love helping out each other, whatever the task may be: setting up antennas, learning how to operate a radio, even fixing a flat tire. I’ve seen this directly, and heard about it from others, time and time again. There’s an excellent article out there by Nate Bargmann called Why I consider Amateur Radio an asset in my life that makes for good reading.

There is a lot of fun in amateur radio. It was quite exciting the first time I talked to someone out of state, realizing that the piece of wire in my trees, and 100W of transmitter power, were all it took to get a message 700 miles away. And even more exciting when I talked to a person in Kazakhstan the same way. No satellites, no phone lines, no undersea cables — just my antenna, his, and radio waves.

Then there’s the fun in talking to somewhat random people. It’s not completely random, as I’m only talking to people that have passed a test — there are about a million of us in the USA. (And for the long-distance HF communication, a more rigorous exam is required, so the number is probably less than that.) But when I call “CQ” — an invitation for anyone listening to reply — I never know who will reply. I’ve talked to a retired Canadian museum curator, a Mississippi farmer, a resident of Long Island, Russians participating in a contest, two Hawaiians participating in a different contest, and the list goes on. Some of these have been brief contacts lasting only seconds, while others have been conversations that stretch on towards an hour.

I liken amateur radio to buying my first iPod. I had never owned a portable MP3 player. I had always figured, “why bother? How often am I away from a computer or a CD player?” But once I got one, I realized how nice it was. It was convenient to just store my entire library on there and not have to try to sync it across multiple devices. It was convenient to not have to carry CDs with me in the car, and to listen to music at places I hadn’t tried to before. The same sort of thing applied to getting a Kindle, and to amateur radio. I didn’t realize how much fun it would be until I tried.

Some Memorable Moments

Towards the end of showing you some things that have been exciting, here are a few memorable moments from my ham radio experience so far.

Saturday night was one. I was tuning around listening to anybody to talk to. I heard some people calling CQ in heavy accents. I eventually realized that the All-Asia contest was going on, and figured out how to participate. I made my first voice-mode contact with people on a different continent — and it was with Kazakhstan! Within a few minutes, I also talked with three stations in Russia. I had not expected that.

I’ve made contact with several stations in the Indianapolis area, where I used to live. It was particularly fun to talk to W9IMS, located at the Indianapolis Motor Speedway, which operates around race times only. Again I discovered that station simply by tuning around on the band.

I took a 5W handheld radio with me to New York City during my trip there for Debconf. It was a lot of fun to talk to random New Yorkers while visiting, and they were all very interested in my impression of the city, what I’ve done so far, and what they thought I ought to do. Some offered specific tips (such as which train from Manhattan to Brooklyn offers a good view while elevated).

A local ham, W0BH, gave me some basic training on how to operate during amateur radio contests. During these contests, hams try to make contact with as many other hams in as many places as they can. I didn’t think this sounded like a lot of fun. Until I tried it. It was indeed a lot of fun, and interesting being occasionally that rare Kansas station that a bunch of people are trying to talk to at once.

One evening, we lost power. I tried calling the electric company, but there was no answer over there for some reason. We’re out in the country, and there are no neighbors visible that can inform us whether it’s a big problem that the power company probably knows about, or whether it’s localized to us.

So after wondering what to do for a minute, I thought I’d get on the radio and ask. (We own a backup generator for these situations.) Almost right away I heard from a person driving in his pickup. He told me he saw a widespread outage, and heard on his police scanner about other towns that were down for the same reason. I wouldn’t have known otherwise.

KD0MJT

Wow — tonight was thrilling. It’s hard to explain why, but it’s pretty exciting to have a radio setup that is all wrong in so many ways work well enough for me to sit in my kitchen in Kansas and talk to someone in Indianapolis using only two-way HF radios.

I recently passed my technician and general amateur radio exams. I’ve been talking to some very nice people locally on the 2m band, which permits local (say, 100-200mi radius) communication. It’s been fun, but Kansas is sparsely populated enough that sometimes there just isn’t any activity. At all.

Earlier this week, my Yaesu FT-857D and two antennas arrived. I tried it first on VHF, and had a nice chat with Kent (KB0RWI) a few miles away. But tonight was the big experiment.

I bought a 20m dipole antenna. This is basically a 30-foot-long wire, connected to a balun and a coax feed line in the middle. You’re supposed to put it at least 30 feet off the ground, and away from trees, houses, etc. You’re supposed to have a nice RF ground for your transmitter, power supply, antenna tuner, and all that stuff. You’re not supposed to just run the coax under that (until today, annoying) small hole in the seal under the kitchen storm door. You’re supposed to have to have the correct connectors on your coax, instead of soldering an RG-8 PL-259 onto some RG-8X because you’re new at this and didn’t realize that you need to buy an adapter.

And, I’m really pretty sure that you’re not supposed to have an aggressive outdoor cat — complete with a full set of claws and teeth — attack the coax RG-8X cable as it’s being pulled through the grass.

Fail to do any of these things, and the thing might not work well, or might not work at all, or for people that use old equipment, might burn out your radio or something.

So anyway I got out the ladder today, and I got the antenna maybe 10-15 feet in the air. I have three trees in a row with the perfect separation to hang each end and the center balun from. So while Jacob went around playing with water and trying out the ladder on occasion (with my help), I used some string to hang the antenna. In the trees, not far from them. Near the house. Not 30ft off the ground.

I strung the feed line into the house, set up all my equipment on our kitchen table, flipped the switch. And — nothing. Just the occasional familiar whine while tuning. I tried the 20m band, then the 40m, then even 15, 12, and 10. No activity anywhere. So what was wrong?

I improvised some grounding — extracted the ground conductor from an old strip of AC house wiring, shoved it into the ground, and grounded the tuner and transmitter. No difference.

I unplugged the coax, and tested it with my multimeter. It tested out OK.

I plugged it back in and wiggled the connector. Turns out the connector isn’t in great shape, but it had been working.

I tried transmitting. The tuner made a whole bunch of alarming-sounding clicking noises (sounded like a symphony of relays), indicated SWR over 3, and the ammeter on my power supply went a bit nuts. Later I realized that I just wasn’t giving the tuner enough time to tune up; with a few more seconds, it tuned up just fine on every frequency. (So yes, it was supposed to do that.)

And, it turns out, that all I needed to do was wait a little while longer to hear some signals. Pretty soon I was finding stuff all over the 40m band. I heard a discussion from Chicago, another from Oklahoma City, some apparent broadcasters from Africa.

I decided I would try and transmit. I was hearing one side of a discussion very clearly and decided I would wait for an opportunity to try to contact that person. I heard his callsign, K9RM. I looked it up, and realized he was near Indianapolis, where I had lived for awhile.

Eventually he invited a station trying to get in to participate. And:

“KD0MJT” (I announced my callsign, as a request to join the conversation)

He said he only made out the 0, but eventually we were talking quite well. It was a brief conversation, but interesting; the person he was talking to was in Portland, and couldn’t hear me (and I could barely hear him, but not loud enough to make out).

That with no phone lines, no Internet provider needed, etc. And with a rig that is far from being at peak efficiency. I had no idea what to expect tonight — and was surprised that just tossing an antenna up in a tree let me talk to someone in Indiana. That’s 650 miles away. I wonder what I’ll be able to do once I get things done the right way.

This hobby is going to be fun. Many thanks to Mike_W for equipment suggestions, Kent and Dan from Newton ARC for encouragement and coming out to the house to test things, Kent for being my first ham radio contact ever (on 2m while I was using an old 1981 radio), Chuck (K9RM) for taking a few minutes to be my first HF contact, and my dad for helping plan out exterior wall penetration methods that will eliminate this coax under the kitchen door and lack of grounding business.

Jacob, by the way, still loves his radios and is starting to take an interest in mine. It wouldn’t shock me at all of he’s one of these kids that gets his technician license in the 2nd grade or something. I think he and I can do this together for a long time.

Update 11/1/2010: My callsign has changed to KR0L.

Radios

Those of you that follow me on twitter or identi.ca know that I’ve been working on my amateur radio license. This started a few weeks ago when Jacob got excited about radios, and must have infected me too.

I’ve been studying and learning a bit. I had called a local ham (amateur radio operator) I know from church. He gave me one of his apparently newer radios, a 1981 2m Icom IC-22U 10W unit. That was great and got me all the more interested. Then last Friday, a couple of local hams came over to check out that radio and see what repeaters I could hit with it. They discovered a handheld 5W unit could hit at least one local repeater, and this 10W unit could too. One of them also had an HF rig in his pickup, and it was fun to stand out in the driveway and listen to conversations in Michigan and Utah. That evening erased any doubt in my mind about whether or not I would become a ham — and it’s a bit hard to believe it was only a week ago.

I had been studying for the Technician-class amateur radio license, the lowest of three levels of licensing. One of the guys that came over Friday gave me a book to study for the General license, the intermediate level. It warned me to allow a month to prepare, and here I was planning to take the exams Tuesday. I picked it up Sunday, so really got 2 days of studying in.

Tuesday I drove to Independence, KS, about 2.5 hours away for the exams. I went so far primarily because the Wichita exams weren’t going to be offered until mid-August and I didn’t want to wait that long. I found a fun group of people in Independence. I hadn’t expected to have fun taking exams, but really, I did. We visited before the exams, and they wanted to know where I was from, of course.

When it was time to take the exams, I guess I sort of surprised them by already having my FRN (FCC registration number) and photo copies of my IDs with me. One of them said, “You’re going to have no trouble with this, are you?” I took the Technician exam, checked my work carefully, and turned it in to be graded. They checked it twice and had two people looking over it before they announced I passed with all 35 questions correct.

I should note at this point that I was the only person taking the exams that night.

Anyhow, on to the General exam. Same drill. It was harder, of course, and I turned it in to be graded. One of them looked at the test, looked at me, put on a grave face and said, “Uh oh, not one right.” I knew he was joking… and they announced I passed THAT one with 100% correct as well. I hadn’t expected that, and neither had they. That was what I planned to do, but they said that nobody had ever walked in, taken two tests, and had a score like that — and pretty much insisted I try taking the Amateur Extra exam as well. I said I haven’t studied for it at all and really doubt I could pass, but eventually went ahead and took that one too. I didn’t pass, but I don’t think they’d have wanted to let me leave without trying.

After the paperwork was done, they invited me to hang around and chat with their group that was meeting next door for a bit. I did, and drove home.

Then was the frustrating part of the week: waiting for my license. I can’t transmit until the FCC issues my license, even though I had passed the exam. My handheld radio arrived later in the week, and of course I still couldn’t do much with it. Finally the FCC posted my license late yesterday so I was able to talk to people. It’s been fun and I look forward to doing more. I was able to talk to people 55 miles away while driving, and with suitable equipment at home should be able to do much more than that.

Several of the people I talked to were offering me tips. I’ve never seen a group of people so eager to help out someone new. It’s an amazing community and I think Jacob and Oliver will enjoy it one day too.

Hardware/Machine Reporting Tools

We have a tool at work, Kaseya, for our Windows machines. It handles updates, but also can report back information gathered from them: OS version, patches installed, time since last checkin, last user logged in, user most frequently logged in, plus details about hardware: RAM, disk size, serial number, etc. I’m looking for a tool that can do this on Linux as well.

Of course, we could roll our own; all the above is readily cleaned from standard commands plus examining /proc and /sys. But before we roll our own, we want to be sure there’s nothing else out there worth using.

Down the road, we might also like it to grow in another direction: centralized configuration, storing links between machines and people in a database, and generating DNS, DHCP, etc. configurations out of it. Whether that would be the same tool as this is another question.

There are, of course, expensive and overkilling well-known commercial packages to do this. We’re after something simple that gets the job done.

Any ideas?

Bicycling Update

I’ve been bicycling to work for awhile now. It’s become pretty much routine for dry days. I can reliably ride the 10 miles to work in less than an hour, even with heavy winds.

My biggest enemy right now: rain. My first few miles are on gravel and sand roads, which aren’t maintained to the highest of standards. When it rains, there will be mud. I ride a Trek 7.3FX, which I bought with the idea of just riding when it’s dry. It works quite well for that. But its slick tires don’t work so well in mud. Plus our mud is sticky, and the tires pick it up, then deposit it on the frame that goes around the wheel and the brake arm. So I have a mess to clean up.

My current dilemma is: do I buy a second bike for use when it’s wet, or there’s a chance of rain? My 7.3FX can’t use tires that are very wide, and a different bike of course could. There would be expense involved, obviously, but I would really like to be able to ride more often than I can now. Winter was pretty damp here and I didn’t get to ride much at all over the winter months. Or, would different tires plus fenders do the trick on the 7.3FX? (I’m thinking not.)

If I do get a different bike, then the question would be whether to sell the 7.3FX. I really like that bike, and imagine it would be faster on the 7 miles or so of paved roads that I ride every day. Perhaps I’d keep it as a fair weather or long-distance bike.

I plan to visit the bike shop tonight and see what my options are.

Some More Gopher Data

Yesterday, I invited you to download a piece of Internet history. Today I have unearthed a bit more data to add to it.

There is a new torrent with 1.5GB more data (3GB uncompressed). This includes the FTP site from boombox.micro.umn.edu/pub/gopher, which was a large collection of Gopher client and server software. Also included was ftp.unicom.com/pub/gn-tools, the old GN server, and wiretap.area.com. This last site was mirrorable via FTP, and included the UMN Gopherd .cap and .Links files, so it can be served up via PyGopherd. The full contents are available in my post to the Gopher mailing list.

Incidentally, thank you to everyone that has helped seed, download, store, host, and otherwise preserve the 2007 archive. It is much appreciated. I have contacted several institutions recommended to me in comments or emails to try to arrange a stable long-term home for the data.

Enjoy.

Update: This torrent is now available elsewhere; see this post for the most current location.

Moral obligations of Free Software authors?

I’ve got a bit of a problem.

I enjoy writing software. I often write software to solve some sort of problem that I’ve had. Usually virtually any code I write winds up in my git repositories, on the theory that it might be useful to someone else. Some of the code that I think might really be useful to people gets even better treatment. OfflineIMAP, for instance, has a very comprehensive manpage, heavily commented example config file, wiki, mailing list, public bug tracker, etc. Most of these I did the majority of the work to create, but OfflineIMAP does occasionally receive code and documentation contributions from others.

Now here’s my dilemma. For my purposes, OfflineIMAP is, well, finished. It does everything I ever wanted it to do, and does it better than I ever expected it would. There are some people that would like it to do other things; for instance, optimize performance for IMAP folders with 100,000 messages in them, do UTF-8 folder name translation, and retry a sync if a connection is lost rather than crash (OfflineIMAP was designed to crash gracefully and be automated, so this has never bothered me.)

None of these are features that I care about, and I don’t have much time to devote to OfflineIMAP these days. It is not an interesting problem to me anymore as, well, I’ve solved it already.

Yet I’ll be honest and say I feel guilty about the bug reports that are stacking up in the OfflineIMAP bug tracking system. OfflineIMAP is used by people that have an expectation for improvement. My efforts to hand over maintainership of OfflineIMAP have failed (the people have gone AWOL shortly after agreeing to maintain it).

This problem is even more acute for hpodder, my command-line podcatcher. hpodder works great and is simple. But I no longer listen to podcasts. At all. (I blame my Kindle for that.) Therefore I no longer even use hpodder. Again, I feel guilty for not working on it; for instance, when language changes broke its UTF-8 support, I haven’t gone in to fix it. Neither has anybody else, for that matter.

This leads me to a dilemma. If I do nothing with my code but toss it on git.complete.org, few people will benefit from it. Most people need documentation, packages for their distribution, etc. git repos don’t tend to show up highly in search engines. So, although technically I’ve shared things with the world by putting them there, practically speaking I haven’t done people many favors.

On the other hand, if I go the whole “responsible maintainer” route, writing documentation, wiki, mailing list, Debian packages, etc., then I have the problem of, well, actual users who want actual support. I feel bad if I’m not in a position to give it to them. Many people seem to have the expectation that software is never “finished” and will continue to be improved. (Ah, if only my name were Knuth I might stand a chance to evade that one. But only a chance, given all the TeX spinoffs.) This expectation, in turn, reduces my enthusiasm for publishing my code online as Free Software. Because now I can’t just toss it up there and say “help yourselves”. Now I get angry emails about all the bug reports piling up. On the other hand, I also get occasional small contributions via my PayPal “tip jar”, which are awesome and motivating.

Despite my grumbling, I do continue to maintain OfflineIMAP, primarily as a patch reviewer these days. I take an aggressive stance on quality, and when I get patches that add features without documentation, I usually write documentation for them before committing them. If I have evidence that a patch hurts quality, I yank it (as I had to do with IDLE support, which was a great feature, but the patch caused all sorts of stability problems due to its requirement of imaplib2.py). For that reason, I suspect, forks haven’t taken off.

So what’s a person that writes niche software to do? OfflineIMAP isn’t at the level of popularity of something like Gnome, or even debhelper, and never will be; its userbase consists of people that think that IMAP support in $MUA isn’t good enough. hpodder is the somewhat small domain of console-loving podcast listeners.

What are your suggestions? Should I abolish the bug trackers and just go for simple? Is there something more I could be doing to make the community feel more empowered? Is simple posting on git.complete.org not as bad as I thought?

Begin questioning my sanity… NOW

It’s been a long and wet winter here. We live down a dirt/sand/gravel road, and when it rains, it’s difficult to get a car down the road due to mud. And impossible to get a bicycle down it. As a result, I’ve only been able to ride my bicycle to work once since November, and that was in January.

Last Thursday, I intended to ride in to work, but discovered my front tire wouldn’t hold air. I had heard about a wonderful local bike repair shop, so I dropped off the wheel there. The owner replaced the tube and checked it out, and charged me, yes, $4 — including labor and the tube. Nice.

So today was my first ride of the season. I rode a total of 21.8 miles (35 km) today, which was probably unwise enough for being as out of shape as I am. It’s 9.6 miles each way to work, plus I did some errands over lunch.

But add to that the winds — 30 MPH (48 kph) with gusts to 43 MPH (69 kph). This morning, they were weaker and also mostly at my back. This afternoon, though, they were mostly a vicious crosswind. If you’ve bicycled much, you’ll know that’s less annoying than a headwind, but is still quite annoying and takes a lot more energy to battle than you might think.

So, I am now rather sore. And the question is: will I be silly enough to do this again tomorrow?

The answer to that probably depends on how late I stay up watching the Butler/Duke game tonight, as I have to get up an hour earlier on days that I bicycle to work.

I found that the bicycle rack at work — which, somewhat to my annoyance, was moved indoors last year — has been rather disused. It is in a rather dusty and dirty part of our manufacturing shop, and there were large metal bins completely blocking the path to it, which I had to move before I could park my bike.

Then, of course, it was the usual comments — which I take with a smile — about somebody that shows up to work wearing cycling shorts & shirt.

It should be noted that I change into professional clothes at work. But my commute is too long to wear them on the way in and expect to be presentable, non-smelly, and pain-free.

In any case, evidence that this may not have been the best day to start my commute: it hurts to sit at the moment.