Sunday, 31 July 2011

All change!

It’s been a funny old week. IBM offering apps for mobile phones instead of sticking strictly to big iron, and Google buying a slew of IBM patents. When the British surrendered to the rebel American army at the end of the war of independence they played a tune called the world turned upside down. That’s what this week feels like.

It seems that Windows 7 smartphones aren’t really up there with the top three yet, because IBM has only made its app available to the app store for iTunes, Android, and the teenagers’ favourite, Blackberry. For IBM, the idea is to make their social networking platform, IBM Connections, available on smartphones – like Facebook and Twitter (and other social media). To be fair, you could access IBM Connections through a browser on these phones, but now there’s a proper app. Obviously there are different processes for making the app available for the different organizations, which will affect how quickly it will be before you can download the app on your device. The good news is that the app is free.

So what is IBM Connections? According to IBM’s Web site: “IBM Connections is social software for business that lets you access everyone in your professional network, including your colleagues, customers, and partners.

“The latest capabilities in IBM Connections, such as Moderation, Ideation Blogs, and the Media Gallery, enable you to embrace networks of people who are engaged and to work in transparent and nimble ways to create business value.”

It seems that the ideation and media gallery modules are natively available in the mobile apps. This allows users to vote on ideas, comment on ideas, and manage the ideas from their phones. In addition, users can take photos and upload them – so they can be shared immediately.

Built in to IBM Connections 3 are ‘moderation’, ideation blog’ and ‘media widget gallery’. Moderation allows users to review content in blogs, forums, and files before lications and approve, reject, or delete as appropriate. There’s a template available for each community to generate ideas, gather feedback, and come to consensus on the best ideas. This is the ideation blog. The media gallery widget is obviously somehwere to upload and share photos and videos.

Meanwhile, Google has confirmed that it bought 1,029 patents from IBM. These include SEO, servers, routers, relational databases, object-oriented programming, and fabrication and architecture of memory and microprocessing chips. It seems that no-one is revealing how much was paid.

Why would they buy so many patents? Perhaps to avoid litigation because they are using someone else’s idea. Or perhaps it’s to stop a rival company using someone else’s idea. It may be little more than synchonicity that Google has recently launched it’s Facebook-like Google plus. The more cynical among you may suggest they are looking for a way to stop Facebook doing something as yet undisclosed that will affect their business! Or it could be to do with the Android versus iPhone smartphone war. Or maybe its because Oracle is seeking billions of dollars in damages and royalties because of Google’s use of Java in Android phones. Or maybe, late in the day, Google has realized how important patents are in the modern business world.

Interestingly, Google was after 6,000 patents from Nortel Networks, but lost out to a consotium including Apple and Microsoft, who paid $4.5 billion for the patents. This could be the year of patent sales.

So there you have it. A week when the king of big iron turns up on the smallest of smart devices, and when Google gets itself a stash of patents. What will next week bring?

Sunday, 24 July 2011

IMS – getting better all the time

IBM’s IMS (Information Management System) has been around since 1968 and originated as a bill-of-materials program for NASA’s Apollo programme. So why are so many Fortune 500 companies still using it today? Isn’t it “your dad’s technology” and completely inadequate for today’s tasks? Well, the answer is a resounding NO!

IMS effectively comes in two parts – there’s the Transaction Manager (TM) part and the Data Base (DB) part. The transaction manager is like CICS in that users sit at screens (which could be connecting using browsers on laptops) and access and modify data in the database. Under the bonnet, a message queueing system ensures that transactions don’t get lost and can be backed out in the case of an error. All pretty much standard stuff. The more interesting part is the database. This is the reason that IMS is in use at banks and insurance companies (and many other organizations). The database structure allows data to be retrieved speedily from what are often very large databases. It’s this incredible speed that organizations value. In addition, they know that the information retrieved will be correct and up-to-date.

So let’s have a look at the database component – and this is where you realize that you’re not using technology that was invented in the 1960s! The databases available and their structure have been updated over the years to ensure that users are still able to get to their data faster than using other technologies. IMS databases store data hierarchically. This is like a pyramid design where higher layers give access to lower layers by using data stored in fields. This is quite different from DB2 and other databases that connect data in a relational manner. Going back to our pyramid, we have segments of data stored at each level and each segment contains these fields I mentioned above.

There are four types of database that can be used with IMS, although two of them are very similar and often grouped together. The original database type available was (and still is) the “full function” database. This uses DLI calls to access the data and makes use of both primary and secondary indexes. The access methods used to get to the data can be – and there’s quite a long list here – HDAM (Hierarchical Direct Access Method), HIDAM (Hierarchical Indexed Direct), SHISAM (Simple Hierarchical Indexed Sequential), HSAM (Hierarchical Sequential), and HISAM (Hierarchical Indexed Sequential). Typically, sites tend to use HDAM and HIDAM. The data is actually stored using VSAM (Virtual Storage Access Method) or OSAM (Overflow Sequential), which only exists for IMS files. OSAM improves performance by optimizing the I/O channel program for IMS.

The next two types of database are the “fast path” databases, and these use VSAM. These can be used in situations where the transaction rates are high – and that’s why IMS is so successful in larger organizations. These two database types are called DEDBs (Data Entry DataBases) and MSDBs (Main Storage DataBases). What distinguishes them from full function databases is that there is no indexing. Many sites have replaced their MSDBs with VSO (Virtual Storage Option) DEDBs.

The most recent type of IMS database is the HALDB (High-Availability Large DataBase). They were first introduced with IMS 7 in order to handle very large amounts of data in the database. With V9 of IMS came the ability to reorganize the data online and so not need to take a database offline to reorganize (optimize) it – which, of course, increased the availability of the data.

Many separate databases can be grouped together to produce a single logical database that will be used by the transactions running on the system.

As you can see, since those days of moon rockets, IBM has beefed up IMS databases so that they can handle extremely high transaction rates. Then it increased the amount of data that can be stored in the database itself. And finally IBM increased the availability of that database to produce a product that is trusted and relied upon by organizations that need to be able to ensure the integrity and availability of their data.

If you’re interested in IMS, you’ll be interested in the Virtual IMS user group. This is a free-to-join vendor-independent user group that holds virtual meetings every other month and always includes a guest speaker talking about an IMS-related technical topic. You can find out more at

Sunday, 17 July 2011

Command economies, decentralization, and the z114

It comes and goes. It’s like a pendulum swinging in one direction,  running out of steam, and then swinging in the completely opposite direction. And it applies to countries, economies, and the way people view computing. Let me explain...

During the 1970s, computing, where it existed, was very much a centralized affair. The gods of the mainframe pretty much controlled what anyone was able to do. It was like Stalinist Russia. Everything came out of the centre. You didn’t get it, unless someone at the hub of things deemed it necessary for you to have it.

Currently in the UK, we have the opposite approach in terms of our model of how things should work. Quite logically, you might think, if you live in a rural area with rolling fields full of wheat or livestock, your concerns are completely different from those of someone living in a post-industrial run-down urban area. Of course, this localism easily lends itself to the criticism of postcode lottery. Anyway, we have little islands of individuality separate from each other. Unfortunately, the reality is that political areas tend to include more than a monoculture of just rural or just urban populations. Plus you have different needs for different age groups – you can see where this idea falls down when applied to the real world, but hang on to the little islands metaphor.

Now let’s turn time back to 1989. We find the Berlin wall coming down and the whole centralized power base of the USSR and it’s Warsaw Pack allies crumbling. In the world of computing, we find the balance of opinion has moved right away from mainframes. In the early 90s, their death was confidently predicted. In its place we had millions of underpowered PCs running DOS-based operating systems. And as the 90s progressed we saw the triumph of Windows and Microsoft. We also saw that antithesis of centralization, Open Source software. Unix started life in 1969, and Linus Torvalds’ Linux arrived in 1991. Even IBM, which had developed and standardized the PC in the early 1980s, was working on the development of other platforms. 1988 gave us the AS/400 – now the IBM System i and which now runs on the POWER platform. The RS/6000, running a Unix variant called AIX, arrived in the 1990s and also now run on POWER hardware.

So, having been empowered to make their own decisions and choices of hardware and software, what have users done since then? Well, in the PC world, they go for big servers that are virtualized in order to benefit from the control that gives them. It makes back-ups and business continuity easier.

And now, here we are in 2011 and IBM announces a Business Class (basically not a top-end machine, more one for the everyman mainframe user) zEnterprise – the z114. It’s gone back to being a centralized piece of hardware because not only is it a mainframe, it’s a POWER7 box, and it has x86 blades. So that gives users a smaller footprint, less power consumption, and control of everything using the IBM zEnterprise Unified Resource Manager and the IBM zEnterprise BladeCenter Extension (zBX). The POWER7 blades mean that AS/400 and RS/6000-heritage users have a home. And the x86 blades not only run Linux x86 applications unchanged, but, by the end of the year, are expected to run Windows applications too.

The culture shock at many sites will come when the distributed applications teams (and they may have many different names) discover that all the things they’ve been planning to achieve (virtualized desktops, virtualized servers, etc) are just part of the techniques that the mainframe people take for granted. And the mainframers are going to have to understand that for many of the people in the other teams, it’s in many ways still about 1992 in terms of business recovery times etc. But when the teams do come together, the synergy is going to be very beneficial for the organization that allow it to happen.

This new mainframe, unusually, comes with a published price tag – $75,000. As part of the package you get the IBM Smart Analytics Optimizer to analyse data faster at a lower cost per transaction, and the IBM WebSphere DataPower XI50 for integrating Web-based workloads. The new hardware runs the latest version of z/OS – 1.13. You get 3.8GHz processors (the zEnterprise 196 uses  5.3GHz processors), and you can configure up to 14 of them with 10 specialty processors – zIIP, zAAP, and IFL.

The pendulum has now swung completely back. We have a single box capable of providing all the different computing needs of an organization.

Sunday, 10 July 2011

He CICS, he scores!

Sadly, as a title, it only works if you’re in the parts of the world where CICS is pronounced ‘kicks’ and where people play football (and getting the ball in the back of the net is very important!). But wherever you are, I want to talk about IBM’s transaction processing system whose full title is Customer Information Control System and which runs under z/OS and z/VSE.

Basically, CICS allows users to sit at their screen and run transactions against data. It’s reckoned that about 90% of the Fortune 500 companies use CICS for banking, insurance, and various industrial systems. CICS is incredibly resilient with users potentially logging in through browsers, and the application programs they use being written in a wide variety of programming languages. The most recent version is CICS TS 4.2.

CICS first appeared in July 1969 – the year a man first walked on the moon and films such as Midnight Cowboy, Butch Cassidy and the Sundance Kid, and True Grit were nominated for Oscars. The DFH prefix for CICS messages has been apocryphally attributed to stand for the Denver Foot Hills. Development of CICS has been at the Hursley UK site since 1974.

CICS programs were pseudo-conversational – which means that they appeared as if they were conversational, while actually not being. This design meant that valuable resources were not locked waiting for a user to respond to a message. In fact coding to maximize what could be done while using the minimum amount of resources was a trick that COBOL programmers were forced to learn. Programs were multi-threaded, which meant one copy of the code could be used by more than one transaction.

System calls to CICS (eg reading a record) originally required the use of a macro call – hence the name macro-level CICS. During the 1980s we got command-level CICS. Command-level-only CICS came in the 1990s and support for macro-level application programs went.

In terms of programming languages, early users had COBOL and PL/I, and, of course, Assembler. More recently, we’ve seen Enterprise Java Beans (EJB). CICS transactions can now be invoked using an HTTP request, so CICS transactions can act as servers in a POX or REST conversation. JCICS classes allow CICS services  to be called using Java. CICS programs can be Web service providers or requesters.

The new CICS Explorer Eclipse-based graphical tooling interface for CICS provides a modern-looking management interface to CICS.

If you are interested in finding out more about CICS, you’ll be interested in the Virtual CICS user group at You’ll also be very interested to know that there’s a user group meeting on Tuesday 12 July at 10:30 CDT. The meeting uses Citrix GoToMeeting so you don’t need to leave your desk, and will include a presentation by Jeff Geminder, who’s a Principal Consultant with CA. The title of the presentation is: Cross-enterprise application performance monitoring and CICS-specific drill-down: approaches to finding the performance problem needle in the heterogeneous haystack. Jeff says; “In today’s complex multi-platform world, how can businesses stay ahead of the curve by reducing outages and minimizing downtime? Specifically, how can we tell whether CICS is or is not the culprit. In effect how can we find that needle in the heterogeneous haystack and get the right people in the right place at the right time.”

To find out more and to get details about how to register for the webinar, go to

Saturday, 2 July 2011

Where do the tablets go?

So, your organization has a mainframe – had one for years – and everything is nicely locked down. You can recover almost up to the minute the system or subsystem crashed (which it hardly ever does), and you’ve got people who seem to know, almost by instinct these days, when something isn’t performing quite right.

On top of that, you’ve got another layer of IT. People who use laptops with Windows and/or people who use Linux, and possibly bits or Solaris dotted around. These people have more interesting lives. They have to fight to get the best performance. Their back-up strategy is good if they can recover to last night! They probably still insist on people using XP as their Windows operating system because Vista was no good and it’s a bit of a jump to Windows 7. Plus they’re probably coming to the end of a virtualization project to reduce the number of server boxes they’ve got lying around. Parhaps they’re installing Citrix to virtualize desktops, or SharePoint to produce an intranet and join up all the separate islands of computing.

Plus you’ve got remote users, who are logging in over somebody else’s wifi. Or they might be using the 3G network on their smartphone. It’s your fault, of course, because you spent so long changing your CICS and IMS applications so they could be used in a Service-Oriented Architecture (SOA) environment. But, I guess you have strategies in place to secure the connection, and secure what applications they can run, and what data they can see.
In fact, you’re probably convincing senior managers in your organization that it really was their idea all along to combine the strengths of mainframe computing with the flexibility of distributed systems. What your organization needs is a nice z196 mainframe – perhaps one of the planned-but-not-quite-announced Business Class (BC) machines.

For those of you who’ve spent the past year on Mars, the z196 brings together the latest mainframe technology with POWER7 and x86 IBM blade systems, giving potential users z/OS, AIX, Linux, and (coming soon) Windows, all on the one box. At this stage, I should point out that there are very strong arguments for going to zLinux. It’s been around for 10 years now, and is just becoming an overnight success – as they say.

So, there you are thinking that you can use your mainframe experience and expertise to tidy up all the other computing areas in your organization and get them under your control when HR tells you they have supplied everyone on the board of directors with an iPad. Now, you might think this is a good opportunity to bring some of the board into the 21st century, but it creates yet another rip in the secure blanket you've been throwing over the company’s computing infrastructure. Can you set up a security policy for iPads? Well, yes, if they come into a Microsoft server – in the same way you would for Mac users. Can you allow board members to download apps? Or can they have only pre-approved ones? Where do you start building proper security? It’s back to herding cats!

And don’t think I’ve singled out iPads, Androids have similar issues. You can download firewalls and anti-virus software for them, but it’s not the same as RACF!

And it might not just be board members – you may still have road warriors that want the small form factor of a tablet. The issues of theft or forgetfulness compound your security problems.

My suggestion at this stage is to wait for Windows 8 tablets, and hope that the policies laid down by the non-mainframe ITers will apply to them. And by then, Windows will be running on our z196 box. So everyone’s a winner!