Há pouco menos de um ano, quando os bloqueios da Covid-19 começaram a se espalhar pelo mundo, a maioria das pessoas começou a estocar papel higiênico e comida enlatada. Mas pessoalmente, eu estava procurando por algo diferente: implementar uma função de pesquisa.
O propósito da função de pesquisa não era muito importante, eu só precisava codificar. O código é calmante porque permite que você se sinta no controle nos momentos em que o mundo aparentemente mergulha no caos. Basicamente, a programação envolve pequenos quebra-cabeças para resolver. Não apenas de quebra-cabeças passivamente sobre a mesa, mas de quebra-cabeças nos quais você pode respirar a misteriosa vitalidade. Quebra-cabeças capazes de realizar tarefas, criar algo, automatizar uma rotina ou publicar textos disponíveis para todo o mundo.
Como muitos outros escritores e artistas, tenho um site pessoal que funciona há quase 20 anos. Decidindo lidar com o código, tirei o pó do meu conhecimento enferrujado de JavaScript e comecei a procurar bibliotecas de pesquisa difusa que eu pudesse conectar em um site para facilitar a localização de ensaios de minha coleção.
Dividimos a tarefa em partes. Nós os escrevemos em um aplicativo de tarefas (adoro usar o Things). E é assim que o universo criativo é criado. Todos os dias, eu recuo do colapso global da sociedade que está se desenrolando fora da minha vida e mergulho na pesquisa, um por um, riscando os pontos de pendência. Covid era enorme; minha lista de tarefas tinha um comprimento decente.
O verdadeiro prazer deste projeto foi não só realizar a procura, mas também melhorar, polir, eliminar as asperezas. Para me perder no mundo que eu mesmo fiz. Posso não ser capaz de controlar uma pandemia formidável, mas posso administrar este pequeno punhado de pedaços.
Todo o processo de trabalho tornou-se uma fuga, mas uma fuga com impulso de crescimento. Configuramos o estilo de navegação de teclado ideal, mudamos o momento de transmissão da carga útil da pesquisa, encontramos um equilíbrio entre o tamanho do índice e a utilidade da pesquisa. Mais importante, mantemos nosso código incrivelmente leve. Conclua, transforme o código em uma pequena "essência" no GitHub e compartilhe-o com a comunidade. É como passar a bola para outras pessoas: vá em frente, agora você pode usar no seu site. Pesquisa de clientes ultrarrápida e otimizada para teclado no Hugo.
Ele é imperfeito, mas muito bom.
O ponto principal é que o costume de tentar codificar não é apenas uma cura em si, mas também um truque para transformar a sensação de horror em algo construtivo: uma função que adiciona uma pequena, mas ainda valiosa contribuição para o todo.
Comecei a programar quando tinha dez anos e não desisti desde então. Basicamente, aprendi tudo sozinho. Entre outras pessoas, sinto uma estranheza extraordinária, e a máquina me tranquilizou com sua literalidade e prometeu me deixar entrar em um mundo que nem mesmo os adultos ao meu redor poderiam compreender. Nesse sentido, o código se tornou um amigo para mim, um amigo que nunca julgará.
O padrão se desenvolveu: quando eu estava cansado das complexidades das situações sociais quando criança, eu me voltei para o código, tornando-me um recluso. Ellen Ullman em seu livro Life in Code: A Personal History of Technology escreve: “Até me tornar um programador, não compreendia totalmente a utilidade de tal isolamento: silêncio, reduzindo a vida ao pensamento e à forma; por exemplo, entrar em uma sala escura para trabalhar em um programa quando o relacionamento com as pessoas fica complicado. "
Ler livros de linguagem assembly no ensino médio ou programar software BBS no ensino médio ainda não parecia um salva-vidas para mim. Meu primeiro reconhecimento consciente do poder de cura do código veio alguns anos atrás, quando refatorei meu site de um sistema de gerenciamento de conteúdo para outro. Parece inimaginável, mas é verdade: fui curado pelo CMS.
Naquela época, sofri de depressão pessoal e profissional por muito tempo. Eu estava completamente inquieto. Quando comecei a repensar meu estado, percebi que não estava onde queria e esperava estar.
Isso acontece comigo às vezes; isso acontece muito com algumas pessoas. Quando sinto a gravidade da depressão caindo sobre mim, muitas vezes me lembro da epígrafe de "Escuridão Visível"William Styron: "Pela coisa terrível de que eu estava apavorado, que me alcançou ..." Normalmente, isso significa que eu não descansei o suficiente. Não quero dizer por dias, mas sim meses ou anos. Inclino-me gradualmente, como um navio no qual a água entra por um riacho. Depois de algum tempo, ele definitivamente se afogará. Meu cérebro estava afundando gradualmente e eu senti que ele precisava de servidores como uma salvação. Descobri que os servidores são um dos lugares mais seguros para mim.
Eu queria manter meu servidor Rackspace frágil e caro vivo há anos, mas estou com preguiça de fazê-lo. Esta é uma tarefa volumosa e ingrata que requer concentração constante.
Quase tudo sobre servidores acontece na linha de comando do "terminal" - um mundo livre de imagens e interfaces gráficas. Somente texto. Cada ação é afiada ao ponto e literalmente. Um erro de digitação em um único caractere pode destruir o sistema. Na verdade, ao alternar para o modo de administrador ou "superusuário", os servidores exibem esta mensagem há décadas:
Esperamos que você tenha ouvido a palestra familiar do administrador do sistema. Geralmente se resume aos três pontos a seguir:
1: Respeite a privacidade dos outros.
2: Pense antes de apertar as teclas.
3: Com grande força vem uma grande responsabilidade.
Pode-se sentir fraqueza nos joelhos, percebendo o quanto o funcionamento do mecanismo do mundo depende da precisão da entrada do teclado. Mas este é exatamente o caso, e quando você explora o interior de sua distribuição Linux favorita, você observa com a boca aberta o absurdo e a beleza das interseções de fluxos que suportam o funcionamento da web e a maior parte de nossa infraestrutura digital (e indiretamente , fisica).
Esta é em parte a razão para o apelo dos sistemas: mover-se através desse caos, com toda sua poesia distorcida grep , vi , git , apachee * .ini— *, com a ajuda de movimentos ultrarrápidos dos dedos no teclado, é incrível. Você se sente como um alquimista. Sim, e você é. Você digita palavras misteriosas, quase sem sentido, em uma interface de texto linha por linha, e agora um aplicativo simples está pronto, cujo acesso aparece instantaneamente para um grande número de pessoas ao redor do mundo.
As pessoas que amo muitas vezes se sentiam envergonhadas ou até mesmo desconfiadas quando descobriam acidentalmente que eu era bom em bash.(uma espécie de shell de terminal para inserir comandos). Como se estivesse escondendo deles algum segredo desagradável. Uma vez, entrando no mundo do texto, com alguns toques rápidos no teclado, ajudei o filho adolescente de um amigo a instalar mods para o Minecraft. Pelo olhar dele, percebi que imediatamente me tornei para ele algo como uma estrela do rock. Graças a duzentos cliques, uma ponte foi criada entre duas gerações.
Eu encontro paz no escuro caos deste mundo. Código e servidores são minha casa, e esse sentimento é difícil de explicar para aqueles para quem eles não estão.
Então, no meu estado inclinado e ligeiramente deprimido, comecei a mover os sites do servidor antigo para o novo. Minhas tarefas foram registradas em minha lista de tarefas confiável. Os URLs dos sites antigos marcaram eras únicas em minha vida através das lentes das quais eu mesmo me vi.
Meus antigos sites são fantasmas. Ninguém vai vê-los ou atacá-los. Eu os transferi porque me senti responsável por eles, senti que eles têm o direito de continuar a vida em batidas.
A maior parte do trabalho do servidor envolvia tornar sites complexos menos complexos. Ou seja, transforme dinâmico em estático. Extraia esses sites de seus núcleos de PHP, traga-os de volta ao plácido HTML e CSS e torne-os rápidos de manter e à prova de futuro. É engraçado que mesmo algo tão simples como um banco de dados MYSQL requeira poda e alimentação, assim como as plantas. Que um script PHP aparentemente inofensivo se torna obsoleto após uma dúzia de anos devido à evolução dos modelos mentais das linguagens. Mas se você pegar uma página HTML do início dos anos 90, ela será renderizada em quase todos os dispositivos com tela.
Neste sprint, ao migrar sua página inicialEu também o converti em um site chamado estático. Em uma versão mais simples, que continuará a funcionar em algumas centenas de anos. Ela se parece muito com ela antes. Chegando a sites estáticos, fizemos um círculo completo, como poetas exaustos que viajaram pelo mundo e experimentaram todas as formas poéticas, e finalmente percebemos: para nos ver através de nossas tragédias, basta um simples haicai.
Tal como acontece com a maioria dos trabalhos de infraestrutura, essas tarefas monótonas nos bastidores são frequentemente ignoradas, ridicularizadas como sem importância e sem fundos suficientes. Isso acontece até que algo estale ou comece uma pandemia. Então entendemos que infraestrutura é tudo, e sem ela nosso mundo voltará a um estado de troglodita de caverna, ou pior ainda.
No final da década de 1990, não tínhamos escolha a não ser ser o proprietário, o responsável pela limpeza e o engenheiro de sistemas de sua página inicial. Hoje é possível empurrar essa responsabilidade para terceiros. Tumblr, Ghost, Facebook, Blogger, Wordpress - surgiram muitas plataformas nas quais você pode se concentrar apenas no conteúdo e, em vez disso, diminuir seu nível de controle.
Você pode elevar muito o nível de responsabilidade. Provavelmente aconteceu comigo. Não importa quanto esforço você coloque no sistema, o efeito disso não pode exceder um determinado valor. Mas isso não me incomoda.
Essa solução de problemas linha por linha às vezes se torna exatamente o que me tira da cama. Você conhece esse sentimento? “Eu não quero sair de debaixo das cobertas”? Todas as manhãs do ano passado para toda a humanidade, talvez o maior desejo fosse ficar na cama, este mundo se revelou tão desequilibrado. Mas então, debaixo desse cobertor, começo a pensar Aha!Eu sei como resolver o problema do servidor X, ou como lidar com o comportamento estranho de Y. Eu sei como consertar este código de pesquisa. E graças a isso, posso me levantar e me tornar um humano (ou pelo menos parcialmente humano), entrar neste mundo de linhas, onde ninguém vai te julgar. Ele contém apenas você e a mecânica dos sistemas; sistemas que se tornam mais bonitos quanto mais tempo você gasta neles. Para mim, essa responsabilidade é terapia.
E então eu destruo o sistema - o sistema que eu amava e que me serviu fielmente por muitos anos, a fim de criar uma estrutura melhor e mais estável para o código, e talvez parcialmente para o mundo.