What happened on my ThoughtWorks sabbatical

Working at ThoughtWorks has many perks – one of which is a paid 12 week sabbatical after ten years service. I took mine over the UK Summer holidays in 2016 and thought I’d stick some stuff up about what I got up to. I’ll post again with some more updates about what I’ve been working on. So, the sabbatical…

I’ve been at TW for over eleven years now and in summer of 2016 I took the opportunity to take my 12 week sabbatical. It was over the school holidays since my main goal was to spend time with my family – we all know the impact that consulting has on this I guess. My plans were pretty fluid but I knew that I wanted to get away with the kids as much as possible and that I wanted to take some time for myself. I guess I really wanted to know what to focus on next at TW since I’ve done many of the roles in professional services before spending the last couple of years as a principal on teams, a lot of architecture consulting, writing and speaking at public events. A pretty full schedule basically.

Anyway, on to what I got up to, which I guess was the point of this.

I started the 12 weeks off by getting married – which was pretty much the perfect start.

I followed this up with a trip to South Wales with the family – Castles and beaches featured highly as you can see (as, unusually for Wales, did good weather!).

Carreg Cennen Castle

Tor Bay, Gower Peninsular

Next up, my wife and I managed to get some time to ourselves (not easy when you have four children between you) to go on honeymoon. We decided to hang out in the Dordogne and Loire areas of France for a bit – good wine and good cheese FTW.

Château de Chinon at sunset

When we got back it was time to head down to Wales again – when you have beaches like this ten minutes from your parents house it’s rude not to go to them as much as possible.

Pobbles bay

At this point it was time for the children to go back to school. Sarah too, since she works in Primary education. That left me with about six weeks on my hands. Fortunately I’d been planning a little walk so I took a week to prepare (all the gear, no idea of course) and set out for, you guessed it, the Welsh hills. Well, the Welsh Marches technically – I love that name, it sounds like it should be in a Shakespearean play.
I decided to walk as much of the 177 mile Offa’s Dyke national trail as time and fitness would allow. The trail follows the former Wales – England border and was where King Offa (circa 880 AD) ordered the construction of a defensive earthwork to project the Kingdom of Mercia from the expeditionary attempts (ahem) of the Welsh Princes of the time.
Also, after investigating how much it would be to stay in hotels and have my luggage portered between stops (a lot), I had decided to carry everything on my back. Now, you need to keep in mind that I’m not particularly fit. I had done something like this when I was in my early twenties, but that was in the distant past as far as my legs were concerned. Also, turns out if you are going to build a defensive earthwork, you build along the tops of hills. Who knew?
So, I set off at Chepstow and got as far as Monmouth on my first day (just!). My planning had extended to making sure that most of my overnight stops were in campsites with easy access to a beer so I carb loaded and then set off the next day. And so it went. Highlights of the trip were losing my glasses and being unable to read a map or compass (I had multiple redundancy with both maps and compasses but a single point of failure with my glasses. Doh). Also, I gave in and stayed in Baskerville Hall at one point (fun fact, it’s not in Devon as it is in the Sherlock Holmes books – he was a friend of the family and when he asked if he could set his book there they asked him to relocate the location since they didn’t want to be bothered by the great unwashed masses).
Looking back to the highest point of the trail
The hound at Baskerville Hall
This is at about the 60 mile mark looking backwards towards the highest point of the walk and to the Brecon Beacons. I wasn’t dressing for style…
Views west over the Marches. You would normally see the Black Mountains in the distance. But weather.
In the end, I made it 90 miles before deciding that I had made my point and that carrying on was kind of selfish to be honest so headed back home from Knighton having learnt a couple of things including that your legs need some time to get used to carrying a 30kg pack for 20 odd miles per day over rolling hills and mountains.
It was a fantastic experience and I would recommend it to anyone – it certainly gave me time to think, although it was mainly about putting one foot in front of the other. Also, take spare glasses…
The rest of my sabbatical was spent chilling out at home. It’s really lovely to be there when the kids get home from school and to generally be around more for them. Also PS4. My Battlefront game is pretty strong.
So, that’s the story of my sabbatical. It went by in a bit of a blur and suddenly it was time to get back to TW – which started with a keynote on the future of software at XT16 and a talk on organisational design at GOTO London. I’m currently split between a couple of clients and carrying on the public speaking. And already looking forward to the next one. Onwards!

Microservices – recent and upcoming events roundup

The last year or so has seen a surge in interest in microservices and so I’ve ended up contributing to a couple of podcasts on the subject and was also invited to air my thoughts by the BBC Academy after speaking at their annual internal BBC::Develop conference.  All good stuff. The links are here:

BBC Academy

Short (~15 mins) featuring myself, Russ Miles and Rachel Evans interviewed on microservices. (It’s me! On the BBC!)

http://www.bbc.co.uk/academy/technology/article/art20150108152505124

Software Engineering Radio podcast #213

This is an hour long podcast from SERadio of an interview I gave last summer. It’s interesting because the longer format gives myself and Johannes time to explore some ideas in more depth than is perhaps usual.

http://www.se-radio.net/2014/10/episode-213-james-lewis-on-microservices/

There is a transcript of parts of the interview in the January/February 2015 issue of the IEEE software magazine. Link coming soon

.NET Rocks! #917

A little older but another hour long podcast from the awesome dudes at .NET Rocks where myself and Matt Collinge  from Compare the Market talk about organisational change, microservices and CQRS.

http://www.dotnetrocks.com/default.aspx?showNum=917

What’s next?

It’s looking like a really busy first half of the year (and of course I’m also working with our clients during this period too):

BCS Edinburgh – 4th February 2015, 6:30 pm

I’m speaking at the local BCS branch on microservices and the “one true way”.

http://www.edinburgh.bcs.org/events/2015/140205.htm

Microservices Exchange, Berlin. 12/13 Feb 2015

Speaking on polyglot programmes at the microservices exchange conference in Berlin. This should be really fun and features lead thinkers in the field. Adrian Cockcroft will be there as well as former colleague Fred George (who arguable coined the term) and current colleague Sam Newman.

http://microxchg.io/

QCon, London. 2-6 March.

Lots happening at Qcon this year. I am a track host for the “taming microservices” track. We have Dan North, Phil Wills, Todd Montgomery and Phil Calcado (with one more to confirm) speaking on testing, design, protocols and operationalising microservices. I’m really excited about this as I really respect the speakers I’ve managed to get to talk for us. (And Todd is ex-NASA, how cool is that!).

http://qconlondon.com/track/taming-microservices

I am also running my and Sam Newman’s tutorial on design and implementation of microservices:

http://qconlondon.com/tutorial/design-implementation-microservices

Craft 2015, Budapest. 22-24 April.

I’m running the microservices tutorial again in Budapest at Craft. Again, excited about going since I’ve heard great things about the conference but never been before.

http://craft-conf.com/2015

GOTO Chicago, 11-12 May, 

I’m speaking on microservices in chicago at the GOTO conference. these are still my favourite conferences as an attendee and as a speaker. Thanks for the invite!

http://gotocon.com/chicago-2015/

I T.A.K.E Unconference, Bucharest. 28-29 May

I’m giving a keynote at this great unconference in Rumania in May. Details of this are still be worked out but I’m really looking forward to visiting.

http://2015.itakeunconf.com/

GOTO Amsterdam, 17-19 June

I’ll be in Amsterdam at another GOTO event. First time visiting this one so pretty excited (and obviously thrilled to be asked).

http://gotocon.com/amsterdam-2015/

It’s looking like a busy 6 months indeed.

Microservices Dot Net Rocks is now live

The interview that Matt Collinge, architecture lead at comparethemarket.com, and myself did last month is now live.

We talked about the journey that CTM have been on the last few years and their evolution of a new platform based on gradually replacing their monolithic core systems and their move towards product based teams.

Dot Net Rocks on microservices

We cover off topics including microservices, evolutionary architecture, continuous delivery and the importance of executive sponsorship amongst others.

I would like to publicly say thank you to Richard and Carl who made the experience fun and less scary than it might have been – you guys are awesome. I would also like to say thanks to those who attended the live event in Manchester.

How big should a micro-service be?

SRP and my Head

Many years ago, whilst working at an Investment Bank with a number of ThoughtWorks colleagues, we were thinking about how big objects should be. Obviously as developers we were thinking in terms of the Single Responsibility Principle, Open-Closed Principle and Separation of Concerns.

I came up with a simple heuristic. Simply stated, an object should be no bigger than the size of my head when pressed up against the monitor – basically a screenful of code. Now, I have a fairly big head (but thats ok, cos there ain’t much inside it) so your mileage may vary.

The reason I bring this up is because I’ve been speaking at a few conferences recently on the topic of Micro Services, and the following question is often asked:

“How big should an application be?”
Continue reading How big should a micro-service be?

Micro-services at Agile Australia

So I’m off to Oz next week – I am chuffed to be speaking on the topic of micro-services at Agile Australia

I am going to be talking about the trend towards smaller applications communicating via a uniform interface and exploring the trade offs we have to make when building micro-service based applications in the enterprise.

I’m also really pleased that my colleague, Sam Newman, is speaking on a topic that ties in particularly well to mine.

Update: Agile Peterborough

The event was a great success – thanks to everyone who came along and thanks to the organisers, in particular Alex Shaw (@axshaw) for putting on an excellent first local event.

Apparently something of a trend on the conference circuit at the moment, the event featured local artist Anthony Ashley
(@tweetBedders I believe) live painting the themes from the talks. The result is below – I kinda like it.

I

Lean and Lego @ AgilePeterborough

I’ve been asked to present at the Agile Peterborough meetup this Wednesday, 20th March.

I’m really pleased that the organisers have asked me and that we have had so many folks register for the event. There is a growing software development and craftsmanship community centered on companies based in and around Peterborough and I’m delighted to support the group.

The talk is one of my favourites, Lean and Lego – Building the Millenium Falcon. I’ve given this previously for both clients and at Agile on the Beach and it’s always a fun topic.

QCon SF 2012 tutorial on Micro services

I have an upcoming tutorial at QCon San Francisco on Micro services. It’s scheduled for Tuesday the 6th November for the full day. The tutorial will cover evolutionary architecture, web-integration, declarative provisioning of environments and tooling that allows us to create and operationalise simple and small applications.

Promo Code: lewi100

If you want to come along, then please use my speaker code when booking; you’ll get a $100 discount on your ticket which has to be a good thing.

Micro services – evolutionary approaches for systems of systems

“Write programs that do one thing and do it well. Write programs to work together” was accepted 40 years ago yet we have spent the last decade building monolithic applications, communicating via bloated middleware and with our fingers crossed that Moore’s Law keeps helping us out. There is a better way.

Micro services. In this tutorial we will discover a consistent and reinforcing set of tools and practices rooted in the the Unix Philosophy of small and simple. Tiny applications, communicating via the web’s uniform interface with single responsibilities and installed as well behaved operating system services. So, are you sick of wading through tens of thousands of lines of code to make a simple one line change? Of all that XML? Come along and check out what the cools kids are up to (and the cooler grey beards).

In this tutorial we will cover the following topics:

Principle-driven evolutionary architecture
Capability modelling and the town planning metaphor
REST, web integration and event-driven systems of systems
Micro services, versioning, consumer driven contracts and postels law
Testing, Building and continuous delivery
Operational concerns

There will be a hands-on element to the tutorial looking at some basic tooling that allows us to very quickly create and operationalise micro-service based designs. Bring a laptop!

event links

QCon San Francisco Main Page
www.qconsf.com

Registration
https://secure.trifork.com/sf2012/registration/

Tracks
http://qconsf.com/sf2012/tracks/

Twitter
https://twitter.com/#!/QConSF

Facebook
https://www.facebook.com/QCon