Aperte Start Para Continuar
Essas comunidades estilo blog são meio engraçadas para mim.
As pessoas chegam aqui com pose de professor, compartilhando ideias e deixando pequenas dicas sobre coisas que descobriram. E isso é legal pra caramba. Mas às vezes parece que as pessoas fazem isso porque sentem que deveriam, não necessariamente porque têm coisas incríveis que simplesmente PRECISAM compartilhar.
E olha, eu entendo. Você precisa er visto para ser notado. Parte do networking é ter uma voz, ou, como dizemos, saber "vender seu peixe". E nada diz mais "EU SOU BOM" do que ensinar às pessoas um truque maneiro pra fazer aquela maldita caixa div
ficar EXATAMENTE onde você quer -- porque sério, essas DIVS ESTÃO VIVAS, TESTANDO ATIVAMENTE MINHA PACIÊNCIA E UM DIA AINDA ME DEIXAM LOUCO!
Ok, isso foi um desabafo. Desculpa.
De qualquer forma, sou bem verde nessa parada toda de tecnologia. Engraçado, porque já tô nisso há algum tempo (minha conta no GitHub tem quase 4 anos), mas tem sido um processo lento e constante. Sou totalmente autodidata, puramente um hobista, e quando digo hobista, quero dizer exatamente isso: cada linha de código que escrevi na minha vida foi por pura e absoluta DIVERSÃO. Mas sim, definitivamente ainda um novato.
E o lance de se ensinar sozinho é o seguinte: quando você está ensinando algo que você não sabe direito, para pessoas que também não sabem, a coisa fica meio feia.
Enfim, o que quero dizer é que, justamente por isso, não tenho muito o que compartilhar. Algo que você provavelmente já percebeu, observando o fato de que não tem absolutamente nenhum outro artigo aqui no meu perfil.
Mas finalmente cheguei ao ponto em que estou pronto para dar o salto de hobista para coder PROFISSIONAL. Quero transformar algo que adoro fazer por diversão em algo que vai me fazer gritar, chorar e querer jogar coisas na parede, mas que também vai pagar pelo inevitável tratamento da minha úlcera.
Eu quero ser um DEV.
E se pra isso eu precisar escrever textos e compartilhar um pouco do que passa pela minha cabeça pra me tornar parte mais ativa dessa comunidade, bom, então considerem-me oficialmente dentro dessa!
Falando de mim
Já que eu não posso falar de experiência prática e nem compartilhar histórias úteis do trabalho, vou partir pra próxima melhor opção:
Vou falar de mim mesmo!
Ou melhor: quero contar uma historinha sobre como eu sempre quis programar, mas consistentemente me convenci de que eu era burro demais pra isso. Na verdade, eu ainda me sinto assim na maioria dos dias, mas dessa vez decidi seguir em frente mesmo assim.
Todo mundo já ouviu falar da síndrome do impostor, e sim, é provável que seja exatamente isso que está rolando aqui. Quanto mais você aprende, mais percebe o quão pouco realmente sabe. Eventualmente, você começa a encarar conceitos cada vez mais abstratos até que nada mais faça sentido, e aí você percebe que tudo isso é inventado, que nada é real, e agora você tá perdendo sua sexta-feira à noite quando podia estar desesperadamente dançando numa boate, só pelo puro DESESPERO DE ESTAR ALI SEM MOTIVO ALGUM, já que ISTO (apontando freneticamente pra tela do computador onde palavras absurdas dizem className="px-4 py-2 text-center space-x-2"
) NÃO É ALGO QUE EXISTE DE VERDADE NO MUNDO REAL!
E sim, sinceramente, sinto que estou ficando mais burro, e não mais inteligente, conforme avanço. Me sinto mal porque os grandes modelos de linguagem apareceram bem no meio da minha curva de aprendizado, e agora estou convencido de que não consigo programar sem o ChatGPT.
Mas é engraçado: sempre que releio um código que escrevi com a ajuda de uma IA, eu genuinamente entendo. Consigo explicar, encontrar erros, e quando o ChatGPT inevitavelmente fica preso num loop me sugerindo as mesmas correções inúteis, consigo dar um passo atrás, repensar e, no final das contas, encontro sozinho a solução. Todas as vezes.
Mas quando fico encarando aquele cursor piscando num arquivo vazio da minha IDE, aí me sinto mais burro do que nunca. Não tenho ideia de por onde começar. Fico com vergonha até de procurar emprego na área quando não consigo começar uma maldita CLASSE EM PYTHON sem consultar alguma coisa antes.
E se for um projeto inteiro, meu amigo, aí é que eu não faço ideia mesmo.
Sabe aqueles adolescentes que compram uma camiseta dos Ramones e começam a andar com os fãs de punk rock de verdade, e passam o tempo todo ansiosos porque, mais cedo ou mais tarde, alguém vai perceber que eles são impostores?
Então, o Visual Studio Code é minha camiseta dos Ramones.
Mas o engraçado é que eu nem sempre me senti assim.
Beat on the Brat
Quando eu era bem pequeno, e sinceramente não sei ao certo quantos anos eu tinha, mas vamos dizer uns 9 ou 10 talvez , meu pai chegou em casa do trabalho um dia carregando uma caixa retangular.
Dentro, havia um dispositivo estranho: um tijolinho preto de plástico, com teclas cheias de números e letras, e um cabo coaxial que você usava pra ligar na TV.
Isso, meus jovens de menos de 40 anos, era um TK85, um clone brasileiro do lendário ZX81.
Era um computador.
Meu cérebro de 8 anos ficou completamente hipnotizado.
É engraçado, porque quando a gente olha pra isso hoje, especialmente comparando com o setup de três monitores que tô usando agora pra digitar essas palavras, com uma placa de vídeo que custou mais que meu último salário, é de cair o queixo.
Aquele computador nem sequer tinha armazenamento interno. Você precisava comprar um MÓDULO externo pra salvar o progresso em uma FITA CASSETE, que provavelmente custava tanto quanto o próprio computador.
Também não tinha uma tela dedicada: você ligava na TV.
Não tinha sistema operacional. Não tinha software pré-instalado. Nada de periféricos plug-and-play.
Só um teclado… e um sonho.
Ah, e claro: um interpretador de Sinclair BASIC e um livrão gigantesco sobre BASIC.
Agora, eu adoraria te dizer que esse bravo garotinho de 6 anos encarou aquele livro de BASIC do começo ao fim, dominou tudo e, aos 7, criou um aplicativo que transformou sua casa em um lar futurista do século XXIV e meio. Mas não. Eu não entendia absolutamente nada daquele monte de letra embaralhada.
Quer dizer… era um livro de BASIC pra um moleque de cinco anos!
(Sério, até hoje não faço ideia de quantos anos eu tinha.)
Mas aqueles livros tinham umas palavras em fonte monoespaçada que se destacavam do resto. E logo descobri que, quando você digitava aquelas palavras naquele aparelho misterioso… coisas aconteciam.
Dava pra fazer umas continhas. Você podia botar seu nome na TV. Podia desenhar um quadradinho. Podia até desenhar uma árvore de Natal inteira, feita de quadradinhos brancos. Tudo isso só digitando PALAVRAS!
Era inacreditável!
E eu queria muito explorar tudo aquilo. Mas aí, alguns meses depois, meu pai chegou em casa com outra caixa retangular, dessa vez com um console Sega Genesis, três cartuchos de jogo… e nenhum manual necessário.
Aí eu deixei o computador de lado.
Pelo menos por um tempo.
Pela vitória!
Anos depois, a gente teve nosso primeiro PC. Era um Intel 486DX2, rodando a estonteantes 33 MHz. Devia ter uns 4 ou 8 MB de memória RAM, e com certeza menos de 100 MB de espaço em disco rígido. Tinha duas unidades de disquete: uma de 5¼ polegadas, que armazenava incríveis 360 KB, e outra de 3½ polegadas, com capacidade de até 1.44 MB.
Quando você ligava aquele negócio, COISAS ACONTECIAM na tela. Linhas de texto iam subindo, mostrando informações sobre a memória, o processo de inicialização... e tudo isso com um tic-tic constante vindo lá de dentro da máquina. E, quando tudo terminava, o que aparecia era novamente uma tela preta, com um cursor piscando, esperando pelo seu comando.
Mas esse prompt era diferente. Vinha acompanhado de uns caracteres curiosos: C:\>
.
E você não podia simplesmente digitar qualquer coisa. Se fizesse isso, ele te respondia com grosseria dizendo que não entendia seu "comando".
Ah, e dessa vez, não tinha manual de instruções. E, obviamente, também não tinha internet. Então, descobrir como tudo funcionava era um pouco mais complicado.
Foi nessa época que começaram a surgir uns cursos de "aprenda a usar o computador". E olha, se hoje em dia mexer em computador parece algo intuitivo, naquela época... definitivamente não era. Naturalmente, fui fazer um desses cursos.
E foram tempos divertidos. Você saía da aula com um disquete na mão e voltava pra casa com uma cópia novinha (pirata, claro, mas vai dizer que não?) de Prince of Persia, Indy 500 ou Where in the World Is Carmen Sandiego? E se você tá aí na casa dos 40, provavelmente já tá com a musiquinha tocando na cabeça enquanto tenta lembrar pra qual país o suspeito que trocou todo o dinheiro por marcos vai fugir agora.
Você aprendia a navegar entre pastas, criar, apagar e buscar arquivos só usando o teclado. Interagia com programas em modo texto o tempo todo. Jogava jogos inteiros dentro desses ambientes tipo terminal.
Aquilo era o MS-DOS, o avô do PowerShell, o velhinho ranzinza que vivia discutindo com outro velhinho ranzinza chamado Unix Bash.
Explorar aquele território inexplorado era fascinante. Todo dia tinha um comando novo pra aprender. E alguns desses comandos eu uso até hoje, quando estou mexendo no terminal durante o desenvolvimento.
Até que, um dia, aprendemos um novo comando:
win
.
Digitar essas três letrinhas e apertar enter te transportava pra outra dimensão — era tipo o Feywild da computação: o Windows 3.11, uma INTERFACE GRÁFICA onde você podia controlar o computador com um MOUSE.
Você podia CLICAR nas coisas. Podia CLICAR COM O BOTÃO DIREITO. E faziam coisas DIFERENTES!
Você podia ARRASTAR E SOLTAR.
Você podia ABRIR uma janela. E depois FECHAR essa mesma janela.
Dava pra desenhar obras-primas no Paintbrush. Jogar Paciência. Jogar Campo Minado. Ou não, né, porque sejamos honestos: aquele jogo nunca fez o menor sentido.
Mas tava lá: algo estranho e espetacular ao mesmo tempo. Sério, aquilo me marcou tanto que, anos depois, inspirou diretamente o visual do meu próprio site.
(Eu sei que meu site tem uma vibe mais Windows 95 do que 3.11, mas o sentimento é exatamente o mesmo.)
Ter esse tipo de controle sobre as coisas era incrível. Eu me sentia tipo o Dean Pelton, quando descobriu a realidade virtual: EU PODIA FAZER COISAS QUE FIZERAM JESUS CHORAR, PORQUE NÃO HAVIA MAIS MUNDOS A CONQUISTAR!
(Se você não entendeu essa referência super específica, eu entendo totalmente.)
O ponto é: dava pra criar coisas incríveis naquele computador. E isso ressoou fundo em mim.
Eu queria aprender mais.
Chutar bundas e mascar chiclete
Eu realmente adorava fuçar naquele computador antigo. Tanto que, eventualmente, a gente fez um upgrade: uma máquina novinha com processador Intel Pentium, um poderoso drive de CD-ROM, capacidade multimídia e duas caixas de som estéreo.
Nessa época, as coisas começaram a mudar de verdade. As bancas de jornal passaram a vender revistas que vinham com CDs recheados de jogos, que você podia levar pra casa e jogar na hora.
Aliás, uma pausa rápida aqui: aquelas primeiras revistas eram algo especial. A indústria de games estava no auge, saía jogo novo o tempo todo. Mas os canais oficiais de distribuição ainda eram raros, e revistas de banca com certeza não eram o meio ideal; pelo menos não naquela época.
E eu sou de uma cidadezinha no interior de Minas Gerais, onde, no início dos anos 90, ninguém nem pensava em abrir uma loja de jogos de computador. Computador era algo muito caro e incomum por aqui, então não era exatamente uma ideia de negócio genial.
Por conta disso, as revistas que a gente comprava quase nunca traziam o jogo completo. Elas vinham com versões DEMO, que permitiam jogar uns 15 minutos ou só o primeiro nível, até que o jogo travava educadamente e pedia pra você comprar a versão completa.
É engraçado porque seria de se esperar que a gente ficasse frustrado, mas na real, a gente se divertia MUITO jogando aqueles pedacinhos. Zerava um nível, já ia correndo pro próximo demo, depois pro outro, e assim por diante. Curtíamos aquelas pequenas amostras como se fossem grandes experiências.
Acho que a gente era menos exigente, porque tudo aquilo ainda era muito novo, muito mágico.
Pra ser justo, algumas revistas também traziam versões SHAREWARE. Lembro da versão shareware de Duke Nukem 3D, que trazia o primeiro ato completo, e era MUITA coisa de graça. Fica aqui meu salve pro pessoal da Apogee, vocês fizeram minha infância (e a dos meus amigos) muito mais feliz.
(Death Rally foi outro shareware deles que marcou: foi o primeiro jogo que eu realmente fiquei BOM de verdade. E, quando tive a chance, comprei a versão completa. Provavelmente foi o primeiro jogo que comprei na vida.)
Mas enfim. A questão é que eu comprava aquelas revistas-com-CDs-cheios-de-demos. E, naquela época, a maioria dos jogos ainda rodava no DOS. Então você precisava sair do Windows (esses computadores já iniciavam direto no Windows 95) e digitar manualmente o comando no drive de CD-ROM.
Ao digitar esse comando, abria um programinha simples, com menus onde você escolhia o gênero e depois o jogo. Era muito parecido com aqueles apps de linha de comando que a gente faz no começo de qualquer bootcamp. Você sabe: pede uma entrada do usuário, guarda numa variável, verifica com if/else
, e dá a resposta certa.
Naquela época, eu passava muito tempo no computador. Metade jogando (demos, claro), e a outra metade explorando. Clicando nas coisas, tentando entender como tudo funcionava.
Não lembro exatamente o que me levou a fazer isso pela primeira vez; talvez tenha visto alguém abrir um arquivo .bat
no temido Bloco de Notas do Windows e fiquei curioso. Mas notei que os comandos usados pra abrir aqueles menus de CD estavam sempre dentro de arquivos .bat
.
O que eu lembro com clareza é o dia em que abri um desses arquivos .bat
e percebi que conseguia entender o que estava escrito ali.
Era basicamente o mesmo texto que aparecia nos menus da tela, só que com umas palavras esquisitas, tipo ECHO
. Mas outras eu já conhecia, porque eram comandos do DOS. Aquilo foi o começo. Um jeito de começar a desvendar o mistério.
Se você não sabe o que é um arquivo .bat
, pense nele como um script executável no DOS, tipo um .sh
no Bash. Dá pra agrupar vários comandos e rodar tudo de uma vez só. Você também pode escrever scripts com entradas, variáveis e condições simples.
É claro que eu não fazia ideia de nada disso na época. Mas eu percebi que eram comandos do DOS, e que talvez eu pudesse criar meus próprios menus interativos, que abrissem jogos, voltassem pro Windows ou fizessem qualquer coisa que eu quisesse.
(A coisa ficou ainda mais interessante quando descobri que dava pra chamar um .bat
dentro de outro .bat
, e que o primeiro arquivo que o computador executava ao ligar, antes de carregar o Windows, se chamava autoexec.bat!)
Eu já disse que sou autodidata. E é verdade, embora eu também tenha feito cursos aqui na DIO, e usado outros recursos como o The Odin Project. Mas aqui... aqui sim, eu aprendi tudo sozinho. Lendo o código que outros haviam escrito e descobrindo, linha por linha, o que cada comando fazia.
Essa sensação eu guardo até hoje.
Talvez tenha sido o meu momento mais genial.
O tempo passa, o tempo voa...
Mas aí veio o ensino fundamental, e depois o ensino médio. A biologia começou a me interessar cada vez mais, enquanto a matemática foi ficando de lado. A verdade é que eu não fazia ideia de como se construía uma carreira em tecnologia. Computadores eram divertidos, claro, mas programação parecia algo completamente alienígena, inacessível, distante demais.
Engraçado, porque eu sempre disse que odiava matemática. Mas nenhuma outra matéria conseguia me dar aquela sensação quentinha, quase mágica, que eu sentia quando decidia sentar, encarar um problema… e acertava. Aquela sensação de conquista, de vitória.
Era incrível.
Mas, no que diz respeito à programação, eu aprendi quase nada. Talvez uma ou outra macrozinha no Excel, mas fora isso? Parecia algo inalcançável.
Acho que concluí que seguir carreira com programação não era algo realista simplesmente porque eu não conseguia, de fato, criar um programa completo por conta própria. Aqueles arquivos .bat
eram divertidos, claro, mas como eu poderia esperar desenhar um cara loiro, fortão, de regata vermelha e óculos estilo Johnny Bravo, detonando alienígenas no meio da rua… usando um script em batch? Não fazia o menor sentido.
Aí tentei abrir um arquivo .exe
no Bloco de Notas. E fez menos sentido ainda.
Então não, escrever scripts .bat
não era programação de verdade, e eu acreditava que não havia um caminho real pra seguir adiante com isso. Como eu poderia almejar algo que parecia tão estrangeiro, especialmente quando todo software que eu via no Brasil vinha de fora?
A vida seguiu. Fiz escolhas. Algumas boas, muitas duvidosas. Passei por trabalhos criativos, braçais, cargos de gestão. Depois fui pra faculdade estudar Ciências Biológicas. Acabei virando professor de ensino médio. Mais tarde, tentei entrar num mestrado.
E então veio a pandemia.
Estar um pouco mais velho durante a pandemia foi especialmente difícil: significava que (1) eu fazia parte do grupo de risco, e (2) meus pais já eram idosos e vulneráveis. Voltei pra casa pra ficar perto deles, pra apoiar, pra retribuir um pouco do que sempre fizeram por mim.
Mas estar de volta também significou ter muito tempo livre.
Um dia, por algum motivo, lembrei que tinha comprado um curso de desenvolvimento de jogos com Unity da Zenva, num daqueles pacotes da Humble Bundle. Ele estava parado fazia mais de um ano, talvez até mais.
Então, no impulso, decidi tentar.
E, mais uma vez, fiquei maravilhado, deslumbrado, completamente abobalhado. Tudo voltou à tona: o poder de criar coisas, de dar forma a ideias, de escrever palavras aparentemente sem sentido que, de repente, se transformavam em comportamentos poderosos e mágicos. Foi como praticar feitiçaria.
O motor de jogo era legal, claro, mas a verdadeira mágica acontecia dentro daquele arquivo no Visual Studio Code. Lá estava eu, digitando comandos que lembravam os tempos do DOS, caçando bugs esquisitos, lendo documentações que me lembravam aquele velho livro de BASIC que eu tinha quando tinha, sei lá, 4 anos (sério, até hoje não sei que idade eu tinha). Rodar um trecho de código e ver o resultado exato que eu esperava me dava a mesma euforia de resolver um problema de matemática.
Tudo voltou com força.
Eu não sou exatamente uma pessoa espiritualizada. Não acredito muito em destino, ou em sorte, ou nem mesmo em talento.
Mas, às vezes, a vida me joga umas coisas que desafiam essa visão.
Porque, olhando pra trás… tudo isso parece, de alguma forma, conectado.
Só diversão e nada de trabalho faz do Jampa um pobre coitado
Desde então, estou nessa. Sem parar. Mergulhei em Python, depois em HTML/CSS/JavaScript -- e quase morri de raiva por causa do maldito Flexbox. Aí veio Ruby, Rails. Aprendi o que era uma API, criei uma. Criei duas. Brinquei um pouco mais com C#, depois experimentei Lua e desenvolvimento de jogos com LöVE2D. Mexi com React, depois Flask, Django, NodeJS, TypeScript, Golang, Wails, Tailwind... e mais um pouco. E mais um troço. E outro.
Fiz uma landing page. Depois uma calculadora. Depois um jogo de xadrez em linha de comando. Um clone de PONG. Um clone de Flappy Bird. E meu próprio site.
Mas aí começava um projeto, batia numa parede ou perdia o interesse e jogava fora. Começava outro, enjoava, jogava fora. Começava mais um, percebia que já tinha mil parecidos; jogava fora também. E assim por diante.
O lance de ser autodidata é que você é seu próprio motivador. Mas também é seu próprio sabotador. Você tem que motivar o cara que falhou ontem, e esse cara, ao mesmo tempo, tem que continuar motivando o motivador.
É fácil se perder. Fácil se espalhar demais. Difícil é definir metas claras, porque quando você faz algo só porque gosta de fazer aquilo, a coisa em si vira o próprio objetivo, a própria recompensa.
Tipo, às vezes eu entro no Codewars só pra resolver desafios por diversão. São legais, dão aquele quentinho no coração, trazem de volta aquela sensação boa, mas, no fim das contas, você não cria nada de significativo. É como alguém tocando um solo do Joe Satriani: provavelmente só você tá curtindo aquilo.
É tipo um vício, sabe como é?
Acho que o que estou tentando dizer é: por mais que seja divertido, sem responsabilidade e sem mentoria, sinto que fui o mais longe que consegui sozinho.
Eu anseio por mentoria, alguém que me mostre o caminho das pedras. Eu sei o que quero construir. Mas como construir? Qual é a melhor forma? A mais bacana? A mais segura?
Por que você está aprendendo essa tecnologia se tem uma outra que seria melhor pra você? Por que usar ponteiros se uma variável simples já resolve? Por que escrever esse algoritmo inteiro se já existem 53 bibliotecas que fazem exatamente isso?
E eu preciso de responsabilidade. Algo que me FAÇA MANTER O FOCO. Saber que tem alguém contando comigo. Saber que aquilo que estou construindo tem um propósito, um usuário de verdade, ou até mesmo um outro dev esperando por aquilo.
Tenho um medo real de dar esse salto de fé. De voltar pro desconhecido. De entrar num campo tão específico, exigente, cheio de gente experiente e absurdamente capacitada, especialmente considerando minha pouca experiência profissional. Tenho medo de aparecer por lá e os “punks de verdade” me perguntarem qual minha música favorita dos Ramones… e eu travar. Tenho pavor de entrar numa entrevista técnica, ouvirem "sem ChatGPT, hein", e eu derreter na cadeira igual o T-1000 no final de O Exterminador do Futuro 2.
Mas eu também acho que sou um cara inteligente. Tipo… estranhamente, especificamente, não-sei-bem-como-mas-talvez-mais-que-a-média inteligente. Mas inteligente, sim.
E eu quero muito contribuir.
No fim das contas: tô aqui. Pronto e disposto a ir além do primeiro nível. Sair da demo e jogar o jogo completo. Me desafiar. Crescer. Como programador, como desenvolvedor, como engenheiro de software, como nerd.
Então acho que o que eu tô querendo dizer é: se você estiver contratando, me chama no jp.coutm@gmail.com!
(E esse texto com certeza NÃO terminou como imaginei quando comecei a escrever. Mas eu gostei assim mesmo. E se você chegou até aqui — valeu demais! Me conta aí: qual seu sabor de sorvete favorito?)
Este texto foi originalmente publicado em inglês, no meu blog no Dev.to. Você pode ler por lá também, nesse link.