Tuesday, July 14, 2015

My friend Jason Pottorff (a.k.a. Jazzyspoon) and I have put together a musical collaboration worth listening to.  This is the first track.

Wednesday, March 11, 2015

My business oriented blogs are moving

As an independent software developer who does much of his work using web technology, I thought it fitting to build my own site.


Monday, September 15, 2014

Goodbye Programming Books

As a life simplification step, I'm discarding several programming books that have been collecting dust on my self for years now.  I read them all, and some were even relevant to my work for awhile.  Here is a nod to each book...

Applying C++

It's a text book on C++ plain and simple.  It's not even one I used personally.  I believe a friend gave it to me when he gave up on the idea of learning to code.

Why you might want it:

You want to learn C++ and you enjoy the tactile sensation of real pages.

3D Game Programming with C++

I bought this one way back in the 90s when I first started coding in C++.  Naturally it's more fun to dream about building games than business software, and this book gives a good overview of the latest technology and techniques available in 1997.

Why you might want it:

Modern game engines now abstract away many of the gory details of game programming, leaving modern coders working at a much higher level.  But this is a great reference for the game programmer who wants to go a bit deeper.  Or who wants to build the next Wolfenstein 3D.

CGI Programming in C and Perl

My first web programming book.  Because it covers standard technologies that are still supported, like the HTTP protocol and HTML, it's not totally irrelevant.

Why you might want it:

Fun trip in the wayback machine.  Also you might learn some details that are not often addressed by higher level web frameworks.   (This book is probably more instructive than, say, the Programming Java Servlets book below.) Or maybe you need to support a really, really old website running off CGI scripts.

System Analysis and Design Methods

A detailed look at modeling techniques that were popular during the 90s.  I haven't cracked it in years but I seem to recall a focus on CASE tools.  In my real-world experience, CASE tools were never used, except for Rational Rose which was lightly used during my tenure with Visional Corporation.  I suspect these tools were popular with managers who then gave up on them once they realized that providing all of the detail required to make the tools generate software was more work than just writing the software.

Why you might want it:

You want to understand the mindset of 1990's technical managers. 

Eclipse Rich Client Platform

Do you have the desire to customize or productize Eclipse for your own purposes?  This book gives the lowdown.  

Eclipse has had a relatively long shelf-life.  I used it for Java development back at Visionael and at Vetsource, and still use variants for RoR and Django debugging.  

Eclipse has been the foundation of the ADT (Android Developer Plugin) for years.  The ADT is a good example of the kind of plugin programming this book addresses and I would not be surprised if the Google developers who built the ADT read this very book.  

It should be noted that Google is no longer actively developing ADT, and is moving toward Android Studio built on IntelliJ, yet another JAVA IDE.  

Open Source ESBs in Action

All of the JAVA-based service bus implementations I worked with were bloaded, configuration-heavy headaches.  But the promise of a Service Bus is compelling to many managers, and they remain in service today at many enterprise companies.  I'm personally not a fan as I prefer lean, best-technology-for-the-job integrations over cross-platform try-to-be-everything-to-everybody ones.

Developing Java Servlets

This is one of the two ways we developed web content with JAVA way back when, the other being those ASP wannabes, JSPs.

I liked this simplicity of the Servlet abstraction.  Let's model a web request as just that, a request.  Let's process the input arguments and then output a response.  Very straight forward.  Java Servlets didn't exactly go away, as they are still buried at the bottom of the JAVA web stack.  Peel back enough layers of code and you will likely find a servlet if you are running a JAVA based web server or service.

I'm guessing though, as I haven't done a deep dive into a JAVA stack for at least five years now.  (Well, there was that integration with VISA, yes, the credit card company.  Talk about a challenging integration...so many layers of security, so secretive about the function of their APIs.)

Programming Amazon Web Services

O'Reily books are fantastic and most will stay on my shelf.  But the information in this book is better found on the web.  It's grown pretty far out of date too.

Programming Flex 2

Even though a beloved O'Reiley book, this Flex 2 reference needs to be burned along with everything else related to Flex 2.  I still get job offers because I have experience building apps with Flex 2.  Never again.  Not for any amount of money.  (Hmm...I will for one billion dollars.)

Web 2.0 Heroes

The title has "Web 2.0" in it.  Enough said.  

Actually these are great little stories about some startups you know and some which have already been forgotten.  It was a good read.

Managing Raid on Linux

With the advent of "the cloud" I have been able to free up any synapses utilized for storing information about Raid.  No more striping.  No more thinking about which level gives me the best speed and redundancy.  I'm letting Amazon handle it from now on.

Programming in Python

This book weighs 48 lbs.  Or at least it seems to.  I love Python but haven't cracked this reference in years.  The information is all online anymore.  No need to carry around a 48 lb trophy.   

ModSecurity 2.5

A book dedicated to an Apache security module.  I may never know the luxury of working for a company where my one and only job description is "secure the Apache webserver".  This book was theoretically relevant when I worked for a prepaid debit card processing company.  Probably an interesting read though if you use Apache and want to research security techniques.

Google Web Toolkit

I love Google.  I have loved them for a long time.  However, not everything they invent is awesome.  The GWT created object-oriented libraries that wrap standard web protocols and languages.  I always found it easier to work directly with the web protocols and languages than to get wrapped up so deep in a framework that you are writing at least as much code as you would using the standards based code.  Plus, I never write web content using JAVA, which I believe was the main point of building this library.

For the record, JAVA is the absolute worst choice for writing web applications.  (Who me?  Opinionated?)

UML Distilled Third Edition

During my nine and a half years at Visional, there was much talk about modeling languages.  There was much experimentation with modeling languages.   I mentioned Rational Rose above.  There was this dream that we would be able to create models that described software, and then those models would compile down to actual code.  The reality was that the level of effort to actually accomplish this using a tool like Rational Rose was prohibitively expensive.

For those who don't know, the leading modeling languages of the day were unified to create the one true modeling language, UML.  It was thought (at Visionael) that UML would help state-side technical managers communicate detailed requirements to offshore developers more efficiently.   But in my experience, the offshore developers were struggling to keep up with the programming languages, the cultural differences between our countries,  communication styles etc. and the last thing on their mind was learning UML.  So in fact, I'm sad to say that my substantial investment into learning the ins-and-outs of all of the UML modeling techniques were wasted, as I've never once worked with another developer who wanted to communicate ideas this way.

Well, not wasted per se, as any thinking spent on software engineering helped make me a more well rounded developer.  One figures.

I'm down to the last four and needing to wrap this up, so here comes the short versions.


For a minute there I thought that getting my RHCE would be a nice feather in my hat.  But before getting through the process I determined that I'd rather focus on Debian.  Then Ubuntu.  And why did I need a certification anyway?  Story of my life.

Spring In Action

ESBs and JAVA configuration frameworks were in vogue when I worked at Vetsource.  I think I already mentioned that I didn't love them.  (Can we get back to programming already?)

JBoss at Work

JBoss at Work?  I'd rather not.  Regal eagle or no.  As mentioned, I grew fatigued with JAVA frameworks during this era.  In fact I did a pivot soon after completing this book, started working with Django, and have been using Python or Ruby to build web systems ever since.

Success with C++

It's a primer from a class I took at TCC.  I actually quite liked this book, or maybe it was just the C++ language that I liked so much.  I'm still nostalgic for C++ programming.  I still occasionally contribute C++ code to open-source projects to scratch that itch.

So where did the books end up?  I donated them at the local Goodwill drop station.  So if you see anything you want, and if you live in the Tulsa area, you might be able to find them at a local Goodwill store!

Wednesday, July 30, 2014

Staying Stronger

How do you stay strong?

When you mind is full of memories and you want a do over.
When your body gives way to time.
When someone you love is sick and growing sicker?

How do you believe?

When your faith is tested and is graded an F?
When your hero is revealed to be a sham.
When you've been lied to.

How do you keep moving forward?

When you don't want to know what's around the corner.

You might medicate.
But you won't feel better when the medicine wears off.
You'll be the same, feel the same, struggle the same---except with more lines around your eyes.

You might follow a guru.
And if she's magical, give her my number.
But she's probably not.

You might turn it over to God.
But what does that really mean in pragmatic terms?
That you believe that something you can't see, feel or touch
in a context provided by gurus, chieftains and ancient texts?

If it works for you, this might be a good solution.
For me it's just an infinite series of unanswerable questions.

Death.  There I said it.

Can you face it?

I want to turn and see it, but not embrace it.
I want to be strong.
I want to be able to cope when my parents are dying.
Or God forbid---my children are dying.
I want to feel good as my body is aging.
I want fewer regrets.

So I'm going to write about it.
I'm going to work out even though I don't want to.
I'm going to try to only eat what really nourishes me.
I'm going to keep my mind as sharp as it can be sharpened.

I'm going to muster faith---as much as my heart will tolerate.
I'm going to simplify.
I'm not going to be a Democrat or a Republican or a Liberal or a Conservative or any other stupid label.
Life is too short for that crap.

Damnit, I'm going to be strong.
And I'm not going to be selfish.
And---by God--- I'm never going to eat shellfish.

Tuesday, July 22, 2014

Living like great-grandpa

Tarynn and I are trending towards a life that resembles the actual life of my great-grandparents.  Instead of a maximum square foot home in the suburbs, we prefer an older, smaller house in the city.   The style of our house might be described as urban-farmhouse.  We try to eat natural foods, we garden.  We dream of getting a chicken coup.  (My mother-in-law, who lives next door, has one!)  We try to consume less and create more.

We're by no means trend setters in this area; if anything we're on the same bandwagon as so many others, as evidenced by so many Pinterest boards.

So what's up with this back-to-Grandpa's style of living?  Here are a few of my guesses.

1.  We're burnt out on consumerism

We're tired of buying stuff.  Why are we buying anyway?  Why are we following the instructions of our corporate overlords?  We are we so easily influenced by commercials?  After much reflection on issues such as these, many of us are deciding to step outside of consumption culture.  An alternative reason for some: we're broke and looking for ways to buy meaningful supplies with what money we have.

2.  Technology makes us feel less human

We're so plugged into our devices that we no longer know how to live and interact with each other in meaningful ways.  Getting back to nature, back to history, back to the way Grandpa lived reminds us of a time where phones were not our Gods.  We've tried modernity.  So far it has not provided a life full of purpose.

3.  We want off the grid

There are many reasons we want off.  Some people are conspiracy nuts, preparing for the end of times.  Others want to avoid government and taxation.  Yet others simply want to be more self sufficient.  Some simply want to reduce their dependency on external systems like the gas and electric company.

4.  Ecological concerns

Some of us are in it to reduce our footprint, to produce less waste, or to buy less junk that will become future waste.

5.  We're searching for meaning

This is really a variation on item two.  What does it take to feel good about our daily lives?  For some of us, growing a plant from seed to harvest is the ultimate reminder of our humanity, that we live in an interconnected system of life and death, of food and need.  It reminds us that indeed we are alive and have the natural instincts to keep ourselves that way.

Sunday, July 20, 2014

A SPY story - part 2

Without the new gear I'd just purchased, I don't even know if Todd and David would have let me join the band.  But they were broke and equipment poor and I was ready and willing to contribute my gear if it would help me achieve my dream.

They'd been working together for some time and had written at least two original songs, one of which was Ministry 6.  Todd had been reading a novel about British spies and the CIA's English counterpart, the MI 6.  The concept thus inspired their first original song and gave them inspiration for a band name: SPY.

Eventually David Lee moved out from Todd's apartment got his own.  I showed up at his place with Todd one early afternoon, keyboards in tow.  I knocked on the door.  No answer.

We knocked again.  Then again.

Finally lanky Lee opens up, one eye squinted shut to to avoid the "morning" sun, his face twisted up like he was sucking on a lemon slice.  No words came from his mouth.  He just left the door ajar and stumbled back inside.

Todd and I came in and put our stuff on the couch.  From where we stood we could see Lee, over the counter top ledge that separated the living room from the kitchen, rummaging.  As was his habit he was wearing the same outfit he had on the night before, typically his work suit, crumpled from being slept in.

David loaded his pipe, lit it up, took a deep inhale and held it.  He slowly exhaled a few seconds later .  Then he repeated the process.

Finally he spoke.

"So," he said.  "I guess it's time to work on some music."

I took note of the CD cases strewn across the table, some open and laying on the floor.  I spotted a few  of my favorites, like Cabaret Voltaire's C.O.D.E. and Ministry's Twitch, which might have belonged to Todd.

David had several disks from the Waxtrax and Netwerk labels, including a few Skinny Puppy CDs.

We got down to the business of setting up our gear, connecting power sources and MIDI cables between the keyboards and sequencer.  David played a sound and said "sick, isn't it?"  He had an uncanny skill of squeezing ugly sounds out of pretty synthesizers.  He pushed a few buttons to change sounds, and found something that sounded a bit like the opening keyboard part from Van Halen's Jump.  He kept clicking on buttons, moving through the sound menus, assigning LFOs, changing waveforms, twisting knobs and altering settings until the patch sounded like the devil's vagina.

The habit and trend in industrial music at the time was to source audio snippets from old movies, radio programs or from conversations recorded on the street.  These would overlay the music.

A radio preacher from an AM radio broadcast made it onto the SPY track Ressurection.

We were searching the dial for sounds during one session at David's when we took a break to listen to community radio station way down on the left end of the dial, KNON.

KNON was not new to us.  A guy named George had a pretty good show called Chicken Gristle that we would listen to on occasion.

I don't remember the name of the show that was on that afternoon, but the DJ said something that caught our attention.

He was talking about the ongoing fund drive, an event that anyone who has ever listened to public radio knows all about.  The DJ was looking for pledges, and talking about the great lengths he would go to get the listeners to call in.  This is what we heard.

"...in fact, maybe you are a musician or are in a band and you are looking for a bigger audience.  If you will pledge at least $10 right now, I will put you on the air.  That's right.  I don't care what your music sounds like, if you will pledge, you can come down to the studio before the end of my show today and I'll play your music."

Todd raised an eyebrow and said, "Let's do it."  He picked up the phone and promised to pay the ten bucks.   (Honestly and regrettably I don't think we ever paid that pledge.)  Todd jotted down the directions to the studio.


A half hour later we were pulling up in front of little run down house in what I considered to be a bad neighborhood.  Paint was peeling off the outside.  We walked up to concrete porch and knocked on the door.

A girl opened.  "What?" she said.

We explained what we'd been promised when pledging and she disappeared inside.  A few minutes later she reappeared.  "Yeah, you can come up."

We shuffled up a creaky staircase and through a door that dumped into a tiny room.  We shook hands with the DJ and his pal and he said he'd put us on next.  He invited us to stand next to the microphone.

"...and keeping with our promise of putting on the air anyone who will pledge, we have with us here a new band.  What are you guys called?"

Todd stood forward to speak on our behalf.  "We're called SPY."

"Tell us a little bit about the song we're going to hear."

I can't remember what Todd said next, but before we knew what was happening the DJ took the cassette, put it into the deck and hit play.  And just like that Ministry 6 was playing on the airwaves.

"Holy shit," Todd said smiling.  The DJ nodded and said it was pretty good.

The phone rang and the DJ answered.  He put his hand over the phone and told us, "It's George from the Chicken Gristle show.  He says he likes your song and wants for you guys to come see him during his show on Saturday."

To be continued

Prescription for de-stress and recovery

Feel like crap?  Body hurt?  Work related stress?

You should try this for five days.  This is what I do when I'm in your shoes.  It's ONLY 5 days...you can do this!

1.  Don't touch alcohol 

Drinking weakens your immune system and messes with your brain's communication pathways, affecting mood and behavior.  And hangovers just feel terrible---duh!  Try going cold turkey for one week.  I know that some of you drink socially all the time; just tell your friends and loved ones that you are on a five day fast and that you'll get back to your wild drunkenness soon.  You want to feel better, right?

2.  Don't smoke anything

Inhaling smoke irritates the respiratory tract.  Didn't you know?  And even though we all know someone who swears by the medicinal benefits of marijuana, it's still smoke and still irritates the respiratory tract.  Just give it up for 5 days.

3.  Go to sleep when the sun goes down

Tonight in Tulsa the sun will go down at 8:38 P.M.  Now this may seem like a ridiculously early time to hit the sack, but in fact, the natural world around you is going to sleep at this hour.  Join the plants and insects and begin your recovery sleep when it goes dark.

Be patient and stay in bed until you get to sleep.

4.  Determine when the sun will come up tomorrow, and set your alarm for 15 minutes later than that time

Some people require alarm clocks.  But if you go to bed when the sun goes down, you should also awaken naturally when the sun comes up.  Make sure there is a crack in your curtain so that the natural light will come into your room to awaken you.  The alarm clock will still be there to ensure that you are up in time if nature doesn't get the job done for you on day one.

5.  Exercise in the morning

Once awake, do the following routine three times at least: 10 push ups, 10 sit ups, 10 jump squats

6.  Say something positive to yourself

I know this is cheesy, but I believe that positive affirmations work.  These will get you started:


7.  Eat high nutrition raw foods

Eat some green peppers!  They're nutritionally dense.  Here are some other ideas:


8.  Don't overeat

Stay away from big meals that leave you feeling heavy.

That's it!  It's simple: just get your sleep cycle in sync with nature, eat what is good for you, move your body, and avoid putting things into your body that wear it out.  It works for me when I need to recharge.  Let me know if you try it and if it works for you!

Thursday, July 17, 2014

My Juice Recipes

In late 2013, early 2014 Tarynn and I explored the idea of opening a juice bar.  In the end, we decided against the plan.  But before we threw in the towel, we spent a considerable amount of time working on our juice recipes.  We wanted to serve (and drink) juices that were not only healthy but that tasted great.

Below are some of our creations, as well as some standards.

The obligatory Green Juice.  Good for you, made tolerable by the two apples.

Basic Green Juice

Recipe items
2Apples, Cameo, U.S. Extra Fancy
2stalks celery
6leaves Kale
1inch Ginger

Sweet and spicy.  Jalapeno adds a little zing.

Spicy Garden (Devin's favorite)

Recipe items
2stalks celery
2leaves Kale
1/8th inchthin slice jalapeno 
1 green or red bell pepper
1/2 cupspinach
(optional) 0.5chard

Love this one.  Kind of like a spicy V8 or a bloody mary.

Fiesta Mouth (Devin's favorite)
vegetable countRecipe items
4roma tomatoes
1 tiny bitonion
1bell pepper green
1 inchjalapeno pepper
1/2 cupspinach 
salt, pepper, Tabasco
try adding red peppers and vinegar instead of Tabasco
also good with 1/2 garlic

Got a sweet tooth?  Sure it's a lot of sugar, but some nutrition too.


Tarynn prefers juice that is primarily carrot juice with strong ginger overtones.

Tarynn 3

Recipe items
1Apples, Cameo, U.S. Extra Fancy
2leaves Kale
1inch Ginger
1oz parsley

The pear gives it a distinctive sweetness.

TV Juice 1
vegetable countRecipe items
1spinach 2 oz
1inch Ginger

Not for everyone, but check it out.

Fennel Juice
vegetable countRecipe items
2Apples, Cameo, U.S. Extra Fancy
2stalks celery
2bulbs fennel