by R.I. Pienaar | Aug 17, 2006 | Front Page
People are starting to realize a thing or two about Ubuntu and Linux on the desktop in general it seems. One of the big profile Switchers have gone back to OS X, Tim Bray details why he is going back to a Mac. He has some gripes with Ubuntu, frankly they are not huge gripes but apparently for him enough.
I think the bottom-line is he hates the Apple applications and never thought of trying Thunderbird and friends on a Mac, shocking, anyway so now he realized he can get those same apps on a Mac and not be data-locked into them he feels happier going back to the Mac
Well, I don’t know. Weirdly, now that I’ve realized that I can have a decent application suite that doesn’t lock up my data and runs on whatever OS/Hardware, my desire to get off the Mac has moderated.
He also touches on some of my general issues with Linux on the desktop, people seem to think they have to retain it as a free thing so they don’t bundle useful stuff and they don’t buy decent sets of fonts etc, I bet if Ubuntu releases a pay version that has fonts, flash, codecs and all that sorted out they’ll see a huge bunch of people switching, I’d pay for it.
Then there are the fonts. Anti-aliasing is an optional extra on Linux, and I wasn’t willing to do the sources.list wrangling to get the bleeding-edge allegedly-anti-aliased Emacs. Also, lots of fonts Windows & Mac people use every day just aren’t there on Linux. There are apparently some gyrations and downloads and things you can do to get some of them.
I couldn’t get Flash working (complaints about the amd64 architecture), which meant lots of irritating little holes in Web pages everywhere. Not being able to watch YouTube is a real time-saver, though.
I think people want to just get on with it and not have to muck about with bullshit options these-days, I’m sick of fiddling with fiddly software to get simple things working, and that’s the achilles heel of Linux Desktops.
UPDATE: Scoble also sounds in on the font issue, he mentions the cost of real fonts and so forth and also calls them the achilles heel for Linux, freaky.
by R.I. Pienaar | Aug 10, 2006 | Code
I’ve several pairs of Cisco PIX failover clusters, till now I’ve never really monitored their status because I do not have snmp-trap servers but today I discovered one pair did a failover due to a cable problem a while ago so I figured it’s time I do something about it.
I’ve written a quick guide on using Nagios, Net-SNMP and a few MIBs from Cisco to monitor it and to alert you if any change in the status of your failover clusters happen.
You can get the full document on my Wiki at http://www.devco.net/pubwiki/PIX/MonitorFailoverWithNagios
by R.I. Pienaar | Aug 9, 2006 | Code
MySQL has an option to log all queries to a log file, stupidly though you need to restart the server to start/stop this log, its a bit lame, it also adds a lot of overhead to your box. I had the idea some time ago to use libpcap to figure out what gets sent to the server and started the code, I’ve mostly finished this now.
The MySQL protocol is undocumented but there is a reverse engineered protocol doc here. It is a tad outdated and I’ve found some queries that does not get parsed perfectly using the info there, I’ll look into those some more.
Here are some sample outputs from my code:
# ./mysqldump.pl -i mysql.cap
17:08:44: SET autocommit=1
17:08:44: SELECT last_insert_id()
17:08:44: rollback
It also has a more verbose option:
# ./mysqldump.pl -i mysql.cap -v
MySQL Packet:
Length : 24
Packet Number : 0
Packet Command : 3
SQL Command : SELECT last_insert_id()
Packet Header:
Source : 192.168.1.1
Dest : 192.168.1.2
S.Port : 47241
D.Port : 3306
Length : 77
Timestamp: 1150128523.750337
I could make the script do its own dumping using libpcap it’s pretty easy but I prefer to only let it read tcpdump files, we get a LOT of queries (> 600 per second) and I don’t want slow perl code to affect the servers, tcpdump is pretty fast and efficient.
I use Net::Pcap and NetPacket::TCP to extract the packets from the file, decoding the MySQL commands is pretty easy then:
$plen = ord(substr($pkt, 66, 3));
$pnum = ord(substr($pkt, 69, 1));
$pcmd = ord(substr($pkt, 70, 1));
$cmd = substr($pkt, 71);
The offsets etc is defined in the documentation linked too above, $cmd will now hold the actual query ran against the server, but only where $pcmd == 3.
I’ll upload the code for this in the next few days just letting a few people do some beta testing for me first.
UPDATE: You can now get the code here.
by R.I. Pienaar | Aug 6, 2006 | Uncategorized
I’ve heard about AppZapper from Mike and had a look at it but wasn’t quite sold on it.
Today I got the latest release of the Neat Little Mac Apps podcast and it reviewed this app, it also includes a promo code for the next 3 weeks which gives you $3 discount. For less than 6 pounds how can you say no after listening to that review? I grabbed a copy and really like it, if you’re into installing and uninstalling apps a lot on your mac, you should get it too.
The basic idea on a mac when it comes to installing and uninstalling software is simply to drag the application anywhere you want and thats all. When it comes to uninstalling, just drop it in the trash, simple. Unfortunately most applications have a lot of support and related files, things like preferences, logs, caches etc and the typical uninstall method does not get rid of these.
This is where AppZapper comes in, it hunts down all the crud that an app puts everywhere and deletes those along with the app, neat. Using the example in the image above, if I had just done the usual drop-in-trash method of uninstall I’d have left on my drive 57MB of crap.
My home directory is full of junk, should have bought this app ages ago.
by R.I. Pienaar | Aug 5, 2006 | Uncategorized
It’s simple, the community around it are a bunch of bigots. See this post on macslash.
The poor guy asks for something simple and gets flamed to death by a bunch RoR idiots who are acting like they need to justify their choices, no thank you. You’d swear its the new third reigh.
There are countless reasons why someone would want to stick to PHP, why does he need to face up to this kind of abuse just because he made a choice?