Saturday, June 18, 2011

Cloud Hype

"Clouds" is a comedic play.  Cloud hype is closer to hubris.

Remember "network PCs" ?  Just as we were getting X-Windows to actuaries and LAN PC's to underwriters who had been confined to 3270 dumb terminals, an arrogant insurance CEO informed me that hard drives were already a thing of the past (and most were what, 20Mb with 2MB RAM on the PC's?  We had just paid IBM big bucks for our first external RS6000 drive for our one AIX box. Meanwhile the CIO was betting on AS400.  M/F Prolog-based expert systems for underwriters had just been replaced by procedural C + Sql just a fast PC Prolog implementations became available (they had nothing to do after their departmental LAN pension PC system for HR.) Windows 286 had recently been replaced by the extremely buggy 3.0 for 386 PC's with hope for a 3.1 version.  To my utter amazement much departmental software was, er, uhmm, unlicensed.  Especially the price-y APL for actuaries.  WordPerfect was still the standard for PC text and the 99$ word processors were being crushed by illegal schemes ignored by anti-trust law enforcement.  Smalltalk was being priced out of reach as competition collapsed in that niche.

Now, today: just as sold-state drives become a reality (and the Winchester drive from IBM Watson Labs was a big tech leap - or have we forgotten?) we are told that corp's will want to move to "dumb laptop" ChromeBook.

This is not like having an X-Server on a graphical workstation.  Far from it.

And consider this: a really advanced programming language such as Oz is only now moving to being Distributed Oz.

Look at the hackers public "helping hand" site: the vast majority of programmers listed are really only competent in one procedural language: one of Java, C++ or C# (please don't start in on C# as multi-paradigm ...)

While Perl finally begins to take a bow, PCRE remains the standard while not a single text-processing language is in the TIOBE "top 20" PL's (no, Perl is not; SNOBOL was and REBOL, ICON, UNICON, Object Icon and Converge are just as LISP can be a TPL.)  Perl is not a TPL - not any more than Crystal Reports could be called a TPL. Or Tcl's expect. Or grep.

While most programmers remain ignorant of advances in text parsing and constraint handling, the industry commentators would have us believe in the cloud.  Nebulous shibboleth.

The cloud will not respond to the needs of forensic accountants (see the top-seller in the accounting niche for how many of the Big 4 ? )

The cloud will not respond to the need of health insurers to have smarter software and health providers to have smarter software (see the decade's repeat top-seller in that niche - so critical to controlling rising debt in USA and Canada.)

The cloud as a source of medical e-records will not reduce medical costs (await an unintended consequence in billing.)

The cloud is not the answer in logistics as so many diesel-burning haulers run dead-head on highways or back-and-forth in cities such as Vancouver, Canada (where the pollution drifts away and up into the higher Fraser valley) or that yellow-pancake-cloud hanging over the city of Toronto.

Just as we get multiple-CPU's we are to believe in the cloud (with USA and GB at not even in top-ten nations for internet connections.)

Common wisdom: the bottlenecks tended to be I/O and/or database accesses.  The historically single biggest PC design flaw: I/O.  The dominant database is SQL Oracle who now   effectively own Java.  Note the ties of C# to Microsoft, C to unix.  IBM had to buy iLog even after the critical contributions of Watson labs to constraint programming (old Prolog is now viewed as a subset of a constraint logic programming strategy.)

The two critical languages never embraced by Microsoft: Prolog and Smalltalk.  The Apple difference is that they dumbed-down a Smalltalk as Objective-C for programmers more comfy with C-syntax (Objective-C is the principal iPhone app language; when Apple stole from Nokia they stole from the company running Smalltalk in phones; Ericcson originally banned its own invention, Erlang. No kidding. C-only, please.  Mercury now generates C or Erlang.)

Less common: the internet relies on HTTP with its connection restrictions.  So the cloud will become the "private cloud" and then the "privately switched cloud" and the lessons of, say, 1989, can be re-learned in, say, 2019.

JavaScript is now being touted as the server-side solution. JS has a fine lineage back to Self and inlining ( aka Google V8), but a lot has happened in programming languages since the mid-80's.  Without programmers able to work in multiple paradigms, abandoning the power of the client to run domain specific software is folly.

Those who will run such software: the high-end consultants and trouble-shooters.  That trend will not help to bring down medical costs or prevent another Lehman Bros where a large part of the problem was the software used on the laptops of the E&Y auditors ( a trail that leads right back to the software run by the auditors at Enron.)

Is Drools on JBoss part of the answer ?  IBM's acquired iLog and jLog ?  Not likely.  Too little, too dumbed down (not that for some tasks a "dumbed-down" language is not great, as Erlang has shown repeatedly.)

The critical software in audit is the worksheet component.  If it resides in a procedural framework, suitable forensic options are unlikely to emerge.  Cross ChromeBooks off the lsit for those EU auditors faced with Bulgarian government ministries, departments and agencies and those soon to be faced with Macedonia and Montenegro.

Maintainable software: server-side in the cloud at least one major bank and on major insurer have demonstrated that Smalltalk need not be visible (let the web UI be whatever) but we still lack a Smalltalk with fully integrated rules, logic and constraint handling.  Traits in Smalltalk may achieve this.

Programming languages do matter: it is better to generate C code but have textual code which is maintainable, documented than to have C++ code that takes a few years to write and that is near impossible to evolve.

At the core of many of the leading "niche" software packages that prevent controlling medical costs are inadequate C libraries that programmers fear to touch.  DLL's were intended to prevent this.  Dot net will not help here as its dynamic languages fail to integrate rules and constraints in the manner in which they are integral to say, Oz.

Until a US congressional committee investigates the software used by auditors and risk managers, we will not be free to discuss was remains not in the cloud, but enveloped in a smoke-screen fog.

At least least outside the cloud, we can ask and be told what was running on those auditor laptops, which version, when last updated and with which customized features.  Those are apps are software as desktop user applications.  With replaceable SIMM drives, we could even ask for the read-only chip which was in use in that "laptop".  Yes, there is an associated IT cost.  But compare the costs of inadequate pricing control and audits in healthcare and in banking.

And the OS on the ChomeBook - welcome back to the past: a unix.

And the hope for getting around HTTP 1.1 limitationd in the Cloud: that other dinosaur, TCP/IP connections.

And this is without even mentioning the vulnerability of the G3 or G4 cloud in the case of any major international conflict, e.g., China blaming uncontrolled civil unrest on the West, in, say, 2019.  Not to mention chaotic sunspot flare-up.

Remember, 1989 was touted as the "year of unix" when it was the year Microsoft undermined developers of ...

From IBM to Microsoft to Google, while the lesson of evolution is variation and alternatives. Java, C++ and C#:  the majority of 'hackers' have less to offer than we might hope.

No comments: