Category Archives: Cloud Computing

Serverless Computing on Cloud Platforms – The Game Changer

Amazon’s Lambda and Google Cloud Functions are ushering in the next generation computational model, which in my opinion will have a profound impact on how applications will be developed, operated and maintained. As the capabilities of Lambda and Cloud Functions improve there will be less incentive for developing applications based on virtual machines and containers. We are closing in on the iOS application model on Cloud platforms.

IoT Platform Comparison – Amazon Web Services vs. Google Cloud Platform vs. Microsoft Azure

This post is a follow on to the “What You Need In An IoT Platform” post and examines IoT (Internet of Things) platform offerings from the 3 leading Cloud Computing platforms.

As highlighted in the original post an end-to-end Internet of Things (IoT) platform needs to provide more than just data collection and data analysis capabilities. The following outlines the list of capabilities desired in an IoT platform. Continue reading IoT Platform Comparison – Amazon Web Services vs. Google Cloud Platform vs. Microsoft Azure

What You Need In An IoT Platform

Despite some overzealous efforts related Internet of Things (IoT) the trend has legs and real business value. Internet of Things is one of the foundational elements of Digital Transformation. Advances in IoT are transforming products into connected experiences and services.

An End-to-End Internet of Things (IoT) platform, however, needs to provide more than just data collection and data analysis capabilities. Based on my experience with a real world (cost constrained, patchy connectivity, low power) IoT scenario I found the need for following capabilities in an end-to-end IoT (software only) platform. Hardware aspects are omitted in this post because of the diversity of use cases and design considerations that cannot easily be generalized. Continue reading What You Need In An IoT Platform

Architecting An Enterprise Document Management System With Google Drive And Google Object Storage

There is no doubt that Google Drive is a great document management and collaboration system for individuals and teams. Google Drive does start to show its limitations when you begin to use it as a document management system for the whole organization.

Organizations use an enterprise document management (like Documentum, Alfresco…) to support key business processes in marketing, sales, product development, manufacturing, quality management, customer service, etc. In addition, proper document management is necessary to meet regulatory requirements in many industries. Some of the expected capabilities of an enterprise document management include the following

  • Storage capability for terabytes of data and millions of documents
  • Sophisticated access control
  • Audit trail
  • Workflow
  • Archiving
  • Collaboration (internal and external)
  • Revision control
  • Search, Full text indexing, etc.

While Drive has some of the above capabilities, some of the limitations can make it difficult to use it as the enterprise document management system. This is where Google Cloud Storage comes into the picture. You can learn more about Google Cloud Storage here.

The figure below shows the high-level architecture of how to leverage Drive and Google Cloud Storage to create your enterprise document storage management system.


In the example above, users (Homer Simpson and Lisa Simpson) use Google Drive for local storage and collaboration and Google Cloud Storage as the central enterprise wide data storage.

However, certain amount of integration and application code needs to be written between Google Drive and Google Cloud Storage to complete the enterprise document management system. We will cover the integration and application code in a later post.

In summary, the combination of Google Drive and Google Cloud Storage creates a compelling enterprise document management solution for organizations of all sizes that users will love to use and CIOs approve.

Amazon’s NICE move

Nice move, Amazon. High Performance Computing (Simulation, Computer Aided Engineering (CAE), Graphics rendering, etc.) has been one of the earliest use cases and for Cloud Computing. This was true even before the advent of AWS and the likes. The computers and infrastructure that were traditionally used for these jobs were Super Computers from Department of Energy, Super Computing Centers and/or clusters of computers. Move over, DoE. We have a new super computing cluster in the town.

Why Aren’t Cloud Computing Platform App Stores Like Apple iOS App Store

We can confidently say that the Apple iPhone would not be the business juggernaut that it is without the App Store. Apple App Store generated close to 20 Billion in revenue in 2015 and by itself would be among the top 150 of Fortune 500. Apple says that it has returned close to 40 Billion dollars to developers since 2008. It pays to be a top developer in the App Store ecosystem. This is no small part due of the extremely fine-tuned distribution and monetization model of App Store and the supporting iOS architecture.

In contrast the Cloud Computing App Marketplaces of Amazon Web Services, Google Cloud Platform and Microsoft Azure are made up of primarily Virtual Machine Images or non-platform solutions that are integrated with the platform. Contrast this to typical application architecture of an iOS App which is developed with iOS APIs and runs within the sandbox provided by iOS. Apple’s review and approval process ensures third party applications are safe and can be trusted by users. In addition, iOS App Store provides one of the most frictionless process of distribution with integrated payment and one-click download. These 3 integrated elements are what make the iOS platform one of the most powerful platforms, and certainly the most profitable, in the world.

None of the 3 cloud computing platforms provide all of the above 3 integrated elements. Amazon Web Services provides some of the elements (integrated billing and one-click installs) with AMIs (Amazon Machine Images), which can be instantiated. But instantiating VM images is only a marginal improvement over the current situation. This approach does not allow developers to take advantage of all the services/products that cloud computing platforms provide.

The ideal scenario would be to have a uniform API that exposes different underlying services (Object Storage, SQL, NoSQL, etc.) that application developers can use to write applications and a scalable sandbox that can run these applications. A good review and approval process would also make it easier for customers to trust third party applications. Finally integrated billing and one click app download eliminates friction in the buying process. A try and buy approach would even take the risk factor out of the purchase process.

Casualties of Cloud Computing

Ever since Amazon first rented its computers by the hour in 2006 the rise of public cloud computing has been relentless and exponential. The efficiency and effectiveness of public cloud infrastructure has laid bare the extreme inefficiency and bad quality of legacy IT ecosystem. The public cloud computing companies are almost providing 10X value to end customers. They are effectively transforming a Trillion dollar ecosystem into a 100 Billion market and will likely capture majority of the profits. As a result the casualties are piling up at every level and layer of the IT ecosystem. The list follows

Broad Computing

  • HP
  • IBM
  • Sun
  • Dell
  • Oracle
  • VMWare


  • Cisco
  • Juniper
  • Lucent


  • EMC
  • NetApp

Consulting and Systems Integration

  • EDS

Cloud Platform for Independent Software Vendors (ISVs) – Amazon Web Services vs. Microsoft Azure vs. Google Cloud Platform vs. Salesforce – Details

This is a continuation of this post on evaluating cloud platforms for independent software vendors. In that post we identified the following as the most important criteria for selecting a Cloud Platform for ISVs.

Development Focused

  • Programming language support
  • Application servers (and containers)
  • Database services (SQL)
  • NoSQL database services
  • Object/File storage services
  • Analytics services
  • Multi-tenancy

Operations Focused

  • High availability support
  • Data centers in multiple geographies
  • Scalability

Distribution and Monetization Focused

  • Support for application marketplace
  • Integration with platform user management and single sign-on
  • Easy application installation
  • Ability to leverage platform billing

The following provides details on how each Cloud Platform performs against listed criteria. Continue reading Cloud Platform for Independent Software Vendors (ISVs) – Amazon Web Services vs. Microsoft Azure vs. Google Cloud Platform vs. Salesforce – Details

Cloud Platform for Independent Software Vendors (ISVs) – Amazon Web Services vs. Microsoft Azure vs. Google Cloud Platform vs. Salesforce

If you are an independent software vendor (ISV) selling to businesses (small to large) the cloud evolution/revolution that is currently underway is the most significant transformation, opportunity and threat all rolled into one. It is also represents a much bigger economic opportunity than the on-premise software ecosystem that it is pushing aside.

The key question for most software vendors is one of selecting the right cloud platform(s) that is most appropriate and advantageous with respect development, operation, marketing and distribution. In this blog post we will review the leading cloud platforms for independent software vendors along the facets of development, operation, marketing and distribution of various classes of applications. The cloud platforms reviewed for this post include

  • Amazon Web Services
  • Google Cloud Platform
  • Microsoft Azure
  • Salesforce

Continue reading Cloud Platform for Independent Software Vendors (ISVs) – Amazon Web Services vs. Microsoft Azure vs. Google Cloud Platform vs. Salesforce

The Platform Test for Public Cloud Computing Platforms

The paper by Dr. Cusunamo and Dr. Gawer on “Industry Platforms and Ecosystem Innovation” is a good resource to understand platform strategies and their impact on innovation in various industry ecosystems. In this post we will use some of the key points of the paper to evaluate Public Cloud Computing Platform strategies of Amazon, Google and Microsoft.

Dr. Cusunamo and Dr. Gawer define external (industry) platforms as products, services or technologies that provide the foundation upon which outside firms (organized as a ‘business ecosystem’) can develop their own complementary products, technologies, or services.

The paper identifies a number of different types of platforms, including internally focused product platforms, supply chain platforms and external platforms. But the focus is on external platforms and their characteristics. This post applies the analysis from the paper to the 3 dominant Public Cloud Computing platforms – Amazon Web Services, Google Cloud Platform and Microsoft Azure – and see which one fares best as an external platform. Continue reading The Platform Test for Public Cloud Computing Platforms