• Geekstone
    20/05/16 09:00 AM

    Crafting Code

    Sandro Mancuso
    Hotel Centar, Novi Sad
Nikola Živković
Boban Miksin
Aleksandar Stevanovic
Filip Kostić
Vladimir Šobić
Ognjen Stanić
Jovan Poljački
Lazar Timotic
Dejan Mijic
Nikola Mirkov


This course is designed to help developers write well-crafted code—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.

Why attend?

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.


      - Writing unit tests that express intent, not implementation

      - TDD lifecycle and Outside-in style of TDD

      - Using unit tests as a tool to drive good design

      - Expressive code

      - Testing and refactoring Legacy Code

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


Software developers that:

     - are familiar with at least one Object-Oriented language

     - are able to understand Java or C#

     - Legacy code exercise will be done in one of the following languages: Java, C#, PHP, Scala, or C++

     - can write and execute unit tests using a framework (such as JUnit, NUnit, etc.)

     - have a basic understanding of mock objects


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.




Sandro Mancuso

Sandro M: Software craftsman, co-founder of Codurance, author of Software Craftsmanship: Professionalism, Pragmatism, and Pride, and founder of the London Software Craftsmanship Community (LSCC). During his almost 20 years of career, Sandro has worked for startups, software houses, product companies, international consultancy companies, and investment banks. With Codurance, Sandro is now helping many organisations to embrace the Software Craftsmanship principles and values, adopt Extreme Programming practices, and helping developers to become real craftsmen.

  • Danila Kiša 3v
    21000 Novi Sad

  • +381(69)701 456

About Us

Geekstone is a non-profit organization dedicated to gathering developers with an aim to facilitate the exchange of knowledge, experiences and ideas related to programming. Moreover, Geekstone is a place for networking and socializing.

Read more
< path class='st2' d='M525.5,163.7c-2.9,0-5.3,2.4-5.3,5.3c0,2.9,2.4,5.3,5.3,5.3c2.9,0,5.3-2.4,5.3-5.3 C530.8,166.1,528.4,163.7,525.5,163.7z M525.5,172.5c-1.9,0-3.5-1.5-3.5-3.5c0-1.9,1.5-3.5,3.5-3.5c1.9,0,3.5,1.5,3.5,3.5 C528.9,170.9,527.4,172.5,525.5,172.5z'/>
© Geekstone 2015. All rights reserved.
Geekstone © Geekstone 2015. All rights reserved.