Masterclass: Surviving Legacy Code

Date: 8 November 2019, Bucharest
Training fee: €300/participant plus VAT, only 25 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 740 849 770).

Summary

We all have legacy code, meaning profitable code that we’re afraid to change. It doesn’t matter who wrote it, in which language, nor when. It matters that we feel the fear now and need to deal with it. Rewrite or refactor? How do we write tests? There’s so much to change; how do we get started?

In the typical programmer’s day job, there’s no time to learn how to do this. We’re already behind schedule and the cost of fixing the legacy code is crushing us. We need a way to learn how to do this safely, correctly, and eventually, even quickly. That’s what Surviving Legacy Code is about.

Audience

Any programmer forced to deal with code that strikes fear in their heart. That is, all programmers, eventually.

What you’ll learn

  • When to refactor and when to rewrite, and how to do that safely.
  • The killer technique for exposing in glorious detail exactly where the code wants us to break it apart.
  • How to use statistical sampling and logs to cobble together the beginnings of a test suite.
  • How to sterilise a legacy environment before even trying to change the code.
  • How to crack the chicken-and-egg problem: I need to write tests in order to refactor, and I need to refactor in order to write tests.

What you’ll do

  • Work in short sessions on a diabolical-but-fun code base (available in at least 20 programming languages).
  • Practise micro-committing, a key technique to changing difficult code safely.
  • Apply the lessons from my code base to your project. (Only in private courses longer than one day.)
  • Practise a handful of refactoring and testing exercises that develop the most essential legacy code rescue skills and disciplines.

What you’ll need to bring with you

  • A computer, with a working software development environment.
  • Something to write with, and something to write on. I suggest index cards and a notebook.

What you should do before you attend

  • Install the development environment for the programming language you wish to use: Eclipse, IntelliJ IDEA, Visual Studio, vim, emacs, whatever you choose.
  • Install git.

The trainer

Consultant, coach, mentor and author, helping both teams and individual programmers learn high-productivity techniques for delivering software. He would like to continue teaching teams how to avoid unnecessary work, remain focused on what absolutely needs to be done, then do it quickly and effectively. He incorporate the values, principles and practices of agile software development in both his work and the advice he gives others.

Date: 8 November 2019, Bucharest
Training fee: €300/participant plus VAT, only 25 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 740 849 770).

Lunch and Coffee Breaks included in the price of the Masterclass.

Browse more masterclasses here.

Masterclass: Crafting Code

This course is designed to help developers write code that is well-crafted. Meaning code that is clean, testable, maintainable, and an expression of the business domain. The course is entirely hands-on, designed to teach developers practical techniques they can immediately apply to real-world projects.

Date: 28-29 November 2019, Cluj-Napoca
Training fee: €600/participant plus VAT, only 20 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 740 849 770).

About the training

Software Craftsmanship is at the heart of this course. Throughout, you will learn about the Software Craftsmanship attitude to development and how to apply it to your workplace.

Writing Clean Code is difficult. Cleaning existing code, even more so. You should attend if you want to:

  • Write clean code that is easy to understand and maintain
  • Become more proficient in Test-Driven Development (TDD): using tests to design and build your code base
  • Focus your tests and production code according to business requirements using Outside-In TDD (a.k.a. the London School of TDD)

Clean code necessitates good design. In the process of driving your code through tests, you will learn how to:

  • Understand design principles that lead to clean code
  • Avoid over-engineering and large rewrites by incrementally evolving your design using tests

Once you have an understanding of the principles at work, we will apply them to Legacy Code to help you gain confidence in improving legacy projects through testing, refactoring and redesigning.

Content

  • TDD lifecycle and the Outside-In style of TDD
  • Writing unit tests that express intent, not implementation
  • Using unit tests as a tool to drive good design
  • Expressive code
  • Testing and refactoring Legacy Code
  • Introduction to SOLID Principles and Domain-Driven Design

The course is fully hands-on and developers will be writing a lot of code.

Audience

Software developers that:

  • Are familiar with at least one Object-Oriented language
  • Are able to understand Java or C#
  • Can write and execute unit tests using a framework (such as JUnit, NUnit, etc.)
  • Have a basic understanding of mock objects

Prerequisites

Developers must:

  • Bring their own laptops
  • Have a development environment consisting of:
    • Their favourite Object-Oriented language
    • A unit test framework
    • A mocking library
  • Be able to create projects, build source code and run test cases in their development environment

In addition, a distributed version-control system such as Git is desirable.

The trainer

Software craftsman, author, and founder of the London Software Craftsmanship Community (LSCC). Sandro has been coding since a very young age but only started his professional career in 1996. He has worked for startups, software houses, product companies, international consultancy companies, and investment banks.

During his career Sandro had the opportunity to work in a good variety of projects, with different languages, technologies, and across many different industries. Sandro has a lot of experience in bringing the Software Craftsmanship ideology and Extreme Programming practices to organisations of all sizes. Sandro is internationally renowned by his work on evolving and spreading Software Craftsmanship and is frequently invited to speak in many conferences around the world. His professional aspiration is to raise the bar of the software industry by helping developers become better at and care more about their craft.

Date: 28-29 November 2019, Cluj-Napoca
Training fee: €600/participant plus VAT, only 20 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 740 849 770).

Lunch and Coffee Breaks included in the price of the Masterclass.

Browse more masterclasses here.

Masterclass: Testing Strategies for Microservices

Date: 12 April 2019, CLUJ
Training fee: €300/participant plus VAT, only 25 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

About the training

Software development is trending toward building systems using small, autonomous, independently deployable services called microservices.

Leveraging microservices makes it easier to add and modify system behavior with minimal or no service interruption. Because they facilitate releasing software early, frequently, and continuously, microservices are especially popular in DevOps.

But how do microservices affect software testing and testability? Are there new testing challenges that arise from this paradigm? Or are these simply old challenges disguised as new ones?

Join Tariq King as he describes the pros and cons of testing under the microservices architecture.

Learn how to develop a microservices testing strategy that fits your project needs—and avoids common pitfalls and misunderstandings.

Whether you’re already using microservices or just considering making the shift, come and engage with Tariq as he brings clarity to testing in a microservices world.

The trainer

Tariq King is the senior director and engineering fellow for quality and performance at Ultimate Software. With more than fifteen years’ experience in software testing research and practice, Tariq heads Ultimate Software’s quality program by providing technical and people leadership, strategic direction, staff training, and research and development in software quality and testing practices. Tariq is a frequent presenter at conferences and workshops, has published more than thirty research articles in IEEE- and ACM-sponsored journals, and has developed and taught software testing courses in both industry and academia. His primary research interest is engineering autonomous self-testing systems. He is cofounder with Jason Arbon of the Artificial Intelligence for Software Testing Association.

Date: 12 April 2019, CLUJ
Training fee: €300/participant plus VAT, only 25 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

Lunch and Coffee Breaks included in the price of the Masterclass.

Browse more masterclasses here.

Masterclass: Leading Teams: A Situational Approach

Date: 05 April 2019, Iasi
Training fee: €290/participant plus VAT, only 20 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

Managing Collaboration

Though teamwork is one of the most common concepts in businesses today, it is often the most elusive. Teams that lack effective leadership often struggle to work cooperatively with each other and adapt to the variety of personalities, interpretations, opinions and varying skills of other team members. Teams that can successfully master true collaboration, however, are the ultimate competitive advantage.

Leading Teams: A Situational Approach is a one-day program that leverages understanding of situational approaches to leadership to explore the specific skills that leaders need
to transform diverse groups of individuals into cohesive units. Through a variety of case studies, video simulations, group discussions and skill-building activities, participants learn to maximize the performance potential of each team member while building trust, boosting creativity and improving communication.

Benefits of Leading Teams: A Situational Approach

  • Recognize characteristics associated with the predictable stages of team development
  • Understand how to apply leadership strategies with high probabilities of success
  • Distinguish between leading a team and providing leadership for individual team members
  • Develop an action plan that can be immediately implemented to accelerate team development

Date: 05 April 2019, Iasi

Training fee: €290/participant plus VAT, only 20 seats available
To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

Browse more masterclasses here.

Masterclass: Leading Change

Date: 05 April 2019, Iasi
Training fee: €290/participant plus VAT, only 20 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

Harness the Power of Change

Leading Change, at its core, explores the necessity of effective leadership in the 21st century.

Globalization, social media and technology have rapidly transformed the playing field and will continue to shape the business landscape. The workforce is more connected, yet more disconnected than ever before. Now, more than ever, a strong foundation of leadership is needed to anticipate the changes on the horizon and successfully drive visions into realities.

Through a combination of instructor-led training, role-playing and skill-building activities, Leading Change is a one-day workshop that provides participants with the tools to successfully manage any situation and strategically navigate the dynamics of change. Throughout the course, participants explore methods for assessing performance levels, building resilience in their teams, avoiding common pitfalls, leveraging key stakeholders and improving organizational communication.

Benefits of Leading Change

  • Develop a custom blueprint to assist efforts in successfully implementing change
  • Identify strategies for unfreezing, changing and refreezing behavior
  • Leverage knowledge of time-tested leadership and influence strategies to accelerate the pace of change
  • Recognize resistance to change and respond appropriately

Date: 05 April 2019, Iasi

Training fee: €290/participant plus VAT, only 20 seats available
To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

Browse more masterclasses here.

Masterclass: Programming ASP.NET Core: State of the Art

Date: 4-5 April 2019, Iasi
Training fee: €600/participant plus VAT, only 20 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

About the training

This workshop is essentially structured to upgrade your web programming skills to ASP.NET Core.

The main takeaway is learning how to do the same web-related things you know how to do in your favorite environment in ASP.NET Core. The list includes how to fine-tune the request pipeline and address the content of the incoming request and how to configure the application runtime to serve static files, cookies, and prepare work for the backend. It also covers configuration and user authentication and serving up some user interface.

It also touches on controllers, web HTTP API, Razor and SignalR. The topics will be elaborated through progressive examples that you can follow both in a passive lecture-style way and actively participating writing code live using your laptop. The focus will be ASP.NET Core 3.0.

Modules

The Core of ASP.NET Core 3.0

Processing a HTTP Request

Configuration and Core Facts of Security

Controllers

Web API

Advanced Features of Razor

SignalR

Blazor

The trainer

Since 2003, Dino has been the voice of Microsoft Press to Web developers and the author of many popular books on ASP.NET and software architecture. Dino wrote “Architecting Applications for the Enterprise” with fellow MVP Andrea Saltarello and “Modern Web Development” and has “Programming ASP.NET Core” in the works for 2018. When not training, Dino serves as the Digital Strategist of BaxEnergy, a software firm in the energy market.

Training fee: €600/participant plus VAT, only 20 seats available
To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

Lunch and Coffee Breaks included in the price of the Masterclass.

Browse more masterclasses here.

Masterclass: Testing Strategies for Microservices

Date: 9 April 2019, IASI
Training fee: €300/participant plus VAT, only 25 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

About the training

Software development is trending toward building systems using small, autonomous, independently deployable services called microservices.

Leveraging microservices makes it easier to add and modify system behavior with minimal or no service interruption. Because they facilitate releasing software early, frequently, and continuously, microservices are especially popular in DevOps.

But how do microservices affect software testing and testability? Are there new testing challenges that arise from this paradigm? Or are these simply old challenges disguised as new ones?

Join Tariq King as he describes the pros and cons of testing under the microservices architecture.

Learn how to develop a microservices testing strategy that fits your project needs—and avoids common pitfalls and misunderstandings.

Whether you’re already using microservices or just considering making the shift, come and engage with Tariq as he brings clarity to testing in a microservices world.

The trainer

Tariq King is the senior director and engineering fellow for quality and performance at Ultimate Software. With more than fifteen years’ experience in software testing research and practice, Tariq heads Ultimate Software’s quality program by providing technical and people leadership, strategic direction, staff training, and research and development in software quality and testing practices. Tariq is a frequent presenter at conferences and workshops, has published more than thirty research articles in IEEE- and ACM-sponsored journals, and has developed and taught software testing courses in both industry and academia. His primary research interest is engineering autonomous self-testing systems. He is cofounder with Jason Arbon of the Artificial Intelligence for Software Testing Association.

Date: 9 April 2019, IASI
Training fee: €300/participant plus VAT, only 25 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

Lunch and Coffee Breaks included in the price of the Masterclass.

Browse more masterclasses here.

Masterclass: Artificial Intelligence and Machine Learning Skills for the Testing World

Date: 8 April 2019, IASI
Training fee: €300/participant plus VAT, only 25 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

About the training

Software continues to revolutionize the world, impacting nearly every aspect of our work, family, and personal life. Artificial intelligence (AI) and machine learning (ML) are playing key roles in this revolution through improvements in search results, recommendations, forecasts, and other predictions.

AI and ML technologies are being used in platforms for digital assistants, home entertainment, medical diagnosis, customer support, and autonomous vehicles.

Testing practitioners are recognizing the potential for advances in AI and ML to be leveraged for automated testing—an area that still requires significant manual effort.

Tariq King will introduce you to the world of AI for software testing. Learn the fundamentals behind autonomous and intelligent agents, ML approaches including Bayesian networks, decision tree learning, neural networks, and reinforcement learning.

You’ll discover how to apply these techniques to common testing tasks such as identifying testable features, generating test flows, and detecting erroneous states.

Come and train your first artificial brain on how to test software.

The trainer

Tariq King is the senior director and engineering fellow for quality and performance at Ultimate Software. With more than fifteen years’ experience in software testing research and practice, Tariq heads Ultimate Software’s quality program by providing technical and people leadership, strategic direction, staff training, and research and development in software quality and testing practices. Tariq is a frequent presenter at conferences and workshops, has published more than thirty research articles in IEEE- and ACM-sponsored journals, and has developed and taught software testing courses in both industry and academia. His primary research interest is engineering autonomous self-testing systems. He is cofounder with Jason Arbon of the Artificial Intelligence for Software Testing Association.

Date: 8 April 2019, IASI
Training fee: €300/participant plus VAT, only 25 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

Lunch and Coffee Breaks included in the price of the Masterclass.

Browse more masterclasses here.

Masterclass: The Art of Unit Testing and TDD

Date: 4– 5 April 2019, IASI
Training fee: €600/participant plus VAT, only 18 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

About the training

The Problem

Unit testing, done badly, can hurt your project more than it helps. In some cases, it may lead to project schedule delays, and unhappy developers due to huge maintenance problems. But when unit testing is done right, it can help the project and developers’ confidence immensely. The challenge is – how do you do it in a way that is helping, rather than hurting your project?

Objective

In this workshop we will learn essential test driven skills and techniques for writing unit tests in a readable, maintainable and trustworthy fashion, so that we can feel more confident in our code, make it simpler, and save ourselves time in debugging and maintaining our code base. we will also look at some code design issues that hurt testability.

1. Learn how to write readable, maintainable, trustworthy unit tests

2. Learn how to refactor and test legacy code, and what to do when we cannot change existing code.

3. Learn the principles of Test Driven Development, and develop new features using TDD.

4. Learn how to Pair Program, and experience it throughout the course

5. Learn about mocks, stubs fakes, and the difference between them

6. Learn about Isolation(mocking) frameworks, how they work, and why some frameworks are more capable than others.

Materials

All students get a PDF of all the slides in the course, in downloadable form.

Agenda

Day 1: Beginnings (09:00-17:00)

1. What is the “unit” in “unit testing”? A discussion about unit of work.

2. The first unit test

3. Basic NUnit APIs, test runners, tips and tricks

4. Writing readable tests

5. Test Driven Development Introduction

6. String Calculator Kata Exercises

7. Value based, State Based and Interaction Based Tests

8. Understanding Fakes, Mocks and Stubs

9. Hand Written Fakes, Stubs and Mocks

Day 2: Isolation Frameworks (09:00-17:00)

11. Isolation Frameworks: Constrained and Unconstrained

12. Isolation Framework Comparisons (Rhino Mocks, Typemock, Moq, FakeItEasy, NSubstitute, NUnitMocks, MsFakes)

13. Exercises

14. Unit Testing Best Practices

15. Code Review Exercises

The trainer

Roy is the author of “The Art of Unit Testing”, “Notes to a Software Team Leader” and “Elastic Leadership”. He writes code, ships software. He looks at the big picture and helps optimize continuous delivery flow. He gets things done. He likes the ideas behind DevOps and tries to implement them on a day to day basis. Roy also consults, Trains and speaks about Agile Teams, Agile and Elastic Leadership,CI/CD, DevOps, TDD and more.
Specialties: Automation and delivery, coding (.net, java, C++), Leading Technical People, Getting my hands dirty, TDD, Unit Testing and more.
Roy is a Bitcoin enthusiast and owns a few.

Date: 4– 5 April 2019, IASI
Training fee: €600/participant plus VAT, only 18 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

Lunch and Coffee Breaks included in the price of the Masterclass.

Browse more masterclasses here.

 

Masterclass: Move your database to the Cloud: Understand, Design, Migrate, Manage, and Monitor Azure SQL Database

jose emanuel and dragos furdui

Date: 23 November 2018, Cluj
Training fee: €250/participant plus VAT, only 20 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

About the Masterclass

This Azure SQL Database pre-con provides you the knowledge and tools necessary to understand the capabilities and usage of cloud databases. It will help you get familiar with the Azure SQL Database concepts. It will also help to learn how to migrate, manage, monitor and troubleshoot your Azure SQL Database solution. You will learn the difference between the Azure SQL Database (PaaS) and SQL Server on-premises and which benefits Azure SQL Database can have for your applications and SQL environment. After attending this pre-con, you will be able to:

  • Understand how Azure SQL Database works
  • Know the newest and most important features to manage your Azure SQL Database
  • Design scalable architectures
  • Design Disaster Recovery plans
  • Manage security on your Azure SQL Database
  • Monitor and troubleshoot Azure SQL Database
  • Face a migration project

Agenda

Module 1: Introduction to Azure SQL Database

This module provides an overview of the basic concepts of Azure SQL Database and will cover:

  • Architecture, service tiers and DTUs
  • Create and connect to Azure SQL Database
  • Difference between SQL Server on Azure VM and Azure SQL Database
  • How to choose between IaaS and PaaS solution

Module 2: Azure SQL Database Administration

This module covers the different Azure SQL Database administration tasks like:

  • Scaling up or down your database
  • Scheduling jobs
  • Commonly used DMVs and supported features in Azure SQL Database
  • Various Disaster Recovery options

Module 3: Manage Security

This module covers the different options to manage security for an Azure SQL Database like:

  • Configuring Active Directory security
  • Always Encrypted
  • Row Level Security and Dynamic Data Masking
  • Auditing and threat detection

Module 4: Monitoring and Troubleshooting

This module covers the different tools for monitoring the performance of your database like:

  • Query Store
  • Extended Events
  • Index Advisor
  • Configure alerts to enable proactive monitoring

Module 5: Database Migration

This module covers the different strategies to migrate your on-premises database to Azure SQL Database and will cover:

  • How to analyze the database for compatibility issues
  • The different migration methods

Date: 23 November 2018, Cluj
Training fee: €250/participant plus VAT, only 20 seats available

To book your seats, please contact us by email ([email protected]) or phone (+40 741 103 133).

Browse more masterclasses here.