Pass the fork

Teams often work on shared code, shared resources and in shared time. We have ways of managing this, such as source control, one of the first requirements for software development maturity (falling within Levels 2 to 3 of the CMM for Software). However, not everything is easily integrated into such a process.

Developing on the example of source control, source control presents challenges that the mature team will be able to identify and overcome through the use of best practices or their own devised and agreed processes. Shared assets such as legacy systems, premium-licensed resources or even databases often exist outside of source control leaving the team requiring confidence that one developer’s work on that shared asset won’t affect others.

Meet the fork.

The DB Token of Power ("The Fork")

With the fork, a team member can wield power of access to a contended or non-source controlled asset such as database schema changes, SharePoint server configuration, leverage of a single-user licence service or other lock-required activity. The fork acts as a physical action and visual cue in the physical world, representing the reality within the virtual or abstracted world of source code, databases and servers. As a team member reaches for the fork, their wishes are explicit (“I have the fork”) and may be “blocked” by any other team member (“Oi, hang on, I need to do something first”). Without the fork, no changes may be made – or would be expected to have been made by the rest of the team.

Use of a token in this manner is predicated on the collaborative capabilities of the team, perhaps requiring that the team are co-located, small and cohesive. Such team environments aren’t always possible or available. Teams that are not co-located, are perhaps too large (spanning more than one pod of desks) or lack a cohesiveness that is conducive to casual conversation would inhibit the use of such a token; though in this case, one must answer much larger questions about why are these people working on contended assets?

There are alternatives. Use of a shared chat channel for the team such as Slack with an agreed protocol (even descending to the “claim” protocol introduced in The Walking Dead TV Show) would overcome the overly-large, distributed and communication-inhibited team; though this would require a level of buy-in or enforcement by a commonly accepted leader.

We’ve used the fork to great effect. Merging of sensitive assets such as Entity Framework .edmx files (this project has not yet made it to Code-first) can result in a whole world of pain if two developers tackle two work items that are either contradictory or contended. It’s simple and promotes added cohesiveness within the team. Our token was chosen based on what was sitting in one of our drawers and this remains a shared experience within the team and contributes to our mutual social credit.

Of course, you don’t need to use a fork, any token will do, so long as the understanding across the team is consistent and mutual. Such tokens have been in use for years. Ever since the 19th century, and remaining in use even amidst today’s modern computer-controlled signalling, railways have used the token to guarantee safe access to controlled sections of track to prevent collisions.

 

 

 

Reflecting on the state of social media on the Isle of Man

Photograph of Social Media Club dinnerAs a small island, separated from the mainland but connected to the world, the development of social media has been an interesting story.

Whilst social media had been adopted as the platform of choice for younger generations, companies were keen on understanding how to reach these demographics on their own platform and how to continue with a positive engagement. The Social Media Club was developed as a way to develop ideas and promote best practice across the social media world.

As part of this, the island’s Social Media Club met every month, ranging in number from 4 to 20 and always promoted interesting discussions, particularly with social media hitting the news for topics such as bullying, privacy and the corporate movements of the new burgeoning tech sector.

We had some successes, introducing users and companies to social media. We also had two successful Twestival events which only ceased due to the organisers’ bizarre brand-grab, raising one of the largest amounts across the world per-capita.

Where has the island come since?

Perhaps we can claim the island has reached a level of adoption which suggests maturity gained through usage, experience and even groups such as the Social Media Club lunches.

Inevitably, marketing companies have adopted the paradigm, specialising in results-based marketing and avoiding the broadcast or fire-and-forget method of reaching out to customers that may otherwise be used.

Manx Radio recently started reading out contributions from social media on their Mandate show, providing an additional channel to contribute to live shows other than the email and telephone older generations may be used to. (It’s interesting that email is now seen as an archaic medium for newer generations.) You get a better class of mental on Twitter!

Even the Isle of Man Government have jumped on, with differing levels of success and engagement according to the topic and department. Between engaging with users as tax payers and delicately straddling the line of individual privacy and the professionalism of the department, it’s been refreshing to see a little bit more transparency.

Further signs of maturity on the island is the consideration of the effect of social media on the island’s unnaturally small juries. Chris Robertshaw has embarked on an exercise of determining whether enough people are in the juries and how the judiciary will mitigate against influence from what is a tightly bound island community online.

In reflection, we remain a separated island but are very much more connected.

 

The role of ethics on a licence to practice

Just because it's dark doesn't makeit unethicalI’m firmly of the opinion that the IT industry should have a licence to practice, or at least a recognised qualification or membership that indicates that you are serious about your conduct within your career. The best body for this as it appears to stand in the UK is the British Computer Society. Unfortunately, the BCS remains  an embarrassment and continues to fail to make an impact on employers and professionals in respect of a licence to practice, or even recognition of any ethical standing. Despite their reinvented Chartered IT Professional status, they remain invisible and irrelevant.

IT is an industry that now touches us all and the risk of our data traversing physical, network, jurisdictional and geographic boundaries has come into sharp focus with an increase in the number of data leakages and ‘hacks’ that serve to showcase anything from a security hole to the hubris of an anonymous script kiddie. As an individual working within this profession, one should have to commit to exercising every possible effort in maintaining one’s own ethical position, which would include their role in ensuring the projects within which they work make every possible effort to perform to the same standard. The BCS has their own Code of Conduct which attempts to create a position of professional and ethical performance but this does not offer any real sanctions other than being “struck off” as a member of an entirely irrelevant register.

Had a workable and enforceable code of conduct or ethics existed, would we have seen any of just a few of the recent scandals?

  • Volkswagen’s discovery (not admission) that they had used software to cheat in emissions tests for their vehicles under specific test conditions required effort by at least one developer who knew exactly what they were trying to achieve. These developers breached ethical considerations which surely span cultures; thou should not lie. VW’s American CEO Michael Horn claimed in congress that it was two software engineers that came up and implemented the cheat. Of course, we should consider that they may have felt pressured to implement the cheating software, but had there been a substantial professional body behind them they may have felt confident in blowing a whistle.
  • Adobe had 153 million accounts exposed in 2013 which revealed usernames, email addresses, encrypted passwords and unencrypted password hints. Unfortunately, the passwords were encrypted weakly meaning it was fairly easy to brute force the encryption based on repeated sequences of data. Coupled with an unencrypted password hint which only serves to undermine the weak encryption and it makes one wonder whether the developers stopped and thought, “are we doing enough?”
Then there is the incompetence:
  • This year saw 780 people “outed” as HIV sufferers by a leading sexual health clinic. The cause was a basic human error of pasting the email addresses into the wrong field. It’s very easily done. This very basic administrative error has major repercussions on lives.
  • We have our own case of gross incompetence on the Isle of Man. Earlier this year, hundreds of individuals’ email addresses were shared across email, again as a result of the basic administrative error of using the wrong email field. What happened? The Data Protection Commissioner took no action and all that could be seen were some red faces.
Such examples of incompetence are not malicious, but they are indicative of lack of training and oversight. Had ethics been considered, any transaction with any personal data would have been conducted with the greatest of care. Even more shocking is the lack of action by a Data Protection Commissioner whose very position is based on ethical and competent use of data.

I did miss one recent high-profile hack, that of Ashley Madison. This raises an interesting point. Within an ethical framework, where does one’s professional ethics come into play? Personally, I believe that as long as the programmers were honest in what they were doing, regardless of society’s view on the ultimate effect of their actions which are quite rightly extremely serious, then they should feel confident in their professional conduct. The programmers have apparently gone to great lengths to safeguard the identities and security of their clients. We still don’t know how the hack was performed or whether it was an inside job, but based on the news and discussions, security was seemingly tight. This notwithstanding, their managers’ decision not to delete data from individuals paying to be deleted is blatantly unethical and these individuals should feel the full force of the law as punishment.

 

Using an anti-pattern still enhances your maturity

Programming has approached a level of professionalism that suggests we now spend a lot of time meta-programming, naval-gazing and writing a whole lot of complex code just to avoid smells.

Meta-programming could be described as programming about programming. As our tools get more advanced and our systems get faster, we can now write code that writes code and write code that analyses code. What’s the point? Visual Studio has finally integrated the Roselyn Compiler-as-a-Service feature which brings the compiler in as a first-class citizen so you can generate code and analyse it from within your own program. But wait, the last time I looked, it was an anti-pattern to dynamically generate code.

This self-analysis of code has otherwise been a manual process, supported by burgeoning communities of self-aggrandising architects such as those gaining increased scores on sites like Stack Overflow. Thou shalt not code in JavaScript in an imperative fashion, though shalt not use global variables, and it goes on. We’ve got to the point of intellectualism that we are able to create arbitrary levels of maturity and compare ourselves and others against them with little consideration of “why?”.

In order to leverage new features, avoid the judgement of our peers or even ourselves, we’ll go to great lengths to create patterns of best practice which decouples concerns, increases testability and complies with the latest guidance of our peers – however much work that may take. We must avoid the Anti-pattern, lest we be judged.

But the Anti-pattern is still a pattern, so suggests some level of thought and maturity.

I’m reminded of the Capability Maturity Model (CMM), which is a model of maturity applied to organisations to identify whether their processes are chaotic or structured so are repeatable, measurable, testable and therefore able to be improved. Of course, the software industry hasn’t allowed itself to avoid its own naval gazing and has come up with various mirror models. Many of these are arbitrary and perhaps form an extra string to a consultant’s bone, such as the Software Development Maturity Model, the Software Assurance Model, and of course there would be an Agile Maturity Model developed by … a consultant.

We’re perhaps too quick to judge software code and not understand why it is what it is.

As a developer, one of my struts for my professionalism is the decoupling of concerns. This is simplified such that no module ultimately depends (or even knows) about any other module. You sort of “wire it up” during a bootstrapping process. At the moment. We used to think that modules should know about each other, but perhaps on a more restricted scale, so the database would be “known” by the behaviour, but not the presentation. Now, technology has come so far and developers’ minds have grown so large that we now realise this is bad practice. So we use Dependency Injection whereby a single element of the code performs the wiring up, invisibly, automatically and somewhat magically. You don’t need to know how, just why. Wait … what?

Dependency Injection develops on the previous best practice, the Service Locator – which is now an anti-pattern. But I know how and why with that pattern. But it was a pattern. A Service Locator could be regarded as a central authority for identifying what modules in your code did what. You’d go to this and ask for the code to access the database or perform a particular process. It was, in effect, a global variable which itself had developed from previous practices.

Last night, about 2am, I found myself writing a service locator Anti-pattern, direct from Microsoft’s evangelists, no less. This is the NavigationService (the clue’s in the name, I realise) which was passed around as a property in view models within Windows 10 apps using the Template10 project. I immediately recoiled. Sure, they’re passing it around as a property, but it is still a Service Locator. But it is also 2am. A pattern’s a pattern. And I went with it.

The fact that there is a scale of these practices, each time evolving to improve their perceived professionalism based on a fad or a consultant’s USP, suggests maturity. Using the Service Locator, I deliberately considered the risk (code smell, limited decoupling, global variable in all but name) with the benefits (it’s 2am) and strategically decided on an outcome. According to the ubiquitous CMM this at least puts me at level 3 – it’s a defined process that is documented and can thus be improved.

Best practices avoid code smells and become themselves anti-patterns. You just need to look to spot this moment and switch tactic at the right time.

The maturity here is the consideration of the time, the rapid delivery that is so craved by Agile techniques and the enthusiasm to get to the next problem and using an anti-pattern – but knowing why and committing myself to returning and improving my own process later. I come across anti-patterns regularly, after all, no developer ever said “wow, the previous developer’s code is certainly better than my own.” But I stop and think. Considering how busy I am now, could this not be where my predecessor found himself? Was that the best practice at the time?

So my Service Locator Anti-pattern is justified. Publicly. Deal with it.

Encouragement without the condescension?

My role has recently been tweaked to help support a new employee, and as such I’m presented with the task of motivating without condascending when walking through the many elements of coding for modern business applications.

I’ve been around long enough to pick up little quotes that may be used as “watch-phrases” to remind indiviuals of when the need arises. It’s often difficult for us to adapt to strange working practices at the best of times, and condensing working practices into repeatable and memorable phrases could make it easier.

“Little and often”

In reference to Source Control, checking in little and often encourages the developer to create small, atomic changes to source control, which is essential for a reliable source-code repository. It is all too easy to get your nose deep in work and forget that you have ended up performing many tasks and rolling them all into one check-in, making it difficult to pick it apart if necessary.

“Fail early, fail fast”

Being a small company, we have to be particulary fleet of foot when working with clients and developing our products and skill-sets. Agile project management practices help us achieve this, although it would be impossible to fully implement all the principles of Agile which relies on larger teams. The principle here is that it is okay, to fail. Failing itself is a learning process and essential to preventing a bigger failure and therefore costs later in the project. But do it fast!

“Do only one thing, do it well” and “Keep it Simple, Stupid”

When coding, it is easy to start building too much into too little. Whether it is an overwhelmed class full of functionality that could be farmed out, or the other extreme; a bunch of barely connected classes that come together in a somewhat complicated way to perform something quite simple. SOLID principles work well here, if only as a reminder or gateway to other design patterns such as Repository, Factory and other such patterns. Additionally, one should always consider if you’re building a sledgehammer. KISS (Keep It Simple, Stupid) always helps remind you of the importance of the task in relation to the wider project.

“There’s no such thing as a stupid question …”

… just stupid people who try to answer it themselves. By this I am trying to encourage the disruption of my day and distractions to my work by asking a question that should be asked, as opposed to a question answered using only their own incomplete intuition. Clearly, Google/Bing is your friend here, but what is important is to back that research up with ensuring that the answer is appropriate to the organisation or project.

Updated 8 August 2012:

I just found myself saying …

“If you find yourself doing it again, you’re doing it wrong”

Using KISS we can make sure we keep DRY, by creating lots of small functional components that can be re-used to form larger functions. If you find yourself re-using code or copying and pasting, you’re probably missing this opportunity for re-use.

BCS EGM: Which way to vote?

The BCS is currently ” in crisis” or being ” transformed“, depending on who you listen to. I’ve spent much time of late trawling through opinion and comment on the EGM that was announced in a bid to modify the somewhat arrogant management mindset, an arrogance that is often required to drive forward change in an organisation. I’m not about to give you any insightful thoughts on which way you should vote, as I have no idea myself at this point. But, I have some concerns.

The rebrand was all a bit of a shock, with some very attractive brochures being sent to me on my membership renewal. Sort of felt like I was buying a toothpaste, rather than a membership to a professional organisation. However, the old-skool “BCS-key” was getting quite dated and the organisation was lacking relevance.

My personal view on IT practitioners is that to operate in IT, some degree of professional qualification or endorsement is required. It is hard to find a job within IT which you do not come into contact with private or sensitive data, which should be treated with as much respect as a doctor with medical notes. This is a multi-disciplined requirement, ranging from physical infrastructure to secure programming. There are too many amateurs in the profession, and it is seen to be too easy for people to gain access to the industry and present themselves as experts. While membership of the society goes some way to endorsing you as a professional, it hardly qualifies you. The CITP membership level, however, does go some way and seemed to be the most appropriate option for me.

The Chartered IT Professional qualification (CITP) that I obtained is now of the “older order”. This is one that required me to meet the BCS’ SFIAPlus Level 5 criteria, be endorsed by 2 peers and to have worked as a professional in IT. I feel that this is the closest I can come to indicate my belief and subscription to the view that IT professionals must operate under. However, it seems that this qualification is being seen by some quarters as a lower qualification. The BCS has traditionally been an academic and science-focussed, who put a lot of value in the CEng and CSci qualifications. Some of that membership are resisting the change from “Computer” to “IT”-focus. If you are working with computers, you are working in IT – be it computers, internet, or policy. Computers are only one medium through which IT is delivered. The CITP is therefore regarded by these people as being irrelevant.

So I am on-board with the change in focus towards “IT”, rather than simply “computers”. If the BCS is to be seen as an industry professional body, it needs to span the industry, not just the machines it uses. What disturbs me is the BCS lack of understanding of how it should engage with its membership. Of the management, David Clarke and Elizabeth Sparrow recently conducted a road-show around the UK to meet the membership, but they seem to have missed out on the Isle of Man – a shame as the Isle of Man is a very engaging and open branch. Their understanding of the web seems to be below that of the general industry they claim to represent, too. The new web-site was riddled with bugs at launch, undermining any sense of quality assurance an IT professional should claim to practise. The society is spending some time reaching out to members and non-members via social media, which is very welcome, and the Savvy Citizens campaign is a welcome “entry-level” point at which non-IT professionals can interact with members. But why spend the money and effort on developing its own social network, under the banner of “BCS Members’ Network”? Such networks already exist. I keep up to date with the various BCS-related groups on LinkedIn, which has ably met my social media requirements – because they are already in the business and know how to do it.

The dilemma I find myself in is: do I vote for the transformation and overlook the arrogance of the management and possibly undemocratic removal of members’ rights to object in the future, or do I vote for the EGM and at least contribute to a “kicking”; hopefully sending a message to the management that while not all members agree with the principles behind the EGM, there is some unhappiness at ground level. For me, the wrong questions are being asked and the society is using the budget of the BCS to market the anti-EGM agenda quite aggressively, which is somewhat unfair as the EGM-agenda do not have access to the membership to provide their argument – even if the required money was available. Instead, the management seem to be counting on the members submitting their vote to the chairman, resulting in a landslide.

That said, although against an undemocratic process, I feel obliged to vote with the transformation – and the long-term agenda. It is up to the society’s members to drive change for the IT industry as a whole and use the BCS as a vehicle for that. So I reluctantly find myself on-board.

Being able to make a difference

I’ve been in a new job now for just over a month, and things are going well.
The reason I say this is because I am in the honeymoon period where my skill-set
can drive productive change within the business and its products. What’s
important to me is that I remain in this honeymoon period.

It’s important to be able to feel that you can effect change within an organisation that is employing or contracting you. Without this, there is no reason to stay, other than to trudge through your mortgage payments. My previous employment was challenging, interesting and I enjoyed the work. Unfortunately, for various reasons I found myself in a rut where despite my requests, ideas and efforts, any development work never resulted in any significant improvement. It took me a year and a half to push through the need for a new web-site, for example, a little worrying when the business is modelled around e-Commerce. You eventually end up in a mind-set that you no longer try and change things, because established work practices, office politics and commitments conspire against any positive change you could create.

As with a lot of IT professionals, my CV is full of shorter stints in
companies around 2-3 years. This goes back to my first job. You start, you get
given your remit and you maybe become enthused about the possibilities of your
own development and the development of the project you are involved in. Fast
forward to two years later, and you often lose that either because you have got
bored, or you are finding change difficult to implement. This is despite many IT
projects requiring professional, skilled input in the long-term, ie. more than 2
years.

At the moment, I feel very positive about the improvements I can make to an
existing, successful CRM product. I’m sure this will continue, working in a
small team, it would be hard to foresee a situation where I would not be able to
influence development of our products. Also, being at the core of upcoming
developments, I would find it difficult not to be part of any future success as
a result of our work, so I’ll be in this for the long-term. Having got out of a
rut, I find my mind is working again, making me feel I had it turned off for the
last 2 years!

That said, everything happens for a reason and you learn from everything,
whether you realise it or not. So I don’t begrudge any period in my CV, as I
will always gain value from past and current work whether I realise it or not. I
have also met some very good people in every place I have worked and am still in
touch with many of them.

How the F1 Spying row could affect you

The recent F1 spying row between Mclaren and Ferrari has been bigger
news than the incredible rise of Briton Lewis Hamilton, but read between the lines and it may be concerning for your next job.

If you haven’t been around for a while, you might have missed the meteoric
rise of the rookie Lewis Hamilton in F1 team Mclaren this season. Hamilton has
broken many records, including the first win in a rookie year, and has
reinvigorated British support for Formula 1. If you missed that, then you would
probably not have missed the spying scandal surrounding the Mclaren and Ferrari
teams.

The scandal centres around information passed to Mclaren from the then Chief
Mechanic at Ferrari, Nigel Stepney. F1 fans will know who Stepney is, and would
not be surprised when they hear information is passed between teams, although
not entireely overtly. Maybe Stepney had a grudge against his Ferarri team after
Schumacher ran over his foot in the pits two years ago, or maybe something else
was the motivator. Either way, the team has now been hit with a record of
another kind, a massive fine of nearly £50m and a loss of all constructor points
this season. This means that Ferarri will be the inevitable constructor winners,
which is arguably the reason why teams compete in the high-risk, high-cost
sport. Coupled with this Mclaren also stand to lose £35m in sponsorship revenue
and serious doubts are now being raised over the viability of Mclarens
future.

Behind all this, however, is the question of whether it is reasonable to
expect people to erase their minds when moving between domains and between jobs. When you start a new job, you are interviewed, assessed and recruited not only on your current skills and suitability for the role, but also on your past
experience – and this includes all the program code, the client contact, or
whatever intellectual property you have had access to in your previous
employment. It is this that drives up your salary, that makes you an attractive
candidate and more able to accommodate an increasing array of challenging
environments.

In coding, there is a widely used saying “90% of code is re-used”. Another
saying is banded about “there is nothing original”. Both these are true in their
own way, and it is important to remember this when you lose an employee for
another to recruit them. Official secrets aside, it is inevitable that the
algorithm written in your previous position may well get repeated – if not
improved slightly – in your new position. Is this violation of the intellectual
property of the previous employer?

Salesman may operate with or without ethical rules, but key contacts cannot
be disputed when moving between firms. Once contact has been made with an
individual in a company or organisation, and a rapport developed, is it
unreasonable not to expect that salesman to return to that contact in a
different capacity?

In the real world, this is inevitable. When a recruitment programme is
embarked upon, the employer is looking for these skills, contacts and abilities.
While the legailty of specifying a minimum number of years experience may be
questionable in an ever confusing list of job advertising guidelines, companies
will undoubtedly have in mind a number of years of experience that they require.
Therefore, they are essentially expecting skills, information or
contacts to be re-used in the new employment of a candidate.

Ron Dennis, the charismatic head of McLaren, is appealing against the
decision of the ruling body of motorsport, but whether this will work is not the
question. What really is the question is, in the “real” world, would it be fair
to have a similar scandal if you were to re-use skills or re-contact contacts
under new employment?

A Message from a Manx Manc

I was going to blog about my recent trip to Manchester, ruminating
about my spiritual heritage in the bustle of the city. But then I was told
“There are two boats every day”, a saying any “come-over” will be used to hearing.

I moved over from Manchester in 2005, leaving behind the hustle and bustle of the city I love and developed myself in. Now, I live amidst the beauty of the hills and glens of the Isle of Man. I enjoy fantastic views across the sea and over Maughald and Ramsey. The island offers not only a relaxed pace of life, but also a serenity
that cannot be had in the UK. My reasons for moving on to the island are varied,
others’ will be different, but a large number of people have moved on to the
island. These are known in the Manx lingo as “come-overs”.

Come-overs represent over 50% of the people on the island. These people
occupy jobs in all strata of the Manx economy, from the labourers on the
building sites to the financial CEOs of the international finance industry.
Come-overs bring with them high standards in education, professional training
and years of experience in a variety of industry sectors. They are a breed that
yearns for a change in their pace of life, but are not necessarily shy of
contributing.

It’s not easy getting on the island. To legally occupy a position in the Manx
economy, a work permit is required. The criteria for a work permit is that the
position being applied for must have been advertised to the general Manx
population and not have been filled with an appropriately trained Manx-born
individual, or likely to be filled by such an individual within a 12-month
training period. The objective of this is clearly to ensure that the Manx are
given every opportunity to obtain employment on their home island. For myself,
this procedure took 3 years. The number of jobs that were appropriate for me was
limited, add on the requirement for a work permit and it is easy to see why it
can take a while to get on the island. But I did it. I remember opening the
letter to this day, it was a very happy moment for me.

There are no asylum possibilities, no social welfare benefits and you
certainly don’t get a free ride from the authorities. To claim many social
benefits, you must have been resident on the island for 5 years. Council houses
(known as Commissioner’s Houses) will not be available for 10 years, and rent is
not cheap.

So it requires a determined effort to “come over”.

Despite all this effort, and the contribution that “come-overs” make to the
island, there is an unfortunate hostility targeted at people.

Let’s consider it from the Manx perspective.

The island, until recently, was a dying island. Its children were moving
“across” to the UK, probably after studying at a university and gaining
employment. There were no real opportunities on the island. Its Tourism
industry, which enjoyed its heyday during the Victorian era (the island still
sports Victorian attractions, including railways, a pier and horse trams) was
rapidly declining as people started to fly abroad. Then, as a result of a change
in fiscal legislation, the island was afforded low-tax status, resulting in an
influx of major international finance houses. This has changed the face of the
island not only economically, but also architecturally. Alongside the Victorian
pubs in Douglas lie the glass ultra offices such as Royal Bank of Scotland
International. This has created thousands of jobs for islanders and
off-islanders, and creates a real career path for Manx people to follow with
many opportunities available.

So why the hostility?

The work permit legislation serves to limit the incoming labour force and
ensure that Manx workers get the first opportunities of jobs. If there are no
suitably qualified workers available on the island, then it is logical that
companies will have to look further afield. I fully agree with this procedure,
even having to wait 3 years to get to a point to be lucky enough to go through
it. My work permit must be renewed every year for five years. Seems perfectly
fair to me.

Incoming legislation currently going through Tynwald (the name for the Manx
government) will require similar assurances of commitment to the Manx economy
and culture for incoming off-islanders as the tests that have been introduced
for immigrants in the UK. A test will ensure that people are aware of the Manx
traditions, laws and way of life. I was not required to go through this stage,
but I was so committed to coming over here I expect I would have passed with
flying colours!

The benefits to the Manx economy of “come-overs” must be immense. Not only
can companies and individuals on the island now access their own skill-base, but
also the skills of a vast array of new individuals, such as individuals who have
been taught in universities and colleges, with the latest of teaching and
techniques. These will be brought on to the island, and be introduced in some
way to the working environment of the island’s businesses. New skills,
particularly Internet skills, are proving invaluable to island’s economy. A
number of web development agencies, IT consultancies and software houses are
situated on the island, and then there are the e-gaming opportunities the island
is keen to attract. The Space industry is also being courted. This industry of
all industries requires the keenest, most intelligent people available, and
requires a wide and far-reaching net for their recruitment.

We also contribute to the Manx economy. Sure, the island enjoys a low-tax
regime, but that low-tax regime is essentially supported by the fact so many
people are paying into it. The island has seen major public investment, not
least of which is a new hospital, with the latest in medical technologies such
as MRI scanners being available.

Sure, I’m guilty of complaining about the Manx way of life, the lack of
entertainment venues on the island or such like. But it is my choice to
complain. It is also my choice to stay. I love Manchester, but I also have a
number of issues with it. I defy anyone to be truly happy with their environment
or country of residence.

I’m definitely not anti-Manx, either. I take care to maintain and protect the
environment and keep the beauty of the island, whether that be picking up litter
to walking with due consideration over its hills. I am also in the middle of
learning the local language of Manx Gaelic, something that the vast majority of
Manx don’t do themselves, or even consider as a worthwhile endeavour.

So the next time I am told to get on the boat, I will not only tell them
“actually, I prefer to fly”, but also point them in this direction.

Maybe you disagree? It is provocative topic, after all!

Communicating the value of IT

My response to a BCS seminar as a developer within an average
small-medium size company.

Last year, as a member of the British Computer Society (BCS) I
attended a seminar held by Sherrilynne Starkie, of Strive PR entitled
“Communicating the Value of IT”. I remember it well. A room full of IT bods
(call them what you will), many of whom feel disenfranchised from their
colleagues and slightly under-valued. After all, people just don’t ring IT to
say “Gee, thanks, my computer is working just fine today” – and nor should they!

We were most enthused by this session, in which different suggestions were
made as to how IT can improve their image to the rest of the company. Walking
out of that room, I felt a warm glow as the ideas started to flow and images of
my colleagues lining up in a march of honour as the IT department took their
seats the next morning. Okay, well, maybe I was hoping for too much.

Sherrilynne’s message was simple: the key is to develop a better
representation of the department by tentatively introducing your colleagues to
the ideas and processes IT are involved in. How this can be achieved can range
from the traditional (and rather limited) technical approach of adopting
academic methodologies suchas DSCM, RAD, etc. that are aimed to effectively
ensure an accurate requirements capture by inviting users to read and comment on ideas and thoughts that emanate from the department. I definitely came away from the session with a distinct impression of what we did need as a department of 5: a PR manager!

Without the budget of a finance house, or the government, this was clearly
not an option. But we were introduced to some interesting alternatives. Most
companies have an Intranet, providing access to internal resources such as
expenses forms, files, etc. An Intranet can easily be improved by implementing
some form of community. A Blog or Forum would be an ideal way of encouraging
users to read about what IT are up to, and maybe comment on it.

Let’s consider where we were as an IT department within a SME. Our IT systems
are quite advanced, as we have sufficient IT resource to actively push and
improve the performance of internal systems. People ask for things, and 9 times
out of 10, we do them. No problem there. We try to make sure that people’s
machines are adequately specified for their jobs. No problem there. Where our
problems seem to occur is in inter-departmental communication and – more
importantly – communication.

This was in November last year (2006) and now, six months later, I
think I can blog about how the ideas I have implemented as a result of this
session went.

We have a new project coming soon, which is a new version of an existing
application. Since its implementation more than a year ago, we have had mostly
positive feedback, but some frustrations have been aired and suggestions made.
As the new version approaches the early conceptual stages, we thought “wouldn’t
it be useful if these ideas were captured?” We were using an existing forum
application for the internal knowledge base within IT, which was opened up to
include a new topic. This topic was then presented straight on to the Intranet
home page, with the clear message that anything can be submitted – anonymously – and every idea printed off and considered in subsequent specification
meetings. How better can you entice people to submit their thoughts?

Take-up of this has been slow, with many ideas being aired and submitted into
the system by IT. Two people who are not in IT have actively posted a couple of
ideas in there, but out of a company approaching 60 people with 90% of those
immediately involved with some aspect of this project, it was a pretty poor
show. The topic remains on the Intranet home page to this date, with most topics
submitted by IT on behalf of others. Reflecting on the reasons why this might
have failed led me to one concern by manager had (who was most enthusiastic
about the idea of opening up IT to our colleagues), which was that people don’t
go where they don’t normally go. They feel unsure, are they “allowed” in there?
What do they do when they get in there? It’s all seemed to be confusing for
them. Or maybe it’s the same old thing; complaining is easy, helping to solve
the problem requires effort.

Another issue I wanted to see addressing is the relationship between IT and
Marketing. IT are exposed to the latest in web standards and are keen to see
web-sites and other on-line resource developed in a usable and accessible
manner. Marketing are concerned about how to line things up, how to attract the
eye and the quality of the copy. There was always underlying tension between the
two departments, both having expertise in their area, but being reluctant to
give away ground to the other department. For instance, while Marketing used
capitals as a useful means of attracting the eye, IT would vehemently object to
this on account of readability on the web. In the end, to their absolute credit,
Marketing arranged to have a refresher course on web techniques using the
software they know. This has had the result that while we may not always agree,
we can be sure that the correct thought processes have been used and the end
decision has been made for reasons other than “it’s just done like that”, or “I
like it this way”. To the same extent, IT has had to step back, accepting that
it is not an IT role to dictate design. IT should perform the role they are good
at: which is to keep track of the latest web techniques and advise as
appropriate.

All in all, the session was very useful. I think that the uptake by users to
participate in discussion on the intranet has been a failure, to be honest. This
is a shame, as we have the resources and the enthusiasm to make this work – both
in IT and as raw ideas from people directly involved with the systems and
processes. For some reason, the link was never made between identifying a
problem and recording it in a specially created area. This is not to say that
capturing ideas was a complete failure. Ideas on how to improve some smaller
systems have been listened to and improved, but this tended to be on a more
one-to-one level; that is developer-to-stakeholder rather than, as perhaps we
had hoped, IT-to-company. What has been a success, as shown by the current
project we are involved in, is an improved understanding of roles and domains of
knowledge between the technically-minded and standards-aware IT and artistic and creative Marketing. While IT have made changes in their approach to their
colleagues, I feel the bigger effort has been made by Marketing and the improved
relationship is paying off.

I look forward to the next project ….