Welcome to my corner of the internet#
I am a South African chartered accountant based in England, documenting my learning journey across Python, finance, and various other interests.
Daily Brief#
Check out my Daily Briefs. Each morning, an automated process scans a curated set of RSS feeds, summarises the key points using AI, and publishes a concise roundup to the site.
Python Series (17-part)#
Designed for absolute beginners, this step-by-step series will take you from installing Python to writing confident, real-world scripts.
Other Series and Posts#
Below you’ll find each series, followed by a chronological list of every blog post
I’m a chartered accountant and finance manager documenting my learning journey. This site covers my explorations in Python programming, finance insights, parenting experiences, and philosophical musings.
Building Simple GUI Applications with Tkinter Part 16 of my Learning Python in Public series
As a finance professional diving into programming, I’ve realized that data analysis is only half the battle. Sometimes you need to package your calculations into user-friendly applications that colleagues can use without knowing Python. That’s where GUI (Graphical User Interface) programming comes in, and Python makes this surprisingly accessible with Tkinter.
What is Tkinter? Tkinter (pronounced “tee-kay-inter”) is Python’s standard GUI framework that comes bundled with your Python installation. No extra pip installs needed! It’s based on the Tk toolkit, which has been around since the 1990s. While not the most modern-looking framework, it’s:
...
Python Learning Series: Web Development Foundations Part 15 of my 17-part series on learning Python as a finance professional
After exploring all the fundamentals of Python programming, it’s time to put those skills to practical use by diving into web development. As a finance manager, I’ve found that building simple web applications can help automate reports, create interactive dashboards, and share financial data across teams.
In this post, I’ll cover three popular approaches to web development with Python:
...
Introduction to Object-Oriented Programming (OOP) in Python: A Finance Perspective As a finance professional learning Python, I’ve discovered that Object-Oriented Programming (OOP) is one of those concepts that initially seems abstract but becomes incredibly powerful once you understand it. In this post, I’ll break down what OOP is, why it matters, and how we can use it to model financial concepts in our code.
What is Object-Oriented Programming? In the simplest terms, OOP is a programming paradigm that organizes code around “objects” rather than functions and logic. An object bundles related data (attributes) and behaviors (methods) together.
...
Data Visualization Basics in Python Welcome to the thirteenth post in our Python learning series! In this article, we’ll explore how to create effective data visualizations in Python - an essential skill for analyzing and communicating financial data.
If you’ve been following along, you’ve already learned how to work with data using NumPy and pandas. Now it’s time to bring that data to life through visualization. Whether you’re analyzing budget trends, tracking investment performance, or presenting financial reports, the right visualization can transform raw numbers into actionable insights.
...
Data Analysis with pandas for Finance and Accounting Welcome to post #12 in our Python journey! In the previous post, we explored NumPy and its powerful numerical capabilities. Now we’re taking a step up to pandas, which builds on NumPy’s foundation to provide specialised tools for working with tabular and time series data—exactly the kind of data we deal with daily in finance and accounting.
Why pandas for Finance? pandas is specifically designed for data analysis and manipulation, with particular strengths in:
...
NumPy Fundamentals for Numerical Data (with Finance Applications) Welcome to post #11 in our Python learning journey! If you’ve been following along, you’re starting to build a solid foundation in Python. Now it’s time to explore NumPy, the powerhouse library that makes Python a serious contender for numerical computing and data analysis.
As a finance professional myself, I’ve found NumPy particularly useful for financial calculations, portfolio analysis, and working with large datasets. Let’s dive in and see how this library can level up your Python skills.
...
Series Conclusion: Your Finance Leadership Roadmap This is the final post in my “Modern Financial Controller” series, documenting my journey from chartered accountant to strategic finance manager. Throughout this series, I’ve been learning in public and sharing insights primarily drawn from David Parmenter’s work and other finance thought leaders as I navigate this career transition.
The Journey So Far Over the past eight posts, we’ve explored how the controller role has evolved from technical accounting specialist to strategic business partner. From developing meaningful KPIs to implementing rolling forecasts, from accelerating month-end close to enabling technology transformation, we’ve covered the essential elements of modern finance leadership.
...
The Python Ecosystem & Interactive Data Workflows As a finance professional diving deeper into Python, I’ve found that understanding the broader ecosystem of tools is just as important as learning the language itself. In this post, we’ll explore the different ways to manage Python packages and environments, and dive into interactive data workflows that can transform how you work with financial data.
Package vs. Environment Managers: pip, conda, and Anaconda When I first started with Python, I was confused by the different tools available for installing packages and managing environments. Let’s clarify these concepts.
...
Part 8: Technology Enablement for Modern Finance This is part 8 of my “Modern Financial Controller” series, documenting my journey from chartered accountant to strategic finance manager. I’m learning in public and sharing insights primarily drawn from David Parmenter’s work and other finance thought leaders.
Introduction Technology has transformed the finance function more dramatically in the last decade than perhaps any other aspect of our work. As David Parmenter emphasises in his book “The Leading-Edge Manager’s Guide to Success,” finance leaders who fail to embrace technological innovation risk becoming irrelevant in the modern business landscape.
...
Command-Line Tools & Automation in Python I’ve discovered that some of the most practical Python applications aren’t fancy data visualisations or machine learning models, but rather simple automation scripts that save time on repetitive tasks. In this post, I’ll walk through how to build command-line tools and automate everyday processes using Python.
Building Command-Line Scripts with argparse When you’re working with financial data, you often need flexible tools that can handle different inputs. The argparse module lets you build command-line scripts that accept various arguments and options.
...