Free eBooks from Microsoft

Freebies assuming your have a Virtual Academy login.

Fixer vs Dreamer

When I have time to do anything I want, I always tend to look for solutions to problems that I have confronted. It could be an old lingering annoyance. It could be something that I know is just over the horizon. In any case, I look for workable solutions.

I guess this is a long way of saying I’m a fixer and not a dreamer. I’m not one to come up with some grand new widget. I am the guy that you bring your idea to so that it can be made real. I “make things.”

So as I sit in the Ford dealership waiting for a LOF on my truck. I find myself looking at façade patterns and how they can be used in a quasi-AOP style to wrap methods with boilerplate code.  I know it sounds rather boing, but that’s what I like to do when I’ve got an hour to kill and no other demands taxing my pea brain.

Here’s a link to the article if you care…

Converting to Azure

As an experiment, I’m seeing about converting all of my old sites over to Azure hosting. Most get very low traffic because they appear abandoned, which is fine for my purposes. The head scratcher for me is hosting my MySQL databases. I’ll need to figure out how I’m going to do that before I will know what devices to spin up.

I’ll keep you posted.

What makes a good developer?

I found this article during my morning reading:

View story at

I skimmed it so I can’t argue too much either way but it is a real question to consider…  What does it take?  If you don’t need passion or talent, what do you have?

I understand that having passion and talent makes a difference but is it truly required?  It used to be the only people that pursued a career in software development were the maniacal fringe.  I suppose I count in that group because of the depths of my experience and passion for solving problems with software but…  I don’t have a BS in CS.  My undergrad degree is in Anthropology.  Go figure.  I do have a “related field” in CS and I have been writing code for a while name.

Computer Science isn’t Application Development. 

Do competent motorcycle riders need to understand how combustion chamber vortices impacts burn rate?  Do car drives need to understand the physics of an ABS system to successfully actuate a brake pedal?  Do users of LED lights need to understand superconductors or flip a switch?  So why should a web UI/UX developer need to know the gory details of how processor manages it’s internal command queue?  They don’t.  So why do we make a CS degree a requirement to join the ranks of “professional” developers?

Now take that idea one step farther…  Why do we require passion and talent when in some situations all we really need is a cog in the machine?

Personally, I think passion and talent are key but…  Like I said, I started back when only maniacs practices this dark art.

Maybe it is time to bring it all into the light.

Having a population that is able to write code should be a democratizing of technology.  Everyone should understand the basics of it, if only to bring software development into the light.  Maybe if people understood how much time and effort it takes to create quality applications they would…

  1. be more willing to pay for quality app.
  2. stop expecting instant solutions to complex problems.
  3. not fear the darkness that is software development and computers in general.

From a general education perspective, just knowing how to logically solve problems is a skill everyone should have.  How can you reach any middle to long term goal without the ability to deconstruct the larger goal and do step-wise activities to reach your goal.

Maybe this is all a bridge too far.  As I was trying to wrap up this post, I started looking for a cover pic and settled on “The Beib.”  But… doesn’t the existence of such people actually reinforce the notion that passion and talent isn’t truly required.  There are many factors that create success in a given vocation.  Sometimes, talent isn’t required.  Sometimes, passion isn’t required.  Sometimes, a passing knowledge is more than enough in any given field.

Frustration (aka Hostony Sucks)

Frustration: That moment when you realize your web host is run by a bunch of idiots.

I had been using Hostony for the bulk of my web presences and hosting client pre-release sites for well over 15 years.  In that time there have been a few bumps but they always got it worked out.

When my annual renewal came up,  I re-upped as usual.  Of course, it reminded me that I have between 4 and 6 websites that have been basically abandoned. Not ideal, but whatever.  Maybe it was time that I went back and cleaned out a few things.

I tried to log into my root site and got nothing.  It wouldn’t load. Hmm… I submitted a helpdesk ticket and got no response.  I waited a week, then used the chat service to contact tech support.  The tech told me my entire account had been deleted.  He would try to restore it and get back to me.  Another week passed.  I finally got focused enough on this problem to realize I hadn’t had a working web site in at least 2 weeks.   So I contacted the billing department to complain.  I finally get a response.  They told me all of my data was gone.  And there were no backups.

So… I’m a little pissed. They took my money, deleted my account and screwed up the backups so I can’t get it back.  Nice.  Quality.

In short, Hostony sucks. They are incompetent. Their customer support is non-existent and their technical skills aren’t any better.

Now I need to find a new host and see if I dig up old copies of my sites. In the meantime, I’ve still got this one which is hosted on Azure.

Language defines perception

I was reading an article last week.  Something in the MIT Technology Review…  Toolkits for the Mind.  This article reminded me of my  interest in the mappings between language and perception.

I fix things.  That’s what I seem to do.  People bring me problems and  I find solutions.  Sometimes, it’s not what others might have planned, but that’s what I do.   But I do it all in code.  As part of this, I have to acknowledge that all of my solutions are bounded by the languages I use to code those solutions.

I know a handful of programming languages.  I started with GW Basic at about 8 or 9 in my parents basement.  I picked up Pascal, C, C++ in college.  In my first real job after graduating college I learned Perl.  I lived and breathed the LAMP stack for years.  Then new SQL variants.  A few scraps of VB.  Somehow, I ended up using C# and XAML for 90% of what I code today.

So how do I break out of those boundaries?

In the last year, I’ve been trying to reframe my programming.  I want to leverage the larger concepts of the art of solving problems with code.  The effort is more than Computer Science.  It includes Philosophy, Linguistics,  Neurobiology, and Cognitive Science.  I’m trying to rewire my brain along the way by forcing myself to think outside of my comfort zone.  AOP is a part of that effort.  We’ll see how all of this turns out in the next year.

We hire the best…

You might be noticing a theme…

This is a huge issue for me.  We have wasted so much time on bad hires when it comes to our contingent workers.  Having learned from experience, we no longer bring someone in if anyone on the interview team has any bad vibe about the individual.  Apathy is a no vote as well.  Everyone has to agree the person is additive or we don’t bring them in.  It is better to be understaffed, know our limitations, and keep the code clean than to bring in someone that will only make things worse.

PS: I just finished another phone screen.  I voted him down in under 10 minutes.  After he couldn’t answer the second technical question, I didn’t see any point in continuing.  We did continue, but it only took another 5 minutes for everyone else on the team to agree.  Thanks but no thanks.