My Learning framework


Learning framework

In the ever-changing world of software, staying updated is crucial. That’s why I’ve embraced a learning framework I call Consume, Produce, and Engage. This approach has served me well over the years.

During the Consume phase, you absorb knowledge from books, workshops, seminars, and courses. However, you only retain about 40 to 50% of what you learn at this stage.

To deepen your understanding, it’s essential to move on to the Produce phase. Here, you create something based on what you’ve learned, such as a note synthesizing new information with prior knowledge, a presentation, or a video. Producing something highlights any gaps in your understanding of the topic.

Next comes the Engage phase. By sharing your work with others, they can offer feedback and reveal different perspectives on the subject matter. Engage with genuine people who can provide valuable insights and help you grasp the topic more holistically.

This cycle of Consume, Produce, and Engage is an ongoing process; as people point out new sources of information, you consume that knowledge and continue producing and engaging. This repetition helps develop a comprehensive understanding of any given topic.

Underlying this cycle is another sub-cycle: It starts with you. What’s your attitude towards learning? Are you curious and open-minded? Or do you think you already know everything or can’t learn anything new? Your mindset plays a significant role in how effectively this learning framework works for you. Embrace curiosity and humility to truly reap the benefits of Consume, Produce, and Engage.

Your environment plays a crucial role too. As the saying goes, walk with the wise and you’ll become wise; walk with those uninterested, and you’ll follow suit. If your surroundings don’t encourage trying new things or embracing failure, then you’re bound by its limitations.

Access to tools matters. Can you afford them? Are they available for you to learn smarter and tap into the world’s knowledge? Tools can spark different thoughts and satisfy your curiosity, creating a cycle that fuels learning.

Take my experience learning coding, for instance. I used this approach for learning new software languages as well as project management. Let’s say I’m learning Deno – I’ll watch a video or read examples, consuming information. Then, I’ll start producing something by working on a sample project or recreating an example. This solidifies what I’ve learned from books, videos, or code samples.

Next, I share my work with the Deno community and ask for feedback. Although not everyone will respond, a few people might offer suggestions for better APIs or algorithms. This sharing process feeds back into my learning cycle.

As a CTO, I believe in learning by doing and coding myself. However, another CTO might focus on helping their team learn instead of continuing to code personally – that’s perfectly valid too. Our paths will differ based on our attitudes and environments, but the key lies in embracing learning as an ongoing journey.

When I need to code, I seek an IDE or surround myself with fellow coders. I immerse myself in that world, ready to learn. Sometimes, I’ll even pay for tools like chatGPT or the Code Whisperer to help me write code.

How do you keep learning? Share your process in the comments.


[…] and foremost, embrace learning. Much like software, if you are not updated, you’ll quickly get outdated. Learning includes […]