Como comecei com a tecnologia?

Sou nascido em 2006, desde a minha infância eu já tinha um computador, embora não rodasse quase nada, era o suficiente pra jogar GTA San Andreas. Meu sonho antes era ser piloto de avião, mas a comparação excessiva e pressão da família em tirar notas boas na escola e ser alguém na vida, que parece que não eu mesmo, me fez acabar desistindo desse sonho, e pior, começar a não gostar da escola.

Boa parte da minha infância é um certo "apagão" porque passei boa parte revoltado e odiando o mundo, ainda não tinha celular (os celulares touchscreen estavam começando a ficar populares, pelo que lembro), então o que restava era ficar sozinho brincando com qualquer brinquedo ou lasca de madeira que eu ficava arrancando dos móveis velhos.

Saindo dessa parte melancólica pra entrar em outra, em 2019, quando eu tava um pouquinho melhor depois de ter conseguido a proeza de reprovar o 7º ano do ensino fundamental, não tinha ideia do que queria ser na vida e só queria ser um pouco menos triste. Não fazia ideia também do que ia acontecer no ano seguinte kkkk...

Pandemia: quando o mundo fechou as portas

Quando veio a pandemia e um pouco depois as escolas fecharam e ficamos um bom tempo sem aula, no começo parecia legal, brasileiro que aprendeu a não gostar de ir pra escola não tendo aula é assim mesmo. O problema é que além da escola, só todo o resto fechou também e tivemos que ficar em casa e fazer praticamente tudo online. Nesse meio tempo desenvolvi depressão profunda e cogitei tomar decisões irreversíveis, mas felizmente acabei não fazendo nada. Não contarei muitos detalhes sobre. Embora fosse uma criança isolada, eu tinha um amigo, esse um amigo foi essencial para eu achar a área da minha vida.

Como não podíamos ficar saindo de casa, nos restou ir para as redes sociais, Twitter (nunca usei amém), Facebook, Discord, Tiktok (☠)...

Felizmente só fiquei no Discord, e acredito que já passou na cabeça de todo mundo algum momento a vontade de criar um servidor de Minecraft, então, comigo e meu amigo não foi diferente. Um servidor de Minecraft obrigatoriamente precisa ter um Discord, e uma das coisas que torna o Discord legal são os bots, normalmente a gente paga alguém para criar um quando queremos algo personalizado... o problema é que a gente era criança, se tivesse 5 reais na gaveta era muito, e foi ai que eu resolvi tentar fazer um bot, sem ter nenhum conhecimento útil sobre programação e até mesmo sobre como o Discord funciona 🤓.

Manual de como não aprender programação

No começo, eu tentei usar uma plataforma que criava bots prontos, chamada botbind (não existe mais, eu acho). Obviamente não gostei do resultado, era muito limitado e ficava o tempo todo pedindo para comprar o plano pago.

Então eu resolvi tentar programar um bot em Javascript com Discord.js (era o que esse "nicho" de desenvolvedores de Bot usava em maioria nessa época), eu lembro de ter visto dois vídeos, um que não deve existir mais (não achei), e alguns dessa playlist, lembro que o pessoal hospedava na Glitch, Repl.it e Discloud. Eu tentei hospedar na Glitch, fiz os passos certinhos e funcionou (:

Agora só restava fazer todos os outros comandos kkkkk, mas lembra que eu comecei sem ter nenhum conhecimento útil para programação? Então, olhei para aquele bando de código e simplesmente travei, acabei desistindo novamente (depois de ter chegado tão "perto"), pois mesmo indo em servidores de programação e pedindo ajuda para cada letrinha que eu mudasse, eu não conseguia sair do lugar.

Então fui para o Bot Desiger For Discord, no começo era legalzinho mas tinha o mesmo problema do Botbind: limitado, e ainda tinha que ficar vendo anúncio pra manter o bot online. Brinquei muito com ele e fiz um bot chamado "Bottleflipper", que era um bot de desafio da garrafa, nada de especial, só isso mesmo.

Mas com o Bot Designer pelo menos comecei a gostar de fazer bots para o Discord e percebi que a maioria do bots era a mesma coisa: Multifunção, moderação com comando de ban e mute ou diversão com comandos copiados da Loritta. Nesse ponto a gente já tinha meio que deixado pra trás a ideia do servidor de Minecraft. Com a ideia de tentar desenvolver um bot realmente "bom" e que não seja só mais um feito em Javascript com tutorial do Youtube, engajei novamente em aprender a programar, só que dessa vez eu queria começar devagar, já que quando tentei chegar chutando a porta, parece que eu tropecei nela na hora de entrar.

Manual de como aprender programação errado

Ai eu comecei a ver o curso de Javascript do Gustavo Guanabara... é, direto Javascript, sem aprender lógica de programação antes (: Não foi uma boa decisão, apesar de eu ter aprendido a fazer um console.log e ter aprendido algumas coisas como variáveis, ainda não entendia nada do que tava fazendo direito, e o meu primeiro bot tinha quase tudo copiado do github, uma base cagada, mas era um bot multifunção 😎 (fazia de tudo um pouco, e pra tudo o que fazia tinha coisa melhor, por isso se for fazer algo multifunção, chute o balde, de preferência, de cima do Burj Khalifa).

Só que eu tenho uma característica bem legal, que é ser excessivamente curioso, eu queria de alguma forma saber o que cara*#$# aqueles códigos faziam, então eu ficava nesse ciclo: alterava -> reiniciava -> testava -> go to loop E fui entendendo aos pouquinhos o que cada coisa fazia, aqui eu comecei a descobrir um ponto interessante sobre mim que poderia usar para aprender qualquer coisa que precisasse.

Tentativa e erro: Uma maneira um pouco menos errada de aprender programação

Embora os cursos do Guanabara tivessem ajudado de certa forma, eu não gostava da escola, não gostava de cursos online, resumindo, não gostava de estudar. Não tinha paciência para fazer exercícios tipo isso aqui:

var a = 5
var b = 5

console.log(`Resultado da soma: ${a + b}`)

Notavelmente, meu jeito de aprender não é sentar e comer um livro, artigo ou curso com a teoria, o jeito que eu estava me dando bem e me dou bem até hoje é partindo para a prática para entender a teoria (é estranho, mas funciona pra mim), então eu comecei a tentar fazer coisas novas no meu bot do Discord, sem pegar do github. Uma delas foi um comando de esticar imagens, sim, esticar imagens, eu usei como base um exemplo que usava Jimp para uma imagem de boas vindas e fiz igual (sem copiar o código e colar!), tentando mudar a resolução da imagem para algo como 1280x410 para que ela ficasse esticada, e batendo muito a cabeça eu consegui (:

A partir daí é mais do mesmo, tentando refazer comandos que eu via no github e em outros bots e aprendendo um pouco mais sobre o que estava fazendo.

Botlists: a maneira mais "rápida (rápido != orgânico)" de crescer um bot

Em 2020 ~ 2022, botlists eram muito comuns no Discord, eram servidores que as pessoas enviavam seus bots para serem adicionados e possibilitar que outras pessoas o vejam, algumas eram mais avançadas e possuiam websites, mas a maioria não. Fui na onda e adicionei o meu numa dessas, mesmo sendo algo pequeno, com pouca gente, era bem ativo e fiz amigos lá, amigos que eu tenho até hoje (muitos completaram 18, eu tô com 17, mas esse ano já completo 18). Essas pessoas, embora também tivessem começando, me ajudaram a descobrir outro método de aprender que também me dou extremamente bem.

Ensinar: uma das melhores formas de aprender

Sempre tem algo que nós sabemos e outra pessoa não sabe, e vice-versa. Eu vivia dando "dicas" para quem pedia ajuda em canais de "dev help", isso ajudava bastante a reter o conhecimento, muita das coisas eu pesquisava no Google pra responder e ensinava para a pessoa do jeito que eu entendi. Ajudei muita gente assim, e quando não conseguia, incentivava a pessoa a pesquisar (geralmente dava algum link do stackoverflow com o mesmo problema ou parecido) e a não desistir. Também pedia ajuda nesses canais ás vezes, foi algo bom. Também gostava de ir em alguns bots de código aberto dar sugestões de melhorias no código, e quando o dev ficava em dúvida sobre o que tava sugerindo, novamente ia lá eu explicar pra ele.

Só que ainda faltava muita coisa para me sentir um "programador", afinal, eu sabia o que as funções do Discord.js faziam, agora como faziam é outros 500...

Filipe Deschamps: Filipe você é foda só isso 👍

Nesse meio tempo, eu acabei conhecendo o canal do Filipe e eu acho que esse foi o primeiro vídeo que assisti dele, os vídeos dele me ajudaram muito e foi através do Filipe que comecei a usar o Next.js, assistindo esse vídeo, no começo travei muito também, mas com tentativa e erro e ensinando para outras pessoas que eventualmente tinham dúvidas, fui aprendendo a usar Next e React ao mesmo tempo (Next por baixo dos panos usa React, se você começar pelo Next sem aprender React, querendo ou não você vai aprender React (ou não vai sair do lugar)). Mas os vídeos que mais me ajudaram do Filipe, foram A História da Ana., e O Primeiro Vídeo que Gostaria De Ter Assistido Sobre Como Controlar a Ansiedade (esse salva vidas!).

Gosto muito do Filipe, ele me deu o "baque" necessário para acordar pra vida, ainda sou a mesma pessoa triste de 2020, porém agora com um propósito, um plano pra seguir e uma vida muito longa em um mundo cujo futuro não é muito promissor. Ser triste != ter depressão, cada um tem seu jeito, eu posso ter uma visão mais negativa, mas não significa que não posso sorrir e nem me divertir, é só a personalidade que o meu passado formou. Ainda não gosto da escola, mas obviamente estudo e faço o necessário para passar de ano. Mas não gostar da escola não significa que ainda não gosto de estudar (:, só não gosto de estudar quando o assunto não é do meu interesse kkkkk

Lógico que tomei vergonha na cara e fui estudar programação do jeito certo, hoje posso dizer que sou sim um programador, e quanto a pergunta Onde eu cheguei?, antes de responder, vou alterar para Onde vou chegar?.

Onde vou chegar?

Ainda estou começando a minha vida, sei que tenho potencial para fazer coisas grandes, e, quem sabe, melhorar um pouco um mundo que parece que vai piorar. Eu passei muito desses anos praticando e fazendo projetos pessoais, como uma serverlist do Discord (similar a uma botlist, só que para servidores), uma cambada de API Rest pra coisas aleatórias e não muito úteis, autenticação com email e senha (utilizando hashing) + confirmação por email e sessão com JWT (pra ser bem sincero prefiro minha própria lógica: gerar um token aleatório, guardar os dados da sessão no Redis usando esse token como key kkkkkkk, performático, talvez não muito flexível e fácil de manter, mas bem seguro).

Quero fundar uma startup para alguma coisa, não sei o quê mas eu vou descobrir, enquanto isso, faço freelas e tenho uma condição financeira não muito ruim graças a isso (posso comprar uma coca na esquina sem pedir pra minha mãe, e sem trabalhar de domingo a domingo 25 horas por dia). E também não sofro mais pressão da família, finalmente entenderam que não quero ser ninguém na vida, quero simplesmente ser eu. Quando fizer 18 tentarei trabalhar na minha área para ganhar mais experiência e assim vou colocando meu plano em prática.

Quais foram os erros que cometi?

Vou resumir aqui pra não ficar mais gigante do que está:

  • Ser um desistente, não persistir quando as coisas começarem a dar errado e se dar por vencido.
  • Reclamar de tudo estar ruim, mas nunca parar pra pensar porquê estar ruim e se eu não posso fazer nada para melhorar.
  • Focar no que eu não posso controlar.
  • Não começar pelo começo (:
  • Não ter ido para um psicólogo (preciso ir, se eu for algum dia vou lembrar disso e voltar aqui editar esse comentário).
  • Aprender a programar descobrindo o que as coisas fazem, mas não como fazem (<- programador chaves?).
  • Um dia, ter odiado estudar qualquer coisa.

São só alguns, não dá pra listar todos, ainda vou cometer muitos erros e aprender com eles, então nem adianta ser afobado e acelerar o processo.

Conselho para desenvolvedores que vão ler sua história?

Não acho que a minha história ensine muita coisa para alguém possivelmente já decidido e com um plano na vida, mas, eu poderia dizer:

  • Não acho que ser alguém na vida seja algo bom, se esse alguém não for você mesmo.
  • Nunca, em hipótese alguma, se compare com outra pessoa tomando o sucesso dela como verdade, se você tiver um irmão pequeno como eu (ou mesmo um filho), nunca compare-o dessa forma, para acabar com o psicológico de uma criança é muito fácil, e persiste pra vida toda.
    • É bom se inspirar em pessoas, eu tenho muita gente como inspiração além do Filipe: Lucas Montano (do canal Lucas Montano), Akita, mesmo pessoas de fora da programação, nomes grandes do passado como Nietzsche, Marco Aurélio, Epicteto e alguns polêmicos como o Elon Musk (ele é meio sem pé nem cabeça mesmo, mas é foda).
  • Escolha bem suas amizades, subir quem vale apena junto com você só trás benefícios.
    • Bons amigos podem te trazer oportunidades, como ser o seu QI numa empresa ou te ajudar na sua vida, assim como fazer o mesmo te eleva como ser humano.
  • Se aproximar da filosofia não te torna chato 👍
    • Você aprende muitas coisas boas para a vida e o seu cérebro agradece 🧠
    • Já viu sobre estoicismo?
    • Infelizmente o novo ensino médio não tem filosofia na grade do segundo e terceiro ano (já é ruim não ter no fundamental), e o conteúdo no primeiro ano está bem ruim (não só de filosofia, como todas as matérias). Então se você quiser se aproximar melhor desse mundo incrível, te resta ser autodidata igual eu 🤷‍♂️. Ou então faz uma faculdade de filosofia, não deve ser ruim.
  • Mente aberta para tudo o que é novo, estamos sempre aprendendo, então não feche sua cabeça.
  • Aceite críticas construtivas.
    • Se a crítica construtiva for de quem não construiu nada, não aceite 👍

E o principal aqui, acredito eu, é que, mesmo se a situação tiver ruim, sempre vai existir uma saída por isso não desista. Descobri ano passado que tenho discalculia, meu nível em matemática equivale ao de uma criança de ~/- 8 anos, isso afeta seriamente o meu raciocínio lógico e mesmo assim consegui aprender a programar, não sei matemática básica mas sou programador, quem disse que para aprender a programar tem que ser bom em matemática? É claro que eu ainda tenho sérias dificuldades principalmente para entender conceitos como operações com bits e praticamente tudo o que envolve machine learning, mas é a vida.

"Aquele que têm um porquê, supera qualquer como." - Nietzsche

Gostaria de deixar aqui a URL de um projeto meu que eu tenho muito orgulho: https://fiscalizaja.com - Post sobre o projeto.