Our first public learning track: Software craftsmanship
We've been doing in-house learning and coaching tracks for a while now and we've seen the positive impact this follow-up has on companies, teams and individuals. That is why we want to bring this idea to our public training events as well. So, to validate our hypothesis that this format will also benefit people that follow public trainings, we are proud to introduce our first public learning track on software craftsmanship. Agile methodologies like scrum or Kanban are becoming mainstream and thousands of companies are making the switch as we speak.
This quest for business agility is not just about other process models or new collaboration techniques. Your technical skills also need to be adjusted to this way of developing software. This is how the concept of software craftsmanship was born. For most people craftsmanship just means that, while agile principles help us to build the right thing, craftsmanship adds the dimension of also building it the right way. In order to have flexibility in planning, we also need flexibility on technical level and this is where craftsmanship comes into play. The first chapter in our learning track is a 2-day workshop on unit testing. This is really covering the basics of test automation and how unit testing can help you to be faster and more reliable when delivering software. You will get the chance to experience writing good, clean unit tests that run at light speed.
This is the first step towards a better, cleaner and easier way to modify software design. In the second chapter we will dive into the ugly and hard truth we have to face everyday: legacy systems. During this 2-day workshop on dealing with legacy code you will spend most of your time practicing refactoring techniques that will enable you to clean up your existing code base, one small step at a time. For this training you need a basic understanding of unit testing and test automation in general, so you will be using everything you have learned in the first workshop and were able to practice in the meantime. Last chapter (for now) in our craftsmanship track is a 2-day workshop on Test Driven Development where we will go into more advanced topics like really building a flexible and decoupled software design, focusing on the real behavior of the system and not wasting our time in endless architecture discussions.
During this workshop you will be able to use your newly acquired and improved skills from the previous workshops to experience the speed and power of real test driven development. The only way to become a good musician is to practice, the only way to become a good athlete is to train, and we believe the only way to become a real software craftsman is also to practice as much as possible. This is why we also intertwine this learning track with pure practice moments. On the evening before our legacy code workshop, we will facilitate a coding dojo specifically around rescuing a legacy system. And just after the legacy workshop we will facilitate our next legacy coderetreat. Which is actually the ideal place to practice the new techniques you picked up during the workshop.
Both the coding dojo and the legacy coderetreat are free community events where everyone is welcome and will be hosted at one of our trusted partner's locations with a focus on collaborative practice and learning from the other participants while doing real coding, not just talking about it. Similar to the legacy coding dojo and retreat, we will also facilitate a TDD centered coding dojo just before the workshop and the Saturday after the workshop we will facilitate the next edition of our coderetreat community event. We deliberately put the TDD workshop on Wednesday and Thursday because on Friday we will be organizing the first Re:think software craftsmanship conference ever in Belgium.
So the real die hard fans can have 4 days of workshops, coding practice in a row. We will be posting more information about the dojos and conference soon. We already wanted you to be in the loop of the upcoming plans.