This is the personal website of Kevin Nielsen. If you are reviewing my site for professional reasons, please don't overlook my resume/C.V..

Kevin's Picture
I was born and raised in Kitsap County, WA, on the west side of the main body of the Puget Sound, about six miles of high-bank waterfront south of the iconic Point No Point lighthouse. My paternal grandparents shared their ten acre plot of land with their two sons, who started families at about the same time. It was a world of hay bales and barbed wire, mossy forests and marshy brooks, and endless salt beaches, but after I was introduced to modern computing my world, at least, shifted a great deal more towards the indoors.

I have been a professional Software Developer since Clint Ballard asked me to try my hand at assembly coding in Poulsbo in 1996. The opportunity to code -- for money! -- collided headlong with my existing fascination with software and previous school experience with basic and Borland's Turbo Pascal. Once I was introduced to my first C compiler (Whatcom), the deal was cinched: I was a Software Developer. I have strayed from the path several times -- to return to college, for a brief outing in an administrative/clerical field -- but always found my way back onto it again. I love code.

I do not like spaghetti code or rank hackery (though I'm sure I've produced about my fair share of the former; ah, youth).

I can appreciate a pragmatic kludge in roughly the same way you'd admire an unlikeable person doing a difficult job as well as they could under unfortunate circumstances, but I do not love kludges.

I love clean, elegant code.

I currently reside in Bellingham, WA. We have joked about relocating to warmer, sunnier climes many times, and on occassion the laughter has faded from our voices and we have sounded very serious, but still we reside in Bellingham, WA.

In my spare time (when I have spare time), I enjoy:

  • oil painting
  • meditative walks (preferably on a beach, but in Bellingham it's rarely possible to complain about a lack of scenic beauty).
  • writing music (albeit, not well). I don't like playing music -- just writing it.
  • blogging
  • landscaping my lovely Bellingham residence. This typically seems to involve digging up living plants and turning them into dead ones, but I still enjoy it.
  • watching outdoor movies!
Please notice that I have successfully removed "playing video games" from this list, although I do occasionally crack open Minecraft with my cousin.

I enjoyed early forms of basic and pascal (especially Borland's excellent Turbo Pascal package) as playthings, but it wasn't until I learned C in the mid 1990s that I truly loved a language. You haven't truly experienced Shakespeare, it's been said, until you've heard it in the original Klingon. So it was with coding: C revolutionized the way I thought about the elegance and reusability of code.

At the time, The void pointer construct struck me as the best thing such sliced bread. The void type itself refers literally to nothing, an absence of return of data. The void pointer, on the other hand, is a reference to an object of unspecified form, an allusion to mystery. In code, it is expressed like this:

void *

When I finally got around to getting myself a web site, I shied away from the banality of or The idea of such literalism struck me as unworthy of the limitless possibilities of what I could do with my own domain! And my mind drifted back to the idea of the void pointer -- a perfect metaphor for the type of unspecified, unformed potential I had in mind.

Alas,,, and were all already taken (and got it wrong: a void pointer is a pointer to anything, not a pointer to nothing)!

So, one further metaphorical shift was required. Pictographically, the pointer symbol, an asterisk, looks like a star or a flower... and there it was. Void Blossom. Not a pointer to nothing; not a statement about nihilism or bad astronomy or science fiction; a metaphor for indeterminate potential in the process of being realized.