Archive for category Uncategorized

Hard drives and history

When I started at the railway in 1995, the fellow from the Operations area that took me on the tour of the data centre was proudly boasting of the new disk subsystem they had just installed for the mainframe.  ”This new subsystem gives us almost half a terabyte of DASD,” he beamed, to the delight and awe of his guide-ees.  I don’t recall how much it had cost, but for some reason $1/MB seems not too far off the mark.  It was a huge full-height frame, running on three-phase power and coming close to the floor loading limits for the room…

Tonight, I went into a store — not even a computer products store, mind, just a general office goods store — and purchased one terabyte of disk in a package that runs off an AC adaptor and I can fit on the palm of my hand.  And, the cost was considerably less than $1/GB.  The unit was on the shelf, with another of the same type — no special order or promotion, just normal store stock.

The madness doesn’t end there: for $50 more I could have gone across the road to a different store and got the network-attached version.  That store had four of those units on the shelf.

The unit I bought is the WD MyBook Premium Edition II.  I looked for a while at the network version, (MyBook World II) but although the embedded OS is Linux-based and a throwaway line in a Wikipedia entry mentions an Open firmware can be placed on it, I could find no evidence that this is the case.  The unit only provides Windows shares, and that’s not so useful to me.

I configured my device in RAID-1 mode, so the 1TB (I should say 1 trillion bytes, as usable base-2 capacity was about 932GB) becomes about 465GB.  I’m attaching it to the Power Mac using Firewire-800, which should make for a nice storage area for video editing and the like.

Shepherd and TOR

The install instructions for the Shepherd TV guide data grabber say that “Some grabbers work faster/better if they can operate using The Onion Router (tor)”.  Hmm.  Riiight.  I can think of an alternate wording, but as this is a public blog I’ll keep it to myself.  :)

Whither Samba?

I realised the other day, after restarting Samba on the main server for the umpteenth time to clear about 800 nmbd processes that were overrunning it, that I barely use Samba any more.  It dawned on me that I have an almost entirely Microsoft-free household, and that there’s no need for me to run Samba at all.  It was a very pleasant realisation!

My main machine that ran Windows on an almost-daily basis was the Sony laptop, and it’s running Kubuntu Feisty nowadays (except on rare occasions when I boot XP).  Susan’s laptop is the holdout (running XP Home because of a crappy wireless card that I can’t get working with ndiswrapper), but she does no file server access — she prints occasionally, but converting her printer connections to IPP will see that off.

Having said all that though, I just know I won’t remove Samba.  It’s just too…  I don’t know…  It’s like that shifting-spanner at the bottom of the toolbox — your dad always taught you not to use shifters because they burr the nuts, but there’ll always be that one Imperial bolt somewhere that your Metric ring-spanners won’t fit…  Or the overtightened nut that someone else already burred with their shifting spanner…  Or the days when you’re just too lazy to take all your separate spanners with you.

Probably as far as I’ll go will be to remove Samba from automatically starting on the server.  For times when I boot the laptop to Windows and need something I’ve kept on the server, I can start Samba manually.

A home network that’s free of SMB/CIFS…  Yay!

Photo gallery moved

To anyone who might have looked at the photo gallery at some time, it has moved!  You’ll now find it at http://veejoe.net/gallery.  Sorry for any trouble!  It also hasn’t been updated for a while, but this will be changing as well.

The newer version of the software I’m using has RSS support, so if you want to stay up to date with photos of Nicholas (and who wouldn’t!) you’ll be able to pick up a feed and go.

Explanatory text (or, why did it move): I’m distancing my personal stuff from the company domain, something I’ve wanted to do for ages but just never got around to.  I got a bit of a prod from someone who wanted to look at the gallery but found it inaccessible, so I did the deed.  In time, the move will apply to pretty-much everything veejoe.com.au, including e-mail addresses…

Go TGV Go

Okay, not computer hardware, but I don’t have a category for trains (hmm, might have to fix that…).  News from France early this month that the TGV set a new rail speed record of 574.8 kph!

Of course some anti-Francophiles just have to mention that they couldn’t break the overall speed record for a train, which still stands at 581 kph, set by a Japanese mag-lev train.  For me though, the fact that good ol’ steel-wheel-on-steel-rail managed to get within seven kilometres per hour of a mag-lev train says a lot about the French technology.

It’s probably fair to say though that the mag-lev rig probably has a better chance of entering service at speeds approaching the record, while this TGV run was purely a record-setter — a special train set up for the run, with fewer coaches, larger wheels, bigger motors and higher AC tension on the overhead.

Riding TGV at speed is still one of my life goals.  The closest I’ve come so far is Thalys from Amsterdam to Brussels — it runs the original TGV stock, but in Holland it doesn’t run to top speed because it’s only on standard track (not the high speed purpose-built tracks built for TGV in France).

There’s some video of the latest record floating around the ‘Net (a search for “TGV rail speed record” on YouTube will hook you up) that is just astonishing.  People standing on rail bridges while the train flashes by underneath them.  A pan following the train by a camera that must have been a mile away to be able to keep up with it.  Some footage from an aircraft matching speed — something impressive in itself, a plane flying at that speed while low enough to be able to keep a ground vehicle in a fairly close camera shot!

Okay, obviously I’m a train nut… but this is COOL!  Vive la TGV!

${DEITY} bless digital photography

Susan and I went to a wedding yesterday — one of Susan’s cousins, who I’m sure many in the family, including her own mother, thought would never get married.  The ceremony was quite formal but quite quick… Being held at St Stephen’s Cathedral in the city, quite likely one of the more popular wedding venues, time was of the essence — indeed, the usual “bride is always late” tradition was dispensed with.  During the wedding reception though, something special happened that I’m sure many would regard as the highlight of the day.

The wedding photographer was introduced by the M.C., and proceeded to announce that he was going to do “something special” for everyone to remember the day.  He directed everyone’s attention to a screen, and started a slideshow of the photographs taken so far in the day, set to music.

I had noticed during the ceremony that the photographers were using DSLRs (Nikon mostly, if you’re into the details).  In case you still had doubts, it looks like film really is dead!

I was watching the people in the room while the show was playing.  There were tears in some eyes.  It was amazing to see how a technology shift could add a new dimension to something, the way that simple five-minute slideshow did to that wedding dinner.  I wonder if it was through something like that, the use of digital not just to replace film but to transform the way images are used and presented, that made Kodak finally say “okay, you win.”

People who were at that wedding (and I’m sure every wedding that photographer does) will be talking about that for weeks, perhaps months.  All for a few minutes’ work in front of a computer (heck even I’ve thrown something together with iPhoto and a swag of Ken Burns Effect in about half an hour, and that was starting from scratch).  Kudos to artists like that photographer who can bring such joy and happiness to people through their art (and a splash of tech!).

To Michael and Cassandra, the very best of good wishes for your future…

Alcune volte basta un attimo per dimenticare una vita, mentre non basta una vita per dimenticare un attimo: quello che oggi vivete e che durer? tutta la vita!  Possa la realt? essere pi? bella dei sogni che vi hanno portato oggi all’altare.  Il mio augurio pi? affettuoso in questo giorno di festa.  Possa il Signore benedire la vostra unione.  Possano i vostri giorni essere pieni di amore, cura, sostegno e passione.

…which I’m told translates as “Sometimes an instant is enough to forget a life, while a life isn’t enough to forget an instant: that which you are living today and that will last your lifetimes!  May reality be more beautiful than the dreams that have brought you today to the alter.  My best wishes in this day of celebration.  May God bless you on your wedding.  May your days together be full of love, care, support and passion.”

Making the phones work right

I’ve had a good productive few days with system things recently.  Probably the biggest improvements have been on the phone system.

The cutover to Trixbox changed a lot of how we worked with the phone system — and not all for the better.  Losing LDAP caller-id lookup and other features was a bit of a PITA, and honestly was a bit too much to sacrifice just to get the easy configurability of FreePBX.  I blogged about how I restored the LDAP caller-id lookup, and that the LDAP phone directory was on the way back, but I remembered one other thing that was really useful in the previous setup — voicemail.

In an office phone system, you would generally associate voicemail with an extension.  FreePBX follows that model, and makes it really easy to set up.  For a home system, however, it’s not ideal, because (at least in my setup anyway) there are a number of extensions that are all in the same ring group and are actually all for the same person (or people).

Right at the start, I configured this in FreePBX by setting up “Other (custom) device” extensions with Voicemail enabled, and disabling voicemail on all “real” extensions.  In the setup of the real extensions, I set the “mailbox” field in Device Options to be the correct voicemail number that extension would belong to, so that the Message Waiting Indicator (MWI) worked correctly.  The trouble was that getting into the voicemail system was not a one-touch deal any more, as the default FreePBX voicemail access feature codes were all set up according to the mailbox-per-extension model.  So we had to dial the Voicemail number (a non-intuitive number starting with *98 according to FreePBX) and log in with a password.

I thought about setting up a custom application (FreePBX-speak for a hand-written context in extensions.conf), but thought that there must be a way to get the existing code to work…  but after looking at it for a while, I decided that a custom app would be much easier to get working my way, and be less likely to break in a future FreePBX release.

The end result was incredibly simple.  Since I had already told FreePBX the desired mailbox for each real extension (the MWI config I mentioned earlier), I simply wrote a few lines of dialplan to extract that from MySQL and send the caller to that voicemail box!  I was expecting a lot of work, but I think it took longer for me to get the MySQL userid and password right than it did to get the code correct. :)

Other things I did were a rearrangement of the queue and IVR for the work phone line, and I made a bunch of system recordings for queues and voicemail.  There’s very little left for the phone system now!

Hackergotchis again

I fixed my Planet mod that creates the hackergotchi <img> tags in the RSS feed.  So Dudes, if you’ve got a hackergotchi and want it in your Planet entries, let me know!

I’m really quite confused now

I gave up my former desktop machine to use as the new combined Asterisk/MythTV system.  This means I’ve been using various machines scattered about the house to do home system stuff, and it’s a bit frustrating.  At the time I commandeered the other machine, a system based on Core 2 Duo was the most likely contenderto replace it — even though I’m a big AMD fan, Intel seemed to have the bang-buck ratio covered.  But what a difference a few short weeks can make!

In the last few weeks, AMD have released Athlon 64 X2s with higher clock speeds, and correspondingly dropped the price of the existing processors.  The prices of some of the motherboards I was eyeing have dropped slightly as well.  AMD was back on the agenda again!

Then, I saw a listing for the Athlon 64 4×4 chip, which uses Socket F rather than the Socket AM2 of the X2 Athlons — Socket F being the same socket used for the newer Opteron parts.  So now, putting a Socket F board into the desktop machine gets a look-in… but then, I could upgrade the Opteron server machine and cascade the current dual-Opteron rig to be the desktop…

Choices, choices!  Maybe I should just stick with the old laptop — dud hard disk (I need to turn the machine on its side when I power it up) but it works okay…  kinda…  Ooh, ASUS M2N32-SLI Deluxe…  shiny…

LDAP Caller ID again!

After a hiatus that has lasted since I first cut the phone system over to Trixbox (probably a year or more), LDAP caller-ID name lookup is working again on my Asterisk system!  A lot easier to maintain than the original version I implemented ages ago, too.  A bit of PHP code does the trick!

I’m using FreePBX for keeping my Asterisk box configured, and it’s working great — but there are a couple of tricks that I just haven’t quite been able to work around.  You see, FreePBX applies a few assumptions that work fine in a small office environment (like voicemail-per-extension) but don’t map to home use (one voicemail for the household).  The biggest aspect of FreePBX is that it maintains the dialplan in a set of files all of its own making — you can extend it using “custom applications” (basically a reference to a dialplan file of your own creation), but I’d be concerned about an upgrade trenching custom dialplan files…

My original LDAP caller-id lookup module implemented a new dialplan app (something like  LDAPCallerName).  I inserted it into the dialplan at the relevant place, et voila, name lookup.  But even if I could port my old code to the later revisions of Asterisk, or use the community LDAP lookup module (which was written just a little while after I wrote mine), how do I add the lookup into the dialplan?

FreePBX has a module called “Caller Name Lookup Sources”.  Out of the box, it has the types “Internal”, “ENUM”, “HTTP”, and “MySQL” (“SugarCRM” is listed as well, which I figured would be tied into the SugarCRM system that’s provided with Trixbox, but when you select it you get “not yet implemented”).  MySQL doesn’t help me, as I don’t want to transfer data out of LDAP into some other store.  ENUM is a name lookup system based on DNS, and having seen a lot of work on LDAP-backed DNS servers I thought this might be interesting… until I realised that I’d likely have to spend a heap of effort adding the DNS attributes and object types to my existing LDAP data (assuming that I could use the data in its existing structure at all).

I had disregarded the HTTP method as overly clumsy — on a single host, contacting the HTTP server to run a script to get data from the LDAP server just seemed too much overhead to me.  After I had a think about the available options though, it made a lot of sense — and half-an-hour after I decided to do it, I had a working prototype (and I consider myself very much a PHP newbie).  My script has a few nice features that tie in with the way the Caller Name Lookup module works in FreePBX, including the thing that I found was missing in the Asterisk LDAP module — the ability to drop leading zeroes from the number to be looked up, allowing you to have numbers stored in your database in international format.

Next to come will be the directory lookup CMXML app, that will allow the “External Directory” function on the Cisco phones to work again!