From Intent to Implementation
You have an idea. You know your project involves a lot of coding. But how do you go from a broad research topic to something you can actually build, test, and deliver?
This course is for master's and PhD students who want to avoid the all-too-common trap: jumping into coding without fully understanding the objective, what success looks like, or how their solution should be structured. Because this often results in messy, pieced-together scripts that are hard to maintain, adapt, and reuse. Or worse: weeks wasted solving the wrong problem.
In this two-day workshop, you'll learn the principles of Clarity-Driven Development (CDD)—a practical framework to navigate the why, what, and how of software design. Through a mix of short sessions, guided exercises, and peer feedback, you'll define your goals, sketch your results, and outline a clean, modular implementation tailored to your research—so you can stay focused, iterate faster, and avoid getting stuck in dead ends.
This workshop is for you if...
- You're in the early stages of your thesis and want to get organized before diving into the implementation.
- You're looking for a lightweight process to align your research purpose, evaluation results, and code design.
- You're stuck, second-guessing yourself, or unsure what to prioritize next.
- You'd benefit from structured time to step back, reflect, and think critically about what you're developing and why.
- You value peer exchange and want feedback not just on your technical approach, but on how you're framing the whole project.
By the end of the workshop, you'll know how to translate your research intent into a concrete implementation, supported by intuitive visualizations of your expected results and the clarity to code with confidence.
Prerequisites
To get the most out of the course, you should:
- Know your thesis topic and have started some initial research
- Already have some basic programming experience (preferably, but not necessarily, in Python)
- Be fluent in English (all materials are in English; the sessions may be held in German if all participants agree)
The workshop is designed to integrate with your thesis work—not add extra overhead. The activities help you clarify and plan what you're already expected to deliver.
Workshop Agenda
The two-day course is based on my book Clarity-Driven Development of Scientific Software and combines structured input, self-guided work, and collaborative discussion.
The workshop takes place remotely via Zoom, Google Meet, or similar. Please join the calls with your camera turned on so the sessions feel more personal.
Day 1
[9:00 - 10:00] Group Session
- Welcome
- Participants introduce themselves (incl. thesis topic & programming ambitions)
- Introduction to CDD: Clarity on Outcomes
[10:00 - 13:30] Self-Study
- Read the chapter: "Outcome: Why?"
- "Draw your Idea" to illustrate the research purpose of your thesis
- Identify relevant evaluation metrics to quantify your approach and "Draw your Advantage"
- Find some related work, i.e., the baselines that you should compare your approach to
- Prepare an "Elevator Pitch": a 30-60 second presentation to convince the group of your idea
[13:30 - 15:00] Group Session
- Q&A
- Presentation and discussion of results
- Introduction to Clarity on Outputs
[15:00 - 17:00] Self-Study
- Read the chapter: "Output: What?"
- "Draw your Output" to gain clarity on the tables and figures you want to include in your thesis
Day 2
[9:00 - 10:30] Group Session
- Q&A
- Breakout sessions in small groups to critique data visualization sketches
- Group discussion
- Introduction to Clarity on States & Flows
[10:30 - 14:00] Self-Study
- Read the chapter: "State & Flow: How?"
- "Draw your Code" to outline what you want to program
- Plan your experiments
[14:00 - 15:00] Group Session
- Q&A
- Reflection on the process and group discussion
- Outlook & Goodbyes
Optional: Individual Coaching Sessions
After the workshop, you have the option to book additional individual coaching sessions with me for continued support during your implementation phase.
These follow-up sessions are ideal if:
- You're programming (primarily) in Python
- You want detailed feedback on your code
- You think regular check-ins could help you stay on track and make steady progress
Preparation
- Read Part 2 of the book: "Writing Code"
- Set up your repository and host it on GitHub or GitLab and send me a link (if it's public) or invite me so I can see the code
Coaching Sessions
- In the first session, we review the plan for your implementation and define how we want to work together
- For the following sessions, you send me your changes in advance (preferably as a merge request) and in the session we discuss the feedback and next steps