Tuesday, August 19, 2008

Complexity Shmetzity

Software is complex.

We all know that.

So why do we insist on making things even more complex than they need to be?

During my career I've noticed a trend in software development, and its not a trend I think is always intrinsic to the problems that we are trying to solve. You've no doubt cottoned on to the fact that I'm alluding to complexity, and in particular the increasing complexity of the systems that are designed and built.

In software development its always easier to develop a complex solution to a complex problem than it is to develop a simple solution to a complex problem. When designing a solution there are many forces to consider, pushing the design parameters to and fro. You're exploring the solution space, looking for design approaches that hopefully descend down into some kind of optimum (having a good wander around the area is generally a good way to start). Unfortunately, some architects don't seem to see it that way. Instead, they see Mt Olympus over in the distance and want to scale it ... its easy to spot, you know where you're going (even if it is vertically straight up) and dammit, its going to be fun! This way team, I know what I'm doing! We've got all the right tools; we've got design patterns, and services, and layers and ...

Oh dear.

So where am I going with this? Well, nowhere really. Its just a bit of a moan.

Friday, April 4, 2008

What the hell are purple tensors?

Well, that is the question, isn't it? The Universe, its a funny old place.

I needed something to capture what this blog was going to be about - and really, its about anything and everything that comes to mind. My interests are wide and varied, but also surprisingly narrow. You may wonder how this could be (or not - but I'm going to tell you anyway). Well ... look at it this way - I'm bored by the trivial, trite or anything purely factual (like celebrities and train-timetables). I like music, but not really enough to really get into any particular style or band*. I like soccer, but not enough to follow any one team. So, I enjoy music, movies and soccer, but know bugger-all about music, movies and soccer.

On the other hand, being a geek, I have an interest in anything that allows me to conceptualize how things work. Consequently, my interests revolve around things that are conceptually rich. So, what is this blog going to be about then?

Well, it probably not going to be about anything in particular, but it might include:
  • Philosophy - epistemology and philosophy of science
  • Empirical Sociology
  • Complexity Economics
  • Complexity Theory
  • Physics - cosmology and quantum physics
  • Quantum Computing
  • Mathematics
  • Evolutionary Theory
Note that I am by no means an expert in any of these - there's far too few hours in a day, and it would take several lifetimes to become an expert in only a subset of this list!

Having a day-job, I've also got a few other interests, like:
  • Software Architecture (yes, I am a geek after all)
  • System Integration
  • Service-Oriented Architecture (or should that be Same Old Architecture?)
  • Computer Languages
  • The IT Industry
Funnily enough, even though these lists appear to be completely independent of each other, they're actually intimately connected. I'll let you make the connection ;-)

Well, thats enough for a first post!


*Right now I'm listening to Goodnight Nurse, but I only have *one* of their songs (All for You).