An outline and initial agenda for my spring class at Columbia University is below.
Modern *-as-a-Service Applications
The original focus of cloud computing/solutions was infrastructure-as-a-service and software-as-a-service. The cloud has broadened to to encompass many forms of X-as-a-Service. This course will focus on a set of technologies for building cloud spanning applications and solutions based on as-a-service technology. Specific topics will include:
- Basic foundational concepts, especially the basics of building REST APIs.
- Function-as-a-Service/Serverless technology, e.g. AWS Lambda.
- Platform-as-a-Service as an extension of core application functionality and data models, e.g. Force.com.
- Integration Platform-as-a-Service, e.g. Boomi.com, SnapLogic.
- Data-as-aService, e.g. DynamoDB, GrapheneDB/Neo4J.
- API management.
- Programmable web.
- Tool and workspace integration, e.g. Slack.
The course will teach the concepts by incrementally building a simple, cloud spanning application that integrates business APIs and develops new functions using X-as-a-Service capabilities. The coursework will be a a series of small team projects that incrementally builds the solution.