The scale is staggering
14 years ago I was running a group at TIBCO that was bringing TIBCO to the Internet. Yahoo!Finance was built on the TIBCO pubsub infrastructure. At the time Yahoo was the biggest cloud/internet company and the finance pages were the most popular pages on the companies web site other than search. The hits were astronomical even at the time. It was the fever time in the tech internet industry and everyone was following the stocks of the new internet players. Many people including myself had written programs that leveraged Yahoo's web site as an API to build applications for stock analytics, portfolio analysis and to embed in their own websites. I know that Yahoo was getting 100 million hits to the web site a day or more but probably few of those were really applications making calls. There weren't a lot of other APIs in the Internet at that time. I would guess that there were 10^9 a billion "pseudo-API calls"/month back then. This is the kind of traffic that a small startup would get today for its API. :)
Recently I gave a talk on helping to select PaaS from among the many PaaS out there and understanding the taxonomy of PaaS or simply how to categorize them to put them in useful buckets. One person at the talk asked about use cases for PaaS. I realized I haven't blogged about the most common or interesting use cases for a PaaS's or ECOSYSTEM PAAS's.
If all the cloud terminology and cloud is confusing to you read this.
Accelerating Pace of Change,
Faster Time to Market,
PaaS Use Cases,
Reducing Costs of IT,
WSO2 Private PaaS
What is software development like today?
A complaint I heard from a CIO recently was that when talking to the high flying technologists at his firm he said: "they talked in strange names, Kafka this, docker that. Names of open source projects, APIs and languages that make him wonder if these people can program or just piece together technology and names? It's very easy to toss around a lot of names and convince somebody you know what you are talking about, but the real question: If you assume that you can do things like this; Is this the way we should be building software these days? Talk to developers today and a lot are doing something different than what we did just a few years ago. Today developers may use languages such as Ruby or Scala, PHP or Clojure or combinations of these things in a single project, they may use google APIs and back end as a service APIs, Salesforce APIs and APIs for doing pattern discovery, blob storage. They may use Storm or Kafka, App Factory, CEP, Stratos, docker, node.js or cassandra or an open source Identity Management. They may develop on IntelliJ or CodeEnvy in the cloud. They may build their technology with dependency injection, aspect oriented techniques, test using Chaos Monkey, appium and numerous other web services that in general allow them to have very high productivity. It is very likely they will complain bitterly if you don't have Git, Maven or Jenkins, Chef or Puppet and numerous other open source tools for them to use that they are familiar with. It's a new world that has evolved very rapidly. This cacophony of names is scary for some. I love this diagram that Kinvey came up with some time ago that illustrates some of the complexity of just the APIs for backend as a service in the new paradigm: