
Pedro Lucas Porcellis
Escrevo código para pagar as contas. Eu faço coisas aleatórias porque tenho muitas substâncias químicas no meu cérebro. Às vezes eu cuspo umas palavras nesse blog.
Também disponível em
Eu gosto de e-mail enquanto forma de comunicação, em especial por três fatores: (1) é construído em cima de protocolos abertos (2) é, de certa forma universal, sendo a porta de comunicação digital mais acessível e simples (3) existe à pelo menos 50 anos. Com esses fatores em mente, é natural que usuários tenham uma necessidade real que não foi largamente pensada originalmente: privacidade, afinal, email por si só é um protocolo que — pelo menos originalmente — envia apenas texto.
Recentemente tenho notado que diversas comunidades de software livre 1 tem se ancorado em cima de softwares que não são livres tampouco de código aberto.
Isso me incomoda por uma razão obvia, eu não espero que um software livre esteja ancorado em cima de uma plataforma proprietária. Me parece indubitavelmente incoerente. Poucas pessoas percebem isso, mas a cada software livre trazido nesse mundo, ele serve como um contra-ponto ao seu par proprietário, um contraponto que acredita que o comum e coletivo é melhor do que a individualidade e a propriedade.
Eu comecei a utilizar o Alpine Linux já faz um tempo, em especial porque eu sabia que ele era conhecido por ser uma distribuição leve, um requisito do qual eu julgo muito necessário e da qual eu já escrevi a respeito. Depois de um ano trabalhando de casa devido a pandemia de Covid-19, decidi parar de utilizar um notebook como minha ferramenta principal. Os motivos são variados, mas a falta de espaço para armazenamento e ter que lidar com bateria me fizeram eu finalmente fazer um merecido upgrade para uma estação de trabalho desktop.
Uma das ferramentas que eu acho das mais úteis no git
, e da qual eu mais
amo é o git-rebase(1)
. Ela se baseia na premissa que trouxe o git para
o mundo dos sistemas de controle de versão: de que você pode e deve alterar a
história do teu repositório de forma a tornar ele mais legível e organizado.
Ao redor do mundo, cada projeto estabelece sua convenção de como trabalhar com o
git, alguns utilizam técnicas como o git-flow, outros, apenas uma branch e tags,
outros dividem em duas branchs principais, master/main
e production/release
.
A convenção no meu trabalho, é de sempre criar uma branch específica para
trabalhar em uma nova funcionalidade, correção de algum erro ou melhoria num
geral. Feito isso, eu adoto a disciplina de (1) manter ela atualizada com a
branch pai usando git pull --rebase origin/branch_pai
e (2) conforme for
trabalhando nela, procuro manter ela organizada usando o git rebase -i HEAD~N
.
Eu passo no mínimo, 8h do meu dia escrevendo código. Encarando um editor de texto e diversos terminais. Pensando sobre estruturas de dados, pensando sobre como eficientemente armazenar informações e como ensinar meu computador (ou de outros) a fazer coisas que eu não quero fazer manualmente, porque o computador é mais confiável do que eu para fazer essas coisas. Ele pode calcular mais rápido, lembrar coisas por mais tempo, e se comunicar mais rápido com as pessoas do que eu sequer imaginaria fazer, e por isso eu delego essas funções para ele. Mas eu não consigo confiar nele.
Olá, escrevo mais uma vez atrasado. Na virada do ano perdi meu avô, e isso me abalou de uma forma inesperada. Tentei escrever varias vezes, mas não senti que consegui produzir nada além de trabalhar e mexer em alguns rascunhos aqui e ali, por isso a ausência de “¿Que Pasa?” nos últimos dois meses.
Dito isto, esse mês tive algumas evoluções lentas mas interessantes. Primeiramente, subi uma versão do Moodle para o Projeto Integrar (no facebook), e estamos trabalhando em como melhorar o projeto daqui pra frente, criar uma infraestrutura mais coesa. Além disso, troquei a instância do cgit pelo smithy, um forge escrito em Go. Também mandei diversos patches em diversas areas. Ainda tenho alguns outros patches inconcluidos na minha cópia local do projeto, mas me falta tempo para terminar. Mantive atualizado o pacote do percollate e ainda nesse mundo empacotei o satellite. Em outros radares, corrigi um erro na gem do her que acontecia quando um determinado endpoint retornava uma resposta com um código 204, entretanto não imagino receber alguma atualização nesse patch tão cedo.
Em 2021 fechou um ano que eu parei de comer carne. Tem sido uma experiência muito interessante, de boas reflexões.
Na minha familia a carne sempre foi bastante significativo e presente. Para a maior parte da população, carne, tem um significado de “comida de verdade”. Ter carne na mesa, é igual a ter o que comer. Essa ideia é introjetada na nossa vida, e morando no Sul do Brasil, é de se esperar que o ato de comer carne fosse algo rotineiro. Eu, muito pelo contrário, não via muito sentido na ideia de parar de comer até uns cinco anos atrás. Quando essa ideia começou a lentamente entrar na minha cabeça, e comecer a me interessar pelo assunto, comecei pelo mais simples movimento, durante um tempo o tal “Segunda sem Carne”, e do qual falhei miseravelmente. Ainda não conseguia tirar da minha cabeça a ideia de comer carne, não conseguia pensar em outros alimentos do qual não tivesse carne, ou então não sentia que eles “eram a mesma coisa”.
Um dos valores que eu sinto que é muito importante para qualquer programador - mas para outras áreas similares - é o de construir e fazer uso de sua própria autonomia. Possuir autonomia é uma ferramenta valiosa, especialmente considerando que enquanto programadores, um dos nossos trabalhos é essencialmente um trabalho de detetive. Não é raro nos depararmos com problemas que necessitam uma trabalho de investigação, nos levando a revisitar projetos legados, tickets de problemas, ler blogs, documentações, etc. Esse trabalho é muito mais simples e até de certa forma, automático quando temos acesso a duas coisas importantes: (1) documentação de um determinado projeto, suas decisões e soluções propostas, ou seja quando é um projeto construído de forma pública e você pode falar com um ser-humano e perguntar o porque de tal comportamento, ler e entender o porque das coisas serem assim (2) código-fonte do projeto e seu entorno.
Dezembro já está em seu término, assim como esse ano horrível. Seguindo a tradição centenária, todas as atividades, prazos, demandas da qual se acumularam durante o ano subitamente chegam ao seu ápice nas ultimas três semanas de Dezembro e nos atolamos em meio de preparações de finais de ano, trabalhos, projetos, escola, faculdade, etc, etc, etc.
Evidente que eu não escapei desse fato horrendo e da qual ajuda a suplantar nossas atividades e contribuição para a esfera do mundo do software livre.
Escrevo enquanto escuto The Fletcher Memorial Home, do Pink Floyd no The Final Cut. Eu realmente gosto MUITO de Pink Floyd. Mas até a tal era Roger Waters, que se fecha com esse album (o Waters saiu da banda nessa época). Teve uma época que eu achava esse o melhor album deles, e escutava quase que diariamente.
Nesse mês, diante do fiasco do projeto do youtube-dl ter sido derrubado, eu aproveitei que eu já tinha arquivado o projeto e espelhei ele no git.eletrotupi.com. Conversei com bastante pessoas a respeito sobre a fragilidade de projetos de software livre armazenados em redes centralizadas e uma alma caridosa traduziu meu texto sobre sobre arquivar as coisas para o francês.
Recentemente me envolvi em uma discussão com um amigo sobre redes descentralizadas e o tal chamado fediverso. O Fediverse (em inglês) é a junção de federated e universe, ou seja universo federado. E é basicamente uma rede de aplicações descentralizadas que são interoperáveis, através de um (ou vários) protocolos padronizados.
A questão das redes descentralizadas
A discussão sobre redes descentralizadas é algo que volta e meia reaparece e ela posa uma questão muito importante sendo ela a seguinte pergunt nossas informações sob a autoridade de certas entidades da qual podem não se alinhar com nossos interesses e objetivos"**. Mais fundamentalmente, como previnimos que os nossos dados, sejam em certa medida, privados de nós mesmos.
Escrevo nessa madrugada. Parece que tudo fica mais calmo e eu fico meio que no 220v.
Esse mês foi um pouco mais calmo que os outros, mas curto. Mal vi passar na verdade. Estamos em fase de teste de um projeto grande na empresa, migrar a lógica de usuários e autenticação para um SSO, em um microserviço (ou mini?) separado do nosso monolítico 1. Tirando isso, também terminei mais alguns rolos de filmes e vou poder finalmente revelar e descobrir qual o estado do meu primeiro teste com uma rangefinder.
Sim, estou atrasado. Chove em Pelotas há dias, e estive atolado de trabalho por isso escrevo atrasado essa mini-atualização.
Esse mês que passou foi bem conturbado, estamos entregando um projeto gigante no trabalho, a minha organização política também esteve exigindo bastante coisas, estive participando de varias comissões e grupos de trabalho que exigiram bastante atenção, e estou participando mais ativamente da coordenação da feira do Bem da Terra. Acho que nunca escrevi tanto em um mês, fosse isso código ou textos.
Ontem (19 de Setembro), participei do primeiro Encontrão 1 enquanto membro da Coordenação da Feira Bem da Terra 2. Minha taref
Apesar de já ter participado de inúmeras reuniões no trabalho, a reunião da coordenação de um espaço alternativo é muito diferente. Exige organização de verdade, justamente porque a lógica do espaço é diferente.
O Bem da Terra se propõe a ser um espaço autogestionário, democrático e fundamentado na lógica da economia solidária, mas eu sinto que é muito além disso. A feira acaba por se tornar um espaço, muito para além do consumo, mas sim para a formação crítica.
Eu amo markdown. Tanto que escrevo as minhas anotações nesse formato e criei um programa para ajudar e tornar esse processo mais fluido. Acho que ele advém de uma estrutura muito simples e de certa forma natural e lógica.
O markdown é uma sintaxe de escrita de documentos de texto da qual tem
alguns signos inspirados lá do email e BBS (Bullet Boarding System) 1.
Como esses sistemas lidavam apenas com texto simples então se fazia
necessário achar uma forma para demarcar intensidade ou destacar alguma
palavra, alguns exemplos são a utilização de signos como *
ou _
em
e-mails postado em listas de discussões e conversas no IRC. Ele consegue
se manter um formato de marcação e manter o conteúdo legível. Além do
mais ele implementa uma série de estruturas lógicas, por exemplo
a utilização de # (jogo da velha ou hashtag) como cabeçalho, quanto mais
“profundo” aquela seção, mais jogo da velha você tem que usar. Para
listas, simples, basta usar um traço antes do item. Links e referências?
Basta incluir o texto dentro de colchetes e a URL entre parênteses. Para
referências é só escolher entre numerar ou usar uma palavra de atalho
[manifesto][^1]
ou [manifesto][link-manifesto]
Mais um mês que se passou. Escrevo essa atualização atrasada, porque esse mês está, além de passar rápido, sendo bem sobrecarregado, espero que entenda.
Primeiro, eu voltei das férias, que foram bem aproveitadas! Dentro de todos os cuidados necessários fui visitar minha família, na minha cidade Natal, afinal já fazia mais de 5 mêses que não os via. Também aproveitei para terminar meus últimos rolos de filme que eu tinha guardado. Em meados de Julho, eu comprei a minha primeira Rangefinder, uma Canon Canonet QL171. Já fazia muito tempo que eu namorava a ideia de fotografar com uma Rangefinder2, mas eu não conseguia achar uma que eu sentisse vontade de usar e que não fosse muito cara. Infelizmente, ela não havia retornado da manutenção a tempo da viagem, e acabou que levei a minha confiável Pentax KM, aproveitei para documentar bastante a vida em quarentena da minha família e do bairro onde minha mãe mora, e estes filmes já estão sendo processados, assim que tiver eles de volta apresentarei aqui.
Esse é o primeiro artigo inaugural dessa série que eu venho pensando em fazer já faz um tempo, chamado Alternativas. Quero usar ela para demonstrar algumas opções de software livre que são alternativas a suas contrapartidas proprietárias ou mais conhecidas.
Hoje, falaremos sobre uma alternativa bem interessante e bem representativa do potencial do movimento software livre, uma alternativa ao aplicativo oficial do YouTube chamado NewPipe.
Eu acredito que ele representa muito o potencial do movimento software livre, por conta da vasta gama de funcionalidades que ele disponibiliza sobre o aplicativo oficial, permitindo assistir os vídeos sem anúncios, escutar uma “versão de áudio” dos vídeos, ver os vídeos em perspectiva — assistir o vídeo em uma janela arrastavel enquanto usa outros aplicativos no celular —, além de todas as opções básicas como subscrever, dar like, comentar vídeos, se inscrever em um canal sem precisar de uma conta do YouTube/Google, poder baixar um vídeo ou uma faixa de áudio do mesmo, ver os vídeos em ordem cronológica (tchau algoritmo) e até mesmo importar e exportar as suas inscrições.
Senhas. Um problema, uma confusão. Perder uma senha hoje é um inferno, considerando que praticamente dependemos de dezenas de serviços onlines, das quais praticamente guardam e conhecem a nossa vida, até melhor que nós mesmos. Nesse cenário, gerenciar, guardar e ter em sincronia essas senhas é uma tarefa chata e complexa. Podemos tornar isso menos complexo, se utilizarmos um gerenciador de senhas.
Existem diversos, eu já passei por alguns, comecei com o 1Password, LastPass, Buttercup e finalmente aterrisei no Pass.
O Algoritmo. Essa entidade mágica e onipotente, que organiza e cataloga como nós interagimos na internet, como organizamos a nossa vida, com quem falamos, quem podemos ver e qual assunto devemos prestar mais atenção agora.
A introdução do “algoritmo” nas plataformas digitais sempre entra com a justificativa de que é uma forma mais inteligente e mais otimizada de apresentar o conteúdo da plataforma. Quem lembra quando o Instagram passou a reordenar o seu feed usando O Algoritmo? 1 Lembram-se tambem que foi justamente quando foi adotado uma política mais violenta de anúncios e conteúdo pago.2 Sabe aquela foto legal que seu tio postou? Foi engolida pelo algoritmo em troca de uma postagem do perfil que está “mais engajado”, ou seja aquele perfil que tem uma boa quantidade de seguidores, postagens com mais comentários e fotos com mais curtidas. Conhece aquele perfil que produz conteúdo como uma fonte de petróleo recém descoberta? Pois é, para melhor se posicionar para o algoritmo, ele força produtores de conteúdo a ter que estar em um estado de constante conexão com a plataforma, muitas vezes se esgotando e entrando em um estado de burnout 3. E como a lógica vigente é sempre de nunca resolver o mal pela raiz e sim remendar o problema, o Facebook, por exemplo oferece a solução de que você possa marcar 10 perfis para “Ver Primeiro”, assim num primeiro momento sua linha do tempo parece organizada antes que você interaja com o conteúdo cuidadosamente escolhido pelo algoritmo, a nossa entidade mística que conhece você melhor que você mesmo, através da palavrinha mágica da vez que é o Big Data 4.
Atípico. Diferente. Incomum. Acho que qualquer sinonimo que se encaixe nessa categoria serve para descrever esses ultimos três meses. Essa é a minha ultima semana antes de um desejado descanso de férias de 20 dias. E logo após mencionar isso eu sempre escuto um “como assim férias na quarentena?”.
Sim, férias na quarentena. Apesar de ainda estar cumprindo o isolamento, mesmo contra os grandiosos esforços dos nossos governantes no Brasil, eu realmente gosto de ficar em casa. Obviamente que é até incomparável a sensação de estar em casa com estar isolado, mas não tem sido tão incomodo de qualquer forma, o que tem incomodado é a apatia e descaso dos governantes e da classe dominante conosco, e ainda mais a falta de compreensão de quem tá vivendo isso e não tá buscando mudanças radicais. Além do mais, tenho uma pilha gigante de livros para continuar os meus estudos, e algumas ideias de projetos que estão bem formulados na minha cabeça, então esse tempo vai ser bom justamente para colocar em prática.
Enquanto a máquina de moer preto e pobre continua, levando consigo o menino João Pedro, George Floyd, e tantos outros, explode diversas manifestações e atos dentro e fora do Brasil e novamente volta a tona algumas discussões a respeito de como se manter seguro, seja de forma física, quanto a nível de comunicação segura. Dentro das diversas plataformas de comunicação, existe uma que é considerada por muitos o ápice da comunicação segura, o Signal, que inclusive é recomendado por grandes nomes como Edward Snowden (o que vazou esquemas de espionagem realizado durante a gestão Bush/Obama em outros países, incluindo o Brasil).
Em um primeiro momento, a ideia de ter que arquivar conteúdo offline pode parecer bem estranho. Mas em uma era que cada vez mais empresas de tecnologia adotam o modelo de Adaptar, estender e extinguir é essencial que a gente volte a adaptar algumas práticas velhas para um momento atual.
Perder acesso a uma plataforma e conteúdo é algo bem comum ainda mais em uma época como agora com o levante do neo-facismo e sanções, abuso de DCMA/Direitos Autorais e Paywall 1. Empresas como o Twitter e Facebook, volta e meia derrubam páginas de governos “ditatoriais”, “anti-democráticos”, como recentemente aconteceu com as contas do presidente Nicolas Maduro e de seu Partido no Twitter 2. O que é curioso, considerando que estamos falando de plataformas/corporações que tanto advocam pela liberdade de expressão e aversão à moderação de conteúdo, pois segundo eles "… onde você delimita a linha (entre censura e moderação)" quando questionado sobre conteúdo de neo-nazistas, fascistas e reacionários espalhados a quatro ventos, disseminando desinformação e ódio. Me lembra aquele velho fato do Liberalismo e suas políticas bem descritas por Losurdo e alguns vários pensadores marxistas, afinal “liberdade” e “democracia” é a liberdade e democracia para os senhores (do mundo).
Dias desses, postei no meu Mastodon sobre Feeds RSS. Precisamos resgatar essa importante ferramenta de volta a blogs e sites que possuem um fluxo de conteudo constante, como Podcasts.
Porque é importante?
Um Feed RSS ajuda a democratizar a forma como as pessoas consomem conteúdo, permitindo que uma pessoa possa consumir o conteúdo de um blog, sem ter a necessidade de acessar o blog de fato e dando a possibilidade da pessoa que publica os artigos possa ter mais foco em escrever o conteúdo. O Feed RSS é um padrão proposto a mais de duas décadas, chegando na sua versão 2.0 em 2002 e implementado em diversos tipos de plataformas de blogs/gerador de conteúdo e o Atom é sua versão aberta e padronizada 1, quase como um RSS 3.0, e aproveitando para polir algumas arestas estranhas do RSS na sua ultima versão.
Hoje em um rico dia de sábado, frio, sol e vento me lembram minha terra natal. Que saudade de casa. Depois de buscar as compras no Bem da Terra e ler um punhado de capitulos do Alternativas Sistêmicas do Pablo Solón, vim aqui relatar o que se passou nesse mês de Abril.
Lento. Se existe uma palavra que poderia definir esse mês é essa. Um mês que parecia se arrastar, sem grandes novidades. Mandei um patch para o sourcehut e koushin referente a lidar com citações em email e basicamente avancei algumas coisas relativo ao projeto de uma plataforma de feira para o Bem da Terra. Esse é um projeto que tem sido muito bom de trabalhar, apesar de lentamente estar avançando alguns pontos de mais importancia. Perseveram algumas discussões se a implementação deveria ser mais diversa, algo muito parecido com a versão do nosferoo que roda atualmente no cirandas. Mas ainda não cheguei numa conclusão sobre esse assunto. De qualquer forma, de dentro dele, surgiu o Umbó, uma tentativa minha de centrar a ideia de um micro-framework css. A ideia é um projeto que sirva como base pra implementar um grid e adicionar a estilização de alguns elementos basicos, mas sem se tornar alguma coisa muito rebuscada ou se tornar inchado como bootstrap/bulma e afins. A proposta de ser modular também ajuda a poder incluir somente o que é necessário e atualmente ele pesa nada mais do que 22kb minificado, incluindo todo o Grid, a fundação (tipografia, links, etc), normalização dos elementos, tabelas e formulários. Também optei por não usar nenhum pré-processador, justamente pra facilitar a escrita do projeto, afinal de contas eu sempre achei ridiculo eu ter que instalar 5 dependencias pra poder compilar um framework css. Por isso, basta clonar o projeto e usando o make e ferramentas que já existem no seu sistema operacional (cat, sed, make) você consegue gerar uma versão completa e minificada com dois comandos apenas 1.
Processos não significam uma desnecessária burocrátização sobre as tarefas de um time/equipe/comitê. Na verdade, os processos servem apenas como guias de como funciona o fluxo e descreve melhor como se dá a eficiencia do trabalho cotidiano daquele grupo de pessoas. Essa definição não é algo ruim e criar processos não deve ser um peso, assim como executá-los também não. Mas a inerente falta deles, acanta um défict e vulnerabiliza as pessoas envolvidas com o trabalho.
Em uma sociedade com um exponencial de grandeza gigantesco e da ilusão de um fácil acesso, é incrivelmente crescente o sentimento entre os programadores de não precisarmos mais nos preocupar em disponibilizar ferramentas e dados de forma desconectado. Isso é uma grande ilusão.
Era meados de 2008. Eu estava sentado no computador do Tec-Centro1, um projeto público de acesso a informática na biblioteca pública da cidade. Eu lembro bem, que naquela tarde chovia forte mas eu gostava de passar a tarde lá “mexendo na internet”. Ficava entrando em vários sites como Viva o Linux, fóruns de informática, fazendo download de arquivos e tudo mais. Eu ja estava desenvolvendo um interesse sobre programação e Linux, e naquela tarde caiu a rede de internet. Eu achei que seria rápido, mas acabou durando um tempo relativo. No konqueror2 ainda tinha algumas páginas abertas que eu ficava relendo, postagens de um fórum sobre algo que eu já não me recordo, até que me chamou atenção na assinatura de um usuári
Essa será uma não tão longa reflexão sobre a minha visão acerca de Gerentes de Projetos.
Existem diversas ramificações e atribuições que surgem de um gerente de projeto, sendo a mais comum um gerente de projetos dentro de um produto. Essa reflexão não é direcionada a ninguém em específico, apenas a minha visão que eu tenho sobre essa tarefa.
O que um Gerente de Projeto deve fazer?
Um gerente de projeto deve essencialmente em uma visão sem muito aprofundamento, direcionar o projeto e os desenvolvedores. Essa pessoa deve trabalhar proximamente da equipe de suporte ou a equipe mais próxima ao usuário para entender quais as mazelas acontecendo no produto. Ele também deve trabalhar de forma muito próxima aos desenvolvedores e a equipe de design dela, de forma a poder compreender onde nesse vasto campo é possível conciliar essas necessidades quase que antagônicas.
Já faz um tempo que eu troquei meu editor de escolha pelo vim
.
Enquanto eu estava dando uma procurada sobre outros editores de texto,
eu li bastante sobre pessoas dizendo como vim
melhorou sua
produtividade, sobre como eles conseguiam se acostumar melhor com os
atalhos e o incrível poder de customização do vim, permitindo que eles
não precisassem sequer tocar no mouse etc. Essa não foi a razão pelo
qual eu troquei.
Está chovendo. Estou sentado na minha mesa com a janela aberta, enquanto um pós chuva e uma tarde cinza começam a surgir. Com a minha gata no meu colo, escutando essa besta de album da Agnes Obel “Aventine” serve como pano de fundo pra todas as coisas estranhas que estão acontecendo no globo.
Veja, eu não estou com medo, apesar que eu estou em quarentena por enquanto. Desde a última sexta eu tenho tido uns sintomas de uma espécie de gripe, tipo tossindo o tempo inteiro, espirrando e com a garganta doendo demais. Talvez eu esteja com o tal do Covid-19? Não sei.
Bem vindo ao meu novo blog/site/lugar pra jogar todas as minhas coisas.
Eu quero e preciso escrever mais, e não somente assuntos relacionados ao mundo do software livre, mas algum lugar que eu possa jogar algumas reflexões acerca de outros tópicos, especialmente sobre política.
Isso é tudo por enquanto. Estarei postando mais coisas e melhorando o blog aqui e ali quando eu achar um tempinho livre.
Obrigado, Pedro Lucas