Avoiding the Legacy of the Future

Kerrie Holley is a software architect and IBM Fellow. The title of IBM Fellow is not won easily. They are a group that includes a Kyoto Prize winner and five Nobel Prize winners, they have fostered some of the IBM company’s most stunning technical breakthroughs―from the Fortran computing language to the systems that helped put the first man on the moon to the Scanning Tunneling Microscope, the first instrument to image atoms. These are people that are big thinkers and don’t shy away from tackling some of the worlds wicked problems.

Listening to Kerrie give an inspirational talk called New Era of Computing at an IBM event recently I was struck by a comment he made which is exactly the kind of hard question I would expect an IBM Fellow to make. It was:

The challenge we have is to avoid the legacy of the future. How do we avoid applications becoming an impediment to business change?

Estimates vary, but it is reckoned that most organizations spend between 70% and 80% on maintenance and only 30% to 20% on innovation. When 80% of a companies IT budget is being spent in just keeping the existing systems running then how are they to deploy new capabilities that keep them competitive? That, by any measure, is surely an “impediment to business change”. So, what to do? Here are a few things that might help avoid the legacy of the future and show how we as architects can play our part in addressing the challenge posed in Kerrie’s question.

  1. Avoid (or reduce) technical debt. Technical debt is what you get when you release not-quite-right code out into the world. Every minute spent on not-quite-right code counts as interest on that debt. Entire engineering organizations can be brought to a stand-still under the debt load of an error-prone deployment. Reducing the amount of technical debt clearly reduces the amount of money you have to spend on finding and patching buggy code. Included here is code that is “buggy” because it is not doing what was intended of it. The more you can do to ensure “right-first-time” deployments the lower your maintenance costs and the more of your budget you’ll have to spend on innovation rather than maintenance. Agile is one tried and tested approach to ensuring better, less buggy code that meets the original requirements but traditionally agile has only focused on a part of the software delivery lifecycle, the development part. DevOps uses the best of the agile approach but extends that into operations. DevOps works by engaging and aligning all participants in the software delivery lifecycle — business teams; architects, developers, and testers; and IT operations and production — around a single, shared goal: sustained innovation, fueled by continuous delivery and shaped by continuous feedback.
  2. Focus on your differentiators. It’s tempting for CIOs and CTOs to think all of the technology they use is somehow going to give them that competitive advantage and must therefore be bespoke or at least highly customised packages. This means more effort in supporting those systems once they are deployed. Better is to focus on those aspects of the business’ IT which truly give real business advantage and focus IT budget on those. For the rest use COTS packages or put as much as possible into the cloud and standardise as much as possible. One of the implications of standardisation is that your business needs to change to match the systems you use rather than the other way around. This can often be a hard pill for a business to swallow as they think their processes are unique. Rarely is this the case however so recognising this and adopting standard processes is a good way of freeing up IT time and budget to focus on stuff that really is novel.
  3. Adopt open standards and componentisation. Large monolithic packages which purport to do everything, with appropriate levels of customisation, are not only expensive to build in the first place are likely to be more expensive to run as they cannot easily be updated in a piecemeal fashion. If you want to upgrade the user interface or open up the package to different user channels it may be difficult if interfaces are not published or packages themselves do not have replaceable parts. Very often you may have to replace the whole package or wait for the vendor to come up with the updates. Building applications from a mix of COTS and bespoke components and services which talk through an open API allows more of a mix and match approach to procuring and operating business systems. It also makes it easier to retire services that are no longer required or used. The term API economy is usually used to refer to how a business can expose its business functions (as APIs) to external parties however there is no reason why an internal API economy should not exist. This allows for the ability to quickly subscribe to or unsubscribe to business functionality making business more agile by driving a healthy competition for business function.

Businesses will always need to devote some portion of their IT budget to “keeping the lights on” however there is no reason why, with the adoption of one of more of these practices, the split between maintenance and innovation budgets should not be a more 50:50 one than the current highly imbalanced 70:30 or worse!

Architect Salary Survey

The first ever architecture specific salary survey has just been published in the UK by FMC Technology. In total over 1000 architects responded to the survey. The report looks at architect roles in six main areas:

  • Architecture Management
  • Enterprise Architecture
  • Business Architecture
  • Information Architecture
  • Application Architecture
  • Technology Architecture

It also looks at pay rises (in 2013), regional and industry differences as well as motivational factors

The results can be viewed here.

The Art of the Possible

This is an edited version of a talk I recently gave to a client. The full talk used elements of my “Let’s Build a Smarter Planet” presentation which you can find starting here.

The author, entrepreneur, marketer, public speaker and blogger Seth Godin has a wonderful definition for what architects do:

Architects take existing components and assemble them in interesting and important ways.

Software architects today have at their disposal a number of ‘large grain’ components, the elements of which we can assemble in a multitude of “interesting and important” ways to make fundamental changes to the world and truly build a smarter planet. These components are shown in the diagram below.

The authors Robert Scoble and Shel Israel in their book Age of Context describe the coming together of these components (actually their components are mobile, social, data, sensors and location) as a perfect storm comparing them with the forces of nature that occasionally converge to whip up a fierce tropical storm.

Of course, like any technological development, there is a down side to all this. As Scoble and Israel point out in their book:

The more the technology knows about you, the more benefits you will receive. That can leave you with the chilling sensation that big data is watching you…

I’ve taken a look at some of this myself here.

Predicting the future is of course a notoriously tricky business. As the late, great science fiction author Aurtur C. Clarke said:

When a distinguished but elderly scientist states that something is possible, he is almost certainly right. When he states that something is impossible, he is very probably wrong.

The future, even five years hence, is likely to be very different from what it is now and predicting what might be or not be, even that far ahead, is not an exact science. Despite the perils of making predictions such as this IBM Research’s so called 5 in 5 predictions for this year describe five innovations that will change the way we live, from classrooms that learn to cyber guardians, within the next five years. Here are five YouTube videos that describe these innovations. Further information of 5 in 5 can be found here.

  1. The classroom will learn you.
  2. Buying local will beat online.
  3. Doctors will routinely use your DNA to keep you well.
  4. The city will help you live in it.
  5. A digital guardian will protect you online.

We already have the technology to make our planet ‘smarter’. How we use that technology is limited only by our imagination…

Let’s Build a Smarter Planet – Part IV

This is the fourth and final part of the transcript of a lecture I recently gave at the University of Birmingham in the UK.In Part I of this set of four posts I tried to give you a flavour of what IBM is and what it is trying to do to make our planet smarter. In Part II I looked at my role in IBM and in Part III I looked at what kind of attributes IBM looks for in its graduate entrants. In this final part I take a look at what I see as some of the challenges we face in a world of open and ubiquitous data where potentially anyone can know anything about us and what implications that has on people who design systems that allow that to happen.

So let’s begin with another apocryphal tale…ec12d-whosewatchingyou

Target is the second largest (behind Walmart) discount retail store in America. Using advanced analytics software one of Target’s data analysts identified 25 products that when purchased together indicate a women is likely to be pregnant. The value of this information was that Target could send coupons to the pregnant woman at an expensive and habit-forming period of her life.

In early 2012 a man walked into a Target store outside Minneapolis and demanded to see the manager. He was clutching coupons that had been sent to his daughter, and he was angry, according to an employee who participated in the conversation. “My daughter got this in the mail!” he said. “She’s still in high school, and you’re sending her coupons for baby clothes and cribs? Are you trying to encourage her to get pregnant?”

The manager didn’t have any idea what the man was talking about. He looked at the mailer. Sure enough, it was addressed to the man’s daughter and contained advertisements for maternity clothing, nursery furniture and pictures of smiling infants. The manager apologized and then called a few days later to apologize again.

On the phone, though, the father was somewhat abashed. “I had a talk with my daughter,” he said. “It turns out there’s been some activities in my house I haven’t been completely aware of. She’s due in August. I owe you an apology.”fd140-thisisforeveryone

Two of the greatest inventions of our time are the internet and the mobile phone. When Tim Berners-Lee appeared from beneath the semi-detached house that lifted up from the ground of the Olympic stadium during the London 2012 opening ceremony and the words “this is for everyone” flashed up around the edge of the stadium there can surely be little doubt that he had earned his place there. However as with any technology there is a downside as well as an upside. A technology that gives anyone, anywhere access to anything they choose has to be treated with great care and responsibility (as Spiderman’s uncle said, “with great power comes great responsibility”). The data analyst at Target was only trying to improve his companies profits by identifying potential new consumers of its baby products. Inadvertently however he was uncovering information that previously would have been kept very private and only known to a few people. What should companies do in balancing a persons right to privacy with a companies right to identify new customers?

There is an interesting book out at the moment called Age of Context in which the authors examine the combined effects of five technological ‘forces’ that they see as coming together to form a ‘perfect storm’ that they believe are going to change forever our world. These five forces are mobile, social media, (big) data, sensors and location aware services. As the authors state:

The more the technology knows about you, the more benefits you will receive. That can leave you with the chilling sensation that big data is watching you…

In the Internet of Things paradigm, data is gold. However, making that data available relies on a ‘contract’ between suppliers (usually large corporations) and consumers (usually members of the public). Corporations provide a free or nominally-priced service in exchange for a consumer’s personal data. This data is either sold to advertisers or used to develop further products or services useful to consumers. Third-party applications, which build off the core service, poach customers (and related customer data) from such applications. For established networks and large corporations, this can be detrimental practice because such applications eventually poach their customers. In such a scenario, large corporations need to balance their approach to open source with commercial considerations.

Companies know that there is a difficult balancing act between doing what is commercially advantageous and doing what is ethically the right. As the saying goes – a reputation takes years to be built but can be destroyed in a matter of minutes.

IBM has an organisation within it called the Academy of Technology (AoT) which has as its membership around 1000 IBM’ers from its technical community. The job of the AoT is to focus on “uncharted business and technical opportunities” that help to “facilitate IBM’s technical development” as well as “more tightly integrate the company’s business and technical strategy”. As an example of the way IBM concerns itself with issues highlighted by the story about Target one of the studies the academy looked at recently was into the ethics of big data and how it should approach problems we have mentioned here. Out of that study came a recommendation for a framework the company should follow in pursuing such activities.

This ethical framework is articulated as a series of questions that should be asked when embarking on a new or challenging business venture.

  1. What do we want to do?
  2. What does the technology allow us to do?
  3. What is legally allowable?
  4. What is ethically allowable?
  5. What does the competition do?
  6. What should we do?

As an example of this consider the insurance industry.

  • The Insurance Industry provides a service to society by enabling groups of people to pool risk and protect themselves against catastrophic loss.
  • There is a duty to ensure that claims are legitimate.
  • More information could enable groups with lower risk factors to reduce their cost basis but those in higher risk areas would need to increase theirs.
  • Taken to the extreme, individuals may no longer be able to buy insurance – e.g. using genetic information to determine medical insurance premium.

How far should we take using technology to support this extreme case? Whilst it may not be breaking any laws to raise someones insurance premium to a level where they cannot afford it, is it ethically the right thing to do?Make no mistake the challenges we face in making our planet smarter through the proper and considered use of information technology are considerable. We need to address questions such as how do we build the systems we need, where does the skilled and creative workforce come from that can do this and how do we approach problems in new and innovative ways whilst at the same time doing what is legally and ethically right.

The next part is up to you…

Thank you for your time this afternoon. I hope I have given you a little more insight into the type of company IBM is, how and why it is trying to make the planet smarter and what you might do to help if you choose to join us. You can find more information about IBM and its graduate scheme here and you can find me on Twitter and Linkedin if you’d like to continue the conversation (and I’d love it if you did).

Thank you!

Let’s Build a Smarter Planet – Part III

This is the third part of the transcript of a lecture I recently gave at the University of Birmingham in the UK.In Part I of this set of four posts I tried to give you a flavour of what IBM is and what it is trying to do to make our planet smarter.

In Part II I looked at my role in IBM and here I look at what kind of attributes IBM looks for in its graduate entrants.When I found out I was going to be doing this lecture one of the things I realised was that there was a danger I would appear too remote and disconnected from where you are today. After all, it was nearly 35 years ago when I was sitting where you are and I suspect that the thought of listening to an old timer like me going on for an hour was not very enticing. This being the case I asked a few of my (much) younger colleagues, graduate entrants, what their thoughts were on IBM and why they had joined.

One person in particular, a young zoology graduate from Cardiff University, whom I work with at the moment said that as well as the good R&D record IBM had and it’s whole smarter planet agenda the reason she joined IBM was that she:

“Wanted to be part of an organisation that cared about the world and was making an effort to change things for the better. With a fast growing and aging population we need to prepare cities, towns, hospitals, transport systems etc to be able to cope with the change. IBM seemed to understand that and seemed to be involved in trying to work out what options there are.”

I hope this shows you that IBM’s smarter planet agenda is not just marketing hype but is also about genuinely trying to make a difference to the way the world works through the intelligent application of information technology.  In order to do that it needs people who can solve some of the wicked problems there are out in the world today as well as challenge conventional wisdom. Here’s another story to show this…

In the early 70’s stores needed a quick way of entering product data into their systems so they knew what they had in stock. There were a number of competing standards for what were referred to as Universal Product Codes or UPC’s. An IBM engineer was asked to write a technical paper in support of a spherical code from the company RCA to be presented to executives to get the go ahead to support that standard and develop scanning hardware. The engineer however investigated the feasibility of this and realised it would not work. The error rate on scanning this pattern was too high. He went against what his management  asked him to do and went for this format instead…c9055-barcode

Something very familiar to you all I’m sure. The point being that even then anybody in IBM could challenge their managers and be listened to provided they had the right evidence to back it up. Challenging conventional wisdom is something that is and always has been valued in this company.

Today we can challenge conventional wisdom and question things more easily than ever. Thanks to technology anyone can get to anyone.  There are no boundaries, no real hierarchies, in a world where we are all just a few Facebook friends or LinkedIn connections away from nearly everyone. You no longer have to worry about where you sit in a hierarchy, instead you just need to concentrate on what your contribution is going to be (how are you going to make that dent in the universe).

As the blogger Hugh MacLeod says:

“So your job title and job description is not what matters anymore.  A smart recruiter is not going to ask you what your title is.  They are going to ask you what have you actually done lately.  What have you accomplished? More importantly what do you want to do? Who and what will you challenge?”

87f10-stopworryingHere’s a set of characteristics that the most successful people in IBM share…
  • Adaptability. How do you cope with changing demands and stress? Are you flexible? Have you successfully completed several projects with competing deadlines?
  • Communication. Do you present information clearly, precisely and succinctly? Adapt the way you communicate to your audience? And listen to others?
  • Client focus. Can you see a situation from a client’s viewpoint, whether that’s colleagues or customers? Can you anticipate their needs?
  • Creative problem solving. Do you use ingenuity, supported by logical methods and analysis, to propose solutions? Can you anticipate problems? Do you put forward innovative ideas?
  • Drive. Will you proactively learn new skills – even if they’re beyond the scope of your current job? Will you put in the time and energy needed to achieve results?
  • Passion for IBM. Do you know what IBM does and what our most recent achievements are? Are you up to speed with the latest trends in our industry? What are the biggest challenges we face? You’ll need the facts at your fingertips and the enthusiasm to match.
  • Teamwork. How do you work with others to achieve shared goals? Do you easily build relationships with others? Are you a team player?
  • Taking ownership. Do you take responsibility for tasks/decisions? And implement decisions with speed? Can you show when you’ve worked to correct your mistakes?

You can find more detail on what IBM is looking for in its graduates and how to apply if you are interested by going here.

Part IV of this talk is here.

Let’s Build a Smarter Planet – Part II

This is the second part of the transcript of a lecture I recently gave at the University of Birmingham in the UK.

In Part I of this set of four posts I tried to give you a flavour of what IBM is and what it is trying to do to make our planet smarter. So I hear you ask, what do you actually do towards this effort? Well I’ll tell you what my job entails but first here’s an apocryphal tale. During my last year at this university (1979) I took a module in astrophysics. One day I was sitting with my tutor and he somewhat randomly asked me how much data I thought the world would ever need? Bear in mind that at this time the web, in the form that Tim Berners-Lee envisioned it, was still a good ten years away and Facebook, Twitter etc even further off than that. Rather randomly I thought that probably the most data you would expect to store would be the personal details about every person on the planet (so basic personal details plus financial details etc) and maybe the same again for companies, government departments and other institutions. Say 100 KB of data per person and 1 GB per institution.

So, by my reckoning assuming there were around about 5 billion people on the planet back in 1980 and 1 billion institutions that would equate to 1 billion x 1 GB plus 5 billion x 100 KB or 1.5 TB of storage and that would have been all we needed, ever!! How wrong can you be*?2d2fe-worldofdataNow, incredibly we create 2.5 quintillion (that’s ‘1’ followed by 18 zeroes) bytes of data every day. That’s 170 million times more data created every day than I thought would ever be needed back in 1980! There can be no doubt we live in a world that is awash with data. Some commentators have said that data is the new oil and there to be exploited and commercialised in an endless number of ways. How do we make sense of this sea of data?

So why am I telling you all of this and what has it got to do with what I do? Here’s what I believe, as Nancy Duarte the American writer and entrepreneur says:

Technology is meaningless until you understand how humans use it and benefit from it.

My mistake back in 1980 was not understanding how humans would embrace technology over the coming decades and use it in ways then completely unimaginable. I was only thinking in terms of my 1980’s ‘box’ where data was largely text based and restricted to what computers were then doing with information, not what they could do with it.

And that’s the key thing about the role of a software architect, at least in IBM. It’s about helping people understand technology and help them use it in new and interesting ways that is beneficial to them, and hopefully the planet. It’s about how to connect people with information.

Here’s the formal definition of an architect from the Institute of Electric and Electronic Engineers.

[An architect is] the person, team or organisation responsible for systems architecture.

No offence to them but pretty boring and unclear I’d say.

Here’s what Rob Daly thinks an architect is.

ar-chi-tect  \är-ke-,tekt\  n. One who believes that conception comes before erection.

He is of course right. One of the things an architect needs to ensure is that you don’t rush to the wrong decision about how to build something. A great many projects have failed because they have been ill-conceived or planned. These can have disastrous consequences as seems to be the case with President Obamas new healthcare insurance web site.

So what do architects really do? A couple of years ago myself and a colleague from IBM wrote a book on this very subject and here is a list of the capabilities we believe architects need.

  • The architect is a technical leader: As well as having technical skills, the architect exhibits leadership qualities. Leadership can be characterized in terms of both position in the organization, and also in terms of the qualities that the architect exhibits.
  • The architect role may be fulfilled by a team: There is a difference between a role and a person. One person may fulfill many roles. Given the requirement for a very broad set of skills in an architect, it is often the case that the architect role is fulfilled by more than one person.
  • The architect understands the software development process: Most architects will have been a developer at some point and should have a good appreciation of the need to define and endorse best practices used on the project. More specifically, the architect should have an appreciation of the software development process, since it is this process that ensures that all of the members of the team work in a coordinated manner.
  • The architect has knowledge of the business domain: As well as having a grasp of software development, it is also highly desirable (some would say essential) for the architect to have an understanding of the business domain so that they can act as an intermediary between stakeholders and users who understand the business, and the development team who may be more familiar with technology.
  • The architect has technology knowledge: Certain aspects of architecting clearly require a knowledge of technology and an architect should therefore have a certain level of technology skills. However, they do not need to be technology experts as such and need only be concerned with the significant elements of a technology, and not the detail.
  • The architect has design skills: Although architecting is not confined solely to design (as we have seen, the architect is also involved in requirements tasks, for example), it is clearly the core aspect of architecting. The architecture embodies key design decisions, so the architect should possess strong design skills.
  • The architect has programming skills: The developers on the project represent one of the most important groups that the architect must interact with. After all, it is their work products that ultimately deliver the working executable software. The communication between the architect and the developers can only be effective if the architect is appreciative of the developers’ work. Therefore, the architect should have a certain level of programming skills, even if they do not necessarily write code on the project, and those skills need to be kept up to date with the technologies being used.
  • The architect is a good communicator: Of all of the “soft skills” associated with the architect, communication is the most important. There are a number of dimensions to effective communication, and the architect needs to be proficient in all of them. Specifically, the architect should have effective verbal, written and presentation skills. Also, the communication should be two-way. The architect should be a good listener and observer also.
  • The architect makes decisions: An architect that is unable to make decisions in an environment where much is unknown, where there is insufficient time to explore all alternatives, and where there is pressure to deliver, is unlikely to survive. Unfortunately, such environments are often the norm rather than the exception, and successful architects acknowledge the situation, rather than trying to change it. Even though the architect may consult others when making decisions and foster an environment where others are included in the decision-making, it is still their responsibility to make the appropriate decisions and these are not always proven to be right.
  • The architect is aware of organizational politics: Successful architects are not only concerned with technology. They are also politically astute, and are conscious of where the power in an organization resides. This knowledge is used to ensure that the right people are communicated with, and that support for their project is aired in the right circles. To ignore organizational politics is, quite simply, naïve.
  • The architect is a negotiator: Given the many dimensions of architecting, the architect interacts with many stakeholders. Some of these interactions require negotiation skills. For example, a particular focus for the architect is to minimize risk as early as possible in the project, since this has a direct correspondence to the time it takes to stabilize the architecture.

One of the things I think you’ll notice from this list is that actually very few of them are to do with technology. Sure, you need to understand and keep up with technology but you also need these other attributes as well.

Part III of this talk is here.

*As an interesting aside the cost of 1GB of storage in 1980 was $193,000, it’s now around $0.05.

Let’s Build a Smarter Planet – Part I

This is the abridged transcript of a talk I gave at the University of Birmingham earlier this month. The talk was aimed at graduates and tried to explain why working at a company like IBM is about more than just IT. Even though it’s abridged, with imbedded videos and graphics it’s still pretty long so I’ve split it into four parts corresponding to the sections of the talk which were:

  1. What is IBM (and why is it building a smarter planet)?
  2. What do I do at IBM?
  3. What might you do at IBM?
  4. Why does IBM need people like you?

Here’s Part I.

Hello everyone, my name is Peter Cripps. I work for IBM as a software architect and I’m here today to talk to you about how IBM is building a smarter planet, the role we play as IBM’ers in doing that and what opportunities there are for people like you to become involved.

Before we get going let me ask you a few questions:

  • Who’s used any IBM software in the last week?
  • How about this year?
  • How about ever?

Okay, that’s sort of what I expected the answer would be. I ask this question a lot when I speak to people like you and I always get a similar response. So why is it I wonder that a company like IBM, actually the fifth largest information technology company by revenue in 2012, ahead of Microsoft, Google and Dell and the second largest software company in the world, one behind Microsoft, makes products that no one thinks they use?

Well, let me tell you; I can almost guarantee that most, if not all of you, will have used some IBM software over the past month or so. If you have drawn money out from a bank, browsed and bought something from an internet store, bought a plane ticket or interacted with one of the many government departments which are now online you have unknowingly used some IBM software.

IBM software might not be the sexy stuff you use on you mobile phone or laptop (though we do some of that as well) but is actually part of the infrastructure of many of the worlds IT systems. It’s like the plumbing in your house, you don’t necessarily see it but you surely would miss it if it wasn’t there.
So, by the end of this talk, I hope you’ll understand a bit more about what IBM does and that I will have piqued your interest a little to maybe consider IBM when you are looking for a job. One area I’d particularly like to explore is how IBM has a “mission” to build a smarter planet. So, let’s start with this video.

Now, I don’t know if, while you were watching that video, you were reminded of the film Minority Report directed by Steven Spielberg and based on the short story by Philip K Dick written in 1956?

The film’s central theme is the question of free will versus determinism. It examines whether free will can exist if the future is set and known in advance. Other themes include the role of preventive government in protecting its citizenry, the role of media in a future state where electronic advancements make its presence nearly boundless.

There can be little doubt that computers, and more specifically software, is now so intertwined in our lives our planet could not exist in its present form without it. Here’s a nice quote from Grady Booch, Chief Scientist and IBM Fellow, which I really like:

Software is the invisible thread and hardware is the loom on which computing weaves its fabric, a fabric that we have now draped across all of life.

This of course is for better or worse which is the fourth theme I’d like to cover with you today because I believe it’s an incredibly important one which will probably affect you more than me as you go through your working life.

I’d like to start by talking about what we mean by a smarter planet and how IBM is going about building one. First of all though let me give you a potted history of IBM just so you have a bit of background about how it has got to where it is today and why building a smarter planet is so important to it.In 1911 the American entrepreneur Charles Flint who had interests in a number of companies including ship building, munitions and weighing machines bought out Herman Hollerith’s Tabulating Machine Company and merged several of his companies together to form the Computing-Tabulating-Recording Company, or C-T-R, headquartered in New York. By 1914 the company was struggling so Flint hired Thomas Watson Sr (remember that name, it will turn up again a little later) to run the company. Over the following decade, Watson forged the disparate pieces of C-T-R into a unified company with a strong culture. He focused resources on the tabulating machine business, foreseeing that information technology had an ever-expanding future and literally creating the information industry. Watson also began expanding overseas—beyond the UK, Canada and Germany where its products were already sold—taking tiny C-T-R global. By 1924, he renamed C-T-R with the more expansive name of International Business Machines or IBM.

Fast forward to 2011, IBM’s 100th birthday and it is now a $100 billion turnover company with over 400,000 employees worldwide operating in over 170 countries. Today IBM UK has around 20,000 employees, bringing innovative solutions to a diverse client base to help solve some of their toughest business challenges.

In order to provide such innovation to its clients it invests a huge amount in research and development, $75 billion since the turn of the century. Notice that is ‘R’ and ‘D’, not just ‘D’ which is what many companies ascribe to this term. IBM has 12 research labs around the world including a smarter cities lab in Dublin, Ireland.Although IBM is currently the second largest software company in the world software actually makes up less than half of IBM’s revenue. Computer hardware, strangely enough what many people still think IBM as being all about, actually accounts for less than one sixth of IBM’s revenue. Services, a business that IBM didn’t even have when I joined the company in 1987, takes the second largest share!

As further proof of the way IBM seeks to drive innovation in the industry here’s another interesting statistic. It took IBM 53 years to receive it’s first 5000 US patents. It now regularly exceeds that number every year. The way it does that is through the innovation and creativity of its people.

Here are a few of the people you may have heard of and the innovations they introduced.

The above were all recipients of the Turing Prize (along with three other IBM’ers). In addition physicists Gerd K. Binnig and Heinrich Rohrer were awarded a Nobel Prize in Physics in 1986 for the scanning tunneling microscope (STM) which was invented 1981. The invention permitted scientists to obtain previously unseen images of silicon, nickel, oxygen, carbon and other atoms. Shown here is IBM etched in single carbon atoms using the STM.58a6e-ibmstmimageThis is just one of five Nobel prizes IBM has been awarded. IBM Research has grown from a small lab on the campus of a major university to the largest industrial research organisation in the world. A global body of 3000 scientists now collaborates with academics in universities around the globe, at the boundaries of information technology.

Some of IBM’s achievements extend beyond it’s own boundaries. Here are two notable people who have built their own global enterprises based on ideas or innovations from within IBM.f41fb-billandlarry
After negotiations with Digital Research failed, IBM awarded a contract to Bill Gates fledgling Microsoft in November 1980 to provide a version of the CP/M OS, which was set to be used in the upcoming IBM Personal Computer (IBM PC).Larry Ellison founded Oracle in 1977 on the back of the pioneering work done on relational databases by Ted Codd of IBM.
So, that’s a little bit about IBM the company what about the smarter planet it’s trying to build?2f881-smarterplanet

This is the famous picture of earth rising above the moons horizon taken in 1968 by the Apollo 10 astronauts on the last test mission to the moon before the first moon landing 7 months later. Imagine how frustrating that was, to have got so close but not to have actually set foot on the moon?

By the way, whilst talking about the moon and Apollo did you know that IBM was instrumental in getting a man to the moon? Not only in making the computers for the mission control engineers on the ground but also some of the on-board avionics hardware and software as well. But I digress, back to a smarter planet.

When considering what we mean by a smarter planet we talk about it in terms of the so called “three I’s”:

  • Instrumented: We have the ability to measure, sense and see the exact condition of everything. We now have computers and smart sensors pretty much everywhere. Its estimated there are 800 quintillion transistors on the planet (which is around 100 billion for every person alive).
  • Interconnected: People, systems and objects can communicate and interact with each other in entirely new ways.
  • Intelligent: We can respond to changes quickly and accurately, and get better results by predicting and optimizing for future events.

So how does this work in practice? Here’s an example from the field of healthcare. New born babies, some born before 26 weeks, are tethered to a host of medical devices that continuously measure heart rate, respiration and other vitals – that generate minute-by-minute readings of their fragile condition.  Data is coming out of those machines at a rate of a thousand readings per second and yet nurses typically take a single reading every 30 or 60 minutes! Not only that but the data is rarely stored for more than 24 hours meaning that insights into early detection of conditions like sepsis cannot be done. In 2009 IBM instigated a first of a kind (FOAK) system called ‘Artemis’ that  is capable of processing 1256 readings a second it currently receives per patient, and has the potential to provide real-time analysis to help clinicians to predict more quickly potential adverse changes in an infant’s condition.

Here’s another example of a great innovation from IBM which we are just beginning to exploit in new and powerful ways.

IBM’s computer, code-named “Watson” (remember him) leverages leading-edge Question-Answering technology, allowing the computer to process and understand natural language. It incorporates massively parallel analytical capabilities to emulate the human mind’s ability to understand the actual meaning behind words, distinguish between relevant and irrelevant content, and ultimately, demonstrate confidence to deliver precise final answers. In February of 2011, Watson made history by not only being the first computer to compete against humans on the US television quiz show, Jeopardy!, but by achieving a landslide win over prior champions Ken Jennings and Brad Rutter. The questions on this show are full of subtlety, puns and wordplay—the sorts of things that delight humans but choke computers. “What is The Black Death of a Salesman?” is the correct response to the Jeopardy! clue, “Colorful fourteenth century plague that became a hit play by Arthur Miller.”

So what is so clever about a computer winning a quiz show…?

We’re only just at the beginning of what we can do with exploiting all of the data that we are creating. A smarter planet is one that makes sense of all this data to improve all of our lives.

Part II of this talk is here.

What is Architecture? This is Architecture

What is architecture? Here’s a nice video that describes it in a unique way. Architecture from MAYAnMAYA on Vimeo.

Tom Graves says that for him the missing element of the architecture definition is that every structure:

 …implies a story, expresses a story, provides a stage for a story. Architecture is what people do to create structure. Building is how we create structure.  But story is why people do what they do to create structure. Story is that other missing key to architecture. Or, to put it another way: Architecture is the intersection of structure and story.

Like the video says architecture is about distilling out the essence of something, whether it be a building, a software system or, in this case, a cup, and sharing what is unique about it. The sharing is the story behind the architecture. How you tell that story, whether it be in documents, pictures or presentations, is key to the essence of the architecture as well.

What Have Architects Ever Done for Us?

I’ve been thinking about blogging on the topic of what value architects bring to the table in an age of open source software, commoditized hardware and agile development for a while. I’ve finally been spurred into action by re-discovering the famous Monty Python sketch What have the Romans ever done for us? (I often find that thinking of a name for a blog post helps me to formulate the content and structure what I want to say). Here’s the video in case you haven’t seen it.

So, picture the scene…

You are in a meeting with the chief information office (CIO) of a public or private sector enterprise who has been tasked with aligning IT with the new business strategy to “deliver real business value”. The current hot technologies, namely social media, mobile, big data/analytics and cloud, are all being mooted as the thing the organisation needs to enable it to leapfrog the competition and deliver something new and innovative to its customers. The CIO however has been burnt before by an architecture team that seems to spend most of its time discussing new technology, drawing fine looking pictures that adorn their cubicle walls and attending conferences sponsored by vendors. She struggles to see the value these people bring and asks in a frustrated tone “what have architects ever done for us”? What’s your response? Here’s what I think architects should be doing to support the CIO and help her achieve the enterprise’s goals.

  1. Architects bring order from chaos. The world of IT continues to get ever more challenging. Each new architectural paradigm adds more layers of complexity onto an organisations already overstretched IT infrastructure. As more technologies get thrown into this mix, often to solve immediate and pressing business problems but without being a part of any overall strategic vision, IT systems begin to sink into more and more of a chaotic state. One of the roles of an architect is not only to attempt to prevent this happening in the first place (see number 2) but also to describe a future “to-be” state, together with a road map for how to get to this new world. Some will say that this form of enterprise level architecting is fundamentally flawed however I would argue it still has great value provided it is done at the right level of abstraction (not everything is enterprise level) and recognises change will be continuous and true nirvana will never be achieved.
  2. Architects don’t jump on the latest trend and forget what went before. When a new technology comes along it’s sometimes easy to forget that it’s just a new technology. Whilst the impact on end users may be different, the way enterprises go about integrating that technology into their business, still needs to follow tried and tested methods. Remember, don’t throw out the baby with the bath water.
  3. Architects focus on business value rather than latest technology. Technologies come and go, some change the world, some don’t. Unless technology can provide some tangible benefits to the way a business operates it is unlikely to gain a foothold. Architects know that identifying the business value of technology and realising that value through robust solutions built on the technology is what is key. Technology for the sake of technology no longer works (and probably never did).
  4. Architects know how to apply technology to bring innovation.This is subtlety different from 3. This is about not just using technology to provide incremental improvements in the way a business operates but in using technology to provide disruptive innovation that causes a major shift in the way a business operates. Such disruptions often cause some businesses to disappear but at the same time can cause others to be created.
  5. Architects know the importance of “shipping”. According to Steve Jobs “real artists ship”. Delivering something (anything) on time and within budget is one of the great challenges of software development. Time or money (or both) usually run out before anything is delivered.Good architects know the importance of working within the constraints of time and money and work with project managers to ensure shipping takes place on time and within budget.

So there you have it, my take on the value of architects and what you hopefully do for your organisation or clients. Now, if only we could do something about bringing world peace…

More on Architectural Granularity

I published this post on architectural granularity just over two years ago and have been made aware of a research paper published on this topic last year: Weber, M.; Wondrak, C. (2012) Measuring the Influence of Project Characteristics on Optimal Software Project Granularity in: Proceedings of the 20th European Conference on Information Systems (ECIS). The people responsible for the paper are working on a web-based service to make the tools from the project available for software architects. You can find a preview/demo here.