One of the corollaries to Murphy's Law states:  "Everything takes longer than you think it will."  Today's installment of the never-ending garage conversion involved replacement of the entry door.  I allotted six hours for this task--easily enough even for an amateur home hacker like me.  It turned out to be more like a ten hour job due to some dry rot and a few other surprises, but the door's in level and plumb and it closes nicely.

The garage conversion is nearing completion.  The drywall guys finished up while I was sick, this week I'll install the interior doors and trim while Debra does the painting.  It's been an interesting experience.  We've both learned a lot, but we're ready to be done.  The new office (about double the size of the bedroom we're using) should be done by the end of the month.  We'll probably hold off on finishing the laundry room, though.  Have you priced cabinets lately?  Wednesday's Texas Lotto drawing is looking mighty attractive.

Wednesday, 26 September, 2001

Is Local Power Generation Feasible?

Is it still more efficient to have a centralized electric power infrastructure than it is to have each building generate its own electricity?  Until recently, the answer to that question was an unequivocal "Yes."  But today, especially in rural or semi-rural areas, I'm not so sure.  Consider the GE HomeGen system.  This fuel cell runs on natural gas or LPG and is designed to provide 100% of a home's energy needs.  Current systems vent the waste heat, but systems now under development will use the waste heat to heat your water, or for other purposes.  This system is more efficient at extracting energy from the fuel than is a traditional coal- or gas-fired power plant, and doesn't incur the 8% or 10% additional loss from transmitting the power from the generating station to your house.  True, you still need some way to get gas to your house.  Absent a pipeline that means trucking it in, which could be less efficient than power transmission--unless everyone in the neighborhood had one of these things.  Then a weekly neighborhood gas delivery service would make sense and you could keep your tank topped off.

There is still something of a centralized infrastructure in that the trucks delivering the gas have to get it from somewhere, but there could be many of those somewheres, so that a failure at any one wouldn't completely disrupt the entire system.  In addition, with a tank outside your house that holds a month's worth of gas, most people should be able to withstand a week or more interruption in service.  What's more, with a little extra effort it'd be possible to build a neighborhood power distribution system in which those who have excess power could put it "on the grid" in times of emergency.  Think of a smaller-scale version of the power distribution grids that are formed by today's large power plants.  Every house is both a producer and a consumer.  It's an interesting possibility. 

I'm not completely discounting the possibility of solar, mind you, but it has some significant drawbacks.  Solar power generation depends on abundant sunshine and huge storage batteries.  A week or more of cloudy weather can render even the best solar energy system inoperable, and the last time I checked storage batteries of this size involved lots of dangerous chemicals, with the associated environmental hazards throughout their lifetimes from manufacture to disposal.  Solar may be a good supplemental system for non-essential needs like heating a swimming pool or running an outdoor barbecue, but it's not yet practical as a primary power generation system for most applications.

Monday, 24 September, 2001

Now that is a lot of memory!

Remember the switch from 16-bit computing to 32-bit computing?  We moved from computers that could access 1 megabyte to computers that could access 4 gigabytes.  We increased our memory capacity by about 4,100 times.  As big a jump as it was, it was actually conceivable.  I'd worked with, and overflowed, 32-bit quantities.  Face it, four billion just isn't that big a number when you're working with computers these days--not when the smallest drive I could find at Fry's the other day was 10 gigabytes for a whopping $80.00.  No, four billion is chump change.

So then, just how much bigger is 64 bits?  That is, if a 32-bit computer gives us access to 4,294,967,296 bytes of memory, how much memory could a 64-bit computer access?  Does the term "16 exabytes" mean anything to you?  That's 18,446,744,073,709,551,616 bytes--four billion times the memory that you can access with your brand new Pentium 4.  We geeks have a term for that much memory.  We call it "a shitload."

Not that I expect computers any time soon (not within the next couple of years anyway) to have that much memory installed.  I do expect, however, to see servers in the next couple of years that have at least a terabyte (one trillion bytes) of memory installed.  Even that is an astonishing number.  A terabyte is the amount of data stored on the disk drives of 50 of today's typical personal computers.  All in RAM and instantly accessible.  This has some interesting, exciting, and even frightening implications that I will expand on in the future. 

Sunday, 23 September, 2001

More Windows Assembly Language Programming

In 1983 I wrote a hex file dump program in Pascal MT+ for my CP/M computer.  Over the next four years, I added a few features to the program and turned it into a hex dump and patch utility.  The program's interface has been pretty much static since 1987, but I've re-implemented it in many different languages on several different operating systems.  Whenever I start learning a new programming language or start programming for a new operating system, I port this program. I've coded the program in Turbo Pascal, BDS C, Turbo C, 8086 assembly language for DOS, FORTRAN, COBOL, Prime Macro Assembler, Delphi (32-bit Windows console application), and most recently 80386 assembly language for Windows (again a console application).  I've started Windows GUI conversions at least three times, but the program just doesn't seem to want to be a GUI application.  Oh well.

So why do I keep writing the same program?  Simple.  When I'm learning a new programming language or operating system, I need to focus on the system rather than on the problem I'm solving.  "Hello, world" and similar one-concept programs are fine as far as they go, but at some point you have to tackle a real program before you can feel comfortable working in a new environment.  My dump/patch program is such a program.  It forces me to learn how to obtain the command line parameters, work with the screen, position the cursor, allocate memory, and perform file I/O.  The nice thing is that I understand the algorithms so I can concentrate on learning the language or operating system without having to worry about solving the underlying algorithmic problem.  One thing at a time when you're learning.

You can find the 16-bit DOS and 32-bit Windows console versions, with assembly language source, on my downloads page.

Next stop:  a Linux version, first in C and then in assembly language.

Saturday, 22 September, 2001

Book Review: The Great Crash

In 1954, John Kenneth Galbraith wrote a book called The Great Crash about the causes and effects of the 1929 stock market crash.  I read the third edition of the book, which was published in 1972 but is essentially unchanged from the original.  At 200 pages, this is a very short history of the crash, but well written and very engaging.  The first few pages sucked me right in, and I finished the book in two evenings.

Here's the funniest thing about the book.  Substitute "1929 stock market crash" with "2000 technology sector crash" throughout the book, and it reads almost the same.  Sure, some names are different and the stock trading laws are more stringent now than they were in 1929, but the story is essentially the same.  "Boundless hope and optimism."  In 1929, people were buying shares in "investment trusts" that invested in other stocks (and other investment trusts, oddly enough).  But the prices paid for the investment trust shares were way out of proportion to the value of the assets actually held by the trusts.  In 1999 and 2000, people were buying shares in technology companies that had never turned a profit and had no visible way of ever making a profit.  No essential difference.  The book is worth reading just for the deja vu experience.

I found the discussion of the aftermath more interesting than the events leading up to it, if for nothing else than it dispels some common misconceptions.  The great post-crash suicide wave of 1929, for example, simply didn't happen.  And although the crash may have contributed to the severity of the Depression, it certainly wasn't one of the root causes.  The economy was fundamentally unsound for many reasons, the stock market not being one of them.

All in all, I found the book informative and enjoyable.  Galbraith's writing shows that you can take an informal tone without completely butchering the English language.  What a pleasure to read. 

Friday, 21 September, 2001

Still Sick

Whatever it was, it wasn't food poisoning.  Several coworkers reported having the same symptoms over the past couple of weeks.  Whatever the bug is, it's persistent.  I felt pretty much okay yesterday, but today I left work at 10:30.  Went home and spent the day trying to keep breakfast down.  I surely do hate being sick.

Wednesday, 19 September, 2001

My Extended Absence

So what can I say?  I had planned last Tuesday to catch up here, but anything I could say seemed entirely inappropriate or inconsequential in light of the day's events.  And then I picked up a nasty case of food poisoning on Saturday that left me pretty much incapacitated for the next three days.  Today I was finally able to venture more than a few steps from the bathroom.  I've had minor food poisoning before--bad potato salad at a picnic--that gave me a headache and put me to bed early, but nothing to compare with what I picked up on Saturday.  This weekend's case was astounding.  I had no energy at all on Sunday, and that evening I had a temperature of 104 degrees.  I was miserable all day Monday and Tuesday.  Bloom County was the extent of my reading material, and I couldn't concentrate long enough to make sense of even a 30 minute M*A*S*H episode.  I'm all for relaxing now and then, but three days of complete physical and mental inactivity was nearly unbearable.  I can't describe how happy I was to go back to work today and actually face a problem.

As if to make up for lost time, my brain's been throwing out ideas right and left since I got up this morning.  I've got plenty to write about here, and plenty of new project ideas to explore.  I'll keep you posted. 

Wednesday, 05 September, 2001

Cell Phones in the Bathroom?

This cell phone thing has gotten completely out of hand.  As I was doing my business in the airport bathroom this evening (I was on my way back from Chicago), I had to listen to the guy in the next stall calling his wife to say that he'd be home at 11:00.  First he had to talk to his daughter to find out how her first day of school went, and then his son got on the phone and they discussed the kid's soccer game.  Sheesh.  Is there anywhere that I can get away from these idiots and their incessant yakking?

Tuesday, 04 September, 2001

Wear Your Seatbelt!

The answer to Sunday's question is $105.  Wear your seat belt.

Sunday, 02 September, 2001

Caught Without a Seatbelt

According to the National Highway Traffic Safety Administration (NHTSA), seat belts "are the most effective means of reducing fatalities and serious injuries when traffic crashes occur."  The linked article has the details.  I've been a believer for years, and since 1980 when I made a pledge during a pre-Spring Break safety drive to wear my seat belt during vacation, I've always worn it in the car.  It's automatic.  I get in, put the keys in the ignition, put on my glasses, buckle the belt, and start the engine.

Imagine my surprise this morning when I looked in the mirror and saw a DPS vehicle with its lights on and the officer motioning me to pull over.  Yep.  I got a ticket for not wearing my seat belt.  I had just completed a long ride with some friends, loaded the bike into the truck, got in and took off.  I must have been distracted by something or another, because I simply forgot to buckle the belt.  I couldn't help but laugh when he started writing the ticket.  He was surprised that I took it so calmly, and even thanked me for my courtesy.  Sure, I think the law's stupid, but then so is driving without a seat belt.  And ranting about the law to the officer wouldn't do anything anyway, except maybe give him cause to search for something else with which to charge me.  I've been chuckling about this one all day.  I wonder what it's going to cost me.