Thursday, September 16, 2010

More on IBM's Sam Palmisano

Lest someone think I am just being an ex-IBM'r saying sour grapes, the experts are also beginning to weigh in on Sam's comments.  Please see Kenneth Hackel's post entitled: "IBM CEO Palmisano Should Look at Facts First"

It seems Mr. Hackel can support his position much better than my personal observations.

My key point in posting is the fact that you can no longer trust IBM to advise you on what direction you should be taking with your IT strategy, hardware, or software selection.  IBM is no longer an industry leader and trusted adviser.  It is just another company trying to sell products and services.  It is also a company that grows via acquisition and no longer innovates via internal product research and development.

Wednesday, September 15, 2010

Who Can you Trust?

I was just read a Wall Street Journal article by Spenser Ante titled "IBM's Chief Thumps H-P" describing how Sam Palmisano recently criticized HP and Mark Hurd. In this WSJ interview, Sam had the unmitigated gall to criticize HP for cutting its investment in development and growing through acquisition.

Well, Sam, when was the last time IBM introduced a new product into the market that they developed in house?  Seems to me that IBM is the number one company in terms of gobbling up anything that looks like a good target for acquisition.  IBM under Sam's leadership of course fumbles, hesitates, and loses the big valuable acquisitions like losing Sun to Oracle and shooting itself in the foot.

IBM software group hasn't developed anything unique or earth shattering in years.  IBM is quick to buy up companies who reach market saturation and hope that their software maintenance revenue will pay the acquisition cost.

IBM sold off the PC division primarily because they could not figure out how to make it profitable.  Lenvo in China doesn't seem to have a problem with that. Could it have been a management problem?  How about selling the Printer division to Hitachi because Sam couldn't make any money with it?  The Japanese could! 

Even in Services, Sam could not grow his own company profitably but had to grow via acquisition. 

IMHO IBM under Sam's and Lou Gerstner's leadership has declined from market leader to market follower and a company dedicated to preserving existing markets at all costs.

In the hardware arena, it has the Power Systems group which was the leader in Unix based machines (a declining market).  With Oracle's acquisition of Sun Microsystems, IBM will lose a huge market share of its Power Systems market to Oracle who will bundle its ERP, HR, and CRM software on Sun machines that used to be IBM machines.  Oracle was IBM's biggest business partner and is now its biggest competitor.  Mark Hurd will most definitely have the last laugh.

While Sam continues to invest in R&D he has his head in a cloud and IBM Research hasn't produced a viable money making product in years! 

Under Sam's and his predecessor, Lou Gerstner's leadership they have successfully turned a customer centric business solutions focused company into just another manufacturing company with services.  IBM no longer provides solutions, it just sells products. Hmmm?  Sounds like Nabisco... 

I'm also curious about why the media hasn't picked up on the outsourcing of over 85,000 jobs to China and India from the US alone, not to mention jobs lost in Canada and Europe. 

While Sam in his WSJ interview tells WSJ that he has no plans to retire, I sure hope for IBM's sake that his board of directors has other plans!  This man is a total and complete disaster!  Oh yeah, he does deliver short term golden ages each quarter, but he is most definitely killing the golden goose.

I often wondered if Sam P was a real person or just an avatar put out in public while some computer in Armonk actually ran the company.  I know that when I went to work for IBM, I interacted with a personal computer.  I was paid by computer, I got all my reviews by computer, in fact virtually every aspect of my job involved interacting with IBM management computer systems.

Is Sam real? 

Other than being an interesting story, the real issue is who can a business executive trust when it comes to IT products and strategy today?  I think it is perfectly clear that you can no longer trust your vendors.

There was a time not that long ago where your IBM account team (sales executive, systems engineers, and a raft of specialists for your industry) could hep you chart a path through technology and technical mumbo jumbo. 

NO LONGER!  Today, IBM Customers:  BUYER BEWARE!

Today IBM customers are on their own!  IBM will sell you anything you want to buy and can pay for. Your sales reps  are only concerned about making their numbers for the quarter and keeping their jobs for one more quarter.

They will sell you anything they can whether you need it or not. 

I would suggest that IBM is in a very precarious position today.  With Oracle's acquisition of Sun, IBM will lose a huge percentage of its Unix market share (Power Systems).  Companies are looking at the cost of the zSeries and many are moving to Intel Windows or Unix/Linux based systems and using products like MicroFocus COBOL to move legacy mainframe applications to less expensive platforms.

Companies today need to become platform neutral and vendor agnostic when it comes to computer technology.  You cannot and should not depend on any vendor today.

Thursday, September 2, 2010

Back to the Future

IMHO its time to go Back to the Future!

When I started out in this business some 40 years ago, I worked for the Systems Department not the Data Processing Department. The Data Processing Department was the department that managed and operated the computers and employed the programmers.

The Systems Department (sometimes called methods and procedures) defined and wrote the policies and procedures that everyone followed to do their jobs. This included forms, computer systems forms and reports, work flow, etc. We would write the specifications which were sent to Data Processing where a programmer would be assigned to write a program. The programmer dealt with folks in the Systems department, not the end user community.

In an effort to save money, many organizations tried to combine the programmer and the analyst (much like cross breeding and elephant and a giraffe) and produced an ineffective monster that has been failing to support their business enterprises since the late 1970's.

Its time to go back to business oriented Systems Analysts. With the broad mix of software available to buy or even to rent and use remotely on the web and with the vast pool of highly skilled professionals in India and China it no longer makes sense to employ programmers or many other positions traditionally associated with IT.

It is questionable whether an enterprise should own is own computers any more. I think we will see a trend towards cloud based computing where a utility rents you computing resources.

After spending 5 years with IBM, I see that many major companies are in a downward spiral and have lost touch with the customers. Technology is rapidly evolving, but we now have folks with advanced degrees in computer science who focus on technology and not business. We need a new breed of business professional to manage computer systems for their enterprise and leverage the professionals in other companies.

I was once very much opposed to the idea of outsourcing IT jobs to India and China. I have changed my view and see this as a major step towards a major paradigm shift back to business focused systems.

Saturday, April 17, 2010

Organizing Your IT Department for Success

Is your IT Department organized to serve you or itself? Is your CIO the right person for the job?

When asked why I needed funding for various IT activities by business unit executives, I would respond that I did not need any funding nor did the IT department. I told them that if they felt the projects that I was asking to fund was important to them then they should fund it.

I dealt with hardware issues from buying disk drives to bigger and faster computers in the same manner. The IT organization did not need these machines, but the end user organization most likely did.

It is imperative for a successful IT organization to turn all costs and activities back to the business community for funding. This short article summarizes some key methods of putting the business community firmly in control and eliminating many of the negative issues regarding budgeting, project selection and control over all IT activities.

The starting point is implementing an IT steering committee that consists of your CEO, CIO and most senior corporate executives who are responsible for each of the key functional areas of your business. In a typical retail organization this might be the VP Sales, VP Marketing, VP Finance (CFO), VP Operations, VP Administration and any other senior executive that I may have missed.

I define functional areas of a company as those operational subdivisions that focus on a particular area of the business (i.e. Sales, Marketing, Finance, Research & Development, Manufacturing, Administration, Operations, etc.). A senior executive whose responsibility spans political and geographic boundaries within the organization runs a functional area. Generally the senior executive responsible for a functional area is responsible for setting policy, procedures, standards, and operational guidelines for specific operating units in their area within the company. There is usually a dotted line relationship between the functional area executive and a line executive responsible for a specific department in a geographical or political organization.

In the insurance industry, a senior vice president of underwriting would be responsible for underwriting policy and procedures across the entire company. The Sr. VP might also be responsible for approving exceptional situations for large accounts that met specific criteria.

So how does all of this affect IT?
The heads of these functional areas should be members of a very real corporate IT steering committee that meets at least once per month and is responsible for approving all IT requests from business units or IT itself along with IT expenditures and budgets.

A policy should be established that creates a discretionary development budget that allows the head of each functional area to review and approve IT initiative requests as long as they do not cross functional areas and fall within predefined spending limits.

So if a project request crosses functional area boundaries or exceeds a specific pre-agreed funding limit, the executive of the area that initiated the request must present the request to the steering committee. Note IT should not be presenting these requests but rather supporting the business with time and cost estimates.

This process places key IT initiatives firmly under the control of the business unit. Financial and functional responsibility for all IT projects should remain with the business units and functional area executive. The IT organization should be viewed as a service organization that provides specific skills and services to the business unit but does not own systems or budget.

In my next post to this blog I will drill deeper into the actual organization of the IT department and key roles they need to be successful.

I hope that in this article I have demonstrated the need for a corporate IT steering committee consisting of the top executives of the company that meets no less than monthly for 30 minutes to 1 hour and controls the IT function throughout the enterprise.

Having senior executives take control over IT projects with responsibility for their funding and success will insure a vastly more responsive IT organization. This is a key first step to a modern and effective IT organization.

Saturday, March 27, 2010

Cloud Computing

In my last point I took a big of a nasty pot shot at the vendors of "Cloud Computing".

IMHO Cloud is a huge and valuable technology but a long way from reality. In my view of cloud a user develops or modifies systems using sophisticated software development tools. I do not see new development tools as programming tools but rather business oriented tools that allow users to define rules, graphically view analyze and alter workflows. The tools should let the user add features to their systems, modify existing features, integrate 3rd party components and test what they have done. There would be screen drawing tools to let non-technical people layout and implement the user interface. Included would be tools to test what the user has implemented as well as run simulations to test the business effectiveness of the solution. When they are done, they simply press a deploy button.

"Deploy" sends data, program code, meta data, etc. to the "Cloud". Rules in the cloud manager understand how to deploy the system artifacts. No one on the consumer company's staff need know anything about the cloud.

The cloud's operational manager software should manage performance and response time of all applications. It must insure that applications are replicated across at least two if not more machines at a minimum of two physical locations to eliminate the need for disaster recovery planning. The system in real time may move application artifacts from one location to another as well as replicate artifacts in real time to improve performance and insure that the system is insulated from disaster. The cloud should have disaster managers that can handle anything from taking a machine off line for routine maintenance to the loss of a facility or data center do to catastrophic disaster.

We are a long way from Cloud meeting what I have described above.

Today security, privacy, and administration are perhaps the biggest inhibitor to any vendor's implementation of Cloud computing.

IBM sells both public and private cloud software and services to implement cloud computing. Sam Palmasano saw a vision of a "public" cloud run on IBM owned and operated computers where computers and the cloud operated as a giant utility company.

Security is complex in Cloud. Ownership rights are "cloudy" as are the implementation and granting of rights to system artifacts. If the cloud is operating as I have described above, it is constantly changing thus complicating auditability and making security even more challenging.

Going hand in hand with security is privacy and data protection. Who can access data? How do you audit and prove who can access data? Are the 40 year old database products of the past (i.e DB2, Oracle, Sybase, others) up to the task of managing data in a cloud environment with data replicated in many locations including systems that you may not own?

Can vendors convince their customers that it is ok to put their data or their customer data in a cloud where they have little control over the data and its access as well as auditability? IMHO even if a vendor has tremendous technical tools it will be next to impossible to convince the key decision makers in a customer organization that their data is protected.

Administration of a cloud based system today is a nightmare with people requiring a great deal of special training to the specifics of vendor software. In several vendor scenarios there are multiple layers of software that must be implemented and managed. The tools to manage a cloud simply do not exist. You would envision a control console that displays a world map with all of the notes of the network represented as colored LED's that flash red, yellow, green, and other colors to visually represent the status of the network. These would be connected by lines also color coded to represent status. Administrators in the control center would be able to adjust the system add or remove components around the world with ease. This is far from today's reality.

This command and control center would of course be replicated to handle emergencies. In fact cloud management may become a business of its own for some enterprising vendor with creative management software. The ideal solution would be incredible software and average people.

Until you can deploy artifacts to a cloud (private or public) and know that resources have been properly secured, know exactly who can and has accessed artifacts at any point in time, and insure that data is protected not only from intruders and unauthorized people but from those people who administer and operate the cloud we will not be seeing cloud reach its potential.

As many of you know, I am a key advocate of a modern version of CASE and enterprise modeling that we embraced in the 1980's. CASE and OO which followed (along with UML) never reached its potential and has left business corporations with no path into the future.

The need for enterprise modeling and implementation of the meta data to describe and manage the enterprise is more important today than ever before. Security and privacy as well as simple data protection have been implemented by crude software that requires an administrator grant authority to various people at a physical level. In other words an administrator must define who may add, change, or delete records in files on a computer system.

Security and data ownership should be transparent and implemented via a system of rules and ownership that are a byproduct of defining your enterprise and its organization to a system. I've done this three times in my career in large enterprise systems and it is the only solution to today's out of control technology. What I am talking about integrates security and data access into the rules that govern the business. Managers are responsible for defining jobs which have rights to data and processes that operate on data. People are assigned jobs and can only do or see what their job requires or enables them to see and do. There is built in auditing of everything that happens in the system with comprehensive logs and real time reporting of security incidents (based on violations of business rules).

It is this type of logical meta data description of the business enterprise that is required before a technical implementation like "Cloud" can be implemented. If security and data protection are a part of the application then It is quite simply a part of the cloud and requires no special software or hardware. Note that sophisticated encryption can be invoked via rules in the business application.

Friday, March 26, 2010

What is Happening to the Computer Systems Industry

I've been remiss in posting to this blog and probably lost most of my followers, but in hope that someone is left I want to share some observations that I find sad and disheartening.

If you look at the year end results for most major software companies this past year you will see dismal results or at best lack luster results. If you look around the web you will find that the world has become static and we are not seeing break through technology that positively impacts businesses.

In fact we are seeing software companies as well as commercial business outsource their IT organization and software development to India, China, the former Soviet bloc countries, some south east Asian countries and other 3rd world low cost labor markets.

Many companies like IBM have given up on innovation and grow their software portfolios via acquisition instead of innovative development.

Emerging technologies are exactly that technologies. One of the biggest boon doggles is Cloud computing. The only cloud that truly exists are the those around the heads of the executives of the companies claiming to offer software solutions based on the cloud model.

Don't get me wrong, the concept of "cloud" computing, namely loading software into a virtually managed machine environment where the developer knows nothing of the underlying hardware is the direction I believe we should be going in and may someday achieve, but not today and not for a while. The key issue is security or the perception of privacy and data protection that does not exist today.

I grew up in IT during the 1970's, 80's, and 90's when the world was trying to figure out how to represent and implement maintainable business systems that addressed the problems and needs of business.

Today we should have graphical software that reflects our businesses and allows business users to define business rules that govern the systems in real time. Systems that analyze workflows and make changes that improve the word in real time.

Instead, we have moved from business languages like COBOL or RPG or the dozens of failed 4GL's to Java and C++ which are roughly akin to programming in Assembly language taking us back to the 1960's.

Where are the application development and management systems of today? Are the ERP vendors meeting corporate needs? Have business executives simply given up on IT?

Where is modern innovation in business systems? Do modern corporations no longer need computer systems beyond the 20 year old ERP systems that run their companies today?

I happen to believe that we need a new revolution in computer systems architecture and technology.

I believe we must break the backs of the handful of ERP vendors that are choking modern enterprise and holding back technology.

The very concept of SOA should be a model that allows corporate enterprises to buy the best possible components from the best provider for their needs. Corporate systems people should become integrators instead of programmers. Their role should be integrating software purchased or rented from many software vendors and using innovative software to build modern UI's and workflows that manage the modern corporation.

To achieve this we must get back to a focus on representing the enterprise and its operations in the modern computer system and not on some wiz bang technology.

Some please tell me, where is innovation today? I'm not seeing it. Not from IBM, not Microsoft, most certainly not from Oracle or HP. I don't even see it in the open source community.

We must begin to move forward.

Sunday, January 17, 2010

What Happened to systems for the Enterprise?

I've been away from this blog for a long time. I have had a lot of change in my life but after watching developments in computer systems I have come back to this and feel the need to share some thoughts.

As we see the globalization of the modern enterprise the need for well designed enterprise systems becomes increasingly importnat as a critical success factor.

We see a great deal of activity in terms of technological innovation, but what about the systems themselves? Today as I have said before management has lost faith in their own IT staff. In all too many cases from the CIO to the computer operator they are viewed as geeks and not as part of the business community. Quite often if asked, the CEO Will tell you that the IT people know nothing about the business and just provide technical services that they need.

The solution? Buy 3rd party ERP systems and squeeze the corporation into the system with a shoe horn.

In the following series of articles, I'm going to start breaking business systems down into manageable components and discuss how an enterprise can and more importantly SHOULD move away from off the shelf ERP systems and develop in-house to meet today's needs.

I will start at a high level and drill into sub topics from time to time that while never getting into detailed technology may argue the merits of many commonly accepted approaches to systems development and I will challenge many well accepted industry pundits in their views.

What you will not see in this blog is any discussion of hardware. In today's world I think that hardware has become a commodity separated from developers and users by many layers of software. The machine, the operating system, and many things that in the past were critical are simply irrelevant today. Price and capacity are all that really matter in terms of computing hardware today.

While we are still a long way away from "Cloud computing" or computing as utility I do believe it is the probable direction of the future.

A key thread of this series of discussions will be security and protecting an enterprises key data oriented assets while leveraging a distributed world of technology.