Forjando Software Livre

Publicado em por Ron

Eu já falei um pouco sobre meu descontentamento com a indústria de tecnologia nos posts Relatório de Primavera I e Minha Relação Tóxica com as Big Tech então vou me abster de reclamar por enquanto. Neste post eu vou mostrar resumidamente como eu desenvolvo software e quais plataformas e ferramentas eu uso.

Me formei como técnico em informática em 2018, trabalhei com manutenção por algum tempo até que em 2020 iniciei minha graduação em Ciência da Computação. No entanto, minha história na programação começa um pouco antes disso, de forma amadora eu desenvolvia sites desde 2014 e hospedava no meu falecido github. Eu usava o github pages para hospedar meus sites estáticos e eu era feliz. Eu criei dezenas de projetos .github.io e eles devem estar por aí perdidos nos datacenters da Microsoft.

Nunca usei Windows como computador pessoal. Quando comprei meu primeiro computador ele veio com Debian instalado e acabei usando o Debian até 2018. Quando entrei no curso técnico eu me fiz de metido hackerman e passei a usar o Arch Linux e a hospedar meus sites e projetos no gitlab.

Durante a minha graduação eu usei o Arch e hospedava meus projetos no Gitlab. Como me tornei desenvolvedor de apps para a Google Play Store, eu era feliz usando qualquer coisa que fosse da Google, principalmente os datacenters. Essa história durou até o iníco deste ano. O fim do meu relacionamento com o Google foi um livramento para mim. Hoje em dia uso somente software livre e descentralizado em toda a minha vivência tecnológica. Uso o Void Linux, apesar de odiar rolling release e hospedo meus projetos no Codeberg com seus datacenters em Berlin.

Blacksmith por Randolph Caldecott (1876)
Ilustração: Blacksmith, 1876, por Randolph Caldecott - Domínio Público.

Meu editor de comando é Nano. Minha IDE é Geany.

Em desenvolvimento de software para desktop (meu foco atual) uso a stack C/GDB/Make/Git e as bibliotecas gráficas que uso são GTK3 (utilitários) e SDL2 (jogos).

Em desenvolvimento Web eu uso a web stack padrão HTML/CSS/JS e Python quando necessário.

Em scripts eu uso Shell e Python.

Em *Inteligência Artificial eu uso C e Python.

Essa é minha forja pessoal. Obviamente que para o trabalho remunerado nós usamos aquilo que o trabalho exige. Já tive que programar no Windows em Java usando VSCode e ainda estou vivo.


*Inteligência Artificial é um subcampo de pesquisa da Ciência da Computação. O que vocês veem por aí rotulado como IA são modelos generativos usando transformers, além de agentes autônomos e de autoaperfeiçoamento.