Wednesday, December 5, 2012

Programming Jobs in US Lowest in Recent History

In 1990 there were 595,000 Programming jobs in the US.  Today there are less than 320,000 jobs.  These numbers are from the US Bureau of Labor Statistics (http://www.bls.gov).

Many of these jobs have been outsourced to India, China, and other countries paying programmers less than 10% of the typical US salary.

As much as I hate the idea of outsourcing US jobs, there is little that any individual company can do to counter this.  The only reversal on the trend in outsourcing will be taxation and regulation by government that addresses the issue.  Until such time, I strongly recommend that companies get on board and outsource their IT in order to be competitive.

While I maintain that there is no single solution for any specific enterprise which each has their unique requirements, outsourcing and cloud computing should both be on the table as serious potential means of reducing costs while improving IT services.

Don't fall for the argument put forth by many internal IT folks, that offshore people are low quality and cause more problems than they provide benefit!  That is simply not true.  Offshoring requires strong management and controls at your location and within your company.  Note that developers in India and China as well as some other companies are better educated and more highly skilled than the traditional US worker.

So tell me do you want to pay $80,000 and up (plus benefits) to a US worker with a high school education, maybe a year's worth of training a technical school, junior college, or worse a couple of weeks by an IBM SE, or a person with a Masters in Computer Science from Universities that rival MIT and people with IQ's and performance scores equalling or exceeding MIT and other major US universities for $10,000 per year (with no benefits).

The key in successful outsourcing is the agreements you have in place between you and your outsourcing contractor, statements of work governing each project, and clearly stated responsibilities for  defect resolution.  It is also your responsibility to provide very specific and accurate specifications as well as creating and executing formal test plans with review and acceptance by key business unit managers and executives.

The real key to success is your up front work and planning followed by your oversight on the execution.  You can save millions of dollars.

Wednesday, October 24, 2012

The importance of Tablets and Smart Phones

Dell just announced the hiring of Jai Menon, former IBM CTO of its Systems and Technology Group as its new CTO of its Enterprise Group.  Dell like other PC makers are seeing the handwriting on the wall and adapting to tablets and smart phones which are rapidly replacing desktop and laptop PC's as the user interface to computer systems.

With Apple's new iPAD mini announcement along with devices from other Android based tablet providers it looks like the PC as a client driven device is rapidly diminishing.

Vendors like Dell are moving to backend server providers leveraging both Linux and Microsoft Windows based technologies, but also adding data storage via low cost advanced SAN's (Storage Area Networks).

This will have a very interesting impact on IBM who has always maintained an extremely high price point on its Intel based servers known as the xSeries.  IBM has always been able to charge more money by providing services on top of the equipment and therefore selling a high price total solution to its customers.

Companies like Dell are responding with lower cost equipment with integrated software that reduces the need for vendor provided expert consultants.

While IBM may have been a step ahead of others by selling its client oriented PC business to Lenovo and retaining its server business, but lets see if it can adapt to this new low cost easy to use set of equipment from Dell and other competitors.

With cloud on the up swing and major could providers buying literally thousands of servers as they grow, and internal companies moving to a tablet client server driven environment the demand for low cost servers is increasing rapidly.

It shall be interesting to see how this all plays out.  There is a strong message here however.  If you are not looking at tablets along with Internet based server centric solutions for your employees and systems you need to take a closer look.

Friday, October 19, 2012

BIG DATA?

First of all if you are working with "Big Data", I'd love to hear from you.

I was recently involved in a discussion where old AS/400 based folks were debating the merits of relational database and SQL.  It was a bit unbelievable since Dr Codd first published his papers on relational database architecture in 1970, 42 years ago!  In the course of discussion the issue of modern alternatives to relational database systems came up.

This brings us into the topic of "Big Data".  "Big Data" is defined by Volume, Velocity, and Variety.  We are seeing data volumes in Petabytes (1000 terabytes) and Exabytes (1000 petabytes) materializing regularly.

The concept of "Big Data" first materialized in scientific computing circles where measurements in weather, aeronautics (i.e. wind or airflow on an airframe), medicine, and other industrial or scientific applications produced massive amounts of data that needed to be captured and analyzed, often in real time.

We then began to see social media sites like Facebook Google, Amazon, and others create unbelievably huge repositories of data.  Facebook reports that it operates over 30,000 computers and captures log files of over 25 terabytes of data each day...

Today we are seeing Big Data move into commercial business enterprises.  Consider the following:


  • Marketing applications that search the Internet for hits on a product or company name and then collect and analyze the content of everything found to determine the sentiment or attitude of the public toward the product or company.
  • Consider huge international retailers who capture and monitor every sales transaction in every store (millions of transactions daily) to analyze product movement and revenue opportunities.
  • Consider a major retailer who captures everything that a user does in their e-Commerce web sites, including products they look at but do not buy, searches they perform, every single keystroke and then analyze why visitors behave the way they do...  


I would really like your help in pursuing this line of thought and exploring the use of "Big Data" by commercial business enterprises.  Send me your experience at:  bobc@rjcancilla.com.  Let me know if I can use your name or company name or if I should keep that info confidential.  I'd really love to hear from you.

Saturday, September 29, 2012

Where are the Programmer Jobs

I've been doing some research for my new book "Managing Computer Systems in the 21st Century" and came across a rather stunning fact at the US Bureau of Labor Statistics (BLS.gov).

First and foremost, it is interesting that various analysts like Gartner Group, Forrester and others report that IT budgets continue to fluctuate in the range of 1.6% to 1.8% of revenue and have since the 1970's. 

At first glance that is not unusual, but when we look at hardware costs, we see that the cost of computer equipment which used to dominate IT budgets have dropped to a fraction of what they were in the 1970's. 

You can now pay $1500 for computers that are several times more powerful than those that you had to pay well over $1 million for in 1974.  This is not just packaged systems but also components of computer systems.  How about a 1970's IBM 3330-1 Disk Drive with 100 mb capacity selling for approximately $25,970.00 (http://www.jcmit.com/diskprice.htm) compared to a 1 terabyte Western Digital plugable drive for $99.99 at Best Buy (http://tinyurl.com/8goq8sb).

Today's costs have shifted to labor costs.  Often times a great deal of the modern IT department's costs are in labor for employees that support the hardware, operating systems, and other infrastructure and system software that are required to support the hardware today.  Large companies will spend millions of dollars on this type of support while even small companies will spend a great deal of their budget on this type of non-productive but "necessary" overhead.

The programmer population in the US has decreased dramatically in the last few years.  According to The US Bureau of Labor Statistics (http://www.bls.gov) The U.S. population of programmers fell from 363,100 people in 2010 to 320,100 in 2011 a loss of 43,000 people!  Note that salaries have climbed steadily since 1922 when the BLS reported an average programmer salary of $63,690 to 2011 where the average grew to $76,010. 

Where did the jobs go?  This number includes ALL programmers, not just legacy programmers in COBOL or other legacy language (like RPG).  It includes Java and C++ programmers.  Note that major employers like Microsoft, IBM, HP, Google, Yahoo, and many other well known companies are outsourcing thousands of programming jobs to India and China. 

Some major US corporations have followed suit, but most have tended to retain their legacy staff of developers.  It is time to look critically at corporate IT organizations today and look at three critical opportunities to reduce costs and improve overall efficiency:

  • Cloud computing and eliminate not only computer hardware costs, but the labor cost of the people required to support these computer systems without providing a direct ROI to the enterprise.
  • Outsourcing of software development to 3rd party firms.  Replace a fixed annual cost for developers to a direct cost associated with development projects supported and budgeted by the business units.
  • Open Source vs 3rd party vendor or in-house developed software.  While open source is not free, it is vastly more cost effective and of much higher quality from a feature and functionality perspective than traditional 3rd commercial vendor systems (which are most likely 25 years old or more) and have no annual maintenance paid to the vendor.  Note there are now open source applications for just about every business enterprise imaginable.
I advocate a total computer system assessment where your existing systems and your IT Organization are evaluated objectively to determine how well they are serving your enterprise and if you are in fact getting an ROI!.

Wednesday, August 1, 2012

IBM Sells of Retail Equipment Business

If anyone had any doubts the direction IBM would head under Virginia Rometty's leader ship the article on the Wall Street Journal's Market Watch web site pretty much states the case.  IBM has been quietly selling off its hardware manufacturing divisions with Printers, Disk, the PC Division, and now its Retail systems hardware!  

How long before they sell of the computer business?  Lest anyone have any doubts, IBM has become a technology consulting company.  Services are now their entire focus for the future.  

Quite frankly as sad as this may make some of us who saw IBM as the ultimate leader in computing equipment for many years, this makes total sense.

Today, IMHO, cloud computing is the future turning Thomas Watson's 1943 quote: "I think there is a world market for maybe five computers." into a reality!  

Well there may be many more than 5 computers, but with cloud computing you no longer need computers in your place of business and today's millions of servers may shrink to thousands in cloud based provider data centers.  

It is however interesting to theorize why IBM could not longer be profitable in businesses that it dominated for years.  Being an ex-IBM'r, I can't help but wonder if it is IBM's management structure and the incredible overhead they have everywhere you turn (except in actual R&D) that makes them too inefficient to produce anything any more?  

It is time to start carefully evaluating your use of IBM equipment and systems and look at alternative solutions if you have not all ready.



Tuesday, July 10, 2012

Time to Change the IT Name

IT or Information Technology has evolved into the standard for what businesses are calling their computer systems department today.  It is fascinating to note that the term "Information Technology" was coined by Harold Leavitt and Thomas Whisler in their 1958 Harvard Business Review article entitled “Management in the 1980’s”  which was a prediction of what things might be like in business management 30 years into the future.  

Isn't it ironic that we use a 54 year old term to refer to today's 2012 organizations that manage computer systems for today's business enterprise?

Maybe its not so inappropriate considering the people working for the IT organizations of many business enterprises today.  Many of your IT staff have been working for nearly as many years!  I think it is time to modernize the name however and perhaps use something realistic like "Computer Systems".

Monday, April 9, 2012

Clerity Moves Mainframe Apps to Windows Platform

Check out Clerity this new application lets IBM Mainframe users move applications including batch, CICS On-Line, and other applications to the Windows platform without modification.  This can dramatically reduce the cost of hardware, operations support, and give you a basis for modernization.

In many of our customer interactions, a key factor driving modernization is the need for a direct cost reduction in current mainframe spending. 

I find it totally ironic that I would be advocating software such as this and a move away from IBM mainframes to Windows based servers.  I spent over 20 years working with mainframes and an additional 20 years with IBM midrange machines.  I designed and built large scale enterprise systems and would never think of buying 3rd party solutions in most situations.

Today, I see that IBM has not kept pace with the world and its large zOS iron with mega dollar pricing has become obsolete and unnecessary.  Companies can save millions of dollars per year in hardware, system software, and labor costs by moving to Windows or LINUX based technologies.  Furthermore, they can leverage cloud computing and outsource the support of their systems for a fraction of what they are paying today.

Check out Clerity.  It is one more excellent solution to break away from costs of mainframe computing.

Saturday, March 24, 2012

Do you know what your IT people are doing?

If you work for a large company, you will may have hundreds if not thousands of people in your IT organization with job titles that boggle the mind of mere mortals.  Do you have "Enterprise Architects"? How about BI Architects or BI Analysts?  How about "Solutions Developer" (aka programmer). 

How many "architects" do you have?  There was a well intentioned set of methodologies based on the work of J.A. Zachman and his 1987 IBM Systems Journal article entitled: "A Framework for Information Systems Architecture".  Today several major consulting organizations and universities have "methodologies" and teach "enterprise architecture".  Sadly like most of the products that come out of the university or research environment they have great ideas and concepts but lack the practical experience and reality to make it commercially viable.

It is critical for someone who has no investment in your organization structure or bias to any specific methodologies to  conduct an objective assessment of what your IT people actually do.  I think you will find that while they kill trees (at least electronic trees today) with millions of words written the majority of these people produce little of any value to your organization.  Your CIO often embraces methodologies that are popular feeling that he or she has covered their proverbial tails by adopting methodologies that sound credible to other managers and executives. 

Often the average business executive wants to compare IT people, roles and training to engineering or other professions where their college curriculums are precise and meaningful.  After 50 years, IT jobs remain voodoo and black magic.

You can take the best elements of various methodologies and apply them to your business, but you must do so with a thorough understanding  of the methodology and how it works or should be adjusted to fit to your organization.  Perhaps entire sections should be thrown away. 

I am a huge advocate of methodology, but I am an advocate of creating methodologies that fit your organization and work for you.  I am totally opposed to following frameworks from various "experts" as is and not questioning what they recommend or how it makes sense for you.

Thursday, March 15, 2012

Who does your CEO Trust Today?

When it comes to computer systems today and the effectiveness of your IT organization, who can your chairman or CEO trust?  Who can come in today and conduct an objective assessment that you can trust?

In the old days prior to 1991 if you were President or Chairman of a major company, you could depend upon IBM to help you figure out a mix of technical solutions that would fit your business requirements.  If your local sales team with sales reps and systems engineers needed help, they could call upon the industry specialty team for your industry (i.e in my case it was Insurance). 

If the sales team felt that IT was not buying the right mix of hardware and software a very senior executive would come out from the industry group and walk directly into the chairman's office.  He (there were never any women in those roles) would offer to evaluate your IT organization.  He would bring in a team and do a "free" assessment that usually concluded that you needed a new CIO and that you needed to buy some IBM hardware and software.  It was done in such a way as to be totally believable by your senior most executives.  Senior executives of major corporations could trust IBM. 

They knew they were paying top dollar for computer systems (software and equipment) and they knew they could buy stuff cheaper from competitors, but...  they knew they could trust IBM to help them build or buy the systems they needed to achieve business goals.  Any savings the company could get by buying from IBM competitors was insignificant when compared against the value the company got by following IBM advice.  In those days with those people, IBM truly did put its customers first.

Lou Gerstner dismantled the field sales organization and industry specialty support groups.  He got rid of almost all of the system engineers and most of the sales organization.  He moved to a partner based sales model (similar to distributors selling crackers for Nabisco) and more importantly, he focused product development around IBM Research. Many financially oriented people will say that Gerstner saved IBM.  I would argue that he has killed it and it just hasn't laid down to be buried yet. 

The idea that IBM Research can figure out what products to create and sell to customers is ABSURD!  I'll be the first person to tell you that the folks in IBM Research are the absolute BEST technicians on the planet.  I will also be the first to tell you they know nothing and care nothing about business and business problems.  Look at IBM's cloud solutions, SAA and all of the servers built to support SAA.  Look at the IBM Portal Server, WebSphere Application Server and on and on and on.  Thanks to Lou Gerstner IBM has lost focus on business.  It is focused introspectively on brilliant technical solutions from research in search of a problem created by folks who have no clue what the market needs or wants. 

Marketing is collection of everything but professional marketing people.  Almost everyone I met from senior level VP's to low level marketeer's came from somewhere else and have no training in marketing.

As part of the cost cutting initiatives they have eliminated "user centered design teams" that would conduct user tests, video tape users using products, conduct surveys, focus groups, etc. All gone.  Basically IBM has cut itself off from reality leaving a gigantic hole in the world of corporate systems!  That is the role of a trusted adviser. Who can your senior executives trust?

Thursday, January 12, 2012

Open Source for Business?

"Open Source" has been the buzzword for the past several years in the computer software industry and has generally been associated with highly technical software such as web and application software and development tools.  Today proprietary software like IBM's WebSphere and Oracle's Weblogic which are incredibly expensive software packages have been displaced by free open source software such as ApacheTomcat, JBOSS, Jetty, and GlassFish.

You may have heard of languages such as PHP or Frameworks like Hibernate, Spring, or Ruby on Rails, again very popular technical offerings.

Have you however seen the hundreds of open source business software such as OpenERP, SugarCRM, and thousands of ERP, CRM, Financial, HR, and special purpose open source packages that are freely available today?

I don't want free, you get what you pay for...

That couldn't be farther from the truth today!  Successful Open Source projects and software are the result of coalitions of companies with needs similar to yours open source is free but funded by contributions from the companies using the software.  You may freely download, install and use most open source software packages with absolutely no cost to you.  You may also have your developers modify and customize the software.

You are encouraged to contribute customizations to the open source organization who maintains the software.  You may also wish to contribute money to help fund ongoing projects that enhance and improve the products.  Note: these projects are customer driven and tend to be exactly on target in meeting current business requirements experienced by many of the companies using the software.

Choose carefully!

There are many remnants of open source projects out on the web that continue to hang on by a thread but are no longer active or viable products.  Here are some steps to help evaluate open source software:

  • Try to determine how many companies use the software and who they are.  Avoid narrow focus limited use products.
  • Look at the blogs and forums that are present on the products web site.  Who is commenting?  Are the comments constructive or negative?  Are problems being resolved?  Are people helping each other use the product?  
  • Look at the "project" list to see what is being worked on.  Check the project start dates, status, and estimated completion.  Are the projects stagnant or active and moving forward?  Who are the people working on the projects?  Are they employees of the underlying organization that sponsors the project or volunteers.  Are projects adequately funded?
  • How good is the documentation?  Is it readily available and written for people or programmers? Is the documentation comprehensive and complete or are major sections missing with notes like "to be written soon..."?
  • Check YouTube and see if their are videos demonstrating or training people in the use of the product.  Popular products have a relatively large number of videos.
  • Do a Google search on the product and look for both positive and negative articles on the product. 
  • Finally, contact some of the people you find on the forums who are using the products and get some personal references and opinions.  
  • Check out the underlying organization that sponsor's the product.  If the organization is a US based 501 C non-profit organization you can get financial reports from the IRS and companies that track non-profits such as GuideStar.  
  • Read the "About Us" links on the web site which usually lists key member companies, board members and their corporate affiliations.  This information will tell you who is sponsoring this initiative and give you a good indication of the depths of its funding.  Sometimes you can find lists of key contributors in this area also.  
Note that many of the companies developing open source software are for profit companies who develop and give away an open source license for their software and sell an "Enterprise Version" with additional features and support that are not available in the free version.  If you are interested in software from this type of company be sure to understand the differences between their free software and their fee based software.  In some cases you get everything except for professional services and support.  In other cases the free software is limited in function with the majority of enhancements and advanced features going into the commercial version. 


The process of selecting open source software is not much different than buying commercial software.  A couple of key issues to look at is who is going to support the software after you acquire it?  Many open source software products have communities of consultants or service providers that make their living supporting open source software.  Many of the development organizations provide support for a fee, and of course you can hire or outsource support.

My personal preference are non-profit organizations organized by user companies with common interests.