2007-11-12

Comics that remind me of a certain someone

One art form that seems specifically designed for the world wide web is the comic strip. A daily three-panel strip at a legible resolution fits neatly on a page, and even a Sunday special rarely requires a scroll bar.

More importantly, the web permits an artist a degree of editorial freedom that can never be had from formal syndication. It also has a potentially world-wide audience, and with a loyal, multi-lingual fan base can even end up translated into multiple languages. This might be the earliest media product to demonstrate that self-publication is practical and that the old distribution channels may not keep their monopolies forever.

Independent music is following a similar path, podcasting has already had a visible effect on radio (although in that medium it seems like the old distributors are embracing the new channel from the outset), blogging has visibly impacted the traditional print media, and there have lately been several attempts at film and video production targeted specifically at online delivery.

Here are a few comic strips I've noticed, some of which have characters and settings that strongly remind me of people I know.

Specifically who these remind me of is left as an exercise for the reader...

Girl Genius

Adventure, Romance, Mad Science!

http://www.girlgeniusonline.com/

A steampunk manga written Phil and Kaja Foglio and drawn by Phil Foglio. You might recognize Phil as the artist behind the covers for the first editions of all of the Myth Adventures books. Many of the pages are full of background details and inside jokes that probably are best appreciated in the print editions. Six volumes are available as graphic novels, and volume seven is currently in progress.

Narbonic

The dreams that we have had
Are gonna prove that we're all mad
And that's okay

http://www.narbonic.com/

The story of Narbonic Labs by Shaenon K. Garrity ran from mid 2000 through the end of 2006. It is formatted as a three to five panel daily strip, and Sunday specials.

It is presently being rerun as a Director's Cut with commentary from the artist about each strip, and a weekly podcast. The entire run is also available without the commentary, and four print volumes were issued.

User Friendly

Impairing productivity since 1997.

"Tech support, ghost in the machine speaking."

http://www.userfriendly.org/

An inside view into the workings of a (fictional) small ISP called Columbia Internet. It is written and drawn by J.D. "Illiad" Frazer, and much beloved by working geeks. It is notable for its long run, with new strips appearing seven days a week (at midnight, Pacific time since Columbia Internet is located in Vancouver, B.C.).

xkcd

A webcomic of romance, sarcasm, math, and language.

http://www.xkcd.com/

Stick figures and geek humor written and drawn by Randall Munroe. It starts with scans of art drawn when he was supposed to be taking notes in classes, much of that early art is reminiscent of Antoine de Saint-ExupĂ©ry and Le Petit Prince. Most of the later art is in a minimalist stick-figure form which allows the absurdity to shine without distraction.

From the site: "Warning: this comic occasionally contains strong language (which may be unsuitable for children), unusual humor (which may be unsuitable for adults), and advanced mathematics (which may be unsuitable for liberal-arts majors)."

2007-09-10

Rory, Cat, Requiescat in Pace

Rory's face Rorschach (Rory)

b. ca. January, 1991
d. August 27, 2007

A Faithful Feline Forever.

On the twenty-seventh day of August, 2007, at four hours past noon, our cat Rory died of heart failure. He was nearly 17 years old. Rory is survived by his companions in feline mischief Emily and Apostrophe, and by Michelle and I, his faithful staff.

A snapshot taken by Annette in 1991, scanned by Shal recently.Rory (short for Rorschach) was born to an unknown mother cat sometime during the winter of 1990-1991. When he wandered into Shal and Annette's yard that spring, he was estimated to be only about three months old. Rory came to live with Michelle and I within a few days. He came to us with a clean bill of health and his first round of kitten vaccinations thanks to Rory, asleep in a bookmark crop.Annette and Dr. Sylvia Domotor. Dr. Domotor has been his first choice of veterinarian for his entire life, and she was with him when he died. We named him Rorschach because the tabby patch on his body was shaped like a perfect ink blot. He quickly became Rory for day-to-day usage, at least partly out of an urge not to have to spell Rorschach all the time.

Rory explaining why he has a bone to pick with us on our return from a ten day vacation.As a young cat in our condo, he amused us by following us everywhere, sitting on my shoulder, and sleeping curled up tightly in my armpit. That first spring he was too small to climb the stairs easily, but stubbornly managed them one step at a time anyway.

Ross and Rory tucked under the covers.When we moved the following winter to our current house, naturally he came along. We weren't too worried about the relocation because he had never been allowed to be outside unsupervised. The move itself was uneventful, and with one minor exception he immediately took over the new, larger, space.

Rory on an upper shelf above the spice rack in a kitchen cupboard.His first experience with ceiling fans unfortunately coincided with his first experience with large expanses of linoleum flooring. The new house came with a ceiling fan in the dining room, and linoleum over the entire dining and kitchen spaces. On his first exploration of the house, he was uncertain about the cold flooring. About the second time he wandered into the dining room someone had turned the fan on. He got out into the center of the floor, then realized something was wrong. Hunkered down, he scanned the room for the threat, saw the large, moving fan blades, and panicked. At that point, he learned that it is not easy to accelerate from a standstill on clean linoleum....

Rory lurks in a paper bag, waiting for his moment to spring out and be Once we were all well established in the house, Emily wandered onto our doorstep. When she and Rory touched noses through the screen door, we decided that it might be safe to capture her and add her to the family. After she got a quick visit to Dr. Domotor, we solved the often thorny problem of introducing the second cat to the house by leaving on vacation for two weeks. When we returned, neither cat was speaking to us, but they were fast friends and remained so to the end. Rory and Ross sound asleep, sharing a pillow, nose to nose.For his last weeks at home, Emily was helping to clean Rory up after syringe feedings, and generally grooming him in his last few days.

Our third cat, Apostrophe, was also a stray. We watched him grow up from a clumsy kitten barely able to walk without tumbling, into a lanky, amiable klutz. He argued persistently for months that there was room for at least one more cat inside, and we finally relented and moved him indoors full time after the second trip to a kitty ER to have punctures on his backside cleaned out. Rory, backlit in a high-key exposure.Rory took the addition of a third in stride, and in time they too became fast companions.

So, Rory, requiescat in pace. You touched many lives, and are missed by all who knew you.

2007-08-24

RFID Passports Revisited

I've written about RFID and passports before, but have let most of the recent news about its interaction with the new biometric passport standards slip. But I can't pass up the latest tidbit.

The problem with RFID in general is that you can't make reasoned arguments against it without sounding like a kook that is afraid of black helicopters and mind probes. The thing is, that there really are some serious issues raised by the widespread adoption of RFID that simply are not possible if simpler (and cheaper, and more suited to the application) technologies like 2D barcode are used instead.

In short, the advantage of RFID is that the tag's information can be retrieved without the operator needing to actually see the tag. The disadvantage of RFID is that the tag's information can be retrieved without the operator needing to actually see the tag. But that actually isn't the reason for today's bit of ranting.

The ICAO is the agency of the UN that sets standards for passports, which are generally adopted by the member nations, including the US. The ICAO established a standard requiring that passports carry biometric information about the holder in addition to the usual date of birth, full name, and issuing country which is about all the information that passports classically carry.

Apparently, a typical bit of biometric info to include is an image of a fingerprint. Rather than storing an encoded hash of a matching print that would require a border checkpoint to use an equivalent (usually patented if not trade secret) technology to match a bearer's print, someone chose to store a simple image of the print. Since it is important to use as little space as possible to store the image, JPEG2000 is used to compress a photograph of the fingerprint. If you are going to store a fingerprint in a document with a hoped-for lifetime of 10 years, that is all reasonable.

Unfortunately, the makers of the passport readers all appear to have used JPEG2000 implementations that have some (or all) source code in common. In particular, there is a known bug in the JPEG2000 implementation that makes it vulnerable to a buffer overrun attack.

A determined individual demonstrated recently that he was able to use off-the-shelf technology to clone a copy of a passport's RFID chip. That is bad enough. But his latest revelation is worse: he was able to modify his cloned copy of a passport's otherwise valid RFID tag to include a fingerprint picture that exercises a known buffer overrun attack on JPEG2000. That tag has been demonstrated to crash every passport reader it has touched.

Today's attack is just a denial of service. The passport station would be crashed, and under normal conditions it could be restarted relatively easily and wouldn't crash again until another bad passport was brought through. (Of course the fiasco at LAX the other day involving 10000 people stuck on the tarmac outside of the customs barrier for as much as seven hours could be the result of that denial, especially if the official reaction to such a crash was institutionally stupid.)

But one of the better ways to inject code of the attacker's own choosing into a device is to carefully craft a buffer overrun attack so that rather than crashing the targeted system, it actually takes it over. At that point, you have code provided by an attacker running inside a passport terminal. These terminals are networked, and it is not inconceivable that such an attack could have effects that are both subtle and far reaching.... I'll let you fill in your own risks from that point.

2007-08-22

Mooning Again

Since I last mentioned the Lua programming language in these pages, it has seen a surge in visibility. Yes, I know that is a coincidence, because I am pretty sure I don't have enough readers of my random musings to have had an effect.

But it is interesting to see that it has sustained its place in the TIOBE top 20 at the respectable position of #15 this month. Since TIOBE doesn't appear to keep an archive of each month's scoreboard, here is the list as of August, 2007:

Rank Language Ratings
1 Java 21.768%
2 C 15.699%
3 Visual Basic 10.646%
4 C++ 10.111%
5 PHP 9.696%
6 Perl 5.320%
7 C# 3.987%
8 Python 2.749%
9 JavaScript 2.575%
10 Ruby 1.906%
11 PL/SQL 1.833%
12 SAS 1.389%
13 D 1.251%
14 Delphi 1.222%
15 Lua 0.645%
16 COBOL 0.600%
17 ABAP 0.587%
18 Lisp/Scheme 0.585%
19 Transact-SQL 0.549%
20 Ada 0.537%

A couple of things struck me about this list of languages. One is the absence of FORTRAN despite the continued presence of COBOL and SQL, both more venerable. This month, FORTRAN is found down at #21, or just pushed out of the top 20. The presence of D in the ranking at 13 (D is the 13th letter for the numerologists in the audience) is amusing at least partly because Walter Bright, D's creator, is a friend of a friend. I am sad to see that Java continues to dominate, but heartened to notice that the C/C++ family if counted as one language would both push Java down a notch, and allow FORTRAN to return to the top 20.

The real surprise is Lua. A year ago, TIOBE had hardly heard of the language. Last December, Lua just slipped on to the top 50 list, at a position quite near to Objective-C (near and dear to Mac OSX developers--interestingly, Objective-C hasn't budged much at all since December, since it is sitting at #50 exactly today). Lua crossed into the top 20 list by landing at 18 in July, and clearly it is on track to improve its current standing again for September.

The full story on what the TIOBE index is calculated from is found here. In short, they run hand tuned queries against all the major search engines for each language, count the significant hits, and do a lot of statistics to arrive at the score for each language. The final ranking is then simply the list of languages sorted by their scores.

In case my biases aren't clear, Lua is my new favorite language especially when combined with just enough C to get the job done. The majority of my productive work is done in C, Lua, and Perl, with the occasional diversion to C++ and on rare occasions, Java. Although I have not personally used any of the .NET family, I firmly believe that .NET is to be preferred to Java any day.

2007-08-20

And Now, in Cat News

Rory in 2002

I haven't written much in this space before about the cats that actually own my house and run my life. That is mostly because I have been more interested in technical topics or entertainment. The existence of cats and that they are in charge was generally not germane to either of those topics.

Lately, our oldest cat Rory (short for Rorschach for the perfect ink blot mark folded along his spine) has himself become the source of technical musing. He went lame, and the lameness developed into mild paralysis of his hindquarters. Concern for his health resulted in a trip to the vet, where attempts to cure the immediate problem revealed deeper problems and resulted in a lengthily stay. He returned home for a week, but has had further difficulties and had to return to professional care.

Because of these difficulties, we have had the opportunity to see more of the inside of a well-run veterinary hospital than we ever had before.

Some background might help here. All of our cats have been seeing the same vet since they were found and adopted. All three were originally strays that volunteered for the strenuous post of indoor cat with a small household staff to keep in order. Their vet is Dr. Sylvia Domotor who now operates Dr. Domotor's Animal House in Monrovia employing several other vets and a sizable staff. She has been their vet since well before she founded her own practice. The cats remained her patients because we have always approved of her handling of them. For that matter, we have had nothing but good experiences with all of her other vets and with the rest of her staff.

And as we go through these difficult times with Rory's health, we are touched again and again by their kindness and professionalism.