Cert Addict!

Wow.  I cannot believe it has almost been two months since the last post.  That is a fair proportion of my two year target.

So to recap, it is interesting to look back on the last post.  For example, I did pick up AWS SysOps again and did this:

My very top secret project has progressed up to a point but stalled when it came to building a UI.  And also – guess what!  – I had another epiphany or lights-on moment, whatever you want to call it.  Given the nature of the application it struck me that that the whole thing would be best suited to a serverless-Lamdba-API Gateway-S3 architecture.  I am now a Certified Architect so I can do these things.  It is not that big a step.  Many of my Python routines can be pulled into Lambda as-is.

This does mean of course that I will be moving from EC2 to Serverless before serving any real customers.

It also means I cannot reveal the brilliant idea and name for the application just yet.

Certification Addict

I have decided to conclude my year of AWS Certification hoarding by doing the Associate Developer exam.  There is a lot to be leveraged from knowledge learnt on previous exams so not leaving it too late is an advantage.  I also think that the topics will support my various projects nicely.  In fact it was while going through API Gateway modules that I decided to rework my very top secret project.  Yes, I know I am a certification junkie.

After that, I think I will give AWS studying a rest for a while.  The next stage up hurts my head thinking just thinking about it.

DevOpsDays London 2018


I attended my first DevOpsDays in September.  Will definitely do it again.  Very chilled,  great talks – much more varied than I had anticipated.  I really enjoyed the Open Spaces too.  I will add links to my favourite talks in My Picks below.

I was particularly inspired by a lightning talk on how some deliberately over-engineered their profile web-site in order to learn as many technologies as possible.  This is a sentiment I share.  Most of the things I work on privately are done this way.

My Picks

I thought I had read and seen everything about the making of 2001: A Space Odyssey so was surprised to enjoy this book as much as I did.  

“At this point it dawned on him that the leopard had not seen him in the monkey suit before” was one go the funniest lines I have read in a while.  Well recommended.

I also saw Tina: The Musical which gives me an excuse to share gifs like this:

Finally, links to DevOpsDays talks I enjoyed:

Overengineering Your Personal Website – How I Learn Things Best – Jamie Tanna – here.

Neurodiversity and the Essence of DevOps – Jeff Sussna – here.

Why are Distributed Systems so hard? A network partition survival guide – Denise Yu – here.

Tickets and Silos Ruin Everything – Damon Edwards – here.

Start With The API

A Pet Project

I have just come to the end of a holiday during which I used a lot of downtime (in very pleasant environments) to start a small dev project. I will provide some more details in a future post of exactly what I am trying to do.

As you will have seen in previous posts, I have been meaning to move off the studying and reading track and onto an actual building and doing track. I have chosen my project well. It is small enough to move quickly but complex enough to introduce a number of different of technologies.

Learning From Doing

Here are some of the things that I have learned to do over the past few weeks.

  • I have used Python and Flask to expose some simple API’s
  • I have served those API’s from a Docker container both locally and on AWS. This means that the API’s can be hit from anywhere on the Web
  • I wanted to add persistence so used AWS DynamoDB both locally and with the managed service
  • I have used Boto to call AWS API’s from my Python code.

It crossed my mind whilst doing all this that maybe I was just hacking. Where exactly does this fit into DevOps practices and my Mission?  My conclusion – I have been following good CI/CD principles (although my tests need some TLC):

  • I have checked everything in to a remote GitHub repo – Dockerfiles, test files, Python code
  • I have pushed Docker images onto Dockerhub
  • I have a pipeline. Update code, build new image, test locally, push image to DockerHub, pull image to an EC2 instance and run from there.   Very manual but simple
  • I have regularly destroyed everything and rebuilt everything using Dockerfiles and Python scripts to do things like recreate DynamoDB tables. Not quite full automation, but very easy to set up elsewhere.

Additionally I have thought hard about how to approach iterations of my code so as to avoid breaking things and to be very quickly able to build and test an end product rather than diving in and changing 10 things at once and then spending hours making it work again.

I have been making sure my code is in a releasable state at all times. An example would be using a variable to point to an in-code list and then pointing it to a database equivalent so that I could easily switch back if it didn’t work. Then when the database was working, delete the in-code list.

Two Key Learning Points

Predictably, it is amazing how much more you learn when actually doing things rather than reading about them. Examples include the difference between using IAM roles and AWS access keys or the flexibility of a managed service NoSQL database.

Secondly, and this is where the title came from, I have started with the APIs. Rather than thinking of an app, I designed a set of API’s before starting and worked out how I wanted each to behave. I have made sure that they are independent and stateless so they can be assembled and called in different ways. At some point I will build a lightweight page that will draw them together in some meaningful way.

This is very different to my old iOS hacking days. I also intend to split the API’s out into their own independent containers which will give me a real world example to play with orchestration tools.

What About AWS SysOps?

I have partially parked this as I was unable to find time to do the exam before my holiday. However, I have created a GitHub repo where I am building cheat sheets.

I have just found out that there is a late September deadline, after which the course changes which means I will have to pick this up again soon.

My Picks

I have been so ensconced in the above, going back to work and family matters that I don’t have too much to add here. I still love GLOW. I still love The Replacements. And here’s a clue, my pet project is very Madonna-centric! More to follow in a future blog.

My other favourite thing recently has been watching Stewart Lee’s Content Provider show. I saw it live but watching it on TV made me laugh just as much second time around.

I have also seen David Byrne live for the first time ever and was blown away. Going again.

Finally, for those studying AWS, I thoroughly recommend A Cloud Guru – they can be found here.

Reflections

So clearly an inspirational post title is not happening today.  Still, “Reflections” sounds very bloggy does it not?  For some reason I thought my time was almost up, but I checked back to my first post and realised I have a few months to go.  I also reflected, again, without success on how I would know if I had succeeded.

Two months since the last post!  What have I been up to?  Well reading as always.  I did read Accelerate – some great lessons about how to activate culture changes (do it by changing the things you do, not by imposing culture change itself).

I also appeared to be one of a handful of people left who hadn’t read The Goal so I read that too.  As with many others I found it insightful.  In particular the section where a machine was operating on parts that were already defective reminded me there is financial and processing cost if quality issues are not detected as early as possible.  Baking in quality early is not just about shorter feedback cycles and reducing fix costs.

I have been studying too.  I have decided to take on AWS SysOps certification.  Yes I know.  #certificationJunkie.  However I may have run out of time to finish that before a rapidly approaching holiday.

I have decided to have some fun too.  My reading list had list expanded so I read this Dr Who novel and, 30+ years since I first read it, Do Androids Dream of Electronic Sheep.

What I haven’t done is build anything for a while.

TV and DevOps

I have also been indulging in box sets.  Westworld 2 surprised me by being way better than I thought it would be.  It made heavy weather of getting there, but the finale was delightful.  Their attitude towards operability and high availability left a lot to be desired.  <<SPOILER ALERT>> The humans had all of their critical data in a single data centre.  They deserved all they got.

My Picks

I have also just finished GLOW which hooked me completely. One episode in particular had me in bits.  Might chain watch it again.  Alison Brie – I salute you!  Perfect excuse for a Zoya The Destroya gif.

Musically, it seems one listen of any Replacements song is enough to have it pinging around my head for days.  This includes some of the outtake bonus songs too – Birthday Gal and Valentine being two recent examples.

Finally happy 60th birthday Madonna!  I salute you too.

Increasing Post Cadence and Python

Upping my blog post cadence then.  This even briefer than usual.  I am thinking that for the record I should say what I am doing.

Firstly, I am back on the Python trail, spending train journeys going through books and exercises.  I decided to restart the book after stopping a few months ago.  This went better than expected.  I had forgotten less than I thought and expect to be moving into new territory this week.

Secondly, the Accelerate book turned up so I look forward to spending a bit of reading time on that too.

Finally, I attended the AWS London Summit this week.  Not the best AWS day I have spent, but did get to see Dr Werner Vogels speak.

My Picks

Really enjoying some music documentaries.  Shane Meadows’ Made of Stone always reminds me of how brittle and brilliant The Stone Roses and why I love them so much still.

The Replacements Moments

Wow.  Almost two months since my last post.  Two strangish months during which I have felt like I have fallen off the mission wagon and yet have still put in a lot of reading and studying.

I think part of the problem is a lack of focus.  At the beginning of the year it was a case of head down, study for AWS certifications.  I had planned to roll straight into AWS Sysops but didn’t for two reasons.  Firstly I was  studied/exam’d out.  Secondly, I currently work in a GCP world and without any private AWS stuff going on was concerned that anything I learnt would instantly be forgotten through lack of use.

So I have not done that and have not done any GCP studying or certification either for similar reasons.

What have I done since last post?  Well, as per that last post, I attended a brilliant hands-on Kubernetes course (free!) run by Google and Jetstream.  I also attended the Pipeline conference which amongst other things has inspired me to do a talk sometime soon.

I have kept reading too.  I felt the need to finally read The Lean Enterprise.  It felt like a collection of ideas brought together in one place for enterprise level convenience – which was probably the point.  Some great ideas in it though.

I have also been re-reading Building Microservices – probably my favourite book since I started down this path, along with the DevOps Handbook.  I have probably read the former’s testing chapter three times.

So what next?  I have not got my hands dirty for a while.  Time to re-read Python books and build something.  I know I said that last post too.  I have also got an AWS Summit to go to.  There will also be more reading – a bit of this .  I am also thinking of revisiting The Art of Monitoring to find out if my “out of depth” moment comes a bit later second time around.

My Picks

God, I love Infinity War.  Standards-wise, surpassing modern Star Wars easily.

I have missed running.  Started again, very slowly.  Thought about blogging it -everyone loves a good exercise blog don’t they?  And then thought better of it.

Finally, many years too late I have discovered The Replacements.  Watch!

Happy Birthday Mission!

Well, it’s oh so quiet here.  So quiet that it escaped me until this week that my mission is one year old.  Eek!  That means there is only year to go.

I have reflected recently on what being a “DevOps practitioner” actually means.  However, at this point I will avoid the navel gazing and crack on.

Since last post, I have become AWS again.  This time as a Certified Solutions Architect.  I am tempted to tackle the sysops exam soon – there appears to be overlaps with what I have been studying but I am feeling a bit revised out.  I am feeling the urge to read – my reading list expands constantly – and to build something.

Over the past couple of weeks I finally finished reading Continuous Delivery.  I am pleased that I am operating on a level where I can understand, value and relate to the material.

Next up, I am spending a couple of days out of office attending this year’s Pipeline conference for the first time.  I have also signed up for free (free!) Kubernetes training provided by Google.    Reading-wise, I will be looking at some Value Stream materials and building-wise I plan to pick up Python again and see what I can do.

My Picks

I enjoyed the latest Food Fight podcast on incident management here.

Away from the mission, I really enjoyed the Pig in a Day course at River Cottage.  Steve Lamb might just be my new favourite person.

Ok, I finally get The Flight of the Conchords.

Next Certificates, then Pipelines

Another month flies by without a new post.  In fairness, I have been busy starting work with a new client.

So what has been happening in Mission land?  Well, as seen in my last post, I became AWS Certified as a Cloud Practitioner in January.  It struck me that I had a lot of momentum as well as considerable overlaps in content with other AWS learning paths so I have decided to keep going and study for the a Solutions Architect certificate.  I am planning to take the exam very soon.

I then need to get reading and building again.  New client work means that finishing CD/CI/pipeline/value stream materials are more relevant than ever.

My Picks

I attended an “AWS Builders Day” in January.  Lots of interersting container talks that can be found here and here.  Abby Fuller talks were particularly entertaining.

The LA LA Land soundtrack has been on heavy rotation too.

 

Certification Time

Blimey, I cannot believe it is almost a month since last post.  That’s what a holiday season does to you I suppose.

I have managed to spend a fair bit of time  working on my mission over the festive period.  I finished a very basic free Python book and have graduated to this.  (I like Python).  New book looks like it will lead me to Virtualenv and creating some basic hosted apps that I am looking forward to Dockerising.

What about Kubernetes?  Well I hit a few stumbling blocks.  One of which was cost, the K8s cluster suggested by my materials cost me about £100 per month.  Not the end of the world and I know I can stop and start instances  but still.  There were also some technical challenges that I am not quite ready to solve.

On a brighter note, I discovered that AWS Re:invent 2017 has lead to hundreds of podcasts with a wide range of engaging subjects.  That lead me to kook at a certification path which is the reason I will be doing a “Cloud Practitioner” exam this week.  I do understand why some people in the industry are distrustful of certifications – they can lead to a lead of a lack of variety in the skill gene pool – but this have given me a target and incentive.  I am going to try and climb the path to become an AWS Certified Professional DevOps Engineer before the end of the year.  That will show ’em.

My Picks

It has to be the AWS Training and Certification bonus material videos by Blaine Sundrud.  The subnet, Bastion, NAT gateway networking chapter is the most useful and fun 10 minutes I have spent in my studying for some time.  (I cannot provide a link as it is embedded in the AWS Cloud Practitioner digital training materials – it is free.)

The AWS Re:invent 2017 podcasts can be found here in all their glory.

 

Completed The Terraform Book

(Spurious cultural reference ahead …)

I loved The OA.  One of many idiosyncrasies is the great variations in episode running times, naturally supported by Netflix unscheduled TV.  It struck me that blog lengths could be the same.  So here is a short and sweet one.

Today, whilst being more or less snowed in, I finished The Terraform Book – both reading and working through it.  I am managing to get through these topics faster than before which is encouraging.  As ever, I got hit by a couple of issues listed below but worked out solutions:

Invalid DNS record on Cloudflare

Removing splat braces

Most of my work is now checked in here.

I think Kubernetes may be next (gasp!), or maybe a bit of Python.

My Picks

The OA.  Ha ha.