Wave Fronts

Main | Next page »

http://blogs.sun.com/microwaves/date/20061026 Thursday October 26, 2006

Introducing Queen Ann

This is my street bike "Queen Ann." Ann is a mostly stock 2006 Yamaha 50th anniversary YZFR6. The two significant mods (fitted by the extremely capable ladies and gents at the Triangle Cycles Durham shop) consist of a full set of sliders and an extra engine management computer. The sliders are the "protrusions" out the ends of the handlebars, out the sides where the engine is, and out the ends of the rear axle. They prevent the plastic and other expensive bits of the bike from hitting the pavement in case the bike falls over. I don't recall how expensive the sliders were, but they paid for themselves in the first few weeks, as I literally fumbled the bike onto its right side in my driveway and later had a more exciting situation that ended with the bike falling on its left side. The extra computer (tucked near the battery under the main seat) is a Dynojet Research Power Commander. As I understand it, this little box provides additional, user-programmable control over the fuel injection, allowing fine tuning tailored to the stock engine or in combination with other mods like a full race exhaust system. There is a second unit for making the ignition timing tunable, but that (and an alternative exhaust system) will have to wait for the point in time that I consider replacing my track R6 EverEvoRevolution (just "Ever" here) with Ann.

Here's how I imagine Queen Ann*. You see, this queen is powerful, yet gentle when not aroused. She purrs like a big cat and is quite happy to take me down my street at 25mph in top gear (something my Metralla of the 60s was not at all happy to do). She starts up easily, even on a cold morning. Yet when I twist this cat's wrist with mine, she changes magically from a gentle cat to barely tamed beast. The most impressive moment I've had so far, conducted on a completely empty piece of expressway when I was sure I couldn't hurt anybody if something went wrong, was dropping Ann down to 2nd gear at "expressway speed" then rolling the throttle up to full. This combination of speed and gears had Ann's engine turning in the rpm band where maximum power is generated (somewhere around 110hp). Ann and rider came to about 550 pounds for a power to weight ratio of 1:5. The latest Porsche Turbo (that I could look up cruising Wikipedia) has a 480hp engine and weights around 3500 pounds for a power to weight ratio of 1:7.2. In summary, the resulting acceleration when I twisted my wrist was astonishing, and it was time to shift into 3rd gear approximately one eyeblink later. This gave me a hint of the fun waiting for me at VIR, Barber, and CMP when I can take Ever for visits in my truck. I'm making some minor repairs to Ever and getting it prepared with it's new "colors" now and I'll share snapshots of at the point I've made real progress.

* This is a sculpture outside the museum at Barber Motorsports Park east of Birmingham, Alabama. If you have an interest in motorcycles, a visit to this museum should be on your list.

http://blogs.sun.com/microwaves/date/20060927 Wednesday September 27, 2006

java.lang.ThreadLocal UniqueThreadIdGenerator example FIX

A typo crept into the new ThreadLocal example class somehow. Here's the code as it SHOULD be:

 import java.util.concurrent.atomic.AtomicInteger;

 public class UniqueThreadIdGenerator {

     private static final AtomicInteger uniqueId = new AtomicInteger(0);

     private static final ThreadLocal < Integer > uniqueNum = 
         new ThreadLocal < Integer > () {
             @Override protected Integer initialValue() {
                 return uniqueId.getAndIncrement();
         }
     };
 
     public static int getCurrentThreadId() {
         return uniqueNum.get(); // CORRECT
     }
 } // UniqueThreadIdGenerator

The INCORRECT example code that escaped into Java SE 6 invokes uniqueId.get instead.

This problem was apparently caused by the fact that the unit test I used to test the putback "wasn't good enough" and the fancy replacement's debugging collided with time constraints for the release. I guess I put the typo in at the perfect time to shift mistrust to the new unit test. There's an open bug for the latter and there will soon be an open bug for this last minute botch. There should be no problem getting this example fixed for U1.

http://blogs.sun.com/microwaves/date/20060921 Thursday September 21, 2006

Under the Knife Again

Warning: parts of this entry might be highly unpleasant for squeamish people.

I'm getting a hernia repaired in about a week. The surgeon has promised me a lifetime guarantee and the ability to exercise as hard as I want to without any concern about recurrence and minimal risk of chronic pain. And no more lower back pain for four days after trying to right my motorcycle without seriously hurting myself in such a way that I have to drop everything and rush straight to the hospital (but I know the "lift it behind you" trick now). But this high quality repair requires open surgery under general anesthesia and I haven't required that for a long time. I just recalled that first time and a surprising "without any anesthetic" memory that I'd left buried until this morning.

When I was five I lived in Ypsilanti Michigan. I was a very happy kid and full of self confidence. I clearly remember beating the snot out of another kid for bothering my younger brother, sitting on his stomach and having a great time pounding that mean kid's face. But all my life I've been subject to moments of "excess enthusiasm", and one day I suffered a consequence from that. I was chasing after a neighbor girl, racing through her house as we laughed and played tag. I was "it" and was running as fast as I could through their living room, but Inga was maybe 10 steps ahead of me. She shot out their front door and as I reached it a strong spring was causing the door to slam shut. I straight-armed the door to push it back open again but misjudged the acceleration that would be involved. The heel of my right hand hit the storm door with my arm in column (thus very stiff) and I was amazed to notice that I was passing right through the door. Then I was standing on the concrete slab in front of the door, noticing that the concrete was very rapidly becoming covered in red. I looked down at my right arm and there was a fountain of blood coming from where my right biceps and triceps used to be. Except they weren't where they should be. My arm didn't look right at all. I just stood there, perplexed about what was happening, but knowing that this was about as serious a situation as there ever could be.

Meanwhile there must have been a hell of a commotion. I have no memory of any sound, but guess Inga yelled for her mother, a registered nurse. I was told that Inga's mother grabbed a large bath towel on her way to rescue me and I remember that towel and the vice-like grip she used with it on my arm. I guess she saw me through the broken glass storm door and doubled back to the bathroom. I remember her picking me up like I was a doll and running. She had no car, but a neighbor was backing out of his driveway. She opened the back door and got in with me. We only lived a mile from the hospital and were there in moments.

I remember a lot of poking and a lot of sharp pains and a lot of very gentle, reassuring, smiling faces and voices looking down at me, explaining what they were doing. What they were doing was repairing my bicep and triceps muscles, and I was conscious. It didn't hurt too much, but I remember scissors cutting into me as the doctor explained that it might hurt a bit, I guess because whatever anesthetic they had used had not taken hold before they'd started the repair work. They couldn't save all the muscle, and I lost a "half my biceps and a third of my triceps", according to my mother who talked to the doctors. The rest of me was OK, with just a few lacerations of my forearm, hand, and scalp. Oh, I guess a lot of blood came from my head, as I recall a lot of stiches in my scalp.

But they also gave me a general anesthetic later to remove my tonsils. I remember the mask coming down and the obnoxious smell and weird feel of that gas in my lungs. But I trusted the doctors and wasn't afraid. For me, going under was exactly like flying into the front of a TV screen when the TV was between channels and the screen was just filled with a visual representation of thermal noise. The "wind rushing noise" of "TV static" coupled with the rapidly moving jangle of the visual noise was what I experienced, and then I remember more gentle voices talking to me as I woke up.

That "wind rushing noise" was very deeply frightening to me years later when I experimented with psychoactive drugs. I was in a car being driven along with the window down and within the noise of the wind, which was somehow amplified tremendously, were the constantly repeating words "Whooo arrrre you?", which was of course the hookah-smoking caterpiller's line in the Disney version of "Alice in Wonderland." But I didn't remember that connection or see it as an amusing line. The repeated question simply scared me to the very core of my being and made me wonder what flavor of masochist I might be to smoke something that would make me question myself so deeply, because I had no good answer to the question of who I was back then.

But back in those old days before tempered glass for storm doors I was treated to ice cream, ostensibly to celebrate the tonsillectemy they'd performed, and the next several weeks were spent with bandages and various forms of therapy that I have no memory of.

Years later at Auburn University I was forced to accept a B in physical education because to get an A you had to do N pullups and I could only do N-k. I wish I had a movie of that and I still think it had to be a funny sight, as while my left arm was still pulling me up quite nicely my right arm ran out of strength and the result was that my body was turned at an angle to the left. I hadn't worked out well enough to do left-handed pullups, so I got a B. Other than that episode my right arm has never been a handicap. It just looks funny, as were most people have a biceps bulge I have a crater.

But next week will be trivial. I hear they offer to give you a "happy shot" or something, to reduce anxiety about the general anesthetic. I think I'll decline that. I'm very curious to see how my mind presents a forced loss of consciousness this time and want to be fully alert as it happens.

Update: 2nd Op trivial, post-op a different story

After writing all this I was told to forget about experiencing gas directly, as the standard procedure now is to knock you out with IV drugs first. And that's exactly what happened and my memories run from being wheeled in my bed to the OR and wondering what that would look like to noticing one of the nurses approaching and looking at me in recovery, with absolutely nothing in between. I didn't mind this "excision" of my consciousness (I think I was mentally perserverating from the happy-drug they'd put into the IV to relax me for the general anesthesia).

But it wasn't too long before the unhappiness wore off and I became aware that I'd been "hurt" severely as a side effect of the operation. Enter the pain management nurse, who was very nice and was trying to be helpful every step of the way, but also had a finite shift and an apparently urgent hospital policy hanging over her to "get to closure fast, no matter what the outcome." That is, I felt like a trained seal being put through a performance as I was made to estimate my pain level on a 1-10 scale ("6"), then repeat that estimate after the first dose of hydrocodone was put into my IV ("no change"). Then a second dose ("no change"), then a dose of morphine ("zip: nothing"), then a second dose of morphine ("that took the edge off: down to a 4"). I think the fact that I'd finally reported some pain reduction charged the nurse up with so much enthusiasm that she just bubbled over with it as she hustled me to and from a bathroom to "prove to her I can pee" as a prerequiste to being discharged. I could pee, but I could more easily have simultaneously thrown up while losing consciousness. The pain was a clear "9", and so severe that it was as if my body was reacting on its own in ways that amused my observation powers while I was also urgently, vigilantly fixed on the idea of getting back to the bed by any means possible while not retching (and thus stretching the stiches in my muscle and other layers in my abdomen and making me flirt with the dreaded "pain level 10"). All dignity was simply ignored and I didn't mind at all that I was in a bathroom with my wife and two female nurses, demonstrating basic bodily functions and talking through every move. At one point I thought I'd be better off sitting on the toilet to rest before gathering myself up for the walk back to the bed. But that put more stress on my incision and only motivated me to hurry the hell up and get back to a state of no more stress and strain of highly ennervated tissues.

We did get me back to the bed and this is the point at which things went badly wrong. I was dopey with pain, a state that I hadn't had much experience with up to then, but realize now is possible apart from the dopiness of some drug side effects. So my "science muscles" were out to lunch at the point the pain management nurse gave me an anti-inflammatory drug by IV and we waited until maybe on hour after the very bad bathroom visit. She again asked what the pain level was and I told her a "2." But I should have lied! I was befuddled and didn't realize I needed to have said "It's a 2 now, because notice I'm lying here and not flexing anything. Let me get out of this bed, walk three steps, then come back and get back into the bed and give you a number for that. That number won't be a 2, will it?" And it would not have been a "2", but rather around the original "6." But instead of uttering the words to try to get some science into the situation I found myself listening to the nurse explaining in a very matter of fact manner that she wasn't going to get my pain lower, I was just going to have to live with it. I convinced myself I could do that and a couple hours later I was in my own bed at home.

But the bathroom trips were bad and only got worse over the next two days. Starting the morning after the op the pain as I walked to/from the toilet got to the "red hot poker in the guts" level. I'd experienced something in that range, but a bit stronger, in the 70s after a car accident. A fully size Chevy brought the passenger side of my Mazda RX-2 about 18" in the direction of my side. Luckily I drive "from the back seat" and the passenger seat was set a half foot forward and that blocked my body from kissing the metal that the Chevy was pushing in my direction. I was too focused on getting back to my first contracting job to make some bucks for BAS to listen to the EMS folks and I switched to my spare car and proceeded to a neighboring town. I was awakened out of sleep at the motel by the sensation of my broken rib ends 'tickling' each other. But the sensation I pereived was as if a fire had broken out in the room and I was breathing superheated gasses with every breath. I had to stop breathing, for the sake of making that amazing burning pain stop, but I had to breath to live. Bummmer.

But back in my bathroom this past Saturday morning I was faced with the realization that things had not gone the way they needed to on Friday and I was taking a two pound medication for a five pound pain. But surely I was healing and in just a matter of hours the healing would cross over and my pain would go down. It went up some more instead. So I drank as little as possible to minimize bathroom trips and went into "time endurance mode", waiting to feel better. By Sunday morning my wife and I had extrapolated the hydrocodone and it would run out around 2am Monday morning. So they hadn't even given me enough of this stuff to make it to the surgeon's office hourse on Monday. I was desparate at this point and called the physcian on call at the surgical PA. It was matter of factly explained that "pharmacy rules" prevented that doctor from doing a thing for me: I had to go back to the hospital. I got a little bit mad about that, and the doctor didn't contest the fact that it was going to hurt a great deal to get to the hospital in order to get more pain relief. The doctor finally suggested I take the next two hydrocodone early. The next two were due at 10am but it was only 8:30am. I was very agreeable to anything that would get me to a state of reduced pain, but unfortunately hadn't read the pharmacy details for hydrocodone that included strictly worded instructions to avoid double dosage. But with four tablets on the job I counted the bumps in the pavement between our house and the hospital. But I was sweating terribly, and feeling very uptight. This came to a head with the triage nurse in ER who just wanted me to fill out her form, not tell her what was going on with me, and I became openly hostile. It takes a lot to make me nasty, but we now know that excess hydrocodone in my system on top of uncontrolled pain can accomplish the job. The ER physician and I finally realized that the best thing for me was to be left alone in a room to "chill out." This of course let the excess hydrocodone wear off and my sweats and anxiety attack went away and I could once again put on a civil face and stop talking about what I'd like to do to the system that had not given me effective medicine the previous Friday. I got a prescription for hydromorphone and that did the trick, with one tablet taking my "walking around" pain level from "9" to "3" and two tablets taking it to "1" or even "0." That was Sunday afternoon, and by Tuesday morning I was free of the red hot poker was gone forever. The celebration was short-lived, however, as after the first substantial meal (two slabs of healthy bread with a thick dollop of humus on each) I had terrible stomach cramps. But they were familiar cramps and I just got through them well enough to go to math class and confirm that I have a lot more work to do in that course, to put it mildly. The cramps have continued, though, and I think I need to visit my general practitioner and just go over the situation to see if it's just a matter of waiting those symptoms out or if I should mask them with the hydromorphone. I'm drinking lots of liquids in the meantime, though, and hope I'll be back to normal in another day and this is just my body getting sorted out after a few days with a serious narcotic.

However I'm starting to get a very joyful feeling about the prospects for doing whatever physical exersion I want to without fear of "internal damage." A friend has a decent exercise machine and perhaps we can discuss his analysis of Job while I get my strength matched up with my endurance. But we might be better off remembering the mathematics he would have used for his chemistry instruction for the sake of my math class

Final Postscript: I'm pain free and back on the stationary bicycle, practicing yoga, and looking for strength training equipment. I'll call my friend but don't want to impose on himm and will most likely join my wife's gym membership to start "pumping iron." I'm very glad I made this improvement!

Side note: For some reason the little audio clip of "simulated TV noise" with some background piano that I could imagine might play in one's mind while in the process of going under from an anesthetic simply doesn't play properly when linked to on this blog site. It plays for maybe 2-3 seconds and then stops. This was going to be linked from the above "TV noise" picture. No big deal, but puzzling. If can make this work I'll amend the text box that shows when focus passes over the image.

http://blogs.sun.com/microwaves/date/20060912 Tuesday September 12, 2006

Hal Blackwelder

Hal was at Business Application Systems, a 1978 Data General spin off that created general and medical billing and data communication and other software products to finance development of a portable operating system anticipating the Java platform by about 17 years. That OS, named "BASPort", might have equaled or surpassed Pick as a highly portable application platform, but for various reasons that wasn't to be (and that's another story that others may help me tell some day).

Hal's obituary only hints at the depth and breadth of this man who was alive until late last month. One of the BAS founders (Forest Earl Gilmore) had a strong artistic background (he was a student of Chinese poetry, to name one piece of his experience). So it seems only natural to me now that a guy with a masters degree in teaching theatrical arts would be invited to work at a place with its corporate eye fixed on the design of a good three address virtual machine and a minimalist OS kernel sitting over bare metal. Hal started out doing technical writing, as I recall, but at some point I introduced him to an Intel ISA reference and he pointed to that as the starting point in his career as a software engineer when we chatted on the phone for the last time. It was a long hard road from artist to writer to programmer to software engineer, but Hal traveled that road skillfully, partially satisfying his parent's expectations.

Hal was thrown out of work by the high tech slump around 2001-2 and was appparently unable to maintain employment that 'made the grade' in his mother's eyes, or so it seemed from conversation with Hal's stepfather. Hal apparently ran out of reasons to function and descended into an alcoholic depression and eventual distintegration of health. His death not too long after the death of his mother seems unsurprising to me in view of the facts, but that doesn't reduce the tragedy of such a wonderful spirit withering away in a state of psychological asphyxiation.

I'm sure there's a lot more to it, and invite Hal's friends and family to comment if I'm creating a distortion or incomplete picture here.

But I could only bring myself to talk with Hal's stepfather for a few minutes. It turned out to be an extremely difficult task to get to and through the memorial service a half day's drive southeast of where I live. I entered the church with just a few minutes to spare, broke down, left to blow my nose and wipe my face in the mens room, then went back. I made it through the ceremonies reasonably well, although the guilt the minister laid on Hal's head made me fight the urge to shout something and walk out of the place. But I was there representing other ex-BASers and I needed to connect with Hal's relatives. So I sang the hymn and read all too familiar bible passages while the minister's utterances passed my ears on their way to sound absorbing walls behind me.

I felt numb walking away from the church, but I'm keeping Hal's easy smile and chuckle fixed forever in a corner of my mind.

http://blogs.sun.com/microwaves/date/20060910 Sunday September 10, 2006

When I grow up I want to be the old man equivalent of the Blues Brother's car at the moment they got to downtown Chicago.

Bringing back old muscle memories

Contrasting the Yamaha R6 with a Bultaco Metralla has been an interesting exercise, both mental and muscular, as the R6 has about 120 pounds on the Metralla and is taller in the saddle, if memory serves, so I can only move the R6 with the ends of my feet. My left forearm muscles aren't sore, but my right hand is positively weak from practice of resisting the throttle return spring for extended periods of time. Did they have to use recycled bear trap parts for that spring? Must be some safety feature for a Yamaha exec's slide set ("Chilren can't possibly hold throttle for long. Excellent conclusion: lesser probability of inopportune episode involving inadvisable acceleration or velocity!").

Working out the stock R6 ratios, for the factory suggested 600 mile break-in rpm limit of 10k I get 110mph in 6th gear (i.e. 109mph stays on the right side of the recommended limit). That turns out to be close to the top end of a Metralla on level ground. I wonder if I owned any goggles or a face plate for my open face helmet while running the Metralla at it's maximum speed? Oh, it had to be goggles, 'cause I wore contact lenses then and they wouldn't stay in with wind blasts, even with a snap-on shield. In fact I recall now that one lense fell out once and landed on my fuel tank (how is it possible I never lost a lens in my life?).

But the "break-in limit" for the R6 seems perfect, as based on the data it appears the R6 engine is only starting to wake up at that speed. This is good. I need lots of experience with handling to get to the "second skin" level of familiarity I achieved with the Metralla before experiencing peak power on the R6. There seems to be plenty of time, as I'm still scraping together money for body armor, gloves, boots, and well armored leathers with puck holders that match the safety level of my X11 helmet. Oh, and I know now that the leathers need to fit me like they were sprayed on. I can stand a lot of hassle with getting one piece suits on and off in return for not being beaten bodily by any loose bits flapping. I need to be able to stay almost fully relaxed and avoid distractions at all times to tame an R6. This leans me toward a visit to BTK for a final fitting. I'll have figured out where my weight and shape is going to stabilize at by then (weight oscillating between 175 and 178, but my "love handles" aren't burned off completely and I haven't started strength training yet).

I'm living each day as fully as I can.

http://blogs.sun.com/microwaves/date/20060907 Thursday September 07, 2006

Resumed Hobby

This is "EverEvoRevolution", a heavily modified 2001 Yamaha R6 lovingly prepared and raced by Dwayne in Georgia and now in my barn:

My first steady job was delivering newspapers in Montgomery, Alabama. My Dad was helping put together a pair of SAGE computers at Gunter AFB and I needed money to build a chemistry lab in the little storage building on the back of our carport. But delivering newspapers while walking is only fun if you have an apartment route and I wouldn't have that until years later in Huntsville (while my Dad was helping SCI deliver S band transponders into the Saturn V Instrument Unit). I threw my first route on the fat-wheeled bicycle my folks bought me but in addition to finely powdered zinc and sulfur and the gas fittings for a Bunsen burner, my first route underwrote a three speed bike. I was the only person in my part of Montgomery with one of these, as far as I could tell ("Is that one of them Furrin bikes, Leroy?"). I still remember being unable to resist testing the front brake while going down the driveway and doing a reverse wheelie and having to swing off the handlebars as the bike was momentarily describing a 70 degree angle. OK: brakes powerful enough! With generator-driven lights that bike took me all over town, singing under the streetlights with generator whine. And I could go up steep hills without much effort, passing the other kids pushing their single speed, fat-tired bikes.

But I naturally wanted more, and in Alabama at the time it was possible to get a motorcycle-only license at age 14, as long as the power was "governed to 5 horsepower or less." So soon after my 14th birthday (in Huntsville) I was riding an 80cc Yamaha street bike home in a very wobbly manner, stalling the engine more than once as I learned to slip the clutch from a standing start. It took me about one minute to remove the "governor", a plastic restrictor plate in the carb. The chem lab had been replaced by an electronics workshop and I recall one of my early purchases with my motorcycle-augmented newspaper career was an EICO 5' oscilloscope kit, which gave me absolute respect for high voltages when I put my elbow on the CRT plate potential. Much later I would learn to the name for this kind of episode: one trial learning!

Now luckily for me I had a riding buddy: Billy Elston. Bill was selling oil drilling tools the last time we argued politics 10 seconds after saying "hello" on the phone a few years back. But as kids we were soul mates and Bill's slightly older age kept me out of a lot of narrow places as we rode our bikes on every piece of pavement and most dirt and gravel roads in Madison county Alabama (we practically memorized where all the stones were placed). But Bill was actually the wild man. Our second bikes were identical 150cc Honda two cylinder four strokes and I once died a thousand deaths watching Bill stand up on his seat and hold his arms out as we rode side by side down a street at maybe 35mph. It seemed to take him five minutes to complete that stunt and get back onto his seat and I remember thinking "I'm going to see my friend maimed or killed." But, apart from a broken arm when a car turned left across his lane one time, Bill made it through the motorcycle experience without injury and my approach to riding settled down to developing learning strategies for minimizing risk while maximizing thrill factor and skill level.

As Billy was finishing high school I got my third bike, an Isle of Man TT replica Bultaco Metralla. It was a 5 speed, single cylinder 250cc, 35hp, 250 pound two stroke with the most powerful brakes and stickiest tires anybody in Huntsville had ever seen at the time. It was around 1966. My Dad loved to ride that bike! Here's a picture of a nearly identical Metralla:

Here's how I exercised this bike the way its makers intended. I delivered my newspapers on Sunday mornings around 4-5am (remember the apartment route I built? 145 papers delivered in just a few minutes!). Then I'd slip up to the northeast corner of Huntsville and up the "back side" of Mount Sano, which gave Werner von Braun and his fellow scientists a little relief from the Alabama heat during the years they worked in the space program there. I don't know if Werner was ever awakened by me riding nearby or not. I couldn't afford a tuned pipe and was always concerned in case a too-loud exhaust would annoy anybody. So the Metralla exhaust was stock, but still a bit loud compared to the more civilized Honda 250. In any case, I tip-toed up the mountain to a loop of the state park roads that formed a six mile "circuit" and just after dawn when the dew had evaporated I began to turn laps on that circuit. The tricky bit was that I could never be sure nobody would be coming around the next curve head on to me. So I had to have a strategy for dealing with that at every point. At the time I believed I was riding in a completely safe manner that just happened to approach triple the 35mph speed limit. As I now realize I enjoyed an element of luck, as I never once encountered oncoming traffic, so I never had the chance to discover that maybe my corner exit strategy would be trumped by a driver's momentary trespass into my lane. As a great car mechanic in this area put it, that was before I grew more brains. But I never as much as scratched the Metralla until I sold it for funds to get me through my second year at Auburn (but I transferred to U of A Huntsville after my 4th quarter there).

But I got pretty good on that patch of mountain road and earnestly wished some other motorcycle or car would be on that road going in my direction. It wouldn't have mattered much what it was, as, if the driver or rider hadn't also practiced a great deal, I would have simply run away from them as if their engine had quit, while staying in my lane when it was critical, stopping at the stop signs and signalling the turn between roads, etc. I'm sure I hold the lap record for that patch of road, at least for Sunday mornings. Alas, it was washed down the mountain by a landslide years ago and doesn't exist anymore. Here's a shot of one of the overlooks a little below my "private circuit." That's dear friend and former and eventual workmate Dave Blalock balancing a cloud on his finger to celebrate our creative adventures of the day while chatting in my hotel room.

Flashing forward to the present, I decided to resume motorcycling as a serious hobby, so I've bought a seasoned, race-ready Yamaha R6 and I intend to learn how to ride it to its limits. I've lost 30 pounds, said goodbye to blood pressure medication (danged lying Intel 80186 salesman forcing us at Network Products to redesign/reimplement around a 68k in under 6 months caused that blood pressure problem in 1982), and I've been carrying my heavy backpack around on the fingers of my left hand to prepare my forearm muscles for Evo's Barnett clutch. Between Virginia International Raceway, CMP in Kershaw, SC, and Barber Motorsports Park outside of Birmingham I've got enough decent tracks to keep me occupied. But for now this bike sits under canvas with its fuel stabilizer in the tank, waiting for skins with NESBA #616 on a yellow background and waiting for other aspects of the fullness of time.
3

http://blogs.sun.com/microwaves/date/20060815 Tuesday August 15, 2006

White man scrapum bear fur off face every morning, but he the "more advanced race"?

http://blogs.sun.com/microwaves/date/20060714 Friday July 14, 2006

Howerrow

In 1991 my wife and I passed Dillon, Colorado on I70 on the last leg of a car-camping vacation. A few months later we picked a male kitten from a litter on the basis of it climbing up and into a filled watering can and having a quick dip. Dillon is now 15 and seems to have responded to the challenge of the young (and I just typed "jung" and had to fix it) upstart male cats nearing their third birthday: Magic and Moon Pie.

I accidently taught Dillon to say a passable approximation of "hello." My wife and daughter have both started to notice it (and reinforce Dillon) and if the rate gets up much higher I should consider teaching Dillon a discriminable stimulus to use as a prompt. Maybe an innocuous sound, like a certain kind of cough. But that Dillon can say "Howerrow" is a fun start.

My wife was skeptical until Dillon came to my side of the bed as we were reading one night and meyowed several times with no reaction from us. Then he said "howerrow" and I said "Hello Dillon! Come up and let me pet you" while patting the bed invitingly. He jumped up instantly and got a lot of cuddles. At about this time my wife and I both realized what had happened and how Dillon is training me to reward him for saying hello. My reward is of course hearing human language coming out of a cat's mouth. But this was completely accidently until a couple weeks ago when we became conscious of it and the rate seemed to go up. We'll see where this goes. NO, it will not go to Letterman, as Dillon isn't stupid!

Macy's fireworks is the beauty of warfare without the suffering and death.

Immortal Source Code

The ISA of a VM (i.e. it's bytecode set and the semantic definition of all the bytecodes) can change and hypothetically all existing higher level ("source") code can be moved forward to the new ISA/VM combination with a well understood compiler bootstrapping process. So not only does a VM insulate source code collections from necessary hardware and low level ISA evolution, it supports evolution of the higher level ISA of the VM itself. An example of this that has been going on for years is concurrent evolution of the Java virtual machine and maintenance of backward compatibilty, providing "immortal source code." And for where the GPL is involved one gets "immortal open source code." I wonder if Forest (Earl) Gilmore, Don Parce, and Robert (Bob) Nichols shared a vision of this possible future when they launched Business Application Systems in 1978 to create BASPort? (BASPort was a portable operating system: Think Java on top of an extremely simple OS kernel and *everything* but the kernel itself and the virtual machine being in the portable language.)

Vegetarianism is a mindset, not a menu.

http://blogs.sun.com/microwaves/date/20060701 Saturday July 01, 2006

England Swings and Misses

Being married to a Lancashire lass has been a very pleasant and rewarding adventure for me for the past 19 years, but sometimes there is tension. As I type this, England is playing 10 men and it's 8m23s into extra time with the score nil nil. I know England can win this game, but I'm not sure who's nervous energy is going to be more fully spent, the team's or my wife's....

So let me get this straight. All that pure energy, all that sacrifice, all that perseverance through dry heaves and debilitating muscle cramps was neutralized because one immature toughie on the team couldn't resist stepping on an opponent's nuts? So this is a little chronicle of vulgar art and my wife and I are turning attention back to our daughter's recreational "soccer" after summer vacation.

http://blogs.sun.com/microwaves/date/20060623 Friday June 23, 2006

Nothing

On looking into an empty bottle in highschool English Composition
NothingByPeterJamesSoperAndPeteAtSoperDotUS

http://blogs.sun.com/microwaves/date/20060622 Thursday June 22, 2006

Java Portability

Solaris(IBM AIX/Linux)-specific interruptible I/O is a case in point about Java portability headaches.

One source of great tension with Java programming is between the desire to use it as a general tool and the desire for it to be a truly portable platform. This is demonstrated sharply with high performance and specialized settings in which "interruptible I/O" is deemed useful, while practical issues prevent this feature being provided for Java Standard Edition (Java SE) in all operating environments. For instance this program below does nothing visible on Solaris, but prints "hello" with Sun Java SE on Linux and Windows:

public class Foo {
    public static void main(String[] args) {
        Thread.currentThread().interrupt();
        System.out.println("hello");
    }
}

First impressions of this program's behavior on Solaris roughly translate to "The hell you say!" followed by "Java is broken on Solaris!" There are a number of "symptoms" of interruptible I/O that catch users off guard and in a few cases one is led to wonder if it might be best to do without this feature whose flip side is that it allows "breaking out" of I/O operations that folks really want to be able to escape from. One could argue that the semantics are just funky and I admit to not knowing where they are written down. In fact I'd love to hear of any other versions of Java SE that support interruptible I/O. IBM Linux Java SE prior to their version 5 does support interruptibility similar to that of Sun Java SE, but it isn't clear if this "feature" extends across many other implementations. In any case, I think this is an appropriate test case for a discussion of portability.

I like to present things backwards sometimes, so let me start with the last thing on my mind, which is to wonder what could be done to "fix" interruptible I/O? That is, what could be done to make this feature less surprising or problematic?

An obvious solution would be to yank this feature where it is OE or vendor-specific and this proposal is a Sun change request. More on this later. But the key issues for this solution are the questions of who is dependent on this nonportable interruptible I/O and what they have as an alternative. The answers seem to be "almost nobody" and "java.nio" respecitively.

But more basic than this, of course, is Sun's pledge to maintain backward compatibilty "no matter what." But are some problems painful enough that they should be exceptions to this rule? The fact that Java SE on Solaris (and pre-5.0 SE on IBM AIX, Linux, etc) have such different behavior poses a terrible problem for unsuspecting developers. But even if this "acute pain" is beyond reasonable, can we leave users in the lurch? I think not, or at least not in any kind of short timeframe.

More on this later.
2


Valid HTML! Valid CSS!

This is a personal weblog, I do not speak for my employer.