It originates from 19th century America and is frequently used in the phrase “pull oneself up by his bootstrap” as an example of impossible thing.Wiki
My first encounter
I first heard of bootstrapping is during a statistics class when we are learning how to estimate an estimator(such as population mean). It will “augment” the data by sampling the original data with replacement.
For example, if we have 100 people and we want to know the average height of people on Earth, we will sample with replacement of group of 5 and get a bootstrap sample.
This group of 5 is called bootstrap sample. In a usual statistical analysis, we will compute many bootstrap sample and find their estimator(in our example, that’s the mean). The distribution of the estimator will provide us with an estimate of the true distribution.
bootstrapping in CS
Bootstrapping is a very powerful idea in CS. It usually building something complex gradually, starting with little resource and simple code.
Booting is a shorthand for bootstrapping
“In general, bootstrapping usually refers to a self-starting process that is supposed to proceed without external input. In computer technology the term (usually shortened to booting) usually refers to the process of loading the basic software into the memory of a computer after power-on or general reset, especially the operating system which will then take care of loading other software as needed. ” Another wiki page
Boot(strapp)ing in starting a computer
Bootstrapping in compiler
How do you get the first compiler in C? We have multiple options here:
You can write it in B and compile it. Then we can write and compile another compiler in C and discard the compiler compiled from B.
Another option is to bootstrap it. Just like bootstrapping, its pretty “Chicken and egg”. The first LISP compiler is hand-written and assembled in LISP!
For more, please check here: Bootstrapping in compiler
Why I write this post
Because I was installing a software and while installing it ( and it is still installing as of the time of now), the word bootstrapping showed up quite a lot in the terminal.