Feed on
Posts
Comments

Divergence and Complexity

There is surely a connection between the tendency to divergence and complexity. How can it be helped? Today was a case in point. It started with a simple idea: building a set of small components into a tool-chain for doing forced ranking exercises.

So let me diverge for a moment to explain what this means. Forced ranking is a common enough exercise in technical work. We are confronted with an enormous number of technical alternatives for dealing with an enormous multitude of problems. To avoid drowning, the priorities must be sorted: what are the most important problems and what are the best solution alternatives?

These exercises are tackled by various means, with more or less formal methods. The House of Quality is probably the most famous, or at least most recognized, formal model for ranking problem and solution alternatives, but I diverge a bit too much to delve into that.

Some problem spaces deal with sufficient quantities of data to require automation support to manage. The most frequently used tool for this exercise is the spreadsheet.

I hate spreadsheets. Spreadsheets are problematic in that they have primitive relational models, making complex queries manual, error prone and difficult to repeat. Scripting repeatable data changes to spreadsheets is nearly impossible.

For these reasons, and the fact I prefer databases to spreadsheets for aesthetic reasons, I generally use mysql for exercises involving any significant amount of data. It works for me: I get consistent, repeatable results, and my blood pressure is lower.

Although the tool sets I use are great for me, they are challenging to most of my peers, who were not steeped in the byzantine ways of SQL and database servers. I have nothing to give anyone to reuse.

So, the day started with the thought to take one of these prior exercises, dust it off, polish it up, document it and make it reusable for others.

The idea is a set of small tools, written primarily as bash and Perl scripts, that can be used to manage a fairly general mysql database for sorting servers and applications on those servers based on arbitrary criteria. I won’t diverge at this point as to why the spreadsheet is inadequate for this exercise here, but it is. I’ll get into that later.

Since I figured most folks would rather have a gui to scripts for some of the data entry tasks, an example ruby on rails application for managing some of the data made sense. Thus began the divergence.

  1. First I realized my mysql server was a bit dated, so I upgraded it, cratered my old schemas and had to recover those.
  2. Then I realized the ruby on my machine was broken. Since it was part of the OS distribution (OS X) I needed to install a version from Darwin Ports, then make a rather dubious path change to make sure the Darwin Port binaries in /opt/local/bin are ahead of /usr/bin. This will surely bite me later.
  3. As I was working through this, I decided I need to install phpMyAdmin, since the mysql administrative gui tools don’t seem to work very well for me. I think they are broken. Ruby on rails uses a LOT of users and schemas, the whole tool set is built with release management in mind, so proceeded to install phpMyAdmin.
  4. This obviously required installing php on my machine, which required a bit of research to determine the “best” solution. At this point I’m beginning to think I need some forced ranking tools to determine how best to solve my forced ranking tools problem.
  5. This then descended into needing to be a bit more organized than brute force flogging to track what I was getting into, leading me to think a blog was a good idea. I suppose I could have done one anywhere, but with my domain (http://www.louspringer.com) and service languashing, I decided why not set up a blog on the web service I was already paying for.
  6. So, then I needed to decide on a blogging server. After a little research, using someone else’s forced ranking, I decided on WordPress, at least for now.
  7. Then, of course, I needed a subdomain on my site, http://blog.louspringer.com. This required navigating my ISPs rather complex website to create a subdomain, assign a directory to the subdomain and so forth. I also need to check for php and mysql support.
  8. Then I needed to create a mysql server user for the blogging server on my ISP site, noting the mysql server IP to configure in the WordPress installation.
  9. Then I needed to decide what to use to edit my blog entries. For this I decided that flock, which I was already happy with for flickr editing, would do for blog editing now.

I was able to actually get all this together and working I think. So now, it is 9:00 PM, and I haven’t really started what I started out to do, but as they say, wherever you go, there you are. There is always tomorrow.

Blogged with Flock

Technorati , , , , , , , , ,

Trackback URI | Comments RSS

Leave a Reply