Tools for effective learning
Whether you are working or studying, learning is a fundamental part of your life. There cannot be growth without learning and learning takes effort. How much time you spend learning, your mood while learning, and the results that you get from it, depends on the methods you use. Choose the right tool to save yourself some frustration and enjoy the acquisition of knowledge! What follows are methods that I used most commonly during my studies.
Excellence is never an accident. It is always the result of high intention, sincere effort, and intelligent execution; it represents the wise choice of many alternatives - choice, not chance, determines your destiny.
— Aristotle
Excalidraw
What pops into your head when you think about a problem? A stream of words or a movie of geometrical objects? Both, isn’t it? The way I remember things is heavily based on images. Especially when talking about technology, drawing a diagram is a must.
Excalidraw is a concise drawing tool for diagrams. It does what you would expect it to do without creating much friction. While you most often see hand-drawn like diagrams from it, you can also set the sloppiness to “Architect” (i.e. zero) to achieve a more professional look. A rich collection of libraries gives you all the icons and symbols you could ever need. I previously tried yEd, yEd live, PlantUML and diagrams.net (a.k.a draw.io). Excalidraw beats them all.
The primary mode of use is to just use the Service as a Software Substitute (SaaSS). You can, however, follow the instructions in the repository to host a copy on your local machine.
Git and LaTeX
When it comes to typesetting a document, be it a thesis or a white paper, LaTeX is the best thing mankind could come up with so far. Maybe you expected me to say something like “LaTeX is your friend”, but it is not. The verbose and almost unreadable syntax, the lack of code completion, the undecipherable error messages, the dubious way of using and sharing packages, the overwhelming number of dialects… they all contribute to making LaTeX and the whole TeX ecosystem mature for retirement. I am personally very unsatisfied with the user experience and I think that something much better could be developed.
For lack of a better alternative, I recommend LaTeX to be used with something like TeXstudio and your own Git repository. You should not use Overleaf, because it is a package of already existing tools, but worse. TeXstudio gives you a better LaTeX experience and Git gives you a better version control. The free version of Overleaf doesn’t even have a version control, which is how some typos leaked into my thesis. Real-time collaboration is not a reason to use Overleaf, because you can just share your screen for those rare occasions.
It’s almost always more flexible and more organized to let collaborators work on different chapters. In git terms, this translates to working trunk-based or feature-based. You either have a master branch that is continuously rebased or you have multiple branches that are eventually merged into the master branch.
To-do lists and a calendar
There is much discussion on how calendars are superior to to-do-lists. They force deadlines on you and I admit that it works. Reserving time for a task in advance is very different from adding the task to a list. Even if you assign a high priority to the task, the tendency will always be to procrastinate tasks that are most uncomfortable to solve.
What I recommend is combining the two! The calendar will help you avoid procrastination and the to-do list keeps track of more distant goals for which you cannot set a deadline yet. I basically use to-do lists as a way to write notes. They let me keep an organized record of project ideas, which is why I have a few ideas on the list that have been waiting to be implemented for years now! I then periodically go back to those ideas and elaborate them. A new idea might sound bad at the beginning, but if you give it some time to develop, it might actually turn into an idea that you are glad you wrote down!