Test Driven development is a combination for many microskills and a fluency that allows you to solve problems while focusing on the problem instead of the microskills.
This workshop will endeavor to learn the individual skills as well as build the fuency to use these skills with the additional burden of everyday work.
a laptop with language & editor. (list at the bottom)
note: this is a very active hands on workshop. Please be well rested the night before
Our goal as software developers is to sustainably deliver value for our organizations. Conferences are a great opportunity to learn about the challenges other teams faced (challenges you might also be facing right now) and how those challenges can be solved. However, putting even the best of advice’s into practice is hard. This exciting day-long coding challenge will provide you with an opportunity to practice continuous delivery and related agile and lean principles. You and your team will compete with other teams in delivering the most value to your product. Along the way, our mentor will spend time with you and your team and give you advice personalized to your needs.
What you will learn:
If you prefer coding over writing documentation, then you’ll love Living Documentation! A Living Documentation changes at the same pace as software design and development, from establishment of business goals to capturing domain knowledge, creating architecture, designing software and coding. It builds on top of BDD and DDD, but it also has its own key principles and novels ways to dramatically improve your documentation at minimal extra cost by using well-crafted artifacts and judicious automation.
This workshop from Cyrille Martraire, the author of the book "Living Documentation" (Addison-Wesley Professional), will guide you on how to implement the approach in your projects. Even if you haven't read the book, this workshop is the right place to learn the main elements of a Living Documentation, step by step through a provided sample Java code base.
Need to take your containers into production and operate Docker clusters like a pro? This workshop skips Docker basics and CI/CD topics. Rather, it focuses squarely on the tools and techniques of building and operating container clusters using Docker. Starting where previous Docker 101 workshops leave off, you'll dive into Swarm Mode clustering (Docker Services), rolling updates, monitoring, logging, troubleshooting, Swarm recovery, and Docker security features. This workshop covers the latest built-in Docker features and common third-party tools, and Bret will walk you through installing them on your own five-node cloud Swarm cluster in AWS.
Most organizations find it hard to prioritize and repay their technical debt. The main reason is the scale of modern systems with million lines of code and multiple development teams where no one has a holistic overview. So what if we could mine the collective intelligence of all contributing programmers and start to make decisions based on data from how the organization actually works with the code?
Learn how to apply agile practices to develop the right products, deliver faster, increase quality, and become a happy high-performing team!
Many teams are adopting an agile way of working with Scrum, Kanban, XP, Lean, or any other agile framework. Their expectation is that it will help them to better serve the IT needs of their stakeholders and to develop products that satisfy their customer’s needs. Unfortunately, it doesn’t always work that way.
If your team is
- finding it difficult to agree and decide with stakeholders on what to deliver when
- not delivering working software every sprint or not able to finish user stories within reasonable time
- finding it hard to understand what your customers actually need and unsure if you are delivering value to them
- having difficulties communicating and working together as a self-organized team
- feeling micromanaged and not empowered to decide and take control of their own journey
- doing agile/Scrum/Kanban rituals but feeling that they are not always helpful
- not getting good actions out of your retrospective or actions not being done
then this is the workshop for you!
Applying agile to make it work for your team isn’t easy. But it can be done!
In the workshop Making Agile Work for You you will experience agile practices that you can apply in your teams:
The workshop is loaded with examples and suggestions to help you become more agile and lean.
This workshop is intended for:
The practices in this workshop will help you to develop the right products for your business and customers, reduce your delivery time, increase the quality of your software products, and become a happy high performing team.
What will you get out of this workshop:
“The workshop Getting More out of Agile and Lean was really interesting. I specially liked the product owner and team exercise, the impediment game and the 1-word retrospective that we did. I learned when and how I can use them in my daily work.”
Bill Souliotis – Manager Software Research & Development Graphics User Interface at BETA CAE Systems
“I’d like to thank you again for your excellent workshop. It was fun and I already started using some of the ideas with my team. The change is definitely notable.”
Liran Ben-Porat, qSpark LTD
“Nice to join a workshop in which the attendees and teacher actually have profound hands-on experience with agile.”
“Immersive, good choice of subjects, well led.”
“A lot of examples.”
“Good useful interactions and learning from other participants.”
Attendees from the GOTO Amsterdam workshop
“I attended Ben’s workshop in Athens (Getting More out of Agile and Lean) and I can highly recommend it to all professionals that are serious about Scrum and about applying agile processes in real-world problems of software development. Especially for Product Owners and for Scrum Masters, this training will help you and your organisation evolve to the next level. Thank you, Ben!”
Konstantinos Vasileiou – Certified Product Owner | Senior Business Analyst
People in the software industry are trained in programming, testing, design, documentation, and requirement management.
That makes our work very much based on blacks and whites: Does it compile? Will the test pass? Does it fulfill the requirements?
Bits and bytes, 0s and 1s, verified or not, yes or no, right or wrong.
Communication, on the other hand, is a spectrum. We are not trained to be effective in our communication and yet much of our work requires collaboration with others.
In this workshop we want to give you a space where you can learn effective communication techniques and have time to practice. You will learn to listen, not to respond, but to hear what is actually being said. We will provide you with tools to give and receive feedback. We will help you express what you want and what you need.
We want to inspire you to have the courage to be yourself as you communicate in an effective manner.
The morning is focused on listening. The afternoon is focused on stating what you want and feedback.
The day is a series of the following: a bit of information, practice in pairs or triads, de-brief and discussion with the group.
In this one-day beginners-level course, you will be introduced to a range of fundamental data science concepts. You will discover how to interrogate data, choose a which machine learning methods suit your problems and how to achieve results quickly. It will provide an overview of many tools and techniques. The course is focused towards developers through programming-led examples but is industry oriented. The goal is to provide you with enough knowledge to "know what you don't know" and enable you to discuss fundamental data science topics with confidence.
This course is aimed towards developers, in which we will discuss a little mathematics, but focus on developing real-life algorithms in Python. One-to-one help will be provided for developers new to Python and all algorithms, frameworks and libraries used will be demonstrated by the instructor.
This is an introductory course, which is suitable for most users with limited development experience. Some experience of Python is helpful. No data science experience is expected.
The day will comprise of a series of sub-hour theoretical sessions separated by practical exercises. It will cover a range of topics, but it is expected that you will be able to:
Leadership behaviour influences more than visible, measureable results. In our rapidly changing environment, the leaders attitude toward cooperation, creativity and change, is the new key for any team to succeed.
How can a leader turn a challenging development process into a creative flow for the team?
How can a leader support easy-to-realize, market-relevant, successful results and long-lasting team inspiration at the same time?
These are the focus questions of the 1-day workshop organized by Invention Factory (www.inventionfact.com), the exclusive user of ORGANOCO method in organizational development. The method works with the deepest layers of personal and team-psychology, and opens brand-new doors to creative thinking and success. Surprising ORGANOCO viewpoints, combined with unusual team exercises and interesting self-reflections guarantee more than a memorable experience. The workshop offers efficient practical tools, that can be applied in everyday work easily.
Leadership topics covered
The workshop is intended for
This is a practical workshop for developers and architects that want to take advantage of the latest trends in cloud computing: serverless apps and cloud functions. Through hands-on exercises and teamwork, you’ll learn about using AWS Lambda and API Gateway to create responsive event-driven micro-services, auto-scaling web APIs, and high-performance web sites. By the end of the workshop, you will create a useful real-world serverless application, exploring the typical architectural patterns. Serverless platforms significantly reduce the cost of running high-performance web sites and API services in the cloud, but with a major impact on architecture, these services also require teams to re-think how to approach sessions, storage, authorization and testing. The author of the workshop is Gojko Adzic, a key contributor to Claudia.js, a popular open-source deployment tool for AWS Lambda.
Serverless platforms significantly reduce the cost of running high-performance web sites and API services in the cloud, but with a major impact on architecture, these services also require teams to re-think how to approach sessions, storage, authorization and testing.
The author of the workshop is Gojko Adzic, a key contributor to Claudia.js, a popular open-source deployment tool for AWS Lambda.
Unfortunately, those of us who struggle with complex problems for a living don't have time to keep up with the enormous amount of cognitive science research that could help us become better thinkers, better problem solvers, and better decision makers. Having devoted more than ten years to researching the fast-moving fields that almost daily reveal new information, Linda shares what she has uncovered—some of it surprising, some even counterintuitive. She summarizes the research and provides concrete tips for improving your individual, team, and organizational abilities. Most of us sit all day, believing that concentrating without moving, in a room with no natural light, drinking too much caffeine, after our usual night of less than six hours of sleep is the way to get work done. Linda offers ways to incorporate movement, take a break, change focus, brighten our environments, think better, and be happier. Learn the latest tips for boosting your problem-solving power.
There is lots of theory out there about microservice architecture, but how often do you get to put that knowledge into practice? It's not feasible to re-architect your real system often, and certainly not in a single day, or is it? This brand new workshop from the author of Building Microservices gives you a safe space to explore ideas behind microservice architectures with peers from other organisations.
In this workshop, we'll share some framing for micro service architectures that explore the various forces that can drive the design and evolution of microservices, and then you'll participate in a series of interactive architectural kata exercises to put your new found knowledge to the test. Afterwards, you'll have a series of tools to take back to your own organisations to put into practice.
People who are in the process of moving to micro services, or are already on the path should get a lot out of the event. It's primarily aimed at people in technical leadership positions like tech leads and architects, but should be of use to any developer or operations person interested in how to move to microservices. Prior knowledge of service oriented architectures generally or microservices specifically is useful, but by no means essential.
This is a participatory workshop. You won't get to just sit there and watch - the more you participate in the workshop, the more you'll get out!
This day-long workshop will provide practical instruction in six essential activities that every security-conscious software engineer, software architect, and software project manager should know:
We won't get very deep into any particular code base: this is a completely programming language neutral presentation. We'll be focused on the process of producing secure and reliable code: what your team needs and what they need to do. The workshop is a combination of lecture, Q&A, and some planning and communication activities.
You'll receive, included with the workshop, some print and digital reference material to help you put what you've learned into action.
Apple released the Core ML framework in iOS11, making it simple to integrate machine learning models into your app. In this workshop, you will learn the lifecycle of training, deploying, and evaluating a machine learning model for making on device predictions.
Compute power, large datasets, time, and deep expertise are only perceived barriers, and there are plenty of options for overcoming them! Using techniques such as transfer learning and taking inspiration from the plentiful resources from industry and academia, you can get started doing this now. Note: We will move beyond the common cat/dog classifier.
As a reminder, predictions that have traditionally been made server side can now be made locally - offering unique advantages to the user, such as more data privacy and lower latency. Hardware improvements targeted for performing machine learning tasks (iPhone X’s A11 chip), industry standard models optimized for mobile (MobileNets), and many more recent developments signal that machine learning on mobile is part of the new path forward.
• Experience building iOS apps in Swift
No previous machine learning experience necessary.
What we will cover:
• Brief overview of ML terminology, tasks, and common algorithms
• Typical end-to-end machine learning pipeline and where your iOS app fits into it
• Identifying areas of your app that could be helped with machine learning & clearly defining the problem(s) to be modeled
• Acquiring a suitable dataset
• Training a machine learning model using Tensor Flow. We'll also discuss other options such as Keras & Apple's TuriCreate open source training framework.
• Deploying the trained model to Core ML
• Integrating the Core ML model into your app to make predictions on device.
• Using Core ML in combination with Vision when performing computer vision tasks
• Evaluating the performance of your machine learning model
This one day tutorial is for both testers and developers wanting to perform Exploratory Testing as part of their approach to software testing. It teaches exploratory testing and how to apply it in a systematic and deliberate way. Learn how it use it to add depth to your testing by focusing on risk and understanding business value. This class is experiential and contains practical exercises to help gain a basic exploratory testing skills. The workshop will focus on the following aspects of Exploratory Testing: Heuristics in Exploratory Testing Models in Exploratory Testing Exploratory Testing Strategy Oracles & bug finding Reporting to others You will learn: How to find bugs important bugs rapidly How to find bugs without test cases How to describe your testing to other people without using test case metrics This tutorial requires a laptop, please bring one.
This one day tutorial is for both testers and developers wanting to perform Exploratory Testing as part of their approach to software testing. It teaches exploratory testing and how to apply it in a systematic and deliberate way. Learn how it use it to add depth to your testing by focusing on risk and understanding business value.
This class is experiential and contains practical exercises to help gain a basic exploratory testing skills.
The workshop will focus on the following aspects of Exploratory Testing:
Heuristics in Exploratory Testing
Models in Exploratory Testing
Exploratory Testing Strategy
Oracles & bug finding
Reporting to others
You will learn:
How to find bugs important bugs rapidly
How to find bugs without test cases
How to describe your testing to other people without using test case metrics
This tutorial requires a laptop, please bring one.
Successful Internet companies are built on a foundation of excellent culture, efficient organization, and solid technology. As a company needs to scale, all of these parts of the foundation need to grow and scale with it. This highly interactive workshop will provide a deep dive into modern best practices at innovative companies in Silicon Valley for scaling culture, organization, and technology.
Driven primarily by the presenter’s experience ranging from small Valley startups to Google and eBay, we will learn about:
You will leave with concrete recommendations you can use to start implementing improvements in your own technology organization.
Module 2: Scalable Development Process
Module 3: Scalable Architecture
Module 4: Scalable Culture
The best, most effective presentations capture the audience quickly, hold their interest effortlessly, educate and entertain them in equal measure, and sometimes even inspire them. This full-day class explores simple and effective techniques for achieving those goals in any kind of technical presentation.
The first half of the course focuses on preparation, content selection, delivery techniques, and handling questions (or the lack thereof). The second half of the course is an in-depth tutorial on improving the "look and feel" of your presentation materials--regardless of which presentation system you use. In particular, it demonstrates practical techniques for making your slides not suck.
Who should attend?
Anyone who needs to present technical information in front of colleagues, clients, or any other audience.