Jan 24, 2016

Deliberate Practice Series - 3: Daily Rituals

With a general foundation of deliberate practice laid out, it is now time to translate that into a workable daily ritual for my area of software development.

Creative Mornings
Mornings will be exclusively reserved for programming. Below are some guidelines I've come up with for my intended 5:30 AM - 8:30 AM time slot.
- Begin with studying up on a BIOS/Bootloader driver source code.
- Make copious notes on the functionality of the driver and what it does in a sequential order.
- Now, using your notes and your memory as your sole reference, recreate the driver's source. This isn't as easy done as it is said, because BIOS code gets pretty complicated with data structures that run up to tens, if not hundreds of fields, and interactions with a multitude of hardware registers. So I need to be practical about what an acceptable level of my recreated code is, because after all, this is not an exercise in code memorization.

Consumptive Evenings
I plan on carving some time out during my evenings for reading. I expect it to be beneficial to maintain a good mix of reading general Computer Science books and highly domain targeted Industry Standard Specifications and Manuals. Some guidelines here would be:
- Since it isn't always feasible to find time/energy on evenings for study, I might want to experiment with getting my daily work done by 5 PM and then read until 5:45 PM before I head home.
- Try allocating at least an hour of the rest of your evening for reading.

General Guidelines
Here are some general guidelines that apply to both my morning and evening plans:
- Stick to one particular topic for at least 3 to 4 days. Do not jump around from one topic to another. This will give you a good amount of sustained immersion and lets you go beyond superficial exposure.
- Have a list of 3 to 4 topics that you rotate through every quarter. After a quarter, switch gears and move on to newer territory.

Every once in a while, it is important to just step back from the rigorous routine and reevaluate the whole scheme and its effectiveness. This will be helpful to spot inefficiencies, rectify such areas and take your routine through a course of evolution for the greater good.

(Photo by Luis Marina)