How do you improve your skills and usage of cloud infrastructure and solutions, in particular in AWS?
Chances are that you, the reader of this text are interested in this area. Practice is one answer, but that is not enough. It should be directed and focused practice, and it should be safe to fail and learn from the experience.
Here are some key points that I believe an adult person needs to be successful in learning relevant skills, both in the cloud space as well as in other areas
- a reason to learn - You as a learner should have a compelling reason to learn something in the area.
- suits your experience - Your experience is taken into consideration, and the learning process will provide a suitable challenge to you.
- be in control - You as a learner can be in control and be responsible for your learning process
- relevant - What you learn should be immediately relevant and applicable to your situation
- problems and solutions - Learning should be focused on solving problems, rather than just conveying information
- motivation - You as a learner should be motivated to go through the learning process
Course planning - consistent, reliable, repeatable infrastructure
The points above here are what I have as guides for thinking about course planning and producing learning material. The main area for these courses is consistent, reliable, repeatable cloud infrastructure. A way to reach this kind of goal is to apply principles of infrastructure-as-code.
My aim with the course development work I do is to provide a set of courses to pick and choose from, for using infrastructure-as-code principles and tools with AWS.
There will be self-paced courses, as well as those which include human interaction. More to come later.
AWS workshops
A place for learning material from AWS that I believe is not so well known is the AWS Workshops website. It is a portal for various other websites, all of which have in common that they consist of hands-on labs for learning a specific set of AWS skills.
There are more than 100 of these workshops, and they cover many topics within AWS. Not all of them may have the latest and greatest in their area, but AWS updates some of them on a somewhat regular basis.
Some workshops also include working with 3rd party tools from AWS partners. If there is a new area within AWS you want to explore, you can take a bit of time to find a suitable workshop from AWS for that topic.
Projen
A tool that has started to become a favorite of mine is Projen. It is a tool that makes it easier and quicker to get started with and manage software projects.
A common problem in some areas of software development is that there are many tools and configurations to make the development work easier, with many (semi-)automated tasks. It is smooth once everything is in place. But to get to that point whenever a new project starts can be painful.
Projen is a tool to package and abstract away a lot of that setup work you may need. It comes prepackaged with many project types, and it is possible to develop additional project types to use with Projen.
In my work, I have started to use Projen with many projects that use AWS Cloud Development Kit (AWS CDK) for infrastructure work. Projen has saved me much time and allowed me to get to a good base level quicker than before.
It is still in its early days, so there is room for improvement in the tool. If you work with AWS CDK, you should check it out. For other types of projects, it can still be quite valuable also but depends on the project.
I have two articles so far that cover Projen:
- How to simplify project setup with Projen
- How to Create Awesome Repeatable Project Set-ups for AWS CDK
I hope you have found some of the material here valuable. Feel free to reply with a comment!
Until next time,
/Erik