Wednesday, 23 September 2009

BCS: A lesson in irrelevance or alienation ?


The British Computer Society (BCS) was created in 1957 and has about 70,000 members out of 1 million + UK IT Professionals (figures from E-Skills UK).

A membership of less than 7% after 52 years in existance is not particularly impressive. Given its royal charter and priviledged position you have to question why the BCS fails to attract the majority of IT professionals.

IT Training Firm Firebrand believes 91% of IT professionals are unaware of the BCS accreditation scheme (CITP). However, I believe the real reason that the BCS fails to attract members is not simply down to its lack of relevancy to both employees and employers, but its alienation of potential members.

It has tried many schemes to attract members and I remember many years ago as a teenager visiting computer shows and seeing the BCS trying to sign up young people to join 'ACE', the Amateur Computer Enthusiasts club for young people who "weren't good enough to be proper BCS members". This rather patronising approach to attracting members- even young ones- unsurprisingly failed!

25 years later, the BCS launched ELITE, "Effective Leadership in Information Technology" but this time only open to members of the BCS. So the journey from patronising to pretentious has been completed. The irony is that all you need to be ELITE is to be a member of the BCS and in IT Management. Quite frankly its harder to become ELITE in the classic arcade game (and more cherished I suspect, even after 25 years) than this BCS assignment.

However, if you want Chartered status, then you need to take one more step and take the test, but given their sample question (see below) I don't think this is a barrier either.


So, many IT professionals could be ELITE, MBCS and CITP, yet shun these attributes and prefer instead to seek certifications from Microsoft, Oracle, Cisco etc as a means of personal development, recognition and progression.

I am not sure whether the latest revelation from the BCS (trying to create a global IT profession) is another example of corporate delusion or the recognition of its failure to attract people in the UK and hope that professionals abroad will be more receptive.

The problem though is within the organisation's DNA which remains elitist and apparently oblivious or impotent to the many IT challenges facing the industry and society. Whilst the BCS proports to be "Enabling the Information Society" the reality is that it has failed to have any significant impact within the industry, even after 50+ years.

Sadly this - more than membership numbers- is the real tragedy. The BCS appears ineffective in making any positive impact on IT in society, in government and industry.

As a country needing to diversify from manufacturing to a knowledge economy there are obvious areas where the BCS - if it had achieved a broader membership and greater vision - could have impacted including; PC's in every home, everywhere internet, re-platforming schools, UK Software independence, open standards, public IT projects etc .

The list is endless. The contribution, it seems, isn't.

Friday, 18 September 2009

"Code Monkeys" and the "Software Eunuchs"


Its odd given the historical roots of programming - and in many ways its growing complexity -that the term 'Code Monkey' should have arisen.

You don't get 'Lawyer Monkeys' or 'Financial Monkeys', so why has this derogatory term emerged? 

My view is that this is the result of a 'devaluation' of the role of programmers and the increased demarcation of roles that has arisen - at least in part - from the introduction of the Waterfall methodology.

The demeaning term of "Code Monkey"  suggests that coding is just a basic and simple process of churning out lines of code according to the specification. Rather like a copy typist or a translator taking a specification and transposing it onto the computer. The "real brains" being with the analyst, the designer or the architect (in fact anyone but the person who built it). No wonder many coders want to become something other than a coder because they don't feel their role is valued. 

It may seem a rather minor point to be making, but actually I believe this has contributed significantly to poor software. Naturally it is demoralising to programmers to be thought of as "Code Monkeys" (either explicitly or implicitly), but more than this, it disengages and divorces them from the analysis, the design, the user, in fact everything except the lines of codes they are "cutting" (not sure I like that expression either).

From a coders perspective, they feel more like a "Software eunuch", a coder without involvement, influence or power over their project. 

So product development is reduced from being a creative team effort to a production line effort ('A' doing what 'B' passed down the line) and unidirectional.

This is where you get the typical "swing" characterised so well in the cartoon.

You can just hear the programmer turn round saying "but I'm just the code monkey" not as a badge of honour, but to excuse their involvement in a project they had no influence. 

There are many lessons to take way from these experiences, one of which is the need for team work and joint ownership of outcomes not simply isolated ownership of processes or individual deliverables that might be expected in a production line environment.

The other is the recognition that coding is an intellegent and creative activity not best suited to monkeys of any description, and that intelligent creative people have more to contribute to the development process than simply cutting code.  

This is one reason why I believe the Agile methodology has made a significant positive impact on development due to its much higher involvement and engagement with developers. Certainly this is my experience.  

My Three  (R)evolution Rules...

1) Don't hire code monkeys.

2) Don't treat coders like monkeys and

(coders)

3) Don't work like code monkeys.














p.s. they never did get any monkeys to type the works  - or even words - of Shakespeare.