Como um novato humilde no mundo da programação, e folheando todas as respostas aqui depois de ver essa palavra ser usada de maneiras aparentemente ligeiramente diferentes em lugares diferentes, achei a leitura da página da Wikipedia no Bootstrapping (duh! Não pensei em seja a princípio) é muito informativo para entender as diferenças no uso dessa palavra. Poderia ser ...... em ocasiões extremamente raras ...... A Wikipedia pode até ter melhores explicações para certos termos do que .... (editada)? Eles vão trazer pontos de representantes na Wikipedia?
Para mim, parece que todos os significados têm a ver com: começar com o mais simples possível Thing1, tornar algo um pouco mais complexo com o Thing2, e agora você pode usar o Thing2 para executar tarefas de maneira mais eficiente e rápida do que você poderia originalmente com Thing1. Em seguida, repita de Thing2 para Thing 3 ad infinitum ...
Eu o vejo intimamente conectado à evolução biológica e às 'Camadas de Abstração' (iniciantes como eu, ahem, Wikipedia, tosse) - a evolução dos computadores da década de 1940 com switches, código de máquina, Assembly, C, Python, AIs que você pode dar todos os tipos de instruções complexas para gostar de "fazer o jantar% 4 ^% para os meus requisitos padrão & ^ $% e limpar o chão com você% $ £" @: ~ "em gíria bêbada ou dialeto tribal da Amazônia ou inglês sem que eles levantem uma exceção '(para iniciantes novamente ... você adivinhou) - perdeu muitos links por causa da simples ignorância.
Então, em certos significados específicos de software: Significado1: O Thing1 é usado para carregar a versão mais recente do Thing2 (porque é claro que o Thing2 será maior que o Thing1, assim como o Thing3 será maior que o Thing2).
Significado2: Thing1 é um idioma de nível inferior (mais próximo de 1001011100 .... 011001 do que print ("Hello", nome de usuário))) usado para escrever um pouco do idioma superior do Thing2, então esse pouco do Thing2 é usado para expandir o Thing2 em si do nível de vocabulário do bebê para o nível de vocabulário do adulto (o Thing2 começa a ser processado, ou para usar o termo técnico correto 'compilado', pela versão do bebê em si (é um bebê inteligente!), enquanto a versão do bebê do Thing2 por si só, é claro, só poderia ser compilado pelo Thing1, porque ele não pode existir antes de existir, certo!), então a versão filho do Thing2 compila a versão Surly Teenager do Thing2, quando a comunidade de programação decide se os 'problemas' do Surly Teenager ( software termo e metáfora!) valem a pena gastar tempo suficiente para serem aceitos a longo prazo,ou abandoná-los (não tenho certeza para onde levar a analogia aqui).
Se sim, então o Thing2 se autodestruiu (possivelmente algumas vezes) desde a infância até a idade adulta: "a criança é o pai do homem" (Wordsworth, sugiro que não tente procurar a citação ou o autor em Stack Overflow) .