RFID and hysteria

While we recognize that there may well come a time when RFID virii exist, the current stories about exploits utilize equipment that is a long, long way from the stuff people are actually using in the supply chain today. N.B. that the BBC article refers to creating an exploit in “only” 127 bytes. That’s awesome, we’re sure, but the key bit of data to remember for currently-used supply chain tags is that they hold 96 bits.

Furthermore, the exploits discussed in this paper strike us as almost comically bad; i.e., they rely on all sorts of other holes in the system, like leaving the door open to SQL injection. The “possible scenarios” they discuss are even worse, suggesting that a nefarious shopper might bollocks up a supermarket by replacing an item’s tag with one of his own.

Let’s stop with hysteria and think more in terms of the real world, ok? RFID exploits such as this are a long way off in the real world. The best protection NOW is to make sure we’re smart with new tools like RFID. An excellent place to start would be in NOT putting RFID in passports, not whining about “RFID Viruses! OMG!! WTF!!”

Coolest. Game. EVAR.

Maxis — SimCity’s publisher — is preparing a game called Spore. This GoogleVideo is a presentation by Maxis’ Will Wright at the 2005 Game Developers’ Conference. You start as a tiny organism in a drop of water, desperately trying to evolve. The game moves through animal stages, tribal stages, a “Simcity-esque” phase, all the way through interstellar colonization. There is, of course, already a Wikipedia article, and screenshots can be had at Spore.com. It’s said to be due in Q4.

Holy crap. WANT.

Things we learned today

It turns out that cron is smarter than we thought, such that it’s much harder to fuck yourself over DST than we assumed.

Still, we moved any jobs in the skipped-or-repeated interval to before 0100 or after 0300, just to be clear.

If this makes no sense to you, just move along and don’t worry about it.

Dept. of CNet Not Doing Its Homework

So the goons at CNet are running a story on a Mac hacking contest trumpeting the results: the Mac in question was hacked in half an hour. However, CNet doesn’t bother to even LINK to the site in question or describe the parameters of the test, making it very hard for people to discover some key facts about this “hacking” event. Here’s the real scoop, and the only piece of information you need to know:

The contest “organizer” gave anyone who asked an account on the machine. This means the contest isn’t about getting access; he gave that out to begin with. It was about escalating privileges, which is much simpler. This is why you don’t give user accounts to anyone who asks for one — not that a sane person would, of course, unless they just wanted to get a headline on CNet. It’s also been pointed out that, in addition to handing out accounts, the “host” also left every single service running, thereby providing the maximum possible number of opportunities for his new users to vandalize his machine.

Summary? Like the much-ballyhooed Mac malware of last month, it’s a non-event. Is OS X a hardened system capable of withstanding any conceivable attack? No, certainly not. There’s no such creature. Is it manifestly more secure and stable than anything Microsoft makes? Absolutely.

And can we rely on journalists to print inflammatory stories with no background or follow-through? You bet your ass.

Update: There’s a sober and level-headed discussion of the “hack” over at ubergeek news source Ars Technica.

Colbert’s Ubergeek Shout-out

It is with no small degree of embarrassment that we admit to remembering every single thing mentioned in this little video clip from the Colbert Report about the new online D & D game (which we will not be playing, thanks).

If you need a little refresher, you can’t do better than Lore Sjoberg’s Book of Ratings entry on D & D monsters. It begins with the Displacer Beast:

As far as I know, the idea of a six-legged panther with squid tentacles that looks like it’s somewhere other than it really is originated in the mind of D&D creator E. Gary Gygax, possibly as the result of blunt trauma. Not that I’m complaining. The displacer beast is an excellent example of synergy; a panther with squid parts is considerably more intimidating than a squid strapped to a panther.

Things we love

SSH tunneling, because it means we don’t have to trust nefarious hotel wireless networks (though despite the endorsement implied, we didn’t actually use the tool — geeks that we are, we wrote a script).

How much is that really?

BoingBoing points us to a fascinating tool for comparing the relative value of dollars in different time periods. One of their illustrating examples is pretty cool:

Babe Ruth’s salary in 1932 was $80,000. In 2004 the CPI was 13.8 times larger than it was in 1932 and the GDP deflator 12 times larger. This means that if we are interested in Ruth’s purchasing power of housing or meals, then he was “earning” the equivalence of about $1,000,000 today. The relative cost of (unskilled) labor is 42 times higher in 2004 than in 1932. So if we wanted to compare his wage to what someone selling hot dogs would earn, we could say his “relative wage” is $3,400,000. GDP per capita and GDP are 80 and 200 times larger in 2004 than they were in 1932. Thus Ruth’s earnings relative to the average output would be $6,230,000 today. Finally, as a share of GDP, Ruth “output” that year would be $16,000,000 in today’s money.

Things you should know, Mac edition

We received a concerned email in re: the “Mac virus” that’s floating around. Here’s our reply:

From:   [king heathen]
Subject: Re: what about this mac virus mary's telling me about?
Date: February 17, 2006 8:32:32 PM CST
To:   [co-worker]

> On Feb 17, 2006, at 8:07 PM, [coworker] wrote:
> what do I need to know / do?

1. If people try to send you files with iChat that 
   you're not expecting, don't accept them.

2. If you do accept them, 
   don't uncompress them.

3. If you do accept them 
   and uncompress them, 
   don't execute the contents by double-clicking the file.

4. If you do accept them 
   and uncompress them 
   and double-click the contents, 
   don't type your admin password.

5. If you do accept them 
   and uncompress them 
   and double-click the contents 
   and type your admin password, 
   well, then you'll be infected, and the trojan will try to spread 
   itself. It doesn't do anything else, but it will be annoying.

Summary? It requires so much intervention from the user to get 
installed and run that it's only barely a trojan. Since it's so 
lame in those terms AND has no destructive payload, it's pretty 
much a non-event.

There more here if you want.

Sometimes you browse the web. Sometimes the web browses you.

The following are actual, no-kidding search phrases typed into Google or somewhere that led actual visitors here in January.

Frankly, given the parameters, we’re pretty sure you can skip it.
“thank you note gluten-free gift”
Possible alternative titles for this site.
“cirque de heathen”
No idea what they’re looking for, but the last item probably means they think RMS is a terrorist.
“signature terrorist spam security spoof emacs”
In which someone looks to us for evening plans, and wisely.
“alice s tall texan”
In which someone looks to us for fashion advice, and badly.
“2006 is velvet outdated?”
Only since October, but it’s not like we blog about it (plus, we’d spell it right).
“matrimonial intercource”
Now you’re just being nosy.
“jelly-fucking”
Stop it. You’re scaring us.
“rexella van impe sexy”
Not here, unless you count being touched by His Noodly Appendage.
“nsfw hentaivideos in blogs”
There’s so much wrong with this we don’t know where to start.
“leviticus insest”
We’re leaving the snarky comment on this one to our attorney.
“cuban beastilty”
We think it’s a good idea, too, but do they listen to us?
“advance shipping notification xml”
Yes, yes, a thousand times yes.
“hunter s. thompson avocado yoghurt wheelchair”
Actually, we’re pretty sure what he does is Hatha, but you’re still in the wrong place.
“mike dorman anusara”
You know search engines log these things too, right?
“state beastiallity laws”
Honestly, it’s level 6 that’s a real pain in the ass.
“level 4 taxing dhtml lemmings”
Must be after that Freedom Porn.
“porno quebeqois”
No he can’t, and you’re a jackass for saying so.
“screw liberty the president can damn well do what he wants”
As the aforementioned Preznit would say, “Bring ’em on!”
“muslim hotties”
No, we will not do your homework for you.
“alienation in ionesco s rhinoceros”
And a Merry Christmas to you, too.
“penthouse playmates advent calendar 2006”
No idea here, but it makes us giggle anyway.
“hong kong airport cling film tamper luggage”
Eric, is that you?
“240 dollars worth of pudding”
At least it’s not IIS.
“apache server garthbrooks”
She’s probably be cute, if she weren’t a Seminole. And a Troll.
“fsu female wow world of warcraft tallahassee girl”
Frankly, we were never much of an authority. Late bloomer, you know.
“cocksucking women/hattiesburg ms”
If you keep searching at work, you may need a new “jop” soon
“blow jop sex”
We’re sure it’s out there, but do you really want to know?
“how do echidnas urinate”
Dept. of Misplaced IBP Referrers, Pt 1
“review for full circle by c. mee in houston tx”
Dept. of Misplaced IBP Referrers, Pt 2
“troy schulze scientology
Erin, we think we know where your dreams are coming from.
“matthew mcconaughey pic texas handcuffs naked bongos oct 1999”
Sure, some of ’em are, but that’s true of any place we’ve been.
“huge boobs louisville”
Dept. of Unclear On The Concept
“uncopy cd”
Just stop being a smartass and mop up the fucking milk, ok?
“it is fruitless to become lachrymose over precipitately departed lacteal fluid”
At least somebody’s looking into it.
“presidential impeachment howto”
As God is our witness, we wish we knew.
“where to find oscelots for purchase”

The Endorsement

If you use a Palm and a Mac, you need this. Just trust me. We were aware of it, but it wasn’t until we installed it that we realized it now comes with a new Notes conduit and a simple Mac Notes application as well. (The Calendar, Tasks, and Contacts data all map pretty well to the native Mac tools that come with OS X, but up to now there was no simple Notes equivalent; this addition is a huge boon.)

Oh yeah: we bought one of these because we STILL can’t find the old Zire 72 we planned on using in our post-Treo world. Of course, said Zire will doubtless surface nearly immediately, or perhaps after it’s no longer feasible to return the TX.

In which we rant about the LACK of XML

Yesterday, we were chatting with Captain Telescope about development, XML, and how ugly and misused the latter can be. Frankly, it’s misused way more often in our experience than not. XML+XSLT can be a real boon for some applications, but there’s a tendency among some to store Every. Damn. Thing. in XML, and there’s really no good reason for that. In some situations, a five-line pure-text “unix-style” config file is exactly what you need, not a stanza-filled XML abomination — in fact, even something as complex as an Apache config file would probably only suffer if converted to XML; as it is, it’s fairly clear if you know what you’re doing, and if you don’t, you have no business in the config file.

Likewise, XML ought never be a persistent data store for anything you’re going to read and write repeatedly. (Yes, we’ve really heard people suggest this.) XML is a way to move data around; it’s a great lingua franca for shifting data formats. XSLT allows the (relatively) easy transformation of XML into damn near anything else you want, which is awesome. Using an XML file or files as your database, though, is just fucking stupid in a world where wholly reasonable RDBMS tools abound at the “free” price point.

HOWEVER, today we find a perfect example of something that really, really, really needs some XML love. We’re working with [Nameless Government Entity] on some supply-chain issues, and one element of these transactions is something called an Advance Shipping Notification. An ASN is an electronic document transmitted to the recipient of a given shipment of goods; you send it on ahead of the shipment so that [NGE] knows that your shipment of widgets, catfish jerky, and whiskey is on its merry way (and how much of each are coming, and who it’s from, and all that goodness).

These ASN documents can be formatted in one of two ways, for the most part. Both formats look like what happens when Heathen Central’s Chief Feline Officer takes a shortcut across our keyboard; here’s an example from the better, more legible of the two:


START*1^
A*AFVendor11^
B*COMBO^
1*GS03F04702^FA940105F9126^20060104^^
2*STUC0001^20060115^^N^
3*SPL^
4*^^^

… and so forth for several dozen lines. Lovely, huh? Naturally, there’s no documentation at all in the file itself (we have a 96-page Word document for that; naturally, it’s rife with additions and exceptions to otherwise inviolate rules). It’s exceeded in the “meaningful data most resembling line noise” competition only by certain Perl idioms, for crying out loud.

In this instance, at least, we’d kill for an XML alternative. The accessibility implications would be huge, especially in world where many, many people are going to be creating these files in the next 6-18 months. Like, say, this one.

The other Microsoft dude is even GEEKIER

Paul Allen, forevermore the lesser-know MS founder, is nevertheless a very, very rich man. He spends his money in amusing ways; one pursuit is PDPPlanet.com a computer history website. Perhaps the coolest aspect of this is that you can, via the site, apply for and receive an account on one of the systems — either a DECsystem-10 or an XKL-Toad-1.

Wow. So, who’s up for a little TOPS hacking? (Via BoingBoing.)

Kottke Writes Letters

In re: the Mac-Intel thing, we first find this, which is funny and familiar, since it looks like Mr Kottke bought at almost exactly the same time we did.

Of course, we assume he’s very tongue-in-cheek there, and that he knew, as we did, that MacWorld was coming up, and that he made his buying decision based on a number of factors. We further suspect that we may share as many as two such factors: first, that we needed the purchase in the 2005 tax year; and second, that we prefer not to be on the leading edge of a such a huge change.

Even so, the cries of Five! Times! Faster! might make us sadder if it weren’t for certain voices of reason. (In other words, those claims are based on some very biased tests geared toward multiprocessor (or dual-core) machines, and shouldn’t be used to compare performance of single-processor boxes to multi-processor ones.)

Sweet Fancy Moses! That’s bad code!

Or, “How looking at bad code makes us realize we’re not bad coders.”

We’re pretty sure we’ve talked about The Daily WTF before, but today’s addition is pretty gawdawful. (The extra “w” makes it worse.)

Earlier today, we had a conversation with another geek about TDWTF and its implications for the trade. We here at Heathen have never been enaged in pure development, so we know our skills aren’t tip-top. We do, however, feel competent — and sites like that makes us feel even better.

Anyway, the conversation got us thinking about what makes a good developer, and how that works, and how you can tell if you suck or not, and this fell out of the dialog:

I’m leary of anyone who says “…. and therefore I’m a good programmer,” but I might cautiously suggest that anybody who, as I do, looks back over older code they’ve written and realizes it needs to be better and then fixes it is probably at least passable, and by this I mean “better than most based on what we see of the trade at dailywtf.” What kills most bad coders may be a simple sort of incuriosity about how things could be better. Like, spending days reinventing wheels, which seems to be a theme at DWTF. [OtherGeek]: Larry Wall says good programmers exhibit laziness, impatience, and hubris. Exactly. I’ve amused many clients by discussing the need to be “lazy enough”. [OtherGeek]: The key point being that lazy people have the sense to say “there has to be an easier way to do this”. Right. This sometimes leads to spending a day writing a routine to accomplish something programmatically that you could have done manually in an hour, but that’s ok.

Food for thought, anyway.

Moments for Inappropriate Humor, 2006 Edition

Today, we’re writing documentation. Specifically, we’re documenting the sixty bazillion (yes) packages and such built into our product. (It appears Java cannot wipe its own ass without including sixty bazillion (yes) frameworks, packages, etc.)

Towards the end of the list, we find one whose name amuses us, and we wonder how wrong it would be to include the following definition and license data instead of the stuff found here:

Saxon
British heavy metal band. Uses little-known “bad artistic license.” No known reasonable or appropriate uses outside dark basements filled with pimply middle school (male) nerds and, optionally, D&D paraphernalia. Inclusion with more than one installation of the product at best unwise and at worst impossible.

Amusingly, the band is actually the second real listing returned by Google. The first is the XSLT tool. This makes us giggle.

Time for more time

Today will be one second longer than a normal day, as the International Earth Rotation Service has declared the need for a leap second to keep everything in sync. This means that 2005 Dec 31 23:59:59 will be followed by 2005 Dec 23:59:60, which will in turn give way to 2006 Jan 01 00:00:00. Cool!

There’s more on this over at JWZ’s place; check it out. Also, how cool is it that there’s something called the “International Earth Rotation Service?”

How Geeks Get Distracted

Notice this site that allows the user to create an animated gif that scrolls a favorite phrase. Decide to troll (quickly) through our folder of amusing quote text files for possible candidate phrases. Become frustrated with the need to actually load each one into an editor to see it. Wish for OS X version of a tool we used 15 years ago. Remember that a commercial tool existed that was very similar, and then that an open source version exists in the Linux world. Surf around to find a ported version for OS X. Locate instructions for a source build that nevertheless still requires — or at least encourages — fink. Attempt first step of install, which is glib, which fails. Discover local copy of fink is outdated. Attempt upgrade, which fails, as the versions of gcc & etc. on the new Powerbook are way outdated, because gcc_select has no 4.0 option. Search Apple’s Developer site for new disk image to upgrade dev tools. Download new dev tools (833MB). Wait. Install. Wait. Retry fink upgrade. Discover that fink wants 4.0.0 of gcc, and no amount of poking will make it happy with 4.0.1. Go to dinner. Come home. Google some more. Discover, at long last, that there’s a known problem between Xcode 2.2 and fink, and that the easy option is to drop back to 2.1 (which is still newer than what we installed above). Delete 2.2, and download 750MB of 2.1. Wait some more. When it’s finally here, do a fink selfupdate. More waiting, but less failing. Do fink install glib. It works. Finish instructions. Decide you’re too tired now to do justice to the whole “find a clever quote” thing. Go to bed. Realize you may never actually use the thing you just installed. Sigh.

Ghosts of Gadgets Past

BoingBoing reports that the Newton Museum is closing its doors — and is selling its entire collection on eBay. We’re very sorry we cannot bring ourselves to bid on the whole lot, which includes samples of nearly every Newton device made (wasn’t there a non-Apple licensed model?); we’ll console ourselves with the two Newtons (110 and 2100) we already own. The Treo is nice, but it’s a crappy Palm — and even a great Palm is pretty dumb compared to a Newton.

It’s a shame Apple totally gave up that space, since the mojo they’ve brought to the music market makes it clear they could have done well, had they stopped pushing the Newton in the wrong direction (“Bigger! More expensive! Less sync!”, while the Palm guys were quietly doing small, cheap, and effortless multi-platform sync).

Java is stupid.

Well, not Java in and of itself, but the way Java is typically handled in a development environment. It’s all “install sixty-eleven different packages and hope they play nice.” The trouble is, you end up with dozens (literally) of packages installed to accomplish a relatively simple task, and nobody understands how they all work. Each package, of course, has its own verbose XML file full of vague settings unburdened by such niceties as proper documentation. Configuration files are sprinkled throughout the project tree like so much tinsel. It goes without saying that nothing is ever simple.

Today’s gripe is just a symptom of this metastatic approach to development: for license reasons, we switched from MySQL to Postgres. Postgres typically outperforms MySQL, but that sort of thing only matters with way more data than we’re using, and we weren’t leaving MySQL for performance reasons anyway. For some reason, though, Hibernate then became glacially slow — like, “go get a cup of coffee, and then get another one, and take a nap” slow. Why? Nobody knows! Now the developer is up to his ass in half a dozen configuration files and a googleplex of Google searches trying to figure out what the hell the problem is, and I’m sitting here wondering why the devil we didn’t do this thing as a simple web app in the first place.

We’re so doomed it’s not even funny

The new FCC chairman Kevin Martin is busy bending over for the big telcos. Among his giveaways:

  • Suggesting that taxes on VOIP equipment are a good idea
  • He sees no reason to push for network neutrality rules

The Bells & their cronies would have strangled the Internet in its crib if they had realized what it was at the time; they’re doing their very best to kill it as an adult now. They cannot control or profit from a free Internet nearly so much as they can with a more domesticated version, so that’s what they’ll push for — and damn the consequences.

Developers to Java: Drop Dead

Well, not quite — but the rise of lightweight languages like Perl and PHP coupled with the Apache web server and robust yet free databases means the bloom is a bit off the rose for Sun’s flagship technology. The recent explosion of tools like Ruby on Rails and AJAX just mean fewer and fewer projects end up using big, bulky, slow Java on the web, and we all know how painful Java on the client can be. That Chandler is Java-based pretty much means I’ll never use it — it just can’t be fast enough.

Sure, my company is using it — but we started our development a year ago, and with a Java-focussed team we knew and trusted. If we had it to do over again, I feel sure we’d have built our product using one of the technologies listed above for much less cash.