On Lifelong Learning
August 24, 2025
Introduction
I think when it comes to majoring in Computer Science or Software Engineering, etc... a huge part of the process is constantly learning. With new technologies constantly arising, it gets so easy to get overwhelmed by huge amounts of information.
There is much to explore and what you want to specialize in. Before I got serious about my learning, it is dizzying to see that there is this big pool of information waiting to be unearthed by you.
But after 2 years of trying to figure out my learning process during my first 2 years in college, I have gained some intel. I hope this blog post becomes useful to you.
80/20 Rule
When I was reading around articles about productivity, I stumbled upon the advice of the 80/20 rule and how it can apply to anything. I was skeptical at first because I thought it was some another productivity hack that does not help with me in the long run. But the more I read it the more I become convinced about this idea.
So I played around with how I structure my learning with this framework. I have set a plan where:
- 80% of my time goes from actually doing projects and coding.
- 20% of my time goes to learning the theory behind them.
I did it one step further and made it so that within the 80% of doing:
- 80% of the time I will be doing projects.
- 20% brushing up on building my coding muscle through coding problems.
And then for the 20% of my time spending on learning the theory of a concept:
- 80% are topics I want to specialize. I want to focus on becoming Full-stack.
- 20% are topics focusing on the software engineering fundamentals (so like Data Structures, how the Internet Works, Algorithms, etc...).
I think a major thing people are missing is that fundamentals are important. I would read through these articles from LinkedIn about people telling about doing hundreds of problems, but never really understood where these concepts came from. Fundamentals will never go away when you go from one job to another or introducing yourself to a new coding language or framework.
And this 80/20 rule goes in handy with your college work. 20% of your time can be spending on reading and taking notes. 80% of your time is when you apply these ideas into problems, quizzes, or exercises. It is a great framework to decide how much you want to spend on learning vs applying ideas.
Building a Second Brain with RemNote
Now there are multiple ways to take notes or learning the theory. Some people like to take notes through paper, which I respect. Others like to take notes online which is my lane.
For me, I love taking notes through RemNote. RemNote is my life and savior for putting all of my tasks, notes, and learnings in one place. I love this feature where your flashcards are ingrained in your notes.
A feature that Obsidian (another note taking software) and RemNote does well is the feature of linking notes and concepts together. This is a concept of linked note-taking where you link ideas together to get a better understanding of the material. This helps make my learning process fulfilling and intentional.
A struggle for me is how would a concept I would be learning fit in the bigger picture? What I did was ask Google Gemini AI about software paradigms that are essential to be successful at software engineering. Gemini spits out all of the essential topics and created documents for each topic; I can get a picture on where this topic lies in the huge field of software engineering.
The image below is how I structured my "Computer Science Roadmap"
On the left shows the list of fundamentals I want to learn and on the right shows the specific concepts I want to specialize in. In my head, this does not feel as daunting because now I have a personal library of software engineering concepts I want to learn / have learned. It is like my personal wikipedia with a built in flashcard feature.
Learning as a Craft
I want to say this though that this is how I learn. Everyone has their own preferred way of learning and this is my perspective on how I learn. There are still more learning to do with how I learn and things may change. And that is ok.
For me, my general workflow is that I type into my notes what I am currently learning. At this stage I focus less on formatting, just creating a rough outline on what I am learning. And then I would set a time to tidy up my notes and then create flashcards, keeping only the essentials as if I am making an official study guide.
In the end, you might be asking... why am I doing all of this? I want to be in a place of intentional living and create a more impactful learning experience for myself. I want to take my learning process seriously and make the most of my education. I also love the process of learning, though it can get stressful sometimes, but thats just the nature of software engineering.
I hope you can take some of the wisdom here in this blog post and make most of your learning experience too <3
From my heart to yours, John Amiel Vergara