be working over the next months? Years? Probably even decades?
Most people will work over that time span. And while most things about the future are uncertain, there are some things that are very likely to still be around in our jobs. Projects, for example — plain old organized efforts to move forward. Here’s what I learned about them this March.
Being proactive ensures fluid progress
At work, we all have projects that we dread. But we also have projects that we like, and that we wish we could spend more time on. Regardless of whether we like a project or not, projects usually have fairly long time horizons. And they do not exist for their own sake (though sometimes we get the uneasy impression that they really do). Rather, projects are organized efforts that bring us — or our company — towards a chosen goal.
In the machine learning world, such a goal can take many forms. It could be shipping a model to a customer. It could mean writing a paper. It could also mean setting up an MLOps pipeline. In any case, it requires our attention over time. And mostly, these projects require the support of others.
Yes, support. Not in the sense that others need to actively pull the project forward (which is very welcome, though!). Rather, in the sense that others need to provide this or that to help you make progress. Sometimes this can be a small thing, such as approving you to use a specific compute resource. In other cases, it can be larger, such as approving a purchase for a much-needed software.
It is fairly uncommon that projects ride along smoothly, with the wind always blowing in the right direction. On the contrary, you need to get this, do that, and then check yet another thing — and each of these can become a roadblock.
What I learned here is that being proactive can prevent many roadblocks from happening in the first place. Cultivating proactivity is thus a skill that extends beyond ML projects. I think it is strongly related to agency: the ability to direct one’s actions deliberately and search for solutions on one’s own.
In ML project work, proactivity can take many forms: asking for approvals in advance, creating outlines for backup plans, having fallbacks ready, or allocating more time upfront to create a buffer.
Blocking time to get projects done
Having just stated that proactivity can prevent roadblocks, I now move to the next lesson learned: to then get things done, you need to, again, be proactive — and block the time to do them.
This sounds obvious, as most important things do once you read them. However, the fact that something is obvious does not mean it can be done the obvious way.
Let’s look at the day of a typical ML practitioner. For our purpose, it does not matter whether they are in research, engineering, or administration. The only thing that changes between these roles is the projects someone works on.
But here’s the twist: it is rarely project (singular). More often, it is projectS.
Our ML practitioner likely has more than one project. There is the main project (writing an MLOps pipeline, drafting a paper, upgrading the compute cluster). And then — as any PhD student can attest — there are the other (“side”) projects: presenting results, giving lectures, daily administration. All of these demand attention and time. And here we come back to the main project: time spent on other projects is not available for the main project.
So then, how can one spend more time on the main project (ideally without neglecting the other projects)? It turns out the answer is quite simple: block the time in your calendar.
Any free slot in your calendar can invite others to, well, invite you to a meeting. Instead, by simply blocking parts of your calendar, you can dedicate sufficient time to the main project. Then, the non-blocked time is still available for the other projects.
Essentially, it boils down to prioritization in 90% of cases: prioritize the main project. In the remaining 10%, emergencies are allowed to violate the rule.
Planning, planning, and keeping the plan the plan
Looking back on the month — and the previous two lessons learned — I think this all calls for an overarching lesson: planning. And: keeping the plan the plan.
In our fast-paced world, there is always a new thing. Want an example? The notebook I’m writing these lines with is from 2020. Since then, five new iterations of it have appeared.
Or: still remember GPT-3? Well, now we are at GPT-5.4 (and ChatGPT became multi-modal).
Or, if any more arguments are needed: the news. Day in, day out there is something new. All this is to say: if you plan something, it is easy to kick the plan aside and do something different instead.
That would be fine — but being good at something demands that we spend time again and again on that thing. And that, essentially, means proactivity, blocking time, and… planning. Be it literally by writing out a plan, or be it semi-unconsciously in your head.
For the ML projects we touched upon here, nothing would get done without planning. Not the paper. Not the new hardware. Not the pipeline.
If you plan sufficiently well — but not too accurately — then you can get things done. But only if you make the plan stay the plan, undisturbed by the newest news.

