Speaking at .Net Developer Days - October 19-21, 2016 Warsaw
I’m giving two talks at .Net Developer Days in Warsaw next week
JOIN @DeveloperDaysPL! #netdd with @michaldudak @bzalewa @tech_fellow @donwibier @hercegtomas @farmar @mangalexandru pic.twitter.com/IJwF8XmG5x— DeveloperDays (@DeveloperDaysPL) September 9, 2016
Giving a talk at LDNUG London 18 October 2016
I’m giving a talk at the London .NET User Group 18 October 2016 18:30
I’m going to be talking about why SOA/Microservices can help with building better software systems. Hope you can join us. http://www.meetup.com/London-NET-User-Group/events/234376491/
Commands and Events
Messaging can help us to achieve loose coupling between components by introducing asynchronous fire and forget communication, this also help us maintain the autonomy of our component and preserve logical “Service” boundaries.
In general by using explicit naming, it should be clear what it is you expect the message handler to do. Combined with the “Single Responsibility Principle” (SRP) we can achieve better decomposition of our systems. For example, “UpdateUser” says very little about what this method is actually doing, while “UpdateUserPhoneNumber” or “ChangeUserPassword” is more like it :-).
It also means we are starting to slice and dice our entity to smaller units/properties that do only one thing, they change the state of the fields that reflect the unit of work’s effect of the state change (my mobile phone number has been created). Using the Command/Event semantics clarifies what is the intent and logical boundary of a message.
Commands: - Internal communication between components inside the boundary of a logical “Service” is done using commands. - Commands (as the name implies) can command another component within the boundary of the logical “Service”. - They change the state of the processing component. - They contain the data and context that the component (handler) needs in order to execute its task. - Commands are “Sent” (using bus.Send() using NServiceBus) to exactly one component (handler) (one to one communication).
Events: - Events are used for cross logical “Service” communications. - They notify of things that happened in the past. - They are light and contain only reference data like Ids and a small amount of context data. - Events are published (bus.Publish() using NServiceBus) - There is only one logical publisher and one or more subscribers. - Events can also be used inside a logical “Service” between internal loosely coupled components. To summaries: Use Commands with data inside you logical “Service” boundary to change state. Use Events with reference data for cross logical “Service” communications. Follow the Single Responsibility Principle, it will help reduce the size of your units of work. Reducing coupling is our objective.Read more
Microservices group Dublin 28 September 2016
I gave my Building (Micro) services talk to the Dublin Microservices user group.
I want to thank the organizers Sean and Leanne and the hosts Gilt Group.
The slides are here
Here are the slides from @farmar's talk last night 😃 #MicroservicesDublinhttps://t.co/LsYcQoc7cU— Microservices Dublin (@MicroserviceDub) September 29, 2016
We are back with @farmar tonight! With his talk "Building (micro) Services On .Net" #microservices pic.twitter.com/Xmmhn6QZjM— Microservices Dublin (@MicroserviceDub) September 28, 2016
At microservices meetup with @ParticularSW 's @farmar presenting . Hosted at @Gilt pic.twitter.com/9GgX2HHPxe— Kostas (@codesennin) September 28, 2016
Surf Office meetup London 21 Sept.
I had the opportunity to talk about how we (in Particular Software) work as a dispearsed company at the Surf Office meetup in London We, Laïla von Alvensleben Anna Chiara Bellini and I each gave a talk and then we had a Q&A session, more details here:
Great talk last night organised by @faborio and his @surfoffice on #remotework #nomad working life style pic.twitter.com/9alhmjeapd— Adelina Popescu (@Adelina_Popescu) September 22, 2016
Krakow User Group Wed, 14 September
We organized a company meetup for the the European part of Particular Software in Krakow.
Being a dispersed company (we all work remotely) it was great to meet everyone in person.
As we where already in Krakow we managed to give back to the community, Daniel Marbach and I gave two talks at Krakow User Group (It is only in polish :-)) (slides here)
We then stayed on to attend the DevDay conference in Krakow, William Brander gave his session “So You Wanna Build a Service Bus?”, it was a good conference with a lot of great speakers!
If you happen to be in Poland on the 14th go see @farmar and @danielmarbach speak at https://t.co/mvO26ij6fu. https://t.co/ky7XnoyiA0— Colin Pear (@ColinPear) September 13, 2016
DDD 11 Reading UK - Saturday, September 3, 2016
I gave my “Building (micro) services in .Net” at the DDD 11 conference in Reading. It was a well organised conference with great speakers.
@farmar enjoyed your session today and would like to chat more, minefield of a topic and lots to discuss / consider #ddd11— Geff Lombardi (@lombogeff) September 3, 2016
Dublin Microservices user group May 2016
I had the opportunity to present my new talk “SOA lessons learnt (OR Microservices done better)” to the Dublin Microservices group.
The slides are here, the recording:
Stefan Tilkov also gave his talk “Wait, what!? Our microservices have actual human users?”, It was very interesting, I like his Idea of the browser as a platform. Stefan’s deck if here, the recording is [here]
I want to thank the group organisers, the hosts Gilt for a great event.Read more
Happy New Year!
2014 seam to have flown by…
Lots of exiting things happened, some public some private. I can say I’ve learnt a lot and had the opportunity to speak at NSBCon NYC and the WebSummit Dublin, attended great conferences like Craft in Budapest, NSBCon London and NYC, Build Stuff in Vilnius, I met a lot of interesting people and learn a lot of interesting things i don’t get to do on my day to day work.
On the work front was also very interesting and i’m looking forward to this new year.
Happy New Year!Read more
NSBcon London 2014 the first NServiceBus conference
I spent the last week in London and attended two events relating to NServiceBus.
The ADSD unconformance was my first unconference , and it was very interesting. The attendances are alumni of Udi Dahan’s Advanced Distributed Systems Design with SOA course.
The ADSD course had been running for the last couple of years all over the world and I had the opportunity to meet up with the guys I did the course with in Stockholm.
I was the caretaker of two sessions, one was about “3rd party integration and Service Boundaries” and the other was titled “How are you using NServiceBus”.
All discussions where very interesting and a chance to hear what other developers are thinking, doing and are puzzled about with NServiceBus and SOA. Thursday and Friday it was NSBCon, it was the first NServiceBus conference and so it is a major milestone for NServiceBus users and the Particular platform.
Udi started with the keynote, NServiceBus Past, Present, and Future, apologizing for the past :-) doing a bit of a retrospective and excited about the future of NServiceBus and the Particular platform. Charlie Barker (@Porkstone) one of the dinosaurs of Wonga talked about why and how they are using NServiceBus at Scale Yves Goeleven (@YvesGoeleven) talked about NServiceBus and Azure called NServiceBus on the Windows Azure Platform James Lewis (@boicy) talked about Managing Microservices Roy Cornelissen (@roycornelissen) and Mark Taling (@MarkTaling) gave the Embracing NServiceBus – Best Practices talk Then Yves Goeleven (@YvesGoeleven), James Lewis (@boicy) and Andreas Ohlund (@andreasohlund) did a Q&A session titled Park Bench Panel Discussion That was the end of day one and we all went to the pub/dinner where the conversations went on… On Friday we started with Danny Cohen and he did a Deep dive into the Particular Service Platform Jan Ove Skogheim (@janovesk) talked about the move from layered Web Services to an Event-driven Architecture at Rikstoto Dylan Beattie (@dylanbeattie) of Spotlight told us about Media Publishing Workflows using NServiceBus Indu Alagarsamy (@Indu_alagarsamy) and John Simons (@ohnsimons_) did a talk about the new pipeline called NServiceBus - Lego Style Andreas Ohlund (@andreasohlund) talked about the core development team process, tools and values in his slice Under the Hood of Particular Software Greg Young (@gregyoung) and Szymon Pobiega (@zymonPobiega) reviewed Event Store and NServiceBus including the Event Store Transport To Wrap up Udi Dahan gave the Closing Notes Andreas gave the thumbs up and Udi announced the release of NServiceBus 5.0 Beta! All and all it was a great conference, it was nice to see the developers using NServiceBus, some of which i know from github or twitter in the flesh… Looking forward to the conference next year :-) and the next one NSBCon NYC 2014 - All about NServiceBusRead more