05 May, 2007

Photoshop 10


Adobe's Creative Suite 3 is pretty neat. I am really impressed with how far Photoshop has come. I find myself wondering whether the interface is as nice on Vista as it is on the Mac. It occurs to me with all the fancy bells and whistles (and batch operations!!) I will require a machine with big brass clanking ones. And, as I don't especially feel like paying Apple $7,000 for a machine, it will be a PC.

The software is capable of taking garbage images (f-stop set at 18 instead of 2.8 for example) and rescuing them. I have only tried this with NEFs, so it may be that the data in the RAW files contains "the picture I really meant to shoot."

Also, hadn't heard of this "DNG" format, which Adobe tells me is a "digital negative." Maybe it's an agnostic RAW format. Wouldn't that be great?

02 May, 2007

Rate my recruiter


I've been mulling over building a Ruby app to list the recruiters who contact me and what they're looking for. I get maybe fifteen of these emails a day. I try to reply to all of them, telling them that I'm not presently looking, and thank them for their time. They always ask me to refer people I know who are looking (e.g., if I turn down a Solaris/HPUX job, I might know somebody who could do the job, and who is looking).

However it kind of feels like it would be advertising, and I'm sure there's some liability in there. Also, by publishing their contact information, it almost ensures that they will get a lot of emails from people who don't fit the profile they're looking for (which are admittedly pretty poor).

Being Ruby on Rails, it wouldn't even be really hard to make it user-interactive, where people could add new recruiters to the database.

I'm not proposing re-implementing Monster or Dice or any of that, but it seems that there are companies (Red Hat for one) who are looking for a specific type of person. And, that type of person is the sort of person who's likely to be in my social circle. And it always stings to see an entry on advogato about somebody being laid off or that they're having a hard time finding work.

And golly, I'd have to host the pig. Dreamhost for the win, I suppose.

01 May, 2007

Building irssi on Darwin

gordon% uname -a
Darwin gordon 8.9.1 Darwin Kernel Version 8.9.1: Thu Feb 22 20:55:00 PST 2007; root:xnu-792.18.15~1/RELEASE_I386 i386 i386

  1. Build pkgconfig
  2. Build glib
  3. Build GNU gettext
  4. Build irssi

Why does this have to be so hard? Sure, I could use fink or DarwinPorts (or whatever it is they're called), but then I trust that somebody else built my software correctly and without backdoors. At least rolling from scratch I have a little faith in what is produced. It also means that I have the source around if I need to hack something into it (whereas downloading a tree you inevitably wind up with a different copy than the one you're running).

But, really, isn't irc just a glorified telnet client? irssi is very shiny, no question about that (thank you, Sungo) but would it be so hard to ask for a --dont-build-stupid-shit flag or a --glorified-goddamned-telnet flag. I don't necessarily want ircII, but there's no reason irssi has to be so complicated.

And, if you really want to go digging and start fucking jihad, the perl implementations of irc clients and servers take orders of magnitude less code to run. Because, really, we're talking about text over a socket, right?

Speaking GPS

This gorgeous piece is from Aquamist. It's a dual-pump setup for Perrin's 600+hp H6 STI. I could totally put that together myself.

I speak a number of protocols, as most of us do. The old "telnet to the mailserver and ask it what's wrong" kinds of tricks. I've never, however, spoken to a GPS receiver. Boy, is it a chatty sonovabitch. ZTerm couldn't keep up with the data coming across the port, and would continue to spew even when the receiver was disconnected.

$GPGLL,36000.0000,N,72000.0000,E,000213.991,V*12
$GPGSA,A,1,,,,,,,,,,,,,50.0,50.0,50.0*05
$GPRMC,000213.991,V,36000.0000,N,72000.0000,E,0.000000,,101102,,*38
$GPGLL,36000.0000,N,72000.0000,E,000212.991,V*13
$GPGSA,A,1,,,,,,,,,,,,,50.0,50.0,50.0*05
$GPRMC,000212.991,V,36000.0000,N,72000.0000,E,0.000000,,101102,,*39
$GPGGA,000213.991,0000.0000,N,00000.0000,E,0,00,50.0,0.0,M,0.0,M,0.0,0000*77
just going on and on for pages and pages. Tens of megs of pages, even. The GPS receiver in question is a Pharos GPS-360, which is approximately the cheapest GPS receiver ever made because it is made largely from mulched babies, and distributed free with Microsoft Streets & Trips (which is kinda garbage compared to Google Erf Pro).

Anyways, it's speaking NMEA, which is mercifully easy to parse. I thought to myself, I could just write a perl script to sit on the socket (with the '360, it's actually a serial device with a serial to USB adapter inline. That itself requires a driver, which is available on sf.) and spew out data to syslog or whichever (I want to verify the top speed of our STI – everyone says it's electronically limited at 145mph, but we've seen 155+ in the car. With telemetry, this is easier to prove). Of course, because the protocol is plaintext and serial (as opposed to parallel, which is harder), somebody has already written a module that speaks NMEA and can return perl objects with locations, etc. The API looks a bit bare, but I'm sure I can embrace and extend where necessary.

So I think the first trick is to write an OS X Dashboard Widget, since they're pretty simple to put together. After that, I may buy one of the more fancy GPS's, like this one from Arcom. There are amazing things you can do with robotics if you have the right sensors. Even LIDAR is coming down to commodity pricing.

I was asked about a week ago, "do you have any hobbies?" My answer was "my job is my hobby." It seems to me that I could spend some of my time in Taipei building a solid EE foundation from which to work up. And, I just love to solder (there were not "solder suckers" when I was a kid playing with breadboards. These things have to be one of the coolest inventions ever.) Something about the smell, or maybe just knowing that you're making a machine. Maybe the adjective for the feeling Asimovian. An Asimovian feeling of creation sent a chill down his spine as the GPS daughterboard and avionics daughterboard spoke for the first time. Hm.

Okay, I'll stop before I get too romantic.

So how did we get from GPS to 600+hp STI's? Well, when I get my own software figured out for the GPS receiver, the next step is to buy hardware. Like PC/104+, and things like that. The whole point of the entry is that I am looking forward to hardware hacking, and since I have such a strong software background, I am expecting to be able to do things that inspire sequoia-sized wood (at least for myself; I'm sure somebody on advogato is going to complain that I don't need 600hp, and I kill babies and trees. They'll be cheerfully ignored).

(note: copious links added specifically because many of us never get a chance to see this sort of stuff. spend an hour or two. look around.)

Let's sing the doom song.


Today is bath day, for both cats. Natasha is on the left, Killer is on the right. And yes, I took photos of them and published them on the internet, violating the Geneva Conventions requirements for treatment of prisoners. But, they'll smell much nicer afterwards. And, bathing a cat is such a traumatic experience for both the owner and the cat that I can probably dig right into the nasty emails I have waiting in my inbox, and quite cheerfully at that.

(note: the cats were given a sedative before the water started, so it's less traumatic for them, but it's still no picnic.)

Red Hat is hiring

They are looking for consultants, sales engineers, and a few instructors. I mention this because they keep pestering me, and I don't really know anyone looking right now. They say they want a bachelors and would prefer RHCE's, but part of the ramp-up is training. Rates are attractive, and there is a bonus schedule. The recruiters who have been contacting me have been saying Red Hat would like to grow their business by over 50% this year. I've been told they're trying to hire on as many as thirty new people.

Red Hat is located in McLean, Virginia, which is a nice enough place for tech workers (I don't know if they have relo). It's close to DC, but not too close. I've worked with their employees in the past (as a customer, and as a competitor), and I've liked every single one of them.

Just so the email addresses aren't way out in the open, I'll post a comment to this entry on my blogger page with the people to get in touch with if you want to send along a resume.

30 April, 2007

Still no luck with the mini's wireless card

Despite help from Open Species on advogato, I am still stymied by the same error message. Looking through the console log, I see:

KisMAC[314] Error could not instanciate driver WaveDriverAirportExtreme

And then bazillions of chmods and chgrps (presumably as it moves kexts around for the wireless). I think I'm just going to give up trying to get the mini to be some surreptitious wireless pilferer/cracker. I just wish I knew why. It completely baffles me that the card DTRTs on one machine, and FOADs on the other. When they're supposed to be identical.

And, (Mousse, pudding, Open Species, whichever you prefer to be called), I followed your directions, but I am just not ready to delve into the Darwin kernel. I was just starting to understand the 2.4 Linux kernel when 2.6 came out, and I've more or less given up on being in there, elbow-deep and hacking. Rather, I'll sit here and let brave people such as yourself go at it, submit patches as necessary, and work on other things like binutils, fileutils, and so on. Thanks for trying to help out, though.

Features I'd add to Skype

  1. Understand the Mac address book. Don't require me to import the entries from it, just show them to me in a pane. Alternately, a little "SkypeOut" button could be added in Address Book.app, but that would break a wall I'd rather not break.
  2. Grouping of contacts. Either through the Address Book (which has groups), or through its own mechanism. I want to be able to put coworkers in their own group that I can expand or minimize when needed. Considering iChat, Address Book and many other applications (generally instant messaging applications, which Skype sorta is) have this feature, it seems to be kind of an egregious omission. Probably not hard to add, and maybe even somebody at Skype is reading this.
  3. Handle people with multiple phone lines better. I know somebody who has two home lines, a mobile, two office lines, an office fax, and a phone that's wired into the car (this is a GM thing). That's seven phone lines for one person. In Skype's contacts list, it just shows Foo Foomaker seven times. I have to click one of them and arrow around to find the right number (which I frequently don't remember). So, put cutesy little icons next to people's names, or come up with a better way to segregate numbers.
  4. Voice dialing. I can log into my Mac with my voice. I could do that way back in the Centris/Quadra days. I'd like to be able to tap my headset, say "Don Beyer Subaru" and have it just call the dealership.
  5. Similarly, it would be nice to be able to end the call by tapping the headset. Essentially, this item and the above are just improvements to Skype's handling of Bluetooth headsets. My Motorola V620 can handle this, and it's got a lot less proc.
  6. Codecs and other goodness on the call. While I am normally happy with the call quality (it is imperative you use a headset or dedicated mike, or it will always sound like crap), maybe one in ten calls is just awful. The "extra info" dialogue says everything is going fine, no packets lost, etc. It would be nice if the connection could be switched to a more robust protocol or the codec could be changed based on the conditions of the call (living room versus beltway traffic).

All in all, though, I've been living with Skype for a month or so now, and despite one of my customers being incredibly obtuse and blaming Skype/VOIP for being unable to reach me (even though they had an AT&T POTS line, a mobile line, and the Skype line), it's gone very well. I love this software. And I've only spent about 5 euros.

(edit: I added the "contact grouping" feature after originally publishing this post)

29 April, 2007

What's wrong with this picture?



What is the difference between the 0x86 and the 0x87 in these two Macs? bling is a Core Duo Mac Mini, and gordon is my C2D MacBook. I suspect that it's a version number or something. Frustratingly, a slog through Google's code search yields nothing more than they are both Atheros cards.

However, when I try to use KisMAC to get bling on one of the local "open" networks, it's actually unable to get the driver working:

So while the cards would appear to be substantially identical Atheros cards something about the mini's card perturbs KisMAC, and it won't function. Also frustratingly, I have an Orinoco PCMCIA card which is excellent for this sort of work, but naturally both my MacBook and my Mini lack PCMCIA cages. I'm starting to think I should get one of those USB 802.11 devices, but wonder if they are as good as the Orinoco units.

When my next laptop makes it into my lap, I think I'm going to make sure it's got room for an additional wireless card for just this kind of thing. Frown.