Poker Night!
It’s neighborhood poker night here at Park Square. Charles Graham, one of the residents, hosts a great little monthly party where a few guys get together and talk smack. Well, that and win small amounts of money off yours truly.
We suddenly got a Montie Beach Civic Club Newsletter on our doors this afternoon. Until now, I’d tried to dig up information on the club, but gotten stonewalled. The newsletter has info on how to join, and I’m all over it. This’ll be fun. They sorely need somebody to take over their incomplete web site, and I’m just the fella to do it.
Voice over IP
There’s a great open source PBX called Asterisk that lets you run a full-blown office phone system off a single Linux PC. It’s very robust, with voice mail accessible over the web, roaming calls, call groups, everything you’d expect to find in a PBX costing tens of thousands of dollars. Best of all, it works with really cheap phones, like the $65 Grandstream BudgeTone. The phones themselves even have built-in web servers, so you can configure people’s extensions from your desktop with an ordinary web browser. Talk about management-friendly – the polar opposite of those expensive proprietary systems.
Anyway, if you put in Asterisk or if you’re playing with Voice over IP, you need to check out e164.org. It’s basically an open directory of VoIP phone systems. If you run an Asterisk server at your business (or any VoIP system, for that matter), you can tell your Asterisk server to use e164.org for lookups. Then, phones hooked up to your Asterisk server can call phones hooked up to my Asterisk server without any special handling or routing – they just look up my phone number in e164′s DNS servers, and presto, the call is routed without any work on e164′s end.
At first blush, this doesn’t sound special: it’s just like a web browser hitting a web page. Your browser looks up the IP address for www.brentozar.com from a DNS server, and then connects directly to my machine. Big deal, right?
Well, the big deal is that most people are using third-party VoIP providers to accomplish this, like www.FreeWorldDialup.com. That’s like using a Hotmail address for your business email. Sure, it might have worked fine when Hotmail first started, but as it grew, Hotmail added all kinds of restrictions like maximum mailbox sizes. Then if you wanted to change away from Hotmail, you had to tell everybody you knew that your address changed, and was finally something professional like me@mySuperCompany.com.
If you’re doing VoIP, do it right from the beginning, and spend the time setting up your own Asterisk server and using e164. If not, get together with Linux geeks in your area and do a community Asterisk server. The server doesn’t have to be in the same network as the phones: for example, I can buy my mom a $65 BudgetOne phone, ship it to her house, and have her plug it into her cable router. Instantly she’s online and can send and receive phone calls (as long as I configured the phone correctly with a proxy). You could do the same in your neighborhood or community – and if you use e164.org, you’ll be able to route calls automatically without having to do any heavy lifting.
This man wrote a pretty dang good blog entry talking about the same thing, which is what got me fired up about writing it as well. E164.org has the ability to save VoIP from becoming a bloated mess of standards, and I hope it succeeds.
Hallelujah – I’ve got mail
Three solid days of work have given me the ability to both send and receive email using Courier under Linux. Something that takes literally ten minutes under Windows (well, and a pirated copy of various software programs) finally works under Linux.
I succeeded in getting SpamAssassin working to filter my email, too, thanks to these instructions on installing Courier and SpamAssassin. Many praises to this fella.
Still struggling with Linux
After what can only be described as a struggle, I now have smtp mail working – meaning, I can receive mail. I can’t send it yet, though, because it keeps saying my passwords aren’t right, even though I know they’re right and I can log in correctly. At least the mail is coming in, though, so I went ahead and cut over to Linux as my mail server.
The biggest part of the struggle is the “documentation” involved with open source products. There are apparently far more people willing to code programs than there are people willing to write good, intuitive documentation. Makes sense: most programmers I know hate to write documentation, and when there isn’t any money involved, the documentation is going to suck.
Fixing setup problems with Courier, the email program I picked, meant surfing through countless forums looking for people who experienced the same problems I had. There was absolutely nothing enjoyable about this process whatsoever. Usability hell. I literally grimace when I walk up to this computer now because there’s so much work to do, and the work just isn’t any fun at all. It’s not the joyous discovery of new possibilities anymore: it’s the grim acknowledgement that when you pick Linux software, the first thing to look at isn’t the feature set, the project’s vitality, or the project’s history. The first thing to look at is the documentation, and that will tell you if the installation will be a ten-minute thing or a two day, caffeine-fueled grumble-fest.
Courier was a grumble-fest. It’s over-documented in a bad way: there are hundreds of pages about obscure setup options, but not a straightforward howto guide that shows a basic, simple one-domain installation. I found a few third-party ones with bad syntax that referred to outdated options, and threw my hands in the air.
Sure, I could sit down and write my own. But after two days of arm-wrestling command line syntax, I’m ready for a break.
Volvo damage – $2,000
Went around to a few body shops this weekend for estimates, and the Volvo’s front end damage looks like around $2,000. That assumes there’s no damage underneath the bumper. There’s a huge piece that holds both front lights in place, and if it’s broken, that’s another $800. Ouch.
I realized that getting this car fixed is going to cost more than my first two or three cars cost (individually, not added together). Wow. Thank goodness for insurance. Geico has been great, taking care of everything, aside from a few errors in scheduling.
This weekend, I finally got around to landscaping the backyard with pine bark nuggets. I started building an ambitious 12′ long planter that’s turning out pretty well, better than I’d hoped. I’ve been taking digital pictures through the process so I could put up a page on how to build a similar one. I’ve been disappointed by the low number of free woodworking plans available on the internet. I guess I should probably do something about that.
Working with Solaris
I’m in the second round of Java training this week. When I walked in on Monday, I headed straight for the Solaris workstation: I figured now that I’m migrating to Linux, I could take this knowledge and sit down to any Unix box and start work. Sure enough, I’ve been able to do everything I needed to do pretty easily. While I’m not growing a beard and wearing suspenders, I am definitely starting to assume the holier-than-thou attitude of a Linux user. This operating system rocks – well, when it works. Ten years from now it’ll be ready for every desktop – but it’s definitely going to take that long.
I mentioned that to somebody and they noted, “Haven’t those Unix-style operating systems been around a lot longer than Windows? Why did Windows get so polished, so fast?” Because it aimed for the desktop first, going for easy usability rather than stability and security. Windows beat *nix to the usability milestone, but *nix beat Windows to the stability milestone. Now it’s a race for each to overcome the part they were missing.
You can’t add stability back in, but you can add usability back in. The *nix operating systems are going to win this one, but will it be enough to actually get into every desktop? Can *nix overcome Windows’ market share? Linux is technically better than Windows, but Betamax was technically better than VHS, and we know how that one went.
Am I qualified to be asking any of these questions? Of course not, but I finished with my lab exercise early. Back to work.
Installing JavaHMO on Xandros
I’ve got a Tivo with the Home Media Option, which lets your Tivo play music from your computer’s MP3 collection. JavaHMO is a third-party server program that is a vast improvement over Tivo’s software, which lets your Tivo do things like show the local weather forecast, the movie schedules at your local cineplex, show internet webcams, and even listen to Shoutcast radio streams.
After installing JavaHMO 1.2 on the Xandros Desktop 2.0, I didn’t get any errors, but JavaHMO didn’t start and didn’t write a log file. Every time JavaHMO starts, it’s supposed to write its logs to /var/log/javaHMO.log. You can start it manually by going to a command line and typing “jhmo start”, and if it doesn’t create the log file, you need to do some work to your system.
According to the JavaHMO FAQ, you have to do a few special steps to get JavaHMO running on Debian, but some people may not be aware that Xandros is based on Debian. Even if you know that, what needs to happen after the JavaHMO installation isn’t exactly intuitive.
First, install the “equivs” package in Xandros Networks. Then, logged in as the administrator (that’s what Xandros calls root), follow the directions at http://www.debian.org/doc/manuals/debian-java-faq/ch11.html#s11.2 to build the Java dummy control packages. After building the packages, they tell you to use the “update-alternatives” command, but the syntax they give is wrong, and there’s an easier way anyway. Instead, just open Xandros File Manager and double-click on each of the .deb files, choose Launch Xandros Networks, install. The dummy packages have dependencies, so do the java1-runtime-dummy, then java2-runtime-dummy, then the java-virtual-machine-dummy and the rest in any order.
While still logged in as root, start the terminal and type “jhmo start”. Nothing spectacular will happen, but look in /var/log for a file named javaHMO.log, and if it’s there, at least you got it to start.
Wasn’t that fun? And who says Linux isn’t ready for the desktop, eh?
Building a workbench
I built a workbench using a kit from Simpson Strong-Tie this weekend, and I’m quite proud of it. Simpson’s directions were easy to follow, and I built the work bench in a few hours of pleasant labor. It’s solid, it doesn’t wobble, and I can’t say enough good things about their self-drilling Strong Drive screws. Those things are great – very quick, very strong.
I modified their plans to build a 6′ long version instead of a 4′ one, because I wanted it to span the width of our one-car garage less my two garbage cans. I wish they’d have supplied the dimensions necessary for the optional 6′ and 8′ versions. After some careful calculations, I figured out the optimal cuts to build a 6′ workbench with only 6 2×4′s, but I bet most people wouldn’t be so careful.
Now I’ve got my tools displayed up on the pegboard (not visible in this photo, taken before I put up all the pegboard hooks) and I can park the injured Volvo in the garage. We’ve got three cars at the moment while we wait on the Geico crew to do an estimate on the damage.
I’m loving this woodworking thing. After building virtual stuff all week, it’s entirely pleasant to build structural things that you can actually put your hands on.
The Volvo got kissed
It’s been a couple of weeks since I’ve done any blog entries, and what you see here is probably the second most significant thing that happened over that time span. Erika got in a very minor accident with our Volvo C70: she was stopped, waiting to turn, when a car pulled out into an intersection, t-boned a minivan, and the minivan kissed the front of the Volvo before coming to a stop. Everyone involved was unhurt, thankfully, and the other two vehicles had more damage than this.
Unfortunately, this happened on Thursday, and I was slated to head out of town to New Orleans on Friday morning. Erika thought maybe it was a bad omen, but I blew that off. I’ve got rental car coverage with Geico, my wonderful insurance company, so I figured I’d just get a rental and do the road trip anyway. However, error after error on the part of Geico and Enterprise Rent-A-Car kept me running around town for four hours before I finally got a replacement vehicle. Then I couldn’t find my sunglasses or my insurance paperwork, and I tracked that down to one of the Enterprise offices I’d had to visit. I hit the road to New Orleans around 2pm, and the first CD I put in was an old Robert Cray blues album. The first song talked about staying close to home, and at that point, I decided I’d probably had enough bad omens for two days. I turned around, went home, and fell asleep.
The most significant thing to happen recently, though, is my newfound love of woodworking. Okay, woodworking is a bit of a glamorous term for the kind of work I’m doing – more on that in the next entry with a photo.