Amazon Web Services (AWS), is a subsidiary of Amazon.com, which offers a suite of cloud computing services that make up an on-demand computing platform. It costs very little to get started, offers about 1 zillion different products and is the absolute end all of cloud computing.
Back in the day, we just called it configuration management. Or the build system. These days they add in a bit of software defined infrastructure and it is a whole new thing. Not in my book, but whatever. There is not doubt it is useful and important and tools like travis and gulp and the ever present git make it a straightforward affair. And I still love writing scripts that automate the whole thing!
CloudFormation is the most powerful tool in your AWS DevOps toolbelt. The ability to create then update using a transactional model in a declarative manner from souce then use the same model to deploy application is the best thing for the cloud... ever.
Git is ubiquitous. Everyone uses it. And like most, folks I do too. I've gone though numerous classes, used it alot during my personal development projects and during open source collaboration and even developed and taught a series of classes on its use to create an online portfolio on gh-pages to the Free Code Campers in Ballard.
Could implementing CI be any easier than Travis? Nope. Not in my experience. Why do anything else?
AWS Elastic Beanstalk is an orchestration service offered from Amazon Web Services for deploying infrastructure which orchestrates various AWS services, including EC2, S3, Simple Notification Service (SNS), CloudWatch, autoscaling, and Elastic Load Balancers. For my money, EB is fantastic for microservice deployment on ECS.
My special sauce is creating a shared vision and delivering it in a collaborative, iterative, value-driven fashion.
Scrum is a management and control process that cuts through complexity to focus on building software that meets business needs. Management and teams are able to get their hands around the requirements and technologies, never let go, and deliver working software, incrementally and empirically. But the tight definition of Scrum Master and Product Owner combined with a good process defintion isn't enough to succeed... I'm a big fan of ScrumBan.
For one, Kanban is NOT an Agile tool, framework or methodology—in fact, it’s not even derived from software development practices. Instead, Kanban came out of lean manufacturing techniques made famous by Japanese automakers who used it to manage their workloads. It is so silly simple that it makes me smile. Bottom Line: good stuff... kanban is.
I love manifestos. And the any manifesto that goes like this has my love:
Learned about curriculum development Set wacky goal... didn't make it. What I learned Learning Objectives & Learning Assessment focused Self report I do, we do, you do; to we do, you do, you extend Full range of on the why, the what and alternatives/use cases http://teachlikeachampion.com/blog/coaching-and-practice/especially-reject-self-report/
This course is a great example of why I love about curriculum development. Start with a simple problem... task automation from the command line. Present the basic skills hands on. Bring in higher order thinking by talking about the merits and challenges with approach. Iterate then present more complicated use cases. By the end, the student knows a new library, a new development workflow, and a couple of new data structures. Super fun course!
"Github Pages Portfolio Development with Jekyll, Yeoman and Gulp.js" is a three evening class where budding developers create their own portfolio website while learning the basics of Git, Github, Bash shell, the Ruby Tool Chain (rvm, gem and rake), Jekyll, Markdown, the Node.js Tool chain (nvm, node and npm), as well as how to scaffold using Yeoman then a bit about Gulp.js and the gulp-gh-pages plugin. This is a hands on, intensive class using the c9 online development environment. Folks get a lot of out this class, and the metrics keep getting better each time I teach it!