Wednesday, July 04, 2012

Thinking is dead

Anne wrote a reasonable blog a while ago on why SOA was and wasn't dead but I'd like to go a bit further today and say that generally the concept of thinking appears to be dead.  The value of 'thought' and thinking in IT has diminished, in a way that mirrors society at large, to the stage where design, planning, architecture and anything else other than just banging away at a keyboard appear to have been relegated behind opinions and statements as fact.

REST was a good example of this.  It was going to be the revolution, it was going to be the way that everything worked.  Two years ago I called bullshit on that revolution and I still say its bullshit and the reason is simple.
IT values technologies over thought
So people genuinely, and stupidly, think that how you shift packets from A to B will have a massive impact in how successful IT projects are at delivering their objectives.  What impact has this had on the massive spend of ERP packages out there?  Nothing at all.  What has impacted that?  Well folks like SFDC because they've shifted the business proposition and in so doing have moved the way business people think about IT systems.

The same goes around with Hadoop and Big Data.  The massive amount of information growth is complemented by an equally large amount of bullshit and a huge absence of critical thinking.  What is the major barrier to things like Hadoop?  "Its lack of real time ability" I hear people cry.  Really?  You don't think its that we have millions of people out there who think in a SQL Relational way and who are really going to struggle thinking in a non relational non-SQL type of way?  You don't think that the major issue is actually in the acquisition and filtering of that information and the construction of the very complex analytics that are required to ensure that people don't go pattern matching in the chaos and find what they are looking for.

We are currently seeing a rush to technology in IT departments that is focused hugely on bells and whistles while the business continues to look at outcomes.  With the business looking at SaaS, BYODand self-service applications the importance of thought and discussion in IT is acute. What I often see however is statements of 'fact' like 'you don't need integration its SaaS' or even worse a statement on a specific piece of API based technology as being important.

Planning, architecture and design are being seen in parts of IT as bad things as a mentality develops around a concept that some how basic fundamentals such as TDD, contract design and doing things that actually proven to work are in some way wrong.  Adoption of unproven technologies is rife as is the surprise when those technologies fail to deliver on the massively over hyped expectation and indeed fail to even come close to delivering at the level of dull old technologies that do the job but don't currently have the twitterati in thrall.

'Experts' in this arena has come to mean 'people who shout loudly' in a similar manner to US politics.  Facts, reason and worst of all experience are considered to be practically a disadvantage when being an expert in this environment.  I was recently in formed that my opinion on a technology was 'tainted' as I'd used multiple other technologies that competed with it and therefore was 'biased against it'.  I'd also used the technology in question and found that it was quite frankly rubbish.  Sure the base coding stuff was ok but when I looked at the tooling, ecosystem and training available from those competitors I just couldn't recommend something that would actually work for the client.  Experience and knowledge are not bias, thinking and being critical of new approaches is not a bad thing, thinking is not dirty.

When I look around IT I see that design is a disappearing skill and that the ability to critically assess technologies is being replaced by a shouty fanaticism that will ensure one thing and one thing only:
IT will no longer be left to IT folks
The focus of shiny technology over business outcomes and the focus of short term coding over long term design will ensure that IT departments get broken up and business folks treat IT as a commodity in an ever growing way.

Thinking, design, planning, architecture and being skeptical on new technologies is the only hope for IT to remain relevant.


rendion said...

There is huge disruption going on in the enterprise space.

1) The last great ENT IT investment in infrastructure was in the early 2000's.

2) Windows is since dead

3) All the windows infrastructure maintenance is outsourced now.

4) IT managers have dug their final grave. Thinking that their internal infrastructure would be sacrosant.

5) For whom the bell tolls for Enterprise IT

Anonymous said...

There have always been technology factions within IT. That's nothing new. What is relatively new is treating every new technology as the silver bullet that's going to solve all our problems.

And I would argue this is precisely because too much of IT is already being managed by "suits" with little or no understanding of the nuts and bolts.

Steve Jones said...


I wish it was just the suits, the real issue is that too much of IT is being delivered by people who think that formalism and rigour is a bad thing and that the important thing is that they need to be 'shiny'.

Too often I hear the phrase 'that is too old' when referring to a proven technology that is only a couple of years old and which has a massive installed base.

The suits often don't help with their spreadsheet focus but the difference now is that I'm seeing a lack of thinking in the grass roots. When I compare it with 10 years ago when people had arguments over TogetherJ v Rational, talked about MDD and where there were big debates around the design process today I see big 'debates' around how to pump data from A to B.

The suits never thought... but now neither do the geeks.

Anonymous said...

I don't think corporate IT ever worked very well. Most corporate environments are poorly suited to be places where engineering can be done successfully, and the problems that IT is supposed to solve require engineering skills.

IT managers are unqualified to manage engineering projects, however, and good engineers avoid IT departments.

My view dovetails with yours. Corporate IT is a dumbed-down environment so it should be no surprise that they can't solve challenging problems. Sure corporate IT can lock down your Windows desktop, but that is the kind of bureaucratic make-work that we would be better off without.

Dean Schulze

Lyndon said...

There is a difference between formalism and rigour and formalism and rigour that does not involve thinking...

I think that is more of an issue than cowboyism.

Brian Cordell said...

This problem has been a long time coming. We are in an era when your value in IT is based on your experience with the "flavor of the hour". Hence, you have a lot to lose when your technology does not prove to be in fashion. IT arrived at this state due to generations of promising and not delivering. So now "the suits" look for people that endorse their position because they don't trust anyone else. On another note, if Windows is dead, then who is Balmer going to sell 36 million copies to this next year? What may be dead is making a career on the basis of maintaining an OS.

Steve Jones said...


I disagree, I genuinely think that only 8 or so years ago Enterprise IT was really working. The big vendors (except Microsoft) were all collaborating on a single platform (Java) and had all (including Microsoft) commoditised integration (WS). People can argue about 'optimal' technologies but in the enterprise 'good enough' when its consistent is better than good enough its brilliant.

SAP's strategy for its ERP future was Java centric, so was Oracle's. IBM were rapidly decommissioning non-standard product lines and small vendors worked in a nicely competitive ecosystem. A few years prior we'd seen companies like TogetherSoft really raise the bar around design and at events such as JavaOne you'd see as many discussions around techniques, methods and tools as you would around shiny shiny.

Since then, and especially in the last 6 years, we've seen all of those advances lost. The package vendors are harking back to proprietary approaches, integration is a mess and becoming more fragmented and design tools have basically disappeared from the market. Version control is something that is IME patchily adopted around the market and that I just find stunning.

Enterprise IT is the lifeblood of IT, its where (IMO) much of the 'good' innovation around methods and processes come from. The last few years we've seen a focus on shiny shiny technology and the demise of methods.

I fundamentally disagree that good engineers avoid IT shops and enterprise IT, its just that they are not being supported by vendors and the community in the same way as a few years ago. I regularly see people bemoaning the fact that they don't have a decent design tool anymore, that they are hand-coding stuff that they used to generate and that language fragmentation is again one of the biggest issues in complex projects.

Those issues are created by engineers at 'shiny' companies who are used to putting something together in a hurry as part of small teams who also support the solution (not normal in enterprise IT) so 'hero culture' predominates.

Hero culture != good engineers.

Steve Jones said...


I partially agree, but I also disagree. Sometimes its good to have rigour that removes creativity where it isn't required. Too often I see people 'optimising' things that should just be left alone, an example of this is multi-threading. There are very few people who really grok multi-threading and a formalism and rigour that enables the smart to do that and the rest to benefit is a good thing(tm).

Preventing creativity where it isn't needed is a good use of rigour.

Steve Jones said...



The Polymorphist said...

Thinking is indeed dead in projects that are won by being one of the lowest bidders while speaking the biggest/most/loudest buzzwords. But not all coding is done by consultants.

An ISV has rather different incentives to take a long-term, strategic approach.

The situation in this market is rather like the one existing when a modern (=clueless) consumer takes his car to a garage. It's not easy to know if the work being done is of high quality, or even if it is necessary. People widely accept that a lot of outright fraud is going on in garages, but for some reason seem to assume this isn't the case with software development projects running into the billions.

TIBCO BusinessWorks said...

If one wants to know more about TIBCO BusinessWorks, there is a page which gives insight on activities and some blogs - this has just started.

Bala said...

Hi Steve,

I agree!. What you say exactly resonates with whatz going on in the Enterprise IT industry.

But, there is a reason behind that. Incidentally, I blogged about it recently.


mikelotus said...

Hi, just to let you know you can not use RSS with your blog, google reader says feed not found and your LinkedIn link is javascript(void).

Steve Jones said...

Does it work now? It appears to work for me...

Nickalong said...

Agreeing with Mikelotus on this - your RSS feed is empty. Big shame.

BTW - why not push some stuff, such as Thinking is Dead, out on Hacker News? Lively debate would ensue. But perhaps you've tried this and lost patience with the inevitable trolling?