Why ask questions when few are answered
History / Edit / PDF / EPUB / BIB / 1 min read (~194 words)What is the point of asking ourselves many questions when we only answer a few of them?
The purpose of asking yourself questions is to prompt your subconscious to look for the answer.
Asking yourself questions is a way to determine if you know or do not know the answer. If you don't know the answer, then nothing will come on the top of your head quickly. On the other hand, if you know an acceptable answer, it will show itself rather quickly.
Asking yourself questions is a way to explore the domain of your knowledge and look for areas where you might need to do additional research.
If you ask yourself a lot of questions on a certain topic you're studying and you don't know the answers, then it can let you know that your knowledge is lacking and that you need to study more.
In some cases you might ask yourself questions that you don't really want to know the answer to.
One of the main reason a lot of questions remain unanswered is because asking questions is easy, but answering is hard.
What is belief traceability?
In software development, is it very common to want to have traceability between things. We want to know from where a requirement came from, who created the entry, who approved that it should be supported by the software, the issues in the issue tracker that will implement the requirement, who implemented the requirement, who reviewed the implementation, etc. The goal is to be able to retell the story of this requirement from beginning to end if necessary.
In the case of belief traceability, we want to be able to trace how we've come to believe in something. Being able to trace back to the source of our beliefs allows us to determine if we still want to believe in them. Being able to also determine how a belief affects or generates other beliefs can be quite critical when we are re-evaluating our beliefs at some points in our lives.
Belief traceability starts with making a list of all the beliefs you have. Once you have made this list, you can try to determine if certain beliefs lead to other beliefs. You can also try to figure out if you have conflicting beliefs. You can attempt to associate beliefs with people, either because you think they are the ones that led you to believe something, or because they believe in that belief themselves. You may also have changed beliefs at certain points in your life. As such, it is interesting to create a timeline of your beliefs, where said beliefs are seen as being replaced or evolving over time.
As you get familiar with the process of tracking your beliefs, you will want to update your belief tracking system as you acquire new beliefs. This will allow you to reflect explicitly on what you believe and help you make a thorough analysis of those beliefs.
Learning according to machine learning
History / Edit / PDF / EPUB / BIB / 2 min read (~201 words)What is learning according to machine learning?
It is (for supervised learning) looking at numerous samples, decomposing them into input variables and their associated target variable, and deriving according to an algorithm how to predict the target variable given input variables.
It is the (potentially lossy) compression of the observed samples, where the learning algorithm describes the compression/decompression algorithm. The compressed data is the information necessary for the algorithm to make predictions (decompression).
It is the creation of some "memory" of the observed samples. Whereas an untrained model has no memory of the dataset since it hasn't seen the data, a trained model has some form of memory. A simple model such as sklearn's DummyRegressor will learn and memorize the mean of the target variable. It may not have learned and memorized much, but it has built its internal model of the data.
It is to imitate as closely as possible the source of data it is trained on. This means that given input variables, it should produce target values that are as close as possible to those observed during training (learning).
Picking the best material to learn a topic
History / Edit / PDF / EPUB / BIB / 2 min read (~330 words)How does one determine the best material to learn a topic?
My approach has always been based on the wisdom of the crowd.
If I want to read a book on a given topic, I will first look for the books that are available and create a list. From that list I will then look at websites like goodreads to gather people's opinion on the book. I look for two factors: how many people read the book, and the overall rating of the book. The book should have been read by as many people as possible and have the highest rating. I will also read some of the low rating comments to get a sense of the negative feedback that has been provided on the book.
If I already have some knowledge about the topic I am studying, I might be looking for specific sub-topics to be covered. I would then inspect the table of contents of the books to determine if those sub-topics are covered. I may end up reading only a chapter of a book because it addresses something I'm interested in. The topic may also only be covered in this book.
In some cases, I will ask people that are more knowledgeable than I am to give me references. I use my knowledge of their expertise to determine the topics on which they can and cannot offer expertise and suggestions.
If there are multiple options of equally good books, then I will skim a few of them, maybe read a few passages to get a personal impression of the book. I prefer concise and non-repetitive content.
With my chosen book in hand, I will start to read through it from beginning to end. If at some point the content is less than ideal, I don't mind skipping it and looking for additional sources (e.g., books or websites) to fill those gaps.
Identifying areas to improve
History / Edit / PDF / EPUB / BIB / 2 min read (~326 words)How can one identify the areas he needs to improve?
Through introspection.
As we do things through our daily lives, there are events which we wished had unfolded better. As we realize those areas of weaknesses, it is important to write them down so that we can build a list of those areas we may want to spend time improving in the future.
Another way one can identify the areas he needs to improve is to use the Feynman technique.
- Choose a concept
- Pretend you are teaching it to someone else
- Identify gaps in your explanation, go back and learn some more, then try explaining some more
- Review and simplify
This technique can also be applied to the skills you lack. Instead of trying to teach someone else, you basically want to be able to explain the skill to someone else as accurately as possible. As you identify gaps in the description of the skill to perform, you are basically documenting what you need to work on.
For example, you might want to determine which one of your programming skills are lacking. You might start by asking yourself how you would design and implement things you use in your daily life: how is a text editor implemented? what happens when I type a URL and press enter in a browser? how are files read from a disk? how is this special effect rendered in a video game?
Make sure that you ask yourself questions that are relevant to areas you want to improve. If you don't know how networking works, but it has no incidence on you, then you do not need to address this weakness. Spend time improving skills which will be useful to you in the future.
Look for things that create friction in your life, those are generally places where you'll find potential for improvement.