Clean Code training at generic.de

Clean Code trainings individually tailored to your team

Clean Code training? What for?

You want to streamline your dev team's collaboration

Every developer approaches problems differently. These differences can result in development teams not working smoothly and lead to misunderstandings and errors. Clean Code Development provides a shared understanding of software development that makes team collaboration easier.gemeinsames Verständnis der Software­entwicklung, das die Zusammen­arbeit im Team erleichtert.

Your source code is difficult to read and requires maintenance

Historically grown source code is often difficult to read - and even more difficult to understand. Code changes are only possible with great effort, new features can hardly be implemented. Our Clean Code trainers train participants in the flow design method and provide valuable tips on syntax and semantics.Flow Design und geben wertvolle Tipps für Syntax und Semantik.

Your source code does not have enough test coverage

The lack of elementary unit tests and integration tests is not only a big risk, it also hinders developers at work, as they no longer trust the code. In our Clean Code training courses, we teach the most important concepts, techniques and technologies related to automated testing.auto­matisiertes Testing.

Your benefits

Clean Code knowledge and experience from practice and from real projects

Our Clean Code trainers are trained by Stefan Lieser, one of the founders of the Clean Code Development Initiative

We tailor our training courses individually to your level of knowledge and learning goals

High flexibility: When, for how long, with us, at your site or remotely — you determine the framework parameters

Field-proven toolbox: Flow Design, automated testing, Clean Code mindset, definition of done and much more

Over 10 years of Clean Code Development as a corporate principle

You not only teach Clean Code. You live it.
Markus Borer
Team Lead & Principal Software Engineer,
adesso Switzerland AG

Our Clean Code training in detail

The learning objectives of our training courses

Building a common understanding of software quality
Introduction to the Clean Code Development Initiative
Practical techniques to get from requirement to source code (Flow Design)
The most important Clean Code Development principles and practices in theory and practice
Practical introduction to writing tests and developing complex test suites
Communicating the Clean Code mindset in terms of collaboration, efficiency and correctness

Our Clean Code trainers

Thomas Fröhle
Clean Development trainer
Focus on what you need right now and don't try to solve problems now that could potentially arise at some point.
Felix Ruthenberg
Clean Development trainer
Code checks are a very good start to find out where a company stands with its code base. In the end, the truth is always in the code.
Thomas Bittner
Clean Development trainer
The Holy Trinity of Clean Code Principles: “Don't Repeat Yourself,” the “Single Responsibility Principle,” and the “Integration, Operation, Segregation Principle.”
Our trainers were trained by Stefan Lieser, managing director of CCD Academy GmbH and co-founder of the Clean Code Development Initiative.

Request an individual Clean Code training

Get in touch with us.

If you would like to know which data we process and how long we store it, you can find further information in our Privacy statement.
Your data is transmitted in encrypted form
Thank you so much! We have received your contact request!
Oh no! Something went wrong. Please try again!

Content of our Clean Code trainings

We tailor our training courses individually to your wishes, learning objectives and level of knowledge. Our trainers can support you in the following disciplines and content:

Software quality and Clean Code Development

Not all software quality is the same. We differentiate between internal and external quality, whereby the focus of our Clean Code training is on internal quality - i.e. the quality of the source code. The topics of readability, traceability, testability and changeability (evolvability) are addressed.

The benefits of a shared sense of quality:

  • Optimum basis for cooperation
  • Increased sensitivity to economic relationships
  • Better understanding of the consequences of poor code quality

The Clean Code Development Initiative and the value system

The Clean Code Development Initiative is based on the book Clean Code by Robert C. Martin. Building on this, the two German developers Stefan Lieser and Ralf Westphal 2009 designed a standards-setting value system for software developers, which, in addition to learning modules, also includes a collection of principles and practices. The four Clean Code values are at the top:

  • Correctness
  • Evolvability
  • Production efficiency
  • Continuous improvement

Software design and software architecture with Flow Design

Flow Design is a technique for planning and structuring source code in a meaningful way — even before it is written. It is always about the question of how to get from a request to the actual code. The technology works by hierarchically dividing the requirement down to its smallest units: data flows.

The benefits of Flow Design:

  • Source code can be planned down to the last detail without losing sight of the big picture
  • The entire team is involved in the software design process
  • Positive effects on team responsibilities and code readability
  • Ideal template for a well-thought-out test suite

Develop automated testing and test suites

Automated tests not only ensure that the source code works correctly, they are also a good way to better understand and define requirements. And they ensure trust and security among developers. However, writing tests and complex test suites, consisting of system, integration and unit tests, is a craft in itself. Our trainers teach basic concepts, techniques and the necessary technologies, such as SonarCloud, to increase test coverage in the back and front end and achieve good ratings in penetration tests.

The most important clean code principles

Although all Clean Code principles have their right to exist and are important, there are principles that should always be applied and are therefore also an important part of our training courses:

  • SRP - “Single Responsibility Principle”: A method or class should only ever have one function
  • DRY - “Don't Repeat Yourself”: Duplicates in code should always be avoided
  • IOSP - “Integration, Operation, Segregation Principle”: An application is divided into functional units that are called as if in a chain
  • YAGNI - “You Aint Gonna Need It”: Focus on current, not future, potential problems

The right way to deal with dependencies

Dependencies in the source code can help simplify structures. However, too many dependencies can result in code changes with unexpected side effects and make the code confusing over time. In our training courses, we provide participants with techniques and best practices to effectively manage dependencies and, if necessary, resolve them.

The pair programming development method

Pair programming, pairing or even tandem programming describes a clean code development method in which two developers work on a problem and on the same code at the same time. As useful as the approach is in some cases, it can be inefficient in other cases. Our trainers give best practices on how and when the method makes sense.

When is code actually clean enough? The Definition of Done

Clean code development must not become an end in itself. If you study source code, you will always find places that you can optimize. But at some point, that is simply no longer productive and is no longer in proportion to the costs. The only question is: When?
In our Clean Code training courses, we provide participants with tools to achieve the right definition of done — individually tailored to the project, requirements and corporate goals.

The clean code development mindset

The right mindset is just as important as craftsmanship. The aim is to maintain the Clean Code values again and again and to draw attention to them. The content is therefore not taught in a completed session, but in parallel throughout the entire training session. In detail, it is about agile work, efficiency through focus, reflection, responsibilities, expectations and collaboration.

Clean code trainings with a high level of practical content

Only by doing, you learn clean code. That is why we attach great importance to a high level of practical experience in our training courses. On the one hand, these are small exercises to deepen a theoretically discussed topic. On the other hand, there are joint code reviews in which the results of the exercises or other code examples are discussed in detail with all participants.

(Live) code checks of an existing application

Code checks on an existing application are a good start to find out where a team stands with its code base. Similar to a code review, the code is analyzed by our trainers and the original developer. Through such a reflexive approach, participants learn a lot about themselves and their approach.

I went through this “school” myself several years ago. I was stuck up to my neck, almost motionless in the brownfield mess. generic.de showed me a way out of this misery and then (re) greedily followed it.
It is now clear to me that this path has permanently changed myself and the way I develop software and has made me better as a developer
💪 and happier 🙂 did. I can only encourage anyone interested and doubting: Go this way, you won't regret it! 🚀
Frank Rabold
Senior software developer
AppSphere

The most common questions

Who is Clean Code training suitable for?

Our Clean Code training courses are aimed exclusively at people with programming know-how. In other words, to software developers, system and software architects, or software testers.
However, our trainers also offer presentations at management level, where they discuss the benefits of clean code development from a business perspective. Our CTO Sebastian Betzin explains how Clean Code can contribute to corporate success in the following on-demand video:

What previous knowledge do you need for Clean Code training?

As I said, programming know-how is required to be able to follow the courses. Participants must understand programming examples in C#, Java, Typescript, etc. and also be able to write the languages.

What training do we need to bring with us?

Especially for practical exercises, all participants should have a computer with an installed development environment, such as VSCode or VisualStudio, bring along.

How long does clean code training take?

That depends entirely on you and your wishes. We adapt the length of our Clean Code trainings to your learning goals. These can be one-day workshops or sessions over several days.

Where do the training courses take place?

That is also up to you. Either you come to us in Karlsruhe or our Clean Code trainers come to your company and hold in-house trainings with your team.

How can I book a Clean Code training?

Just write to us via the contact formthat you're interested in Clean Code training, and we'll get back to you. If you already know when you would like to take part in the training, how many participants there will be and what learning goals you are pursuing, simply enter this information in the appropriate free text field.

The Clean Code Shop

Clean Code wristbands, overview posters, information flyers, writing pads and much more. In our Clean Code Shop, you will find everything you need for the Clean Code Developer.

You might also be interested in this

Clean Code
Team generic.de
27.6.23

Five new Clean Code trainers for the CCD Academy and generic.de

How our colleagues were trained as clean code trainers — a guest contribution by Stefan Lieser, co-founder of the Clean Code Developer Initiative

Clean Code
Development
16.3.23

Clean code training at generic.de: an interview with our clean development trainers

Our Clean Development Trainers Felix and Thomas give an insight into their training courses: about the process, the learning objectives and about clean code

Clean Code
Development
Digitization
30.11.22

Sustainable software development: What is meant by it and how to develop sustainably

How to develop software that can be flexibly and adapted to new market and customer requirements in the long term

Development
Clean Code
14.7.22

Software quality: criteria for “good” software products and the role of clean code

Which software quality features are important from a technical & economic perspective and how clean code development can help to achieve them

Clean Code
9.9.21

Clean Code Development: The Virtues

To become a Clean Code Developer, you need to internalize a number of virtues: Appreciate variation, only do the bare minimum, isolate aspects etc.

Clean Code
9.9.21

Clean Code Development: The Grades

Clean code development is divided into different grades, which you as a developer climb one by one and repeat in an eternal cycle

Clean Code
7.9.21

Clean Code Development: The values

The value system of Clean Code Development comprises the values of evolvability, correctness, production efficiency and continuous improvement.

Clean Code
25.5.18

DRY vs KISS — Clean Code Principles

The Clean Code principles DRY and KISS can be mutually exclusive. An attempt to solve the dillema.

Clean Code
Development
7.6.17

Flow design in practice

Clean Code Development and Flow Design: What is behind the design methodology? How can flow design be applied in practice? And how useful is it?

How can we advise you?
telephone
Online consultation
Contact request
telephone
We are looking forward to your call
+49 (0) 721-619096-0
+49 (0) 721-619096-19
Available for you from
Monday to Friday 8:00 a.m. to 4:00 p.m.
Online consultation
Book an appointment that's right for you online
We are looking forward to your message
If you would like to know which data we process and how long we store it, you can find further information in our Privacy statement.
Thank you so much! We have received your contact request!
Oh no! Something went wrong. Please try again!
contact