Tag Archives: micro-services

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?

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





Java micro services talk online

I was asked to present this year at the 33rd Degree conference on Java Micro-services and i’ve finally managed to get the slides up on slideshare.

You can find them here.

I would like to thank the conference organisers since I had a really interesting week with some great feedback. I really need to write a bit more on the topic since it seemed the topic was useful and interesting for people.

Thanks everyone who attended. Hope to see you again next year.