Puppy Patience

The little dog sat on my knee with her chin on my hand. She was a patient little puppy. She liked to watch as I pressed the keys on the keyboard. She had no idea why I was doing it but it was enough that I was close to her. Next she started licking my thumbs as they hovered over the space bar. Finally, I had to pick her up and hold her while I wrote.

Through it all she was patient. No cat was going to be any better than her at keeping me company while I wrote. She sat on my shoulder and sniffed my hair. I knew I was going to have to make this one short. Soon she would get bored and let me know by barking at me.


Sweet dreams, don’t forget to tell the people that you love that you love them, and most important of all, be kind.

neercS eht ghuorhT

She had been sitting in front of the computer for half an hour. The glow of the screen would keep her awake for hours. She hadn’t written a word. Her fingers sat on the home row keys. Mrs. Smith, her high school keyboard teacher would have been proud of her. Except she wasn’t typing. She was sitting there staring at the blank place on the screen where her words should be.

“The quick brown fox jumps over the lazy dog.” she began to type. It wasn’t what she wanted to say but at least there were words on the page now. She reached up and touched the screen. It gave way beneath her touch like the surface of a pond. Her fingers dipped beneath the surface. They felt dry. She could not see a hole where she had touched the screen.

She stuck her head through the screen. There was a darkened room on the other side of the screen. It looked surprisingly like the one on this side of the screen only everything was mirror image in that world. She looked back and forth to see if anyone was in this strange room.

She felt her shoulders nudge the screen and pop she was on the other side, sitting in the mirror chair, looking at the mirror screen. And yes, the text was backwards but it seemed that this was the way that things ought to be. She had no trouble reading it. It said the same thing that she had just typed while she was on the other side of the screen.

This was ridiculous. She must be imagining it. She touched the screen again. It gave way just like before. Again she stuck her head through the screen and found herself being pulled through it just like before. As she sat there looking at the screen she found herself becoming incredulous. This couldn’t be happening.

She touched the screen a third time. This time it was solid to the touch. Had she really just passed through the screen of her computer? And what if she had? Who was going to believe her? But she knew now what she was going to write about.

“He had been sitting in front of the computer for half an hour. The glow of the screen would keep him awake for hours. He hadn’t written a word. His fingers sat on the home row keys. Mr. Smith, his high school keyboard teacher would have been proud of him. Except he wasn’t typing. He was sitting there staring at the blank place on the screen where his words should be…”


Sweet dreams, don’t forget to tell the people you love that you love them, and most important of all, be kind.

Thinking About Thinking

The funny thing about thinking is that you have to let go in order to have creative thoughts. Often, you can’t look right at the subject that you want to think about, you have to approach it indirectly. You have to be open to try new things. You have to sit down and start writing down ideas as they come to you. You have to stifle the censor that tries to stop you before you begin.

It sometimes helps to enter ideas into a writer’s almanac and try to break them down into smaller pieces. Sometimes it helps to keep a long list or outline of them. The hierarchical nature of an outline helps impose structure on the project. The important thing is to just start writing without censoring yourself.  You’re going to edit this idea before you publish it.

The maddening thing is that inspiration will often happen at the most inconvenient times. This encourages the project to be viewed in many varied ways. The key here is to take notes when it happens. If you have to leave something out while you are working, make a note to yourself. use square brackets to set the idea off from the rest of the piece [see if you can find someone else that uses this technique]. This makes it easier to search for when you revise the idea later.

Sweet dreams, don’t forget to tell the people you love that you love them, and most important of all, be kind.

The Ever Expanding Standards of Literacy

Once upon a time the definition of literacy involved both reading and writing, more specifically writing with a quill. To write with a quill, you had to know how to form the end into a fountain pen. This required some skill with what is still known as a pen knife. There were also pencils but writing in pencil was not as permanent as writing in ink.

Then typewriters were invented. Now writers could write faster and more legibly using this remarkable machine. The definition of literacy didn’t change so much as the expectations of your readers were raised such that you were expected to use a typewriter to submit your manuscripts. Thus, the definition of literacy expanded a little bit.

Next came the computer. With a computer you could have assistance with spelling and grammar. You could reach more people, thanks to the web. You could edit text without having to totally retype it. You could easily make multiple copies. It was important to make sure that you made mutiple backups of the files on your computer in multiple places. The definition of literacy expanded to the use of computers to read and write with.

We come to the most recent addition to the attributes of literacy. You must be able to create web sites. You can do that in several different ways. You can do it the old fashion way using HTML and CSS. Or, you can find one of the many web frameworks like Ruby on Rails, or Django, or Grails, or many others. You might try one of the numerous different implementations of Wiki. Or, you might try a content management system like WordPress or Drupal. This has further expanded the expectations of the literate person.

I enjoy writing. I am thankful that I have a computer instead of having to write everything out longhand. I am relatively sure that I wouldn’t have gotten this far in my quest to master the craft of writing. I still have much to learn but I have much better tools with which to work.

Sweet dreams, don’t forget to tell the people you love that you love them, and most important, be kind.

Of Stationary, Ebooks, and Writing Tools

Stationary has always been a weakness of mine. I love having notebooks of various sizes and weights of paper. I love the smell of printer’s ink. I love loose leaf binders and rulers, pens and pencils, and stencils like the flow chart template that used to be popular in college book stores. Do colleges even have book stores any more? I know they do but with so much of our information being delivered online, the advent of the electronic book, and the relentless competitiveness of online commerce, it is hard to believe that the campus book store will survive per se much longer.

My fetish for writing tools extends to computer programs as well. I have a huge collection of different text editors, word processors, outliners, mind mappers, and other programs for capturing ideas on a computer. Just this weekend, I installed a program called Instiki that allows me to easily create my own private Wikipedia-like hyper-linked collection of notes.

I still like the feel of physical books but I have to admit that I can store a whole lot more books on my iPad than I can in all the bookshelves in my two bedroom apartment. And so the trade-off has begun. I only buy my favorite author’s books in paper editions. The rest I buy ebook editions of. I sometimes buy the ebook edition of books that I also own the print editions of. That way I can carry it with me where ever I go without hauling around all that extra mass.

Physical books don’t take batteries. They survive power outages. That may be solved in the near future as we keep producing batteries with longer and longer lives. We may eventually build an ebook that can derive power from the environment without having to be explicitly charged.

Sweet dreams, don’t forget to tell the people you love that you love them, and most important of all, be kind.

I Learn Something About Myself Every Day

Sometimes when you are presented with a situation where you cannot get everything done in the amount of time at your disposal you have to make some hard choices. You have to weigh the relative importance of each of the tasks and choose which ones get done now and which ones will wait.

I have averaged well over thirteen thousand steps a day for over seven weeks now. I found myself looking at the clock at ten thirty with only twenty five hundred steps on my Fitbit for today. I walked for as much of the next hour as I could manage. I had to do several things that required me to stand still for a minute and I’m not sure my Fitbit was registering all of my steps. At the end of the hour I had managed to get in just over sixty one hundred steps.

That was less than half of the thirteen thousand steps that I wanted to get done today. But I wasn’t going to make it to thirteen thousand steps in half an hour. I could stop and write my blog post. By so doing, I would keep my commitment to myself to blog daily and, if I finished writing before midnight, I could finish off the day with however many steps I could squeeze in to the time left.

This style of thinking is relatively new to me. I’ve always been dogmatic and absolute in my planning. I think this is a very useful way of addressing an issue like this. I will walk extra steps for a couple of days and get my average back above thirteen thousand steps per day. That is much more productive than giving up and declaring defeat.

Sweet dreams, don’t forget to tell the people you love that you love them, and most important of all, be kind.

This is How It Starts

There is a plaza paved with cobblestones down a side street in the old town. There is a large building on the west side of the plaza so that it is shady in the afternoon. There is a sidewalk cafe in the plaza with wrought iron chairs, and tables with red checkered table cloths. Each table has a bud vase with a different kind of flower in it.

On this particular day, a certain young man was sitting at a table close to the door. He was nursing his second glass of wine and writing in his notebook. He wrote with a beautiful maroon glass fountain pen. He was frustrated. He had been sitting there for two hours trying to write something interesting, something that would justify the trouble of coming here and sitting in this quaint place that practically oozed atmosphere.

He wasn’t sure why but he looked up and there she was. She was absolutely radiant in a white blouse and khaki Bermuda shorts. There eyes met and she smiled. “Do you speak English?” she asked with standard British received pronunciation.

“I do,” he replied. “How may I help you?”

“I’m afraid I’ve gotten lost. Could you tell me the way to the train station?”

“I can but must you leave immediately?”

“Our train leaves at four.”

“Have something cool to drink and then I’ll take you there on my scooter. It is only two thirty and the train station is less than ten minutes from here by scooter and only twenty minutes or so on foot.” He gestured toward the other chair across the table from him.

“I can’t be long. My mother will be worried. I am a little thirsty though. Do they have any soft drinks?” She sat in the chair that he had indicated.

“I think they have some kind of lemonade or something like that. Rudy!” The waiter came immediately upon hearing his name.

“Yes, Mr. Howard?”

“Would bring the lady a lemonade, please?”

“Certainly! I’ll be right back with it.” He disappeared back through the door to the kitchen as quickly as he had appeared.

“My name is Howard Sutter. I am studying literature at the university here in town. What’s your name?”

“I’m Alice. You are very kind to help me.”

“Perhaps. I just don’t want you to run into some of the meaner sorts that sometimes hang out in this part of town.” Rudy returned with the lemonade. It was in a crystal glass with ice and an assortment of fruits hanging from the rim.

“Thank you!” Alice  said to Rudy.


There will be more to this story. But that is where we pause for now. Sweet dreams, don’t forget to tell the people you love that you love them, and most important of all, be kind.

One Midsummer’s Eve

A good story, a good song, and a good pint of beer. That’s the answer but what is the question? There are any number of questions that might elicit that answer. For instance, what do I want before I go to bed? Or, what can you always count on when you go to Murphy’s Pub? This type of puzzle is sometimes called a writing prompt. It is a tool that writers use to limber up their imaginations. So here goes.

It was a foggy night. There was a chill in the air. I opened the door to Murphy’s and found a stool at the bar. “I’ll have a pint of bitter,” I told the pretty young lady behind the bar. She expertly drew one from the tap and placed it in front of me, taking the bill that I had placed there and making change. I took a long pull from the beer and was treated to the most refreshing taste I had drunk in a long time.

There were a couple of local lads moving toward the corner to resume playing. There was a mandolin player, a double bass player, a banjo player, and a guitarist. As the others were checking the tuning on their instruments the mandolin player started talking in a voice hardly louder than you might carry on a conversation.

“When I was a lad, my Grandpa used to tell me about how the fairies marched across the meadow on midsummer’s eve. I always thought he was just telling tall tales until the summer that I was fourteen. It was midsummer and I had spent the day fishing in the river that ran next to the village. I hadn’t had any luck fishing and was heading down the road to Grandpa’s shack just as the sun was setting.”

“I saw a flurry of sparkles at the edge of the woods from the other side of the meadow. I stepped behind a tree and peeked around it to try to see what was coming out of the woods. There were a bunch of skinny, tall men riding large white horses. The horses were dressed in clothing every bit as fancy as their riders. The first four riders rode single file but the subsequent riders were busy looking for places described by the librarian that had sent them.”

“They marched across the meadow in single file. There were ladies in long velvet green dresses and boys in tunics the exact color of the mid-afternoon sky. Their horses glowed with a light of there own and cast sinister shadows on their faces.”

“I stood glued to the ground and watched as they marched and listened as the bells on the horses’ bridles tinkled softer and softer as they rode ingo the distance.”

“As they rode out of sight, I got a strange feeling of emptiness as if I had lost my only friend. I stood there until the last rider disappeared. And then I went home.”

At this point the band started playing a fast jig. I sat and drank my beer. The mandolin player sang a mournful ballad about a lad who had followed the fairies when they marched across the field on midsummer’s  eve and was never seen again.

As I finished my beer a voice came out of my comm badge. “Mr. Wilson, report to the bridge immediately!” I gave the command for the simulation to pause and took off my VR headgear. I would return to this story the next time I had the time.

And that was what I wrote from that writing prompt. Sweet dreams, don’t forget to tell the people you love that you love them, and most important of all, be kind.

Origin Story of My Signoff Phrase

Where does my signoff phrase come from? It’s complex but I will explain it in this post. The initial inspiration was Garrison Keillor’s closing phrase from each episode of his show The Writer’s Almanac,  “Be well, do good work, and stay in touch.” I wanted something that had a similar rhythm but was uniquely mine.

I’m not sure how I thought of it but having used it for a while now, I stopped to think about what it meant to me. The first item, “Sweet dreams” I decided was because I have problems dreaming. I have sleep apnea and sometimes stop breathing as often as 95 times an hour when I don’t use my BiPAP machine. So naturally, I wish everyone something that I sincerely hope for myself.

The second phrase, “don’t forget to tell the people you love that you love them”, is a piece of advice that almost came too late to me. It is something that I haven’t always been very good at and it’s as much to remind myself to do it as it is to remind anyone else.

The final phrase, “and most important, be kind” is because I haven’t always been as kind as I should be. I realized the importance of kindness when I saw the effect that the lack of it was having on my relationships. This too is first and foremost a reminder to myself. It is good advice for everyone else too though.

So, now you know why and all that is left is to say: sweet dreams, don’t forget to tell the people you love that you love them, and most important of all, be kind.

Evolution of Programming Part Three

In the last installment we discussed several of the popular paradigms of programming languages. We talked about Structured Programming, Object Oriented Programming, and Functional Programming. In this installment we are going to look at programs from a different perspective.

Early computers were operated as free standing machines. They could receive input from tape drives, disk drives, or keyboards. They could send output to printers, tape drives, disk drives, or video displays. They could send date to other computers over serial lines but the transfers were typically manually initiated on both the sending and receiving computer.

Then various computer manufacturers started coming up with schemes for connecting multiple computers together and programming to talk among themselves in more autonomous ways. The early networks were restricted such that they only operated between computers made by the same manufacturer running the same operating software.

Then the Defence Department’s R&D branch, DARPA, started funding research to try to build a computer network that would talk between heterogeneous computers and would survive a nuclear attack. The idea was to build a set of network protocols that would detect the most efficient way to route data through the network and would adapt to failures of any given network paths by finding alternative paths.

The researchers that built the internet would hold workshops where they would get together and connect their computers together and attempt to get them to talk to each other. Their was an agreement among them that the first ones to get there machines to talk would by doing so establish the definition of how that particular protocol worked. There was a lot of healthy competition to be the first to get each layer of the network to talk to the others.

I mentioned network layers above and that deserves a little bit of elaboration. Networks were built in layers that went from the lowest level that interfaced directly with the hardware and only transmitted and received data on behalf of the layer above it. Each successive layer added more sophisticated features such as guaranteed delivery of data in the same order that it was sent, and guarantees that the data arrived intact, for example. These layers were available for use by programmers in the form of libraries.

The highest level interface was known as the application layer. One of the first application protocols was the email protocol. It allowed someone on one computer to send email on another computer in much the same manner as we do today.

Another early application protocol was file transfer protocol or FTP. The people that wrote these protocols soon learned that it was easier to debug them if the components of the protocol were comprised of human readable text fields. Thus an email consisted of the now familiar fields such as “TO: username@hostname.domain” and “SUBJECT: some descriptive text”. This was carried over to other protocols.

After the internet protocols were widely established and in use in computer centers around the world, the inevitable thing happened. A researcher at CERN named Tim Berners-Lee was trying to cobble together a system for scientists to share their papers with one another. Thanks to work on computer typesetting software that was readily available at the time, the scientists were used to good looking electronic documents that had various typefaces and embedded graphics, photographs, and even mathematical equations. Tim Berners-Lee came up with a protocol that he called the HyperText Transport Protocol (HTTP) that allowed for the data in the papers to be exchanged along with all the supporting information such as which fonts to use and where to find the images. While he was at it he implemented a language called HyperText Markup Language (HTML) that had facilities for specifying the structure of the document content. One of the more clever components of HTML was the mechanism for making certain elements in the document act as links to other documents such that if you clicked on them in the browser, as the document display program was called, the other document was retrieved and replaced the first document in the browser.

This Hypertext capability was incredibly powerful and caught on like wild fire. In fact, some people would say it was the beginning of another paradigm of programming, the hypertext document. The problem with the original hypertext specification was that it didn’t have any mechanism for the document author to extend HTML.

The browser manufacturers soon remedied that situation. Microsoft embedded their Visual Basic in their Internet Explorer. Netscape came up with a scripting language for their browser. Initially called Mocha, then LiveScript, and finally JavaScript in an attempt to capitalize on the newly found popularity of Sun’s Java programming language. JavaScript never had any similarity to Java other than in it’s name and a cursory similarity in the look of the syntax.

Javascript quickly gained a reputation for being a toy language. In fact it was a very powerful, if slightly buggy, language. It took several years before Google used Javascript to implement Gmail and established that it was a powerful language to be contended with.

The main thing that JavaScript represented was a powerful language that was universally available across all operating systems and all computers. It also had a standard way of producing high quality graphical output by way of HTML and Cascading Style Sheets (CSS). CSS was a technology that was added to HTML to allow the document author to specify how a document was to be displayed orthogonally to  the structure of the document. This comprised a programming platform that ran on all computers and all operating systems without modification. The universal programming language was apparently born.

Sweet dreams, don’t forget to tell the people you love that you love them, and most important of all, be kind.