1. Overview
    1. Cloud Function declarations are called triggers
    2. Cloud Function developers attach JavaScript functions to triggers
    3. Microservices architecture based applications can be implemented entirely in cloud functions
    4. Cloud Functions can be used to enhance existing applications without worry about scaling
    5. With Cloud Functions, instead of setting up an environment, a JavaScript is published and invoked based on a trigger
    6. Cloud Functions is a microservices architecture
    7. Cloud Functions exposes a single endpoint
    8. Cloud Functions backend is a single piece of code that accepts a limited input, executes rapidly, produces some output and then exits
    9. There is no need to pay for servers
    10. Cloud Functions users only pay whenever their functions runs, in 100 millisecond intervals
    11. Cloud Functions can trigger on events in cloud storage, Cloud Pub/Sub, or a HTTP call
    12. For each event type, a developer can configure a Cloud Function to trigger
    13. Cloud Functions triggers can be configured using Cloud Pub/Sub, HTTP and Cloud storage
    14. Cloud Functions can be deployed from a Cloud Storage bucket, Github or a Bitbucket repo
    15. Cloud Functions are written in Javascript running in Node.js
    16. Cloud Functions is integrated with Operations tooling for monitoring, logging, and error reporting