Showing posts with label technology. Show all posts
Showing posts with label technology. Show all posts

Monday, February 04, 2013

People are the problem can we stop pretending its technology

A friend of mine the other day said an amazing thing
I like coding in C++
I mean, seriously?  The land of friends, of people writing C code and debugging nightmares, had things got that much better, I mean I know there are some good threading libraries now but seriously, C++ is nice?
All of the idiots code in Java, they don't know C++
And there we have the point.  Its not about what technology is best its about the people using them, I'll guarantee that if the idiots were in C++ he'd be having more problems but because they are scared of it he can get more done in C++ safely as for them its terra-incognita.  This for me is why debates around SOAP v REST are pointless and make me quite angry.  People pontificate on 'REST scales better' or something else that doesn't matter 99.99% of the time (as in yes it might, but if something else scales acceptably then its not an issue), its like the 'Assembler is more efficient' bullshit that those of us who dared to code in C will remember.

The worst piece about the technology marketing community, by which I mean analysts and vendors, is the ability to hype something that doesn't matter because its a new technology.  It isn't that this technology has to make things better, hell it can actually make things worse, but all it needs is to have some technical reason why its better than something else.  'Its faster' in a place where that isn't important, 'Its quicker to develop your first solution' but a bitch to maintain. We've heard them all down the years.

So as part of my desire to see Thinking is Dead proven wrong I'd like to start a simple campaign.  Everything an analyst, vendor, consultant or developer tells you that something is 'better' ask the following three simple questions

  1. How does it reduce the support costs
  2. How does it reduce the salary levels of my developers
  3. How does it have a measurable impact on its own to our top or bottom line
This last point is critical.  I've seen some crackers down the year around integration technologies in particular 'We used technology X and shipped $1bn in products, therefore X delivered $1bn in revenue' no it didn't, the only question is if it cost less to develop and support technology X, the best that a technology in integration can hope for is a cost reduction in integration TCO, it will never on its own deliver the value because the value is about the information or transaction it delivers.  If it does that more cheaply then its a cost saving, but its never a revenue generator.


There are places where technology can have a top-line impact but those are very minimal (Predictive Analytics and HPC are about the only two I can name) everywhere else its an enabler for people to deliver value.  So the goal of technology is to make the people work better, the people work more efficiently.  Having a technology that is 5% better than another technology at technology stuff but 10% worse from a people perspective is like comparing getting the horse with being driven to near extinction for native americans.  Sure its a benefit, but it really doesn't outweigh the costs.

Monday, April 23, 2012

Why Silicon Valley is bad for Enterprise IT

99% of IT is done outside of Silicon Valley in Enterprises.  I like the valley and San Francisco is my second favourite 'new' city (Sydney comes first, London, Rome and Paris remain... well London, Rome and Paris).  The problem is that 99% of the media about IT is about what happens in Silicon Valley.  This is the equivalent of all coverage of the global car market being about Ferrari.  Its not good for IT for a few reasons.

  1. A large proportion of Silicon Valley is hype over reality - remember Transmeta? A company whose coverage dwarfed that of ARM for several years, despite ARM clearly being better
  2. It focuses on the 'new' over the 'useful' - Lots of good stuff comes out of Silicon Valley but the focus is always on 'the next new thing' this leads to lots of new 'wheels' for IT but very little in terms of actual progress.  Is Enterprise IT better today than it was 10 years ago? 20 years ago?  Possibly a bit with things like Java, but the focus in Silicon Valley today is to INCREASE language fragmentation thus reducing the benefits.
  3. Its technology over practice - we've known for 40+ years that the real issue is in design, Silicon Valley focuses on the coding not the practice
  4. Its become a circle-jerk the tech media, tech companies and VCs all running around in their own little hype cycle un-encumbered by reality.
The impact is that even the older vendors in the valley tend to leap on bandwagons like a politician desperate for votes. So rather than fixing existing technologies or providing you with the minor enhancements you get a bunch of shiny new technologies that don't work terribly well to put on top of the  old pieces that have bugs they don't fix.

Lets be clear there are great things that come out of the valley and some real revolutions have been driven from there, but revolutions have happened in other places too, Waldorf, Cambridge (UK and MA), India, CERN and lots of others.  But what really hasn't happened, and Silicon Valley is the biggest criminal in this crime, is a focus on improving the 'dull' part of IT.  Project failure rates remain high, integration is still a technical job and data quality remains poor.

Unfortunately the current set-up is designed only to hype the new rather than improve the infrastructure of IT.  Now some could argue that this is a great example of where capitalism doesn't produce the greatest good for the greatest number as the current approach actually does very little to improve the lot of the majority in IT while enriching a small subset... but I wouldn't say that as capitalism remains the only system that actually works.

The question therefore is how can IT re-orient away from the valley and away from the hype.  I think the rise of India and China will be key to this.  China and India are focusing on 'being good' rather than 'being shiny'.  This focus on improvement and innovation for improvement rather than straight innovation for the brand new.  As these economies grow and their importance to IT grows maybe we'll see a shift in IT away from the new and shiny towards the actually improving.

Lets hope.

(please note in the above I exclude Apple as they appear to live in a bubble disconnected from the valley ;)

Tuesday, July 19, 2011

Dumb IT: We've already got some licenses for this

There are certain phrases that fill me with dread. 'We are using Agile so we don't need to have a vision, we'll just iterate', 'there are no data quality issues', 'We're the first people to use this' and 'The vendors roadmap says they'll do X in 2 years so it will be fine by the time we need that'. One however is completely variable in the fear it introduces because it comes in three clear flavours, one good and two bad.

'We've already got some licenses for this'

What this means is one of three things

  1. We need to do something and a technology we know well is ideally suited where we fortunately don't have to buy anymore licenses
  2. We bought an enterprise agreement when we bought product X and the vendor allows us to have a few licenses for Y and Z as well
  3. I've spent a load of money on licenses for this and we are damned well going to use them
Now clear the first one is fine, this is for example where new functionality is being delivered for a website and the number of CPUs has to be increased.  The later is of course clearly dumb and often is the driver behind IT centric projects that burn money.

The middle-one though however is the most dangerous.  I've seen this over, and over and over again.  A company buys the flagship product from a market leader in a specific segment.  That market leader also has some other products which are either early to market, non-strategic or just plain a bit rubbish and to 'sweeten' the deal they include a bunch of licenses for them and offer this up as value.

A few weeks, months or even years later a project comes along which needs to do a specific thing.  Suddenly someone remembers, or most often pushes, that there are some licenses on the shelf that do that sort of thing so brilliantly money can be saved.

Let me recount a story of just such a decision....

In 2001 I was working with a company who had bought a enterprise package solution from one of the market leaders in the CRM space.  As part of this 'deal' the company was allowed to use up to 4 CPUs of any other product from that vendor.  We had to produce a website to enable consumer to interact directly with the package and this was well before .com front-ends were normal practice.

'Fortunately' the vendor had a new product to do just this, it was new, it was shiny and it was covered by the 4 CPUs.  The alternative was to spend about 6 months developing something custom with about 5 people and despite some heavy cautioning from me on adopting a brand new, unproven technology that looked rather rubbish when I investigated it the company decided that it would be cheaper because of those 4 CPU licenses....

18 months later and with an average team of around 15 people and much hacking, cursing and challenge the site went live with a fraction of the envisioned functionality.

So that 4 CPU 'saving' had in fact delivered a 20 man year cost increase and less functionality.

Want another?  How about the company who used some old EAI licenses and found out half-way through the project that the vendor was discontinuing the product?  How about the company who used the limited number of Web content management licenses and found that 10 years later it was a drain down which millions had been poured... seriously I could go on and on.

The point here is that lots of IT seem to account for license costs in a completely different way to people costs.  Something that saves [£€$]10 of license cost is good even if it delivers 10x that in additional people costs.

The solution is simple, when you look at a programme evaluate the total cost of ownership of the solution not just the immediate cost of buying licenses.  Cheap today is liable to be expensive tomorrow and potentially extortionate the week after that.  TCO is all that should count in these decisions but normally the lure of 'free licenses' outweighs the rationale of 'that isn't the right tool for the job'.

Now that really is Dumb IT



Technorati Tags: ,