[Akitando] #90 - O que os Cursos NÃO te Ensinam sobre Mercados

2021 January 06, 10:30 h

DESCRIÇÃO

Esta é a edição da palestra que dei no evento #DoWhile da Rocketseat no dia 15/12/2020. Ela serve como um resumo de vários assuntos importantes do canal então aproveito pra deixar como introdução pra quem está chegando agora. Durante o vídeo vou mostrando as thumbnails dos diversos videos onde entro em detalhes sobre cada assunto.

E sendo o 1o vídeo do ano, deixo meu FELIZ 2021!! 🥳🎊🎉

ERRATA: no tweet do cara investindo e calculando juros errados, dependendo de como interpretar o texto dele (e aqui fica pior, porque além de tudo ele tem dificuldade de explicar) fica ainda pior a matemática. Se considerar que ele achou que dividindo o dinheiro dele, digamos 70 mil reais, em 7 fundos, colocando 10 mil em cada, e cada um a 0.5%, não vai ser 7 x 0.5% obviamente e sim um total de ... 0.5% porque isso é juros simples. Eu ainda superestimei ele levando pra juros compostos. Enfim, esse tweet é um completo desastre não importa como você interprete.

SCRIPT

Olá pessoal, Fabio Akita

Agradecimentos pelo convite de participar neste evento da RocketSeat e de poder compartilhar algumas idéias com todos vocês. Imagino que muitos estão começando a estudar e muitos também tentando reciclar conhecimentos e aprender coisas novas pra se diferenciar. Hoje eu quero dar um passo atrás e tentar abrir um pouco os horizontes.

Pra quem não me conhece, eu sou desenvolvedor de software há quase trinta anos. Desenvolvedor do que? Front, back, infra, segurança, mobile, gerente, PO, consultor, se tem alguma posição no mundo TI eu provavelmente passei por ele. E nos últimos dez anos administro minha própria empresa de outsourcing de desenvolvimento, que hoje tem quase cem desenvolvedores, com um dos menores índices de turn over do mercado, atuando em projetos daqui e maioria nos Estados Unidos.

Nos últimos dois anos comecei um canal no YouTube como hobby pra compartilhar as experiências e conhecimentos que acumulei durante esse tempo todo, então não deixem de seguir o canal Akitando pra ter mais detalhes do que vou falar hoje. Se já assiste meu canal, vou repetir um pouco o que contei nos vídeos, mas vale relembrar.

Depois de passar anos pensando a respeito, se tem uma coisa importante que eu acho que pouca gente entende, seja iniciante ou seja experiente, é o conceito da lei de oferta e procura. Aí você pensa, “como assim, lógico que eu sei, se um produto tem muita procura mas não se consegue fabricar rápido o suficiente, tipo o novo Playstation 5, então o preço vai subir absurdamente”. Exatamente, está correto, e o inverso também é verdade. Se existisse mais Playstations do que tem de demanda por ele, os preços iriam cair mais rápido.

Pense em você fazendo cursos. Parece fácil, faça dois ou três cursos, gaste seis meses estudando, e parece que quase garantido tem uma oferta de emprego já pra você. Isso não é normal, é um momento do mercado de alta demanda. Só que alta demanda nunca dura pra sempre, ela vem em ciclos. Tem ciclos de abundância e ciclos de depressão e dica pra vocês: estamos saindo do último ciclo de abundância, que começou uns 10 anos atrás.

Agora pense, com a quantidade enorme de cursos aparecendo, se tá tão fácil criar centenas de novos programadores a cada seis meses ou um ano, significa que a oferta de programadores iniciantes em breve vai ultrapassar a demanda. E portanto, o valor de cada um de vocês vale menos e menos. Porque é fácil qualquer um saber o que você sabe.

Outro dia eu vi um tweet que me deixou horrorizado. Alguém tava fazendo um investimento num fundo imobiliário porcaria. Ele tava super animado porque ofereciam rendimentos de meio porcento ao mês. E ele entrou em sete fundos, cada um oferecendo esse meio porcento, ou seja, na cabeça dele seria 7 vezes zero ponto cinco que dá três e meio “porcento” ao mês e vezes doze meses, daria quarenta e dois porcento!! Imagina, investe dez mil reais em janeiro e no fim do ano vai ter catorze mil?? Investimento da China!

Cara, se você ouviu o que eu acabei de falar e se perdeu todo nos números, ou pior, se concordou com o raciocínio do cara, fica preocupado, aliás, fica BEM preocupado porque isso é juros compostos e ao final de doze meses não é quarenta e dois porcento e sim perto de seis porcento só. Pior, se subtrair a inflação anual de uns quatro porcento, se tirar a taxa de administração dos fundos, se sobrar um porcento no fim de um ano vai ser muito. Ou seja, o cara tava imaginando que em dezembro ia ter mais de quatro mil reais de lucro mas na realidade seriam só uns cem reais. Se você chegou nesse resultado de cabeça também, parabéns, talvez você tenha futuro.

Durante trinta anos eu vim acompanhando programadores, de iniciantes até virarem seniors, em todos os tipos de linguagens, em todos os tipos de projetos, com todos os tipos de formação diferentes e o que mais me deixa assustado é como a grande maioria faz contas que nem o cara desse tweet. É com esse nível de raciocínio que vocês engolem propostas salariais de startups, acreditando em números ilusórios. A realidade é que a grande maioria dos programadores não sabe matemática básica, de nível ginasial.

Isso porque a maioria das pessoas nunca teve vontade de aprender e simplesmente se aproveitou de um sistema de ensino que manda você decorar meia dúzia de coisas, dá perguntas simples de múltipla escolha pra resolver, metade chutando, e no final te dá um certificado e você acredita que aprendeu alguma coisa. Agora some isso com um momento de mercado aquecido, que tá contratando qualquer coisa, de qualquer qualidade, e você vai ter um exército de pessoas mal qualificadas que vai ficar surpreso de porque com o passar do tempo tá ficando mais e mais difícil conseguir aumentos ou mesmo ser aprovado em posições maiores em outras empresas.

Porque seu valor é diretamente proporcional à sua produtividade, ao seu raciocínio rápido, à sua capacidade de receber problemas, que nem podem ser consideradas difíceis, como esse tweet que acabei de falar e imediatamente chegar na resposta correta. Essas coisas não vêm de graça. É a diferença de quem estudou e ralou quatro anos num curso de ciências da computação e quem passou fácil em provas fáceis em cursos de seis meses. É incomparável. Mas, cuidado, com o que eu acabei de dizer, vocês podem achar que estou dizendo pra obrigatoriamente fazer faculdade. Lembrando, eu mesmo não me formei, mas os dois primeiros anos que fiz de ciência, onde só tinha matérias de matemática, economizaram alguns anos na minha formação de autodidata.

Isso porque existem dois tipos de cursos: os que te ensinam ferramentas e os que te ensinam a aprender. Os que ensinam ferramentas tem validade super curta, os que te ensinam a aprender duram anos a fio. Infelizmente você só vai entender de verdade essa diferença depois de muitos anos. Quem é jovem talvez só conheça um mundo onde parece que a internet sempre existiu e sempre vai continuar existindo igual. Povo da minha geração lembra de uma época onde a internet não existia. Faz muita diferença ter perspectiva de tempo, de longo prazo.

Por exemplo, nos anos 90 as linguagens mais disputadas eram totalmente diferentes das de agora. Talvez fossem Visual Basic, Delphi e Java. Você gastou seis meses estudando Visual Basic, agora você se acha o fodão. Passa a virada do século vinte e a demanda por programadores de Visual Basic cai dramaticamente, agora as linguagens mais demandadas talvez fossem PHP, ASP, talvez Flash até.

Agora, você de Visual Basic gasta mais tempo irritado, dizendo como esses moleques de PHP e ASP não entendem as qualidades do Visual Basic e que essa tal de Web é só uma moda e já já vai passar. Daí passa mais dez anos, agora as linguagens mais desejadas eram Objective-C, Ruby, Javascript. E como foi ficando o cara de Visual Basic, que era o rei dos anos 90? Cada vez sem opções e perdendo todas as ondas de novas tecnologias. Ele perdeu a primeira onda da Web, a onda das redes sociais, a onda do mobile, a onda dos e-commerces e assim por diante. Hoje as linguagens mais demandadas talvez sejam Python e frameworks como Flutter ou React. O que acontece nos próximos dez anos? Eu não contaria que as coisas vão continuar iguais, porque a tecnologia está em constante evolução. Não tenta adivinhar, é perda de tempo.

Sabe o que não envelhece, saber fazer continhas bestas como a dos rendimentos de investimento que eu acabei de contar do tweet. Só que nenhum curso oferece formação em matemática básica, cálculo, álgebra linear, estatística e probabilidade. Sabe por quê? Porque nenhum aluno tem nem a paciência pra fazer e nem acha que devia pagar pra aprender contas porque fazer contas é chato. E ainda acha que programação é saber seguir tutoriais, passo a passo e copiar e colar pedaços de código de sites como stackoverflow. Programação é ensinada como se fosse montagem de Legos, e tá longe disso, muito longe.

É muito fácil seguir tutorial, óbvio, já tá descrito passo a passo tudo que tem que fazer. Copia o comando tal, cola no terminal, dá enter e cruza os dedos. Deu certo? Agora digita outro comando, dá enter e vai aparecer outra mensagem e assim vai indo. O que você aprendeu? A ler, copiar e colar. Todo curso baseado em seguir tutorial te ensina só copiar e colar coisas e mais nada. Você não sabe porque tá digitando esses comandos nessa ordem, você não sabe porquê essas ferramentas existem e quais problemas resolvem de verdade. Você não sabe que alternativas existem e que combinações diferentes pode fazer pra ter resultados melhores, porque cursos não ensinam você a raciocinar, apenar a seguir.

E no começo não tem nenhum problema, todo mundo precisa começar de algum lugar e eu comecei igual, seguindo tutoriais. Eu comecei a programar quando adolescente, talvez aos catorze ou quinze anos. Passei quase um ano lendo um livro da linguagem da época, dos anos 80, dBase, e conseguia fazer programinhas e até comecei a fazer uns trabalhos de freelancer. Algumas vezes dava uns bugs que eu não tinha ideia porque, mas mexia de um lado, mexia de outro, do nada começava a funcionar e fui seguindo assim. Aos dezessete resolvi entrar na faculdade de ciências da computação e foi um choque absurdo.

Eu entendi que tudo que eu sabia não servia pra quase nada. Primeiro porque a linguagem dBase praticamente já tinha morrido quando entrei na faculdade, descobri que existiam coisas como C ou Pascal, e fiquei chocado que não tinha quase nada de programação durante dois anos inteiros da faculdade, ou seja, metade do curso de quatro anos era integral só de matérias de matemática. E como todo mundo, eu fiquei abismado porque sempre achei um conhecimento inútil que eu nunca ia precisar.

Levou uns cinco anos pra eu de fato começar a entender porque aprendi toda aquela matemática. De repente eu precisava desenvolver sistemas que tinham funcionalidades como pesquisar palavras no banco de dados, e os códigos que eu achava pra copiar e colar eram lentos quando o banco de dados crescia e eu sabia entender porque. Eu lia as documentações, código fonte e conseguia criticar matematicamente a complexidade e saber porque um select like de SQL que todo mundo faz sem pensar é horrível em comparação a usar coisas como Elastic, especialmente com alto volume de dados.

Quando começaram a falar de data science e machine learning, imediatamente me relembrou as coisas que aprendi na faculdade. Eu sabia que machine learning é basicamente um pacote de tudo que eu aprendi em estatística e probabilidade. Até em assuntos da atualidade, como epidemiologia de Covid, me relembrou coisas como o teorema de Bayes, que é uma das coisas que se usa em machine learning. Você simplesmente não tem como escolher a ferramenta certa pra usar em cada caso se sequer sabe fazer continha básica de juros compostos de rendimentos.

Por isso muita gente vai pras ferramentas mais simples de aprender, as que é só encaixar um botão na tela e não pensar muito além disso. Trabalho de encaixar peça de Lego. Mas sendo a coisa mais fácil, é o que todo mundo vai pensar primeiro também, então se forma um volume grande de pessoas procurando emprego em mercados que, apesar de aquecidos agora, tendem a diminuir no médio a curto prazo. Quando a demanda cair, a prioridade não vai ser só sair produzindo funcionalidades novas a rodo e sim em otimizar e aumentar a qualidade do que foi produzido até agora, pra conseguir lucrar mais com a mesma coisa.

Agora você precisa de gente que sabe raciocinar e não só seguir passo a passo, que sabe pegar o que já existe e tirar mais valor sem aumentar quantidade de código. Não tem uma solução pronta pra otimizar coisas, pra fazer o mesmo software funcionar duas vezes mais rápido, ou pra fazer a mesma infraestrutura aguentar três vezes mais usuários sem ficar adicionando mais máquinas. Coisas como melhorar o software pra oferecer de primeira o produto que o usuário tá procurando no menor número de cliques. Tudo isso exige capacidade de aprender rápido.

Mudar ferramentas, seja bibliotecas, frameworks ou a linguagem que você gosta é difícil. Todo mundo tende a se apegar à primeira ferramenta que aprende, e tenta resolver todos os problemas com ela, mesmo quando não é a mais adequada. Porque é mais cômodo. Quando a situação claramente exige mudar de ferramenta, os iniciantes tendem a ficar na defensiva, justificando e defendendo um time que já perdeu, tipo o cara de Visual Basic dos anos 90 que falei antes. É o sinal de que você perdeu o controle e nunca controlou a ferramenta e sim a ferramenta te controlou, você se tornou escravo de ferramentas e de marcas de produtos.

Só que um programador de verdade é promíscuo, tem zero lealdade a ferramentas e marcas. Não fica defendendo Angular, ou Google. Tecnologia não é time de futebol, não é pra ter torcida organizada, ficar tatuando marca de tecnologia ou sair na rua pra defender. Ferramenta é só isso, ferramenta. Você já viu uma discussão de alguém defendendo martelo e outro defendendo chave de fenda? Não faz sentido né? Então defender Python e Javascript é a mesma coisa. Python é um martelo, Javascript é uma chave de fenda. Se precisar bater um prego, usa Python, se precisar girar um parafuso usa Javascript e ponto final. E pensando nisso? Se você só sabe martelo o que acontece? Todos os problemas pra você parecem pregos. E daqui a pouco você tá batendo um parafuso com martelo, que nem um idiota.

A profissão de programação é muito maior do que sua linguagem favorita. Infinitamente maior. Pra onde sua carreira pode ir? Pra onde você quiser, não tem como saber hoje o que vai precisar daqui dez anos. Mas se tem uma certeza absoluta é que se daqui dez anos você ainda estiver usando a mesma ferramenta que aprendeu hoje, você certamente limitou sua carreira demais e perdeu todas as oportunidades de evoluir.

Recentemente tivemos notícias de crimes de internet no Supremo Tribunal Federal e no Ministério da Saúde. Quando eu vejo essas notícias, preciso até pausar um segundo e colocar a mão na cabeça pra acreditar no que tô lendo. Coisas crassas, imbecis, como senha de conexão de banco de dados trafegando no javascript no front-end. Senhas de usuários sendo gravados em banco de dados como texto aberto. Se você não entende a gravidade do que isso significa, você ainda tem muito pra aprender.

Ninguém em sã consciência grava senha de usuário em banco de dados. Seria igual um cirurgião achar que é opcional lavar as mãos antes da cirurgia. Já pensou? Se qualquer site que você visitar te oferecer a opção de receber a senha que você esqueceu por e-mail, não precisa pensar duas vezes, esse site tá inseguro e o programador que fez é um amador completo. O do vazamento de dados do Ministério da Saúde foi um amador completo. Hoje em dia é fácil invadir sites, não precisa ser nenhum gênio. Programadores assim já deixa tudo aberto.

Lá por 2004 eu era um dos consultores num dos maiores projetos da Vivo, que tinha se formado fazia pouco tempo. Pra quem não sabe ou não lembra, a Vivo foi a unificação de meia dúzia de telecoms de vários estados do Brasil, em São Paulo era a antiga Telesp Celular. Esse projeto se chamava Atena e ia unificar os bancos de dados e sistemas de todos eles, coisa gigante que levou mais de dois anos e centenas de programadores e consultores.

Pois bem, quando cheguei lá recebemos ordens de usar um framework proprietário. Se você é de Java, pensa um Spring feito do zero. Se você é de Javascript pensa um Express e Angular feitos do zero. Esse framework foi desenvolvido pela BEA que foi comprada pela Oracle, pra facilitar imagina só a Oracle, que é gigante. Quando eu fui vendo como esse framework funcionava eu senti um cheiro de podre, na minha cabeça pensei, puts, esse troço nunca libera toda a memória que aloca. Pra tirar a dúvida fiz um teste de stress nele num servidor e dito e feito, o framework alocava memória sem parar e nunca devolvia pro sistema e crasheava meu teste. Eu mandei e-mail pro meu chefe avisando e ele marcou uma reunião com os arquitetos da Oracle.

Eu fui acusado de estar tentando falar mal do projeto deles porque eu era de outra consultoria e como ele era o fodão, porque era arquiteto certificado da Oracle e bla bla bla. Vou fazer o que, fiquei quieto e pensei “bom, eu avisei, não é problema meu”. Passou alguns meses, minha alocação lá acabou e depois troquei ideia com meu antigo chefe pra perguntar se os sistemas tinham ido pro ar. E ele me falou, “pois é, a gente precisa rebootar os servidores em produção a cada meia hora”. Obviamente, eu tava certo.

Quando eu falo sobre matemática, o povo fica intimidado e com medo, porque todo mundo odeia ver aquele monte de número e montes de equações. Nem eu gosto disso. Eu gosto do pensamento matemático, de como a gente aprende a enxergar os dados e todas as formas que eu posso manipular esses dados, como enxergar funções, que são basicamente equações, e acostumar a pensar não em como são feitos, mas como são delimitados, definir os limites, a complexidade, e como manipular os dados com funções diferentes. Pensamento matemático é aprender a não seguir procedimentos cegamente e enxergar as possibilidades diferentes do procedimento, incluindo como detectar erros como no caso que contei agora.

Pense assim, você sofreu lavagem cerebral por mais de dez anos da sua vida. Do fundamental até sair da faculdade, sua rotina foi receber um currículo bem definido, com cada matéria exata que era obrigado a estudar. Sempre tinha um professor cagando regra do que você tinha que fazer. As provas eram previsíveis, bimestrais, com a matéria exata que cai em cada uma. Mesmo se você fosse o preguiçoso do preguiçoso, você sabia o que ia cair na prova. E foi fazendo assim, estudando o suficiente pra tirar 5 e passar de ano.

Agora você virou adulto e tá no mundo real. Não tem mais currículo que diz o que precisa estudar daqui pra frente. Não tem mais um professor que te diz o que fazer. Os problemas da vida aparecem do nada, sem aviso. Provas que você não sabe o que vai cair, mas precisa resolver sem ter um bimestre de aviso pra estudar antes. É totalmente estressante, porque depois de sair da faculdade você não tá diferente do moleque do fundamental, no primeiro ano de novo. Ninguém te ensinou como o mundo real funciona e como ele é diferente da escola.

O que seu instinto manda você fazer? Procurar cursos, que têm currículo bem definido, professor pra te dizer o que fazer, e provas fáceis com data pré-marcada e matéria pra estudar bem definida, tudo que te dá a ilusão de estar progredindo. E você fica frustrado quando tenta aplicar na vida real e tem dificuldade. Na sua cabeça o mundo da programação realmente é difícil, porque você tá tendo muita dificuldade, e a vida real provavelmente está errada porque os projetos não são bem definidos, seus chefes não são como seus professores que te dão instruções exatas do que fazer, e você se sente injustiçado e cada vez mais frustrado.

Isso porque até você assumir que te induziram a aprender errado a vida inteira, tudo vai ser difícil, você sempre vai enxergar o mundo como um lugar que te maltrata, onde mesmo que você se esforce pra seguir a matéria, o mundo continua te dando situações que não tinha no curso, e seus colegas e chefes dificultam sua vida te dando problemas que você nunca aprendeu a resolver. Só que a realidade é que você simplesmente tá vendo as coisas do jeito errado, não é o mundo que é difícil, é você que ainda não aceitou que tá fazendo as coisas do jeito errado.

Aprender não é decorar matérias e fazer uma prova. É enxergar o problema e aceitar que te falta conhecimento, procurar você mesmo por esse conhecimento, testar hipóteses e falhar, assumir o fracasso e criticar o que você fez de errado, pra no próximo problema saber lidar melhor e assim sucessivamente, um pequeno passo de cada vez, ao longo de anos, sem nunca poder dizer que “sabe tudo” de qualquer coisa. Programação é uma profissão cujo estudo não termina quando você se forma na faculdade ou quando tira certificados nos cursos. Ele só começa a partir dali pra você estudar sozinho e saber descobrir sozinho o que estudar primeiro.

Eu estou nessa carreira faz uns trinta anos, desde o fim dos anos 80. Apesar de ter me tornado empresário eu continuei programando tempo integral em projetos até quase dois anos atrás. Nesse período eu aprendi uma dúzia de linguagens, frameworks, bibliotecas. A cada geração deixei pra trás todas as ferramentas que tinha aprendido e ia aprendendo coisas novas. E quanto mais eu fazia isso, mais aprender coisas novas ia ficando mais e mais fácil.

Hoje eu consigo aprender uma linguagem nova, a ponto de ficar minimamente produtivo, em um mês. Antigamente levava pelo menos um ano. E isso só é possível porque desde o começo eu tive o primeiro choque quando entrei na faculdade, de entender que eu não sabia nada do que achava que sabia e ver a minha primeira linguagem, que demorei dois anos pra aprender, se tornando obsoleta e ficando pra trás. Aprendi a desapegar e a ter humildade de entender que eu não sabia nada.

Pior, antigamente, eu tinha dois, três livros à minha disposição. Não tinha Amazon pra consultar e pedir online. Porra, não tinha internet, então não tinha fórums, não tinha comunidades pra pedir ajuda. Hoje, se você quiser aprender a base da ciência da computação pode entrar nos sites de grandes universidades como Stanford, Harvard e tem as aulas gravadas de cálculo, álgebra e tudo mais que qualquer boa faculdade ensina. É só ter a disposição pra sentar a bunda na cadeira por 2 anos e aprender.

Faculdades, cursos, e qualquer tipo de instituição de ensino tradicional não são ruins. Mas elas são rodinhas na bicicleta. Se você entender isso, não tem nenhum problema. O problema é você achar que na vida real dá pra ir muito longe com rodinhas. Quanto mais cedo tirar as rodinhas e começar a cair, mais cedo vai aprender a levantar e pedalar sozinho. Aprender de verdade dói, e dói bastante. Mas tem que doer, exatamente por causa da lei da oferta e da procura. Tudo que é muito fácil, qualquer um pode aprender, e por isso mesmo, vale muito pouco. Tudo que não tá doendo, por um longo período de tempo, tem muito pouco valor e quase nenhuma evolução lá na frente.

Não é só a vida que é injusta, talvez seja pouco esforço mesmo. Lembre-se, é muito fácil ganhar bem num momento temporário de mercado que tá aquecido. Quem realmente tem valor é quem aprendeu a aprender sozinho e a se virar e consegue nadar num mercado em depressão. Dado tempo suficiente, os mercados naturalmente filtram os caras que são bons daqueles que só tiveram a sorte de entrar no mercado quando tava aquecido. Mas esse ciclo vai inverter em breve, e se eu fosse vocês ficaria preocupado.

Como alguém que lidou com contratações e treinamentos e viu a evolução de literalmente centenas de desenvolvedores. É muito triste ver alguém que ainda é iniciante, sendo incorretamente super valorizado num mercado aquecido, ficando cego achando que já é bom, e congelando a evolução, fazendo a mesma coisa por muito tempo e ficando pra trás quando o mercado muda de direção. Daí ele fica sem entender porque antes era valorizado mas depois não consegue mais subir. E não entende que o mundo real não é estático, não fica parado. Ele tem altos e baixos. Quem nasceu na alta não entende a baixa. Só quem já caiu é que enxerga e valoriza as oportunidades.

Com tudo isso dito, espero que alguns de vocês tenham ficado preocupado o suficiente pra repensar o que estão fazendo agora, correndo atrás de recompensa fácil e tomando atalhos, ou tá se preparando pra enfrentar o desconhecido que o mundo do futuro vai te apresentar e conseguir finalmente surfar as grandes altas quando elas voltarem. Por hoje é isso aí, espero ter ajudado a aumentar os horizontes do que vocês imaginavam, se curtiram o video mandem um joinha e convido vocês a verem o meu canal pra ouvir os detalhes de todas as coisas que acabei de contar. A gente se vê, até mais!

tags: akitando dowhile

Comments

comentários deste blog disponibilizados por Disqus