Bootstrapping
Em geral, bootstrapping geralmente se refere a um processo de inicialização automática que deve continuar ou crescer sem entrada externa.
Etimologia
Botas altas podem ter uma presilha, presilha ou alça na parte superior conhecida como bootstrap, permitindo usar os dedos ou uma ferramenta de gancho para ajudar a calçar as botas. O ditado "puxar-se pelas próprias botas" já estava em uso durante o século XIX como exemplo de uma tarefa impossível. A expressão data pelo menos de 1834, quando apareceu no Workingman's Advocate: "Conjectura-se que o Sr. Murphee agora poderá se entregar ao rio Cumberland ou uma cerca de celeiro pelas tiras de suas botas." Em 1860, apareceu em um comentário sobre a filosofia da mente: "A tentativa da mente de analisar a si mesma [é] um esforço análogo ao de alguém que se levantaria por conta própria". Bootstrap como uma metáfora, significando melhorar a si mesmo pelos próprios esforços sem ajuda, estava em uso em 1922. Essa metáfora gerou metáforas adicionais para uma série de processos autossustentáveis que ocorrem sem ajuda externa.
O termo às vezes é atribuído a uma história em As Surpreendentes Aventuras do Barão Munchausen de Rudolf Erich Raspe, mas nessa história o Barão Munchausen puxa a si mesmo (e seu cavalo) para fora de um pântano por seu cabelo (especificamente, seu rabo de cavalo), não por suas botas - e nenhuma referência explícita a botas foi encontrada em outro lugar nas várias versões dos contos de Munchausen.
Aplicativos
Computação
Na tecnologia de computadores, o termo bootstrapping refere-se a compiladores de linguagem que podem ser codificados na mesma linguagem. (Por exemplo, um compilador C agora é escrito na linguagem C. Depois que o compilador básico é escrito, melhorias podem ser feitas de forma iterativa, puxando assim a linguagem para cima por meio de seus bootstraps). Além disso, inicialização geralmente se refere ao processo de carregar o software básico na memória de um computador após a inicialização ou reinicialização geral, o kernel carregará o sistema operacional que se encarregará de carregar outro dispositivo drivers e software conforme necessário.
Carregamento e execução de software
A inicialização é o processo de inicialização de um computador, especificamente no que diz respeito à inicialização de seu software. O processo envolve uma cadeia de estágios, em que, em cada estágio, um programa menor e mais simples é carregado e, em seguida, executa o programa maior e mais complicado do próximo estágio. É nesse sentido que o computador "puxa para cima por meio de seus bootstraps"; isto é, melhora a si mesmo por seus próprios esforços. A inicialização é uma cadeia de eventos que começa com a execução de procedimentos baseados em hardware e pode então passar para firmware e software que são carregados na memória principal. A inicialização geralmente envolve processos como realizar autotestes, carregar configurações, carregar um BIOS, monitores residentes, um hypervisor, um sistema operacional ou software utilitário.
O termo de computador bootstrap começou como uma metáfora na década de 1950. Nos computadores, pressionar um botão de bootstrap fazia com que um programa com fio lesse um programa de bootstrap de uma unidade de entrada. O computador então executaria o programa bootstrap, o que o faria ler mais instruções do programa. Tornou-se um processo autossustentável que prosseguiu sem ajuda externa de instruções inseridas manualmente. Como um termo de computação, bootstrap tem sido usado desde pelo menos 1953.
Desenvolvimento de software
Bootstrapping também pode se referir ao desenvolvimento de ambientes de programação cada vez mais complexos e rápidos. O ambiente mais simples será, talvez, um editor de texto muito básico (por exemplo, ed) e um programa assembler. Usando essas ferramentas, pode-se escrever um editor de texto mais complexo e um compilador simples para uma linguagem de nível superior e assim por diante, até que se possa ter um IDE gráfico e uma linguagem de programação de nível extremamente alto.
Historicamente, bootstrapping também se refere a uma técnica inicial para o desenvolvimento de programas de computador em um novo hardware. A técnica descrita neste parágrafo foi substituída pelo uso de um compilador cruzado executado por um computador pré-existente. Bootstrapping no desenvolvimento de programas começou durante a década de 1950, quando cada programa foi construído no papel em código decimal ou em código binário, bit a bit (1s e 0s), porque não havia linguagem de computador de alto nível, nem compilador, nem montador e nem linker. Um minúsculo programa montador foi codificado manualmente para um novo computador (por exemplo, o IBM 650) que converteu algumas instruções em código binário ou decimal: A1. Esse simples programa montador foi então reescrito em sua linguagem assembly recém-definida, mas com extensões que permitiriam o uso de alguns mnemônicos adicionais para códigos de operação mais complexos. O programa-fonte do montador aprimorado foi então montado pelo executável de seu predecessor (A1) em código binário ou decimal para fornecer A2, e o ciclo foi repetido (agora com esses aprimoramentos disponíveis), até que todo o conjunto de instruções fosse codificados, endereços de filiais foram calculados automaticamente e outras conveniências (como montagem condicional, macros, otimizações, etc.) foram estabelecidas. Foi assim que o programa de montagem inicial SOAP (Symbolic Optimal Assembly Program) foi desenvolvido. Compiladores, vinculadores, carregadores e utilitários foram então codificados em linguagem assembly, continuando ainda mais o processo de inicialização do desenvolvimento de sistemas de software complexos usando software mais simples.
O termo também foi defendido por Doug Engelbart para se referir à sua crença de que as organizações poderiam evoluir melhor melhorando o processo que usam para melhoria (obtendo assim um efeito composto ao longo do tempo). Sua equipe SRI que desenvolveu o sistema de hipertexto NLS aplicou essa estratégia usando a ferramenta que eles desenvolveram para melhorar a ferramenta.
Compiladores
O desenvolvimento de compiladores para novas linguagens de programação desenvolvidas primeiro em uma linguagem existente, mas depois reescritas na nova linguagem e compiladas por si só, é outro exemplo da noção de inicialização.
Instaladores
Durante a instalação de programas de computador, às vezes é necessário atualizar o instalador ou o próprio gerenciador de pacotes. O padrão comum para isso é usar um pequeno arquivo bootstrapper executável (por exemplo, setup.exe) que atualiza o instalador e inicia a instalação real após a atualização. Às vezes, o bootstrapper também instala outros pré-requisitos para o software durante o processo de bootstrap.
Redes de sobreposição
Um nó de bootstrapping, também conhecido como host de encontro, é um nó em uma rede de sobreposição que fornece informações de configuração inicial para nós recém-ingressados, para que possam ingressar com sucesso na rede de sobreposição.
Simulação de eventos discretos
Um tipo de simulação de computador chamada simulação de eventos discretos representa a operação de um sistema como uma sequência cronológica de eventos. Uma técnica chamada bootstrapping do modelo de simulação é usada, que inicializa os pontos de dados iniciais usando um gerador de números pseudo-aleatórios para agendar um conjunto inicial de eventos pendentes, que agendam eventos adicionais e, com o tempo, a distribuição dos horários dos eventos se aproxima de seu estado estacionário - o comportamento de bootstrapping é sobrecarregado pelo comportamento de estado estacionário.
Inteligência artificial e aprendizado de máquina
Bootstrapping é uma técnica usada para melhorar iterativamente o desempenho de um classificador. Normalmente, vários classificadores serão treinados em diferentes conjuntos de dados de entrada e, em tarefas de previsão, a saída dos diferentes classificadores será combinada.
Seed AI é um tipo hipotético de inteligência artificial capaz de auto-aperfeiçoamento recursivo. Tendo melhorado a si mesmo, ele se tornaria melhor em melhorar a si mesmo, potencialmente levando a um aumento exponencial da inteligência. Não se sabe que tal IA existe, mas continua sendo um campo ativo de pesquisa. A IA de sementes é uma parte significativa de algumas teorias sobre a singularidade tecnológica: os proponentes acreditam que o desenvolvimento da IA de sementes produzirá rapidamente uma inteligência cada vez mais inteligente (via bootstrapping) e, portanto, uma nova era.
Estatísticas
Bootstrapping é uma técnica de reamostragem usada para obter estimativas de estatísticas resumidas.
Negócios
Bootstrapping nos negócios significa iniciar um negócio sem ajuda externa ou capital de giro. Empreendedores na fase inicial de desenvolvimento de sua empresa sobrevivem por meio do fluxo de caixa interno e são muito cautelosos com seus gastos. Geralmente, no início de um empreendimento, uma pequena quantia de dinheiro será reservada para o processo de inicialização. Bootstrapping também pode ser um complemento para modelos econométricos. Bootstrapping também foi expandido no livro Bootstrap Business de Richard Christiansen, no artigo da Harvard Business Review The Art of Bootstrapping e no livro seguinte The Origin and Evolution de Novos Negócios por Amar Bhide. Há também uma Bíblia inteira escrita sobre como inicializar adequadamente por Seth Godin.
Os especialistas observaram que existem vários estágios comuns para iniciar um empreendimento comercial:
- No nascimento: Esta é a primeira etapa para arrancar pelo qual o empreendedor utiliza qualquer poupança pessoal ou emprestado e / ou investido dinheiro de amigos e família para lançar o negócio. Também é possível que o proprietário do negócio esteja funcionando ou trabalhando para outra organização no momento que pode ajudar a alimentar seus negócios e cobrir as despesas iniciais.
- Financiamento das vendas para os consumidores: Nesta etapa particular, o dinheiro dos clientes é usado para manter o negócio funcionando ao fundo. Uma vez que as despesas causadas pelas operações comerciais normais do dia-a-dia são atendidas, o crescimento da taxa geralmente aumenta.
- Outsourcing-stage: Neste ponto da existência da empresa, o empreendedor em questão concentra-se normalmente nas atividades operacionais específicas. Este é o momento em que os empresários decidem como melhorar e atualizar equipamentos (subseqüentemente aumentando a produção) ou mesmo empregando novos membros da equipe. Neste momento, a empresa pode procurar empréstimos ou mesmo apoiar outros métodos de financiamento adicional, tais como capital de risco para ajudar na expansão e outras melhorias.
Existem muitos tipos de empresas elegíveis para bootstrapping. Empresas em estágio inicial que não requerem necessariamente grandes influxos de capital (particularmente de fontes externas) se qualificam. Isso permitiria especificamente flexibilidade para os negócios e tempo para crescer. As empresas empreendedoras em série também poderiam colher os benefícios do bootstrapping. Estas são organizações pelas quais o fundador tem dinheiro com a venda de empresas anteriores que podem usar para investir.
Existem diferentes métodos de inicialização. Os futuros proprietários de negócios que desejam usar o bootstrapping como forma de lançar seu produto ou serviço geralmente usam os seguintes métodos:
- Usando dinheiro acessível de suas próprias economias pessoais.
- Gerenciando seu capital de trabalho de uma forma que minimiza as contas de sua empresa a receber.
- Apagando 401k fundos de aposentadoria e pagar-lhes em datas posteriores.
- Aumentando gradualmente as contas do negócio’ pagável através de atraso de pagamentos ou até mesmo alugar equipamentos em vez de comprá-los.
A inicialização geralmente é considerada bem-sucedida. Ao levar em consideração as estatísticas fornecidas pela Fundera, aproximadamente 77% das pequenas empresas dependem de algum tipo de investimento pessoal e/ou poupança para financiar seus empreendimentos iniciais. O empreendimento médio de uma pequena empresa requer aproximadamente US$ 10.000 em capital inicial, com um terço do lançamento de pequenas empresas com menos de US$ 5.000 inicializados.
Com base nos dados de inicialização apresentados pelo Entrepreneur.com, em comparação com outros métodos de financiamento, o bootstrapping é mais comumente usado do que outros. “0,91% das startups são financiadas por investidores anjos, enquanto 0,05% são financiadas por VCs. Em contraste, 57% das startups são financiadas por empréstimos e créditos pessoais, enquanto 38% recebem financiamento de familiares e amigos.”
Alguns exemplos de empreendedores de sucesso que usaram o bootstrapping para financiar seus negócios incluem o empreendedor em série Mark Cuban. Ele endossou publicamente o bootstrapping, alegando que "Se você pode começar por conta própria... faça isso sozinho, sem ter que sair e arrecadar dinheiro". Quando perguntado por que ele acreditava que essa abordagem era mais necessária, ele respondeu: “Acho que o maior erro que as pessoas cometem é que, quando têm uma ideia e o objetivo de iniciar um negócio, acham que precisam levantar dinheiro. E uma vez que você arrecada dinheiro, isso não é uma conquista, é uma obrigação” porque “agora, você está se reportando a quem levantou dinheiro”.
Empresas de capitalização como Apple Inc. (APPL), eBay Inc. (EBAY) e Coca-Cola Co. também afirmam que atribuem parte de seu sucesso ao fato de que esse método de financiamento permite que elas permaneçam altamente focadas em um conjunto específico de produtos lucrativos.
Existem vantagens no bootstrap. Os empreendedores têm total controle sobre as finanças do negócio e podem manter o controle sobre as entradas e saídas de caixa da organização. O patrimônio é retido pelo proprietário e pode ser redistribuído a seu critério. Há menos responsabilidade ou oportunidade de acumular dívidas de outras fontes financeiras. O bootstrapping geralmente leva os empreendedores a operar seus negócios com liberdade para fazer o que bem entenderem; de forma semelhante aos proprietários individuais. Este é um método eficaz se o objetivo do proprietário da empresa for poder financiar investimentos futuros de volta ao negócio. Além das partes interessadas diretas do negócio, os empreendedores não precisam responder a um conselho de investidores que poderia pressioná-los a tomar certas decisões benéficas para eles.
Também há desvantagens no bootstrap. A responsabilidade pessoal é uma. As linhas de crédito geralmente devem ser estabelecidas em nome do proprietário, o que é a ruína de algumas empresas devido ao acúmulo de dívidas de vários cartões de crédito, etc. Todos os riscos financeiros pertencentes ao negócio em questão recaem sobre o proprietário ombros. O proprietário é forçado a colocar em risco seus próprios investimentos ou os de sua família / amigo em caso de falência do negócio. Possíveis questões legais são outra desvantagem. Houve alguns casos em que empresários foram processados por familiares ou mesmo amigos próximos pelo uso indevido de seu dinheiro inicial. Como o financiamento é limitado ao que o proprietário ou a empresa ganha, isso pode criar um teto que impede o crescimento. Sem o auxílio de eventuais fontes externas de financiamento, os empreendedores podem se ver impossibilitados de promover funcionários ou mesmo expandir seus negócios. A falta de dinheiro pode levar à redução da qualidade do serviço ou produto a ser prestado. Certos investidores tendem a ser muito respeitados em setores específicos e administrar uma empresa sem seu apoio ou apoio pode causar a perda de oportunidades cruciais. Estresse pessoal para o empresário ou empresário em questão é comum. Lidar com o financiamento por si só muitas vezes levou a momentos estressantes para certos indivíduos.
As startups podem crescer reinvestindo os lucros em seu próprio crescimento se os custos iniciais forem baixos e o retorno do investimento for alto. Essa abordagem de financiamento permite que os proprietários mantenham o controle de seus negócios e os obriga a gastar com disciplina. Além disso, o bootstrapping permite que as startups se concentrem nos clientes e não nos investidores, aumentando assim a probabilidade de criar um negócio lucrativo. Isso deixa as startups com uma melhor estratégia de saída com maiores retornos.
Compras alavancadas ou altamente alavancadas ou "bootstrap" transações, ocorrem quando um investidor adquire o controle acionário do patrimônio de uma empresa e onde uma porcentagem significativa do preço de compra é financiada por meio de alavancagem, ou seja, empréstimo da empresa adquirida.
Bootstrapping em finanças refere-se ao método para criar a curva de taxa à vista. A Operação Bootstrap (Operación Manos a la Obra) refere-se aos ambiciosos projetos que industrializaram Porto Rico em meados do século XX.
Biologia
Richard Dawkins em seu livro River Out of Eden usou o conceito de bootstrapping de computador para explicar como as células biológicas se diferenciam: "Diferentes células recebem diferentes combinações de produtos químicos, que ativam diferentes combinações de genes, e alguns genes funcionam para ativar ou desativar outros genes. E assim o bootstrapping continua, até que tenhamos o repertório completo de diferentes tipos de células."
Filogenética
A análise de bootstrapping fornece uma maneira de julgar a força do suporte para clados em árvores filogenéticas. Um número é escrito por um nó, que reflete a porcentagem de árvores bootstrap que também resolvem o clado nas extremidades daquele ramo.
Lei
Bootstrapping é uma regra que impede a admissão de evidências de boatos em casos de conspiração.
Linguística
Bootstrapping é uma teoria de aquisição de linguagem.
Física
Teoria quântica
Bootstrapping é o uso de critérios de consistência muito gerais para determinar a forma de uma teoria quântica a partir de algumas suposições sobre o espectro de partículas ou operadores.
Plasmas de fusão confinados magneticamente
Em dispositivos de fusão tokamak, bootstrapping refere-se ao processo no qual uma corrente de bootstrap é autogerada pelo plasma, o que reduz ou elimina a necessidade de um driver de corrente externo. Maximizar a corrente de bootstrap é um dos principais objetivos dos projetos tokamak avançados.
Plasmas de fusão inercialmente confinados
Bootstrapping em fusão de confinamento inercial refere-se às partículas alfa produzidas na reação de fusão que fornecem aquecimento adicional ao plasma. Esse aquecimento leva à ignição e a um ganho geral de energia.
Eletrônicos
Bootstrapping é uma forma de feedback positivo em projetos de circuitos analógicos.
Rede elétrica
Uma rede elétrica quase nunca é derrubada intencionalmente. Geradores e estações de energia são iniciados e desligados conforme necessário. Uma estação de energia típica requer energia para iniciar antes de ser capaz de gerar energia. Essa energia é obtida da rede, portanto, se toda a rede estiver inativa, essas estações não poderão ser iniciadas.
Portanto, para iniciar uma rede, deve haver pelo menos um pequeno número de estações de energia que possam iniciar totalmente por conta própria. Um black start é o processo de restaurar a operação de uma estação de energia sem depender de energia externa. Na ausência de energia da rede, uma ou mais partidas pretas são usadas para inicializar a rede.
Redes celulares
Uma função de servidor de inicialização (BSF) é um elemento intermediário em redes celulares que fornece funções independentes de aplicativos para autenticação mútua de equipamentos de usuários e servidores desconhecidos entre si e para 'inicialização' a troca de chaves de sessão secretas posteriormente. O termo 'inicialização' está relacionado com a construção de uma relação de segurança com um dispositivo previamente desconhecido e para permitir a instalação de elementos de segurança (chaves) no dispositivo e no BSF posteriormente.
Contenido relacionado
Transporte no Egito
Telecomunicações digitais sem fio aprimoradas
Base de dados