This post by patoid just hit my (multitasking?) mind. It is about multitasking, and NO, not about RTOS scheduler and multitasking. Things are related, but not that much.
The problem is: how to be productive in today’s world? The world is running in parallel: many things happen at the same time. And I’m in the middle of it: phone calls, emails, meetings, somebody stepping into the room, discussions, multiple roles and jobs, piles and queues of things to, hard deadline for deliverables, changing priorities and a lot of things at the same (or no) priority, and interruptions on top of it. You name it.
Machines, Brains and Multitasking
This is kind of similar to an embedded system running an RTOS: it has multiple jobs/tasks, changing priorities, multiple queues and interrupts. Even if machines really can do only one thing at a time (multi-core not considered here), such machines are pretty good running in such a multitasking fashion.
But are humans not better than machines? Well, science indicates that the human brain is not well suited for ‘multitasking’. But somehow I believe that the female brain might have an advantage somehow? At least I watch my daughters talking, listening to music, watching a video and chatting with a group of people on the phone, all at the same time :shock:? Maybe because this is simply a different generation and I’m too old :???:?
There is one similarity between a multitasking (RTOS) machine and my human brain: if task switching happens to often, then I end up in ‘thrashing‘ mode: I spend my time with switching between tasks only.
Guidelines, not Rules
‘Multitasking’ is a reality, and expected in today’s world. I cannot ignore the fact that I need to do multiple things in an hour or every day. What I have found works best (at least for me) is the following:
- Have a single tool/place where to store all the ‘things to accomplish’. I use Outlook for this, simply because my employer is using it, and because it allows me to manage all my emails, notes, etc. That list has work items like ‘need to re-architect that software block’ or personal things like ‘spend a weekend with the family in the mountains’.
- Once a day, week, month and year I have a look at my ‘things to accomplish’. And schedule things in my calendar. The move from the ‘list’ to the ‘reality’: “So I do want to repaint that wall in my house? Fine, let’s plan and schedule for the Saturday in two weeks, from 8am to noon.” Things of course might change, push out or get obsolete, and that’s where that daily, weekly, monthly, yearly review can deal with it.
- Other regular activities get time allocated in my calendar too. There are things like ‘deliver weekly written report’, so there is an hour reserved every Friday for this. Similar to other things. But my calendar is not filled up back to back: there has to be room between the items: If I need a bit more time to finish something, it is not an issue. Or that ‘free’ slots can be used for smaller items.
- If something really takes longer, then I re-schedule it. Say if I planned to finish a task in 3 hours, but I see after 3 hours that I need 5, I try to allocate an extra 2 hour slot elsewhere. Maybe in the afternoon, or the next day depending on the urgency. Because otherwise all my other things of the day will be screwed up and shifted, and maybe there are things which cannot be moved out.
- I reserve time slots for ‘planned interruptions’, such as where everyone can walk in or interrupt me.
- If something can be done in a few minutes, I do it right away. That way the small things get out of the way fast. If too many of this kind of things are piling up, I bundle them and do them in a single larger time slot.
- I have found out that with some rigor ‘interrupts’ can be managed too (well, they have to be managed): it does not hurt to mask all interrupts and declare the next hour that you do not want to be interrupted. Except real emergencies (of course), I think it is OK not to pick up the phone or to switch it off over the week-end. Or not to answer to emails or questions for an hour or so, or even longer. Things *can* wait. It is amazing to see how sometimes things sort out themselves over time.
- As for priorities: this is not an exact science for me, but my thinking is that there are ‘important‘ things, ‘urgent‘ things and ‘important and urgent‘ things. Thinking just in three categories only simply helps. Many of us define our purpose of live through (professional) work. Yes, it is a very important part of life. But a good friend worded it very well: “The family loves you, not the company!”. Family first!
OK, the above things are not rules, they are guidelines :-). And probably I missed to list some smaller ‘guidelines’ as well. But this is how I try hard to handle the world of multitasking. I’m not applying the rules all the time, and probably I’m using it only for about 80%. I’m simply to lacy ;-). But it works for me. It allows me to be focused, to limit the number of interrupts while still handling the non-mask-able interrupts. And at the end of a long day to see that something has been accomplished, which is rewarding.