GOTO is a vendor independent international software development conference with more that 90 top speaker and 1300 attendees. The conference cover topics such as .Net, Java, Open Source, Agile, Architecture and Design, Web, Cloud, New Languages and Processes
Fred George, TweetEarly Adopter of OO & Agile, Advocating MicroServices & Programmer Anarchy
Biography: Fred George
Fred George is an industry consultant, and has been writing code for over 46 years in (by his count) over 70 languages. He has delivered projects and products across his career, and in the last decade alone, has worked in the US, India, China, and the UK.
He started ThoughtWorks University in Bangalore, India, based on a commercial programming training program he developed in the 90's. An early adopter of OO and Agile, Fred continues to impact the industry with his leading?edge ideas, most recently advocating MicroS?ervice Architectures and flat team structures (under the moniker of Programmer Anarchy).
Oh, and he still writes code!
Twitter: @fgeorge52
Presentation: TweetChallenges in Implementing MicroServices
MicroService Architectures has debuted on the ThoughtWorks Technology Radar as the first technology they address, and with strong recommendations to immediately experiment. In this talk, we discuss the challenges we have faced at three different companies in implementing MicroServices (successfully!), and the different ways we addressed the challenges.
In this talk, we will:
- Define microservices in a manner that tends to be smaller than most
- Introduce an asynchronous architecture wellsuited for microservices, and more importantly, for dynamic business environments (including an animation of the process in action)
- Summarize the experiences at three different companies in three different businesses (Webbased sales, online newspaper, and optimization engines for Fortune 100 companies)
- Suggest corequisite technologies and process that enable/facilitate microservices
- Discuss 5 different challenges that face implementers that we have identified so far
This is a technical architecture discussion with detailed examples of actual implementation. Attendees with such backgrounds will benefit most. Project leaders, developers, and project managers, nevertheless, will walk away with new ideas as well as understanding the linkage between process and architecture.
Workshop: MicroServices - Let's Build Some! (Wednesday) (Sold out) Tweet
While “microservices” is becoming a heavily overworked term, it has been interpreted many ways. In this workshop we will explore a particular style, tiny asynchronous services, that was the core of one of the most successful implementations. Given an animated specification of flow, we will embark on delivering the proposed services, wrestling with the issues common to this new paradigm.
It is one thing to talk about MicroServices. It is another altogether to have to build them.
After a brief introduction of MicroService principles, we will watch an animation of a microservice environment. We will start with a prebuilt skeleton microservice environment (message bus plus a couple of RESTful services running against it). We will then design and implement additional services to broaden the overall functionality. These additional services can be written in any language that will run on the participants laptop. While pairing is strongly encouraged, it is not required.
In the final stage, different pairs will implement different services, yet they will all run together implementing the animation.
We wrap up with the participants making observations on what they learned (and how it may be different from MicroServices they are currently implementing, if any).
Outline/structure of the session
1. Introduction to MicroServices
2. Sample asynchronous MicroService application
3. Installation of sample MicroServices for the exercise
a. Installing RabbitMQ drivers for your language
b. Testing access to RabbitMQ server
4. Implementing a new MicroService
5. Discussion of effort
6. Implementing a second MicroService
7. Discussion and review of code
8. Implementing the application (teams develop different services that will work together)
9. Wrap up observations by participants
Learning Outcome
The focus of the workshop will be on: 1) Understanding how to design asynchronous service
architectures, 2) Creating small, yet functional, services rather than larger services, 3) Reducing coupling to the bare minimum (JSON packets with extra fields ignored), and 4) Debugging asynchronous systems.
Audience: Developers (we will be writing code).
Workshop: MicroServices - Let's Build Some! (Thursday) (Sold out) Tweet
Outline/structure of the session
Learning Outcome
The focus of the workshop will be on: 1) Understanding how to design asynchronous service
architectures, 2) Creating small, yet functional, services rather than larger services, 3) Reducing coupling to the bare minimum (JSON packets with extra fields ignored), and 4) Debugging asynchronous systems.
Audience: Developers (we will be writing code).