Friday, 30 November, 2001

Stupid Public Service Announcements

I'm not quite sure why I pay attention to the recommendation that I arrive at the airport at least two hours prior to my flight.  I had a 6:00 flight to Memphis this morning and decided to take a chance:  I got to the airport at 4:30.  At 4:45 I was through security and waiting in line for the deli to open.  Security is tighter, but not that tight.

One benefit of driving to the airport at that hour is that you get to hear public service announcements.  Radio stations have a quota to meet, I guess, but the regulation apparently doesn't say at what time of day the announcements have to air.  So they string them together when only those of us dumb enough to be awake are listening.  My favorite this morning was a game show parody wherein pot heads try to answer simple questions.  The line is something like, "Okay Jenny.  For one thousand dollars, tell us, what is your first name?"  Of course she gets it wrong.  Cheech and Chong did that skit thirty years ago (it's called Let's Make a Dope Deal on their album Big Bamb).  The Cheech and Chong skit was stupid, sure, but funny back when I was 12.  The public service announcement isn't even as funny as that--it's just stupid.

Thursday, 29 November, 2001

Abandon Ship!

Today I finished the book Abandon Ship!, by Richard F. Newcomb.  Originally written in 1958, the book tells about the loss of the U.S.S. Indianapolis in the last days of World War II.  The book was re-released this year with some new material and an Introduction and Afterward by Peter Maas (author of Serpico, among other titles).  The book doesn't dwell too much on events in the water (apparently our society's blood lust hadn't yet matured in 1958) except to mention almost in passing the sharks, hunger, thirst, sun, and resulting insanity that claimed so many lives over the next four days.  The book does cover in detail the events leading up to the ship's being torpedoed by a Japanese submarine, and the resulting court martial of the ship's Captain.  Even in 1946 most people considered the Captain's court martial a miscarriage of justice.  In the light of previously secret documents that have been released since 1958, it's plainly obvious that the Captain was hardly more than a scapegoat.

Of the approximately 1,200 men on the Indianapolis, it's estimated that between 800 and 900 survived the initial attack and the ship's sinking.  Of those, only about 300 survived four days in the water.  It's a chilling story.  Can you imagine spending four days in the middle of the Pacific Ocean with no water, no food, no shelter, and a life jacket that has a 48-hour rating?  That any of the men not on rafts survived is a wonder.

Wednesday, 28 November, 2001

The Unofficial CP/M Web Site

Lineo, spun off from Caldera, spun off from Novell (did I miss a step there?), who purchased Digital Research (or at least a lot of Digital Research's assets) has made everything CP/M-related available for free.  The unofficial site is at http://www.cpm.z80.de.  The site contains lots of very cool stuff:  full binaries for a large number of CP/M distributions and Digital Research programs (Pascal MT+, for example), source code for many CP/M versions, and some very difficult to find documentation.  This is, according to the site's maintainers, everything that Lineo has related to CP/M.  Apparently much of it has been lost over the years as ownership of the properties moved from company to company.  That's unfortunate, as I would sure like to see the source for the Pascal MT+ compiler.  About the only Digital Research product missing from the site is DR-DOS.  Lineo has held that one back.  Apparently it's still a saleable product.

I doubt that CP/M is much in demand these days, although you never know with embedded systems.  If nothing else, the released source code has historical interest.  It'd also be interesting to study some of the techniques they used to save space and reduce processor usage.  Remember, CP/M had to operate on 8080-based computers running at 1 MHz with less than 64K of RAM.  It's amazing how far we've come in 20 years.

Sunday, 25 November, 2001

Home Depot Shopping Spree

Home Depot is running a promotion this week:  for purchases of $300 or more, use your Home Depot charge account and make no payments and pay no interest until January 2003.  Now I'm not one to go buy stuff just because I get a good price or financing terms, but if I need something and I can take advantage of the terms, I'm there.  We're finishing up the back room conversion (yeah, I know, I've said that before) and have been putting off buying all the finish stuff:  cabinets, tile, trim, doors, bathroom fixtures, etc.  We've been saying "real soon now" for a couple of months.  Heck, we were going to spend the money anyway.

It's one thing to spend a couple hundred bucks here and there when you're working on a project.  But to see it all in one big chunk?  Yikes!  That back room is costing a lot more than I thought it was.  Lot cheaper than having it done, though, even if it's taking an absurdly long time to finish.

Thursday, 22 November, 2001

Thanksgiving at the Driskill Hotel

Rather than cook a big feast just for the two of us (our families are spread out across the country, as are most of our friends) this year, Debra and I decided to have Thanksgiving brunch at the Driskill Hotel in downtown Austin.  It was quite the spread:  shrimp cocktail, Alaskan King Crab, a huge dessert table, a breakfast buffet complete with omelet and waffle bar, and of course turkey, ham, and all the trimmings.  Playing the non-traditionalist this year, I sampled everything but the turkey and such.  Nothing like a couple of Western omelets and some waffles for Thanksgiving dinner.  The only drawback was that I had to drive home before I could plop down on the couch with a book.

I had occasion to reflect on my life:  a beautiful and loving wife, family and good friends, and a comfortable lifestyle.  I've tried to put down into words how incredibly fortunate I feel to have these things.  Eloquence, though, never was my strong suit, so I've settled for simplicity.

If you're giving thanks today, or any time this Season, be sure to remember the men and women in our Armed Services, who are taking care of some business for us overseas.  

Tuesday, 20 November, 2001

A Gram of Water = "A Drop"?

Grrrr...journalists.  In a segment on NPR today talking about how many calories are in your average Thanksgiving meal, the reporter defined a calorie as "the amount of energy required to heat one gram of water (about a droplet) one degree Celsius."  Huh?  A droplet?  That's some heavy water.  A gram of water is more like a thimble full.  You don't see thimbles very often these days.  What is the modern equivalent of yesteryear's "a thimble full"? 

Monday, 19 November, 2001

More Palm Programming

As a first experiment in Palm programming, I'm porting my friend Jeff Duntemann's Mortgage Vision program.  Jeff originally wrote the program in Borland Pascal (or was it still Turbo Pascal back then?) to explore the Turbo Vision application framework.  He and I (mostly he) later converted parts of it to Delphi for inclusion in our Delphi Programming Explorer, and then I converted the code to C++ for the C++Builder Programming Explorer.  It's another one of those learning programs that's relatively simple but makes use of many programming language features.  It's a good learning tool.

So I immediately run into one of the Palm's minor weaknesses--floating point.  The computer can do floating point math okay through emulation, but there isn't really a math library.  The floating point library supplies addition, subtraction, multiplication, and division.  And a routine that'll convert a text string, "123.45" for example, into a floating point number.  There aren't any math functions, though, and the only output function displays the number in scientific notation.  Ugh.

Fortunately, the only math function that the mortgage program requires is pow()--raise a number to an integer power.  That was easy enough to duplicate.  Outputting a floating point number is going to require a little more work.  I guess I could include the standard C sprintf() function, but that seems like overkill.  I'll probably dig into their Calculator source example and see if I can come up with a decent number formatting routine.

Don't you love embedded systems programming? 

Sunday, 18 November, 2001

Fitaly Stamp

I had planned today to write about watching the Leonid meteor shower.  But when I went outside at 3:00 this morning it was completely overcast.  Bummer.  It was cloudy all week during the Mars approach last June, too, and I had my telescope all ready to check that one out.

A couple of weeks ago (see November 1), I mentioned a utility for the Palm computer calledFItalyStamp--a keyboard overlay that covers the Graffiti area on the Palm with a custom keyboard layout that was designed to minimize pen travel.  I downloaded and installed the software, and glued a laser printer copy of the keyboard layout onto the data input area of my Kyocera phone.  After just a couple of days working with it, I was hooked.  This is much better than trying to write in Graffiti.

The registered product, which you can order online with your credit card, cost $35.00 plus $6.00 for Express Mail shipping.  The package arrived two or three days later with the diskette, a small printed manual, and four nicely-printed keyboard overlays.  My phone is slightly smaller than the Palm m100, so I had Debra do some creative trimming of the keyboard overlay, but other than that I've not had a single problem with the setup.  I haven't reached the 50 words per minute data input rate that their marketing hypes, but I've achieved a sustained 20 wpm with some forays up toward 30 wpm.  It's the next best thing to having a real keyboard hooked to the Palm.  Tapping on keys beats scribbling goofy letters hands down.  Try writing Graffiti on an airplane in moderate turbulence.  Tapping keys, I was able to make notes with a minimum of errors.  I can "type" with the fitaly keyboard almost as fast as I can write on paper.

Highly recommended if you're doing any data input on your Palm.

I finally finished reading The Professor and the Madman, by Simon Winchester.  The book's cover describes it as "A tale of murder, insanity, and the making of the Oxford English Dictionary."  It's an interesting story about how an obviously insane American Army officer ended up being perhaps the greatest single contributor to the OED.

Reading the book, I was struck by how much the making of the OED reminds me of open source software projects--both the good and the bad.  First, the good.  The project would never have been completed without the thousands of volunteers who read books, identified words that should be included in the dictionary, and supplied quotations to illustrate how the words were used.  This information was sent to the editors, who verified the information, wrote the words' definitions, and prepared the pages for typesetting.  The procedure reminded me much of open source projects that have dozens of  contributors (possibly more) who submit code that is integrated into the final product by the project's "owners."

Like many open source projects, the OED effort had some serious project management issues.  Originally conceived in the 1850's, the project went almost nowhere for the first 20 years.  People volunteered to help, but then decided it was too much work or would take too much time.  The original editor simply did not have the skills required to motivate and coordinate the work.  The new editor, James Murray (the "Professor" in the book), was able to get the project on track, but was woefully unable to estimate the time required to complete it.  In the end, although the final work was the product of thousands of paid and unpaid individuals, the bulk of the work was done by a select few--just like most open source projects.

No, the analogy isn't perfect.  Whereas the contributors to an open source project have free and open access to the final product, the OED's contributors were not entitled to a free copy of the completed dictionary.  Their motivation was very similar, though:  they saw a need for something important and volunteered their time and effort to see it completed.

Friday, 16 November, 2001

Airport Security?

I visited 6 airports this week:  Austin, Dallas Love, Lubbock, DFW, Chicago O'Hare, and Columbus.  This was my second week of flying since the September 11 attacks, the first being in early October when Debra and I went to Chicago.  In October, security was noticeably tighter than before September 11, but now it's even better.  On every flight now, they pick random passengers for additional screening.  I got picked at Love Field on Monday.  It's not a strip search or anything--just a detailed inspection of the carry on bag and a going-over with the metal detector wand.  The search is conducted out in the open (none of this "behind closed doors" crap you hear horror stories about), and the screeners are courteous.  They also have started checking photo IDs against boarding documents--not only at the security checkpoint, but also at the gate just before you board the flight.  The check at the gate is new since early October--they didn't do that when I went to Chicago.

The security is not without its flaws, though.  As I was boarding one flight, one person was taking tickets while another was going through the line checking IDs and writing "OK" on the boarding pass.  It would have been a simple matter for me to write OK on my boarding pass and slip into line ahead of the ID checker.  In another instance the ticket taker asked if somebody had already checked my ID.  In Columbus, an employee skipped to the head of the line at the security checkpoint, walked through the metal detector (which buzzed), and waved at her co-worker who had detained a passenger.  This particular employee then submitted herself for "wanding", but I wonder if she could have continued on unmolested if she had wanted to.  One shudders to think. 

I realize that the random additional screening and ID checks are deterrents, not preventive measures, but if I can pick out flaws just from casual observation, I wonder what somebody who really studies the matter can come up with. 

Thursday, 15 November, 2001

Executive Jet Aviation

Every once in a while you run across a company that appears to be doing everything right:  customers are happy and satisfied, employees enjoy their work, and the company is profitable.  It's been a long time since I found a company that impressed me the wayExecutive Jet has.  Executive Jet pioneered the fractional ownership concept wherein companies share the cost of purchasing and maintaining a private jet.  I won't go into the details of the program.  If you're interested, check out their web site and request more information.

The company's operation is astonishing, and that they succeed in pulling it off is nothing short of amazing.  They operate almost 300 aircraft, have almost 1,500 crew members (pilots and flight attendants), and an army of support personnel.  In their hanger at the Columbus airport there's a huge command center filled with people scheduling flights, catering, accommodations, ground transportation, and dozens of other flight-related tasks.  They have a staff of 8 meteorologists, with at least one on duty 24 hours a day.  Their aircraft have very little down time and yet them manage to get the right aircraft to the right place on time almost every time, and they do it with a very impressive safety record.  If you ever see a private jet with a QS designation (QS are the last two letters on the tail), know that you're looking at one of the aviation industry's most impressive companies.  If you ever get a chance to fly on one, do it.  And then write and let me know what you think.

The aircraft I saw in the hanger appeared to be impeccably maintained.  Everybody I talked to seemed genuinely excited about their jobs:  programmers and IT people thought the work interesting and the company exciting, pilots loved their schedules and their aircraft, and the support personnel were passionate about satisfying their customers.  I can't say enough good things about this company.  If I wanted to live in Columbus, OH, you can bet that Executive Jet would be the first place I'd submit my resume.

Tuesday, 13 November, 2001

Lubbock, TX

The population of Lubbock, TX is approximately 200,000.  I couldn't swear by it, though.  Except for Texas Tech University, it looks and feels like a modern ghost town--dead after the oil dried up and the farmers and ranchers pulled out.  I can't imagine why tens of thousands of students would want to attend college in the wasteland of West Texas, but there they are.  The campus is nice enough, but the rest of the area?  Ugh.  Flat, dry, dusty, windy.

Lubbock isn't all bad.  There's a Buddy Holly museum, (Buddy Holly was born there), although you'll be hard pressed to find anybody who can tell you where it is.  There's also the Walk of Fame near the Coliseum, where you'll find a huge statue of Buddy Holly as well as plaques honoring other musicians (and pardon me if I can't recall their names--most of them are country music "stars" I've never heard of).  Lubbock also is the home of Cap Rock Winery--the third largest winery in the state.  I've actually had some of their wines, and found them drinkable.  But then, I'm not the most discriminating wine drinker.

The main attraction in Lubbock, from my perspective, was the Hub City Brewery downtown in the Depot District.  They have decent food, and they brew their own beer.  They were out of their Raider Red, which I wanted to try, but I did have an excellent American Brown Ale.  Later I made the mistake of ordering their Ogalala Light, which turned out to be a tasteless malt beverage on the order of Coors.  I'd have been better off ordering water--at least then I wouldn't have ended up with that nasty aftertaste.  I wonder if their brew master cringes every time he has to brew another batch of that crap.

Lubbock's liquor laws are strange.  You can order drinks at a restaurant or bar, but you can't buy beer, wine, or liquor to take home.  No liquor stores, and no convenience stores selling beer.  It's not illegal to possess alcoholic beverages--you just can't buy the stuff in town.  So  liquor stores have cropped up right outside the city limits like fireworks stands outside of Austin.  I've heard that there are traffic jams between the city and the border liquor stores on Friday nights.  The city limits, by the way, extend miles beyond the actual city proper.  You could fit 10 or so Lubbocks inside those city limits.

Monday, 12 November, 2001

TriTryst

I received an email today from somebody who has been playing the game TriTryst that I wrote for Virgin Interactive back in 1995.  He was looking for the solution to one of the game's levels.  I probably can't help him, as it's been years since I played that game and I'm sure I only solved that level once during play testing.

So I fired up my browser and askedGoogle to search for all occurrences of the word "TriTryst".  Of the 400 hits, most of what I found were reviews and links to the time-limited demo that we released shortly before the game was published.  Two people mentioned it in their online journals, both in reference to wasting time "playing solitaire and TriTryst."  The game has even made the abandonware sites.  You can download the entire shipping game (5 diskettes) from http://old.theunderdogs.org/Puzzle4.htm.

I learned a lot writing TriTryst, my first game, and have enjoyed playing it over the years.  Although it didn't sell well, it appears to have developed a small cult following--from time to time I get email from people who are still playing it.  I've actually cobbled together a clone of the basic game in Delphi and Kylix (I no longer have access to the original C source), but haven't put the effort into trying to duplicate all of the game's functionality.  Perhaps it's time.  It'd be a great game for the Palm.

Monday, 12 November, 2001

Gas is Cheap!

Yesterday I paid 95 cents per gallon for regular unleaded gasoline.  That's just amazing.  In July the price was at least $1.30.  On my way to the airport this morning, the lowest price I saw was $1.04--the price changed 10% in a single day.  Weird.  Gas is cheaper now than it was in 1987, even if you don't count inflation.  I remember paying $1.10 or more per gallon back then, and I recall paying less than 90 cents just two years ago.  I don't know what the inflation rate has been for the past 15 years, but it certainly hasn't been negative.

I don't understand people complaining about the price of gas.  Perhaps people on average drive more than I do.  I've averaged about 13,000 miles per year over the last 6 years.  At 22 miles per gallon (my truck's average), that works out to almost 600 gallons of gas per year.  Even at $2.00 per gallon, that would be a pretty small percentage of my annual expenses.  My round trip to work is 50 miles, which I've been led to believe is "above average."  Maybe people who are complaining about the price of gas should think about driving less or getting a more fuel efficient car.

Sunday, 11 November, 2001

Palm Programming Books

If you're interested in programming for the Palm OS, pick up the book Palm OS Programming Bible by Lonnon R. Foster, published by IDG Books.  This book has everything you need, not only to get started, but to complete complex Palm applications, including writing the conduit program to communicate with your desktop computer.

I've read good things about Palm OS Programming, 2nd Edition, by Neil Rhodes & Julie McKeehan (O'Reilly), but have been unable to find it in the bookstore.  I'd order it online, but I'd like to thumb through it first.  I saw a copy of the first edition in the bookstore today--and liked what I saw--but I'd like to see the new edition in print before I spring from it.

I also picked up Robert Mykland's Palm OS Programming from the Ground Up (Wiley), which promises "open this book as a Novice and finish it as a Pro."  I should have looked more closely at this one before I bought it.  It covers most of the topics (although conduit programming is suspiciously absent), but does so in the context of an ongoing tutorial.  In order to understand Chapter 6, for example, you must have read and understood Chapter 5 and the code presented there.  This kind of book is fine, I guess, for somebody who has the time to sit down and do the tutorial, but the book is worthless as a reference or a quick study guide.  The explanations are more often of the code rather than the underlying APIs or data structures.  I prefer small examples that illustrate a single point rather than monolithic examples from which it's difficult to glean small nuggets of information.  For sure don't buy this book before you buy the Foster book. 

Saturday, 10 November, 2001

Monsters, Inc.

Debra and I went to an early showing of Monsters, Inc., the new Disney/Pixar movie this morning.  What a fine film!  The animation is, of course, spectacular, and the story is, as far as I'm concerned, one of the best in years.  It's pure fantasy with a little good versus evil thrown in, and none of that heavy-handed social consciousness preaching that all too many films throw at us these days.  It's the best movie I've seen in years.   

Oh, and don't be late for the movie.  The animated short before the film is worth seeing.

Later:  Debra rented a couple of movies last night.  We watched The Mummy Returns this evening.  No great shakes, really, except that immediately after the movie was over Debra went into the kitchen and found a scorpion crawling around on the floor.  Spooky considering that scorpions were a primary theme of the movie.  (Come to think of it, the big bad guy in Monsters, Inc. was very scorpion-like.  Life is full of odd coincidences, isn't it?)

Friday, 09 November, 2001

MathWorld is Back!

MathWorld is back!  If you have a mathematics question, go there first.  Or just go and browse for something that interests you.   When I was working on the Course Designer for the Jack Nicklaus 4 golf game, I spent hours looking for information that I can now find in seconds at MathWorld.  They even have a good discussion ofpolygon triangulation--something I never did find back then.

I wonder if all this stuff is collected in a book somewhere.  I'd buy it in a minute. 

Thursday, 08 November, 2001

Stupid Student Halloween Tricks

Auburn University and the University of Mississippi have both expelled students for inappropriate Halloween pranks.  At the U, somebody got a picture of two white students--one dressed as a white police officer holding a gun to the second, who was in blackface.  At Auburn, a group dressed in Ku Klux Klan outfits were photographed gathered around a person in blackface with a noose around his neck.  Yahoo has the storyhere.

I have only one thing to say:  You idiots!  These kids are 18 years old.  There is absolutely no way they could not have known that such pranks would be unacceptable.  Politics aside, these kids should be thrown out of school for the simple reason that they're too stupid.  They're either incapable of learning, or they're incapable of applying their knowledge.  In either case, they don't belong at an institution of higher learning.

Wednesday, 07 November, 2001

More on Palm Programming

The Palm programming experiments are moving along nicely.  I've successfully created a "Hello, World" application just to get used to the development environment and such.  My initial impression still stands:  Writing a program for the Palm is very similar to writing to the Windows API.  We'll see if that impression holds as I continue my experiments.  I'm starting on a "real" project and will report back as I learn things.

As I said (see November 3), I'm doing my initial experiments using Metrowerks CodeWarrior version 7.0.  It's a little strange going back to C after writing Delphi programs for the last two years.  I could go with a Pascal development environment, and I may yet decide to do that.  The GNU PRC-Tools package targets the Palm, and I assume one could use the gcc Pascal compiler rather than the C compiler.  I read somewhere that Free Pascal will target the Palm, but haven't been able to confirm that.  Finally,  there'sPocketStudio from Pocket Technologies--a commercial Pascal-based Palm development environment.  I've downloaded their trial version, but have not yet tried it out.  At almost $400, I'd need a real good reason (like a paying project, or maybe just a real strong aversion to C) before I could justify switching from the Metrowerks environment.  My toy budget just isn't all that big these days what with the back room conversion and all. 

Monday, 05 November, 2001

Ramifications of Freedom Ship

Just what would be the international political ramifications of a floating city likeFreedom Ship?  It's not a very effective tax dodge--at least to U.S. citizens--because the IRS expects you to report all of your income worldwide.  And since Freedom Ship won't be a separate country, it's not like you could renounce your U.S. citizenship.  It's interesting to think about children born on the ship, who never leave it until they're adults.  Can you imagine an 18-year-old landing in the U.S. with no driver's license or other means of identification?  Never seen a car.  Never been on land.  It'd be worth studying to get an idea of how people on long space voyages would react to finally arriving at their destinations.

Maritime tradition makes ships at sea subject to the laws of the country of registry.  Could something like Freedom Ship become a floating refuge for criminals?  Mexico, for example, won't extradite anybody who is facing a possible death penalty.  Some other countries won't extradite businessmen accused of embezzlement or bilking the U.S. government.  If Freedom Ship is registered in one of those countries, criminals could run their businesses with impunity, living in the lap of luxury.  Of course, that would probably spawn a small cottage industry of bounty hunters who board Freedom Ship with the express purpose of performing a little unauthorized "extradition."

This is starting to sound like a minor subplot in a Tom Clancy novel. 

Sunday, 04 November, 2001

Questions on the Freedom Ship

A couple of things bother me about theFreedom Ship (see October 29).  It's a really cool idea, and likely could be successful, although I see a real possibility of people losing interest after a couple of years and the thing being mothballed when owners stop making their monthly dues payments.  What really bothers me isn't the financial aspects, but rather some of the design decisions.  First, why does the entire top of the thing have to be a runway?  There's no reason the entire width (300 meters) needs to be used for the runway and aircraft access.  50 meters is plenty wide enough for the runway, and another 50 meters for aircraft access should be plenty.  The remaining 200 meters of width could be used for farming.  I could imagine several somebodies making a good living growing and selling fresh produce to a well-heeled, ship-bound, populace.  Perhaps they could even have fishermen who cast their lines or nets whenever the ship is stopped (something like 70% of the time).

The ship will use incinerator toilets to eliminate the waste disposal problem.  Why couldn't they instead install composting toilets, and use the resulting materials on the farms?  Burning all that good organic matter seems like a waste of energy.

And speaking of energy, why use number 2 diesel to power the thing?  This vessel is just begging for a nuclear reactor.  We have over 40 years of experience with nuclear powered vessels.  They're safe, efficient, and non-polluting.  The ship will remain off shore (25 miles or so) all the time, so there's not much chance of an accident that would cause a problem.  I can't think of a better power source for this thing. 

Saturday, 03 November, 2001

Programming the Palm

I spent the day trying (and mostly failing) to get a little "Hello, world" application to run on my new Palm Powered Phone.  (I was going to call it P3, but people would probably confuse that with a Pentium III.)  I downloaded the Palm OS Emulator (POSE), and used the ROM Transfer application to transfer the ROM image from my phone to the PC.  Loaded the ROM image into POSE, and POSE reports an error.  Kyocera apparently didn't want to make their ROM compatible with POSE.  Sigh.  Now I'm waiting for Palm to approve my developer application so that I can download a ROM from them.  I won't be able to emulate applications that use the Kyocera phone APIs, but at least I'll be able to emulate standard Palm applications--which is all I'm after for the moment.

What little I've seen of the Palm API looks reasonable.  Writing a Palm application in C looks very similar to writing a Windows application.  The OS calls your PilotMain function, initializes everything, and sets up a message loop that continues until it gets the appStopEvent.  That's about as far as I've gotten.  The sample application that I built from this page (Palm OS Programming, 2nd Edition) resulted in a crash that forced me to reset my phone.  I suspect I'll be doing that a lot.

For the moment, I'm using Version 7.0 of Metrowerks CodeWarrior for Palm OS to do development.  I've always heard good things about CodeWarrior, but until today had never tried it.  I guess it's possible that the compiler is technically superior to Borland's or Microsoft's, but the IDE does not compare favorably with either.  Borland's IDEs have always been helpful and intuitive, and Microsoft's a little less so to the extent of being downright aggravating at times.  But the CodeWarrior IDE is almost unusable.  Some things that should have right-click menus don't, project defaults result in projects that won't build, and the overall interface feels hacked rather than designed.  To make matters worse, the online help (presented in Microsoft's abominable HTML Help format with "Help on Top" as a permanent default), is awful.  All of the examples show either a Mac OS or Windows project--not a Palm project to be seen.  Arrrgh!

Yes, some of the above is undoubtedly my frustration with a new programming environment and unfamiliar tools.  I'm having fun.  Let me rant!

I have also downloaded and installed the demo of a product called NS Basic, which is a Basic language development system for the Palm platform.  I've not yet actually done anything with it though, and hesitate to invest much time in what is essentially a p-code interpreter for the Palm.  You install the runtime interpreter (size: 88 K bytes) on your Palm, and then you can run any NS Basic application.  Having lived through the problems caused by multiple incompatible versions of the Visual Basic and Visual C++ runtimes, I'm in no big hurry to make my applications dependent on a third party runtime interpreter.  There is an option to include the runtime system (called "Fat Applications") in your applications so that you don't have to install the NS Basic interpreter, but that's too much overhead on a memory-limited device like the Palm.  But then, I'm a C programmer.  If I was coming to the Palm with no C programming experience, I'd likely go the NS Basic route.  There are also versions for Windows CE and the Newton, giving the real possibility of writing a cross-platform handheld application.  I'll probably take a look, but likely won't do any serious development with it.

Friday, 02 November, 2001

The Dark Side of Nanotechnology

Small Times has published a thought-provoking piece on the "Dark Side" of nanotechnology, which can be terrifying if you've spent too many years reading horror novels and spy thrillers.  First, two items of background.

Item 1:  The nanotechnology field has been a model of open source research and free flow of information.  People in the field have been working on what until recently was almost pure fantasy.  They've been playing a game in which "the more the merrier" applied.  But now, with carbon nanotubes and other nanotech products nearing reality, some researchers are clamming up--undoubtedly at the request of their employers.  Open access is fine when you're talking fantasy, but things are different when there are billions of dollars at stake.

Item 2:  If nanotechnology is really capable of producing tiny programmable self-replicating autonomous machines, then there is the real possibility of targeting those machines at a particular ethnic or cultural group.  I think that this is a bit of a stretch--as I've mentioned before (seeOct. 19, 2000), such systems would require software that's orders of magnitude more complex than anything ever attempted.  Nonetheless, even a badly botched "mistake" could do some serious damage. 

There is discussion now about classifying some nanotechnology research, but to quote Glenn Reynolds ("a law professor and longtime nanotech expert at the University of Tennessee") from the article:  "The genies not just out of the bottle.  The bottles broken."  Which brings me to the topic I will introduce at our next Future Tuesday discussion.

Given the very real possibility (in the near future) of a small group of people having the ability to literally wipe out civilization--perhaps the entire human race--how can we prevent it from happening?  The article alludes to the possibility of "good nanotech" that would fight the bad bugs in much the same way that the computer industry has fought computer viruses.  I don't think it's a fair comparison because a computer virus is typically targeted at a specific hardware and software configuration and requires either active participation by the victim, or a security vulnerability in the system.  A nano-bug targeted at humans would require no such opportunity, and can't as easily be eradicated.  There's no human biological equivalent of a shutdown, reformat, and reinstall.

Thursday, 01 November, 2001

Playing with the Palm Phone

After four days of playing with my new phone, I'm impressed and slightly disappointed.  I like the phone features (voice dial--how cool is that?), and I especially like the battery life.  Up to 5 hours continuous talk time and up to 130 hours continuous standby time on a single charge is, to me, amazing.  My old phone wouldn't even last two hours talking, and I had to charge it every other day even if I didn't actually talk on it.  I spent several hours working with the PDA today, and the battery still reads fully charged.

So why am I disappointed?  Well, I thought I'd be able to use the Graffiti writing interface to get real work done.  It's possible, but very slow.  I've never been much on writing--my chicken scratches are hard even for me to read--but scribbling in a notebook is much faster and easier than writing with a stylus on that little pad.  I can actually "hunt and peck" on the displayed keyboard faster than I can write Graffiti.  The only problem there is that the keyboard overlays half of the useable screen space.

I found a utility called FItalyStamp out on PalmGear.com that overlays the Graffiti area and apparently will enable an experienced user to exceed 50 wpm.  There's even avideo of somebody doing 82 wpm on the darned thing.  I'll definitely have to look into this one.