Talks



How to be a Postdoc

Multitasking

In this talk you find practical tips that help you not to go crazy with many simultaneous tasks:

  • get along with your supervisor.
  • get along with your team.
  • publish.
  • not go crazy in the process.

Enjoy the best from a five-year postdoc resulting in 20 publications, condensed into a talk for doctoral students and fresh postdocs.


The Mechanics of Learning

What Confucius, Montessori and Coding Katas have in common

In this talk, I will present ubiquitous patterns in successful learning that help you to improve your own abilities, mentor junior developers and build key skills in a team. We will examine what Confucius, Montessori and Coding Katas have in common. You will explore a process for creating interesting learning challenges and critically assess whether the mechanics of learning apply to programming only, or to topics like software architecture or Scrum as well.

Learning phases


Sun Tzu for Pacifists

What a peaceful leader can learn from ancient war strategy

The Chinese general Sun Tzu wrote a book on military strategy 2500 years ago. Today, the book is part of standard literature for managers and leaders worldwide. What leadership techniques have made "The Art of War" timeless reading even for a pacifist? "The Art of War" teaches that leadership is a craft that requires considering forces invisible at first. The real adversary is often not an armed force, but plans, morale and deception. If "the highest excellence is to conquer without battle", what can we do to conquer the immaterial?

The goal of this workshop is to learn about Sun Tzus philosophy, leadership principles and tools for making clear decisions. I would like to inspire you to read and learn more about leadership.

Decision making with Sun Tzu

Knowing yourself and knowing your adversary, you will not be conquered in a thousand battles.


Creating Interactive Python Trainings

When training people to program in Python, you face a variety of situations: big and small groups, similar or mixed level of experience, different motivations or professional background etc. Therefore you will need more than one method to teach. In this talk, you will learn methods to create well-balanced, interactive teaching units.

The methods cover four phases of a training session:

  1. Warming up: sparking interest for the topic and motivating the group
  2. Introducing content: supplying facts in a non-boring way
  3. Applying content: allowing participants to immerse deeply
  4. Wrap-up: Summary, practical transfer and feedback

During the talk, Kristian will apply his favourite methods for training Python in face-to-face settings. Expect to participate very actively.


Delta Debugging

This presentation helps you to debug Python code more systematically. I am going to present an example for Delta Debugging (sometimes dubbed automatic debugging), a scientific debugging approach pioneered by Prof. Andreas Zeller, author of the landmark book in this field: Why Programs Fail. The example will introduce Delta Debugging itself and highlight its strengths and weaknesses. If you would like to know what other options for debugging you have apart from the Python debugger and the occasional print statement, this talk is for you.

Sudoku **problem for automated debugging

Can we identify errors in the sudoku automatically?


Best Practices for Debugging, Testing and Maintenance

Experienced programmers know that good programming involves a lot more than writing code. Python offers an established set of techniques from several areas: Debugging is not an extraordinary activity, but certain tools and procedures are available. E.g. automated tests ensure that bugs don’t come back. Finally, maintenance practices keep programs healthy for a long period of time. As a program grows, these best practices become more and more important.

The inexperienced programmer is often unaware of the tools available to make Python programs more stable. This talk provides an overview of accepted best practices for debugging, testing, and maintenance, and provides hints what kind of project they are applicable to.

The talk draws a map of tools and practices, including:

  • pdb
  • PEP8
  • py.test
  • pyscaffold
  • virtualenv
  • Sphinx

Dr. Kristian Rother

I am a professional Python trainer, developer and author based in Berlin. I believe everybody can learn programming.

Contact me via:
+49 176 3052 4691
krother@academis.eu

Blog Topics

See also

Book translation: book translation: Data Science from Scratch (O'Reilly)