Wednesday, October 26, 2016

Skiing Downhill

89


By the Summer of Nineteen Ninety-One, my brain was working at its peak. Like a long dried out sponge it completely soaked in every bit of every moment. I had never experienced life like this. I did all of the same things I always did, but I could now see how each nuance added up to the end of each day in complete detail. When Daina and I would make errand runs for her and she wasn't sure where she had seen something, I could recount to her in complete detail all of the stores we had been to each day, each item she had looked at and which location of the store it had been at. Hours after the drive from the stores to my apartment, I could recall which lights had been green and which ones we had to wait at. I could work on my computer while watching the the cable news and keep complete track of them both without pause. One time Daina called and I placed the television on mute and continued working on my computer project, watched the silent picture and discussed the next day's plans with Daina and never lost track of any of them. Daina openly wondered if I was transcribing our conversion as we talked given my typing and I assured her I wasn't but instead working on something else as we spoke. She expressed annoyance at that and asked that I not do it anymore. So I stopped my typing but continued to think of the code I needed to do next while following the television and talking about the next day's plans.
I was running Daina ragged with frequent hikes now that she was on summer break from teaching. Never wanting to take the same trail twice too closely together, we had started to scrounge for trail maps and seek more obscure parks just to continue with the variety my mind desired. On one of these hikes, Daina just couldn't continue to the peak and wanted to turn around but still zested by my regained health I wanted to continue and she reluctantly agreed to wait where we were and I could finish on my own. I thought it would take me fifteen more minutes, it ended up taking just under an hour and Daina was very angry with me for keeping her waiting that long. I apologized and then suggested a faster way down rather than using the trail.
In the southern rocky mountains there are spillways of little crumbled rock which form a relatively smooth slope. One time when we had to cross one, I realized my feet would sink in if we took slow steps, but they would slide along the top downhill when one moved quickly. I recommended that we 'ski down' the straight spillway rather than take the serpentine trail back to the bottom. Daina was game after I showed her how to start and watched as the tumbling little rocks rolled beneath my feet as I slid down the first tens of feet quickly in large steps, then tilted my heels back to let my feet sink into the slope and bring me to a stop. Daina gave it a try, but more often came to a stop than slid along. I presumed it was from my past experience skiing where she just needed some practice and continued my way down, quickly descending a few hundred feet in little over a minute. Yet Daina kept sinking in and thus had to pull her feet out of the slope of little broken rocks more often. When she finally caught up to me a few minutes later, she wanted to return to the path for the rest of the descent and I agreed. We sat briefly on a large rock to pull off our shoes and pour out the jagged little bits that had fallen inside before we continued.
One time we reached the bottom of a path and her car was in sight, she suddenly cried out. Turning to look, she had been paying attention to the sight of her car, not the branches of the tree she was passing, and one jabbed her in the eye. Her eye swelling up and painful, she swore for a bit and then debated what we were going to do and then asked if I could drive her to the emergency room. I noted that I didn't have a drivers' license as I gave it up due to my declining health, but as I was now feeling great again and fully able to pay attention while driving, I was game for it as long as it was all right with her. I remembered in New England that a kid without a license could practice driving when an adult was in the car, so I assumed the same would be true for Colorado.
It was great being behind the wheel again and the emergency room doctor found that Daina's eye was just bruised, not punctured, and would be fine with some time to heal. He put a gauze cover over it and I drove Daina back to her condo where we visited for a bit, and caught up on previously taped shows. When it was time for me to go home, though, she didn't feel up to driving and told me I could just take her car. I agreed, but with some trepidation as this time I knew there wouldn't be a legal fig leaf for my driving without a license. Especially as it meant I'd also have to drive back the next day to return Daina's car. Still, I made sure to drive home perfectly and then flawlessly back so as to not gain the interest of any police cars.
For my birthday this year I decided to get a fresh driver's license. The bureau had moved in the six years since I had gotten my last drivers' license, but while in a bigger space handling more people, they still had the same driving test evaluator as my last time. I hoped I could just renew my old expired license and thus avoid dealing with him again given how our last experience had gone, but after my photo was taken I was told I'd need to have my driving re-evaluated given the number of years since I was last licensed to drive. This meant joining the long line of people waiting for driving tests and given the estimated wait time, Daina left to run some errands while I waited there. A half hour later, only having moved about a third of the way down the line, my name was called to the front desk. Arriving there, they handed me my license. Did this mean I didn't have to take the driving test after all? I decided not to ask and left the building. I figured I could always say I didn't know better if they came after me, or called me at home about why I hadn't stayed for the driving test. But they never did.
I realized how much writing computer code was like skiing downhill. The computer was the skis, the user was the skier and the computer program you wrote was the ski slope. If you wrote the code correctly, the program reached the end and the user was happy. If the code wasn't well written, the user had some surprising bumps along the way and, at the worst, crashed and had to get up and start over again. As I coded, I thought of the ski trail, the side paths one could take as an alternative to the main slope, add program checks to make sure the process wasn't going too fast or losing control, and then the satisfying crescent moon stop to bring the experience to a close.
Knowing I was cognitively back and raring to code something, Jeff put me in touch with the head of the 'Front Range Firefighters Association'. While fire fighters & stations could dial into Jeff's online site and stay abreast of the Fire Fighting message forums, there were too many of them jostling for a chance to connect to one of Jeff's incoming land lines. The solution was to create a point-to-point message system which would allow the various fire fighters to download the forum mail straight to their own computers, read and reply at their leisure, and then have their computers upload their messages back to Jeff's site for inclusion and distribution. Checking into the process, I found there were quite a few shareware pieces already available to do this, but each piece had its own configuration file format and they had to be laced together to get it all done: One program to handle the dialing, one program to perform the eMail exchange, one program to allow the end user to read and respond to the messages, and then a chain program to run all of them in sequence and trap errors between them.
I told him I could do it and agreed to in return for a pizza once I was done. Rather than write everything from scratch, I just wrote an installation program and a configuration manager. The installation program ensured all of the shareware pieces were properly placed on the destination computer and then the configuration program asked for and managed all of the configuration info each program might need and wrote it out in their specific file formats once it was entered or updated. For this, I used the FlexBase system I had developed seven years earlier as a universal online site hosting system. It allowed the user to define the appearance they wanted through a simple type-it-the-way-you-want-it-to-look system and let the code handle all of the behind the scenes work to make it happen. By using this preexisting code library of mine, I was able to just give it the template for the user screens and the templates for the various output configuration files and the FlexBase system handled the rest. Ultimately the most work I had to do was code up the 'download now' or 'read messages' choice screen and repeatedly test the system to ensure it wouldn't crash on the various types of IBM PCs and clones it might be installed on. Given that Jeff's machines and my own made a varied lot, it gave me plenty of chances to make the package fail and learn how to improve it.
After only a couple of weeks, the combined installation package was done and I uploaded it to the head of the association to distribute to his members. While I stayed in touch with him for the subsequent few months in case there was a problem to address, there never was and the package became quite popular and I even made variations of it for other online sites in town. It was my first major coding project since my health had returned and I was thrilled with the result!
Though I forgot to take up that pizza... Probably too late to ask for it now?




impatient? Paper, eBook
help me break even: Shop 

No comments:

Post a Comment