MESACAST com o Luciano Ramalho e o Leandro Proença

Início \ Produções \ MESACAST com o Luciano Ramalho e o Leandro Proença

Python Fluente: O Livro Gratuito que Ensina a Linguagem sem Sotaque

Luciano Ramalho, autor do renomado Python Fluente, revelou durante o Mesa Cast que o livro está disponível gratuitamente no site pythonfluente.com em um único arquivo HTML que pode ser salvo no celular e lido offline, no ônibus, trem ou praia. A segunda edição, lançada em 2023, está disponível em nove idiomas: português, inglês, polonês, russo, chinês tradicional, chinês simplificado, japonês, coreano, além de um nono que ele não se lembrou no momento.

O livro nasceu de um curso chamado "Python para quem sabe Python", direcionado a pessoas que já programam em outras linguagens (como Java ou Ruby) e acabam usando Python com "sotaque" – transferindo padrões que não aproveitam as melhores características da linguagem. O objetivo é ensinar o programador a escrever código pythônico, mais produtivo, mais legível e frequentemente mais curto (reduzindo várias linhas para uma ou duas). Leandro NSP (também conhecido como Leandronsp, músico e entusiasta de tecnologia) destacou que o Zen of Python – com princípios como "explícito é melhor que implícito" – é uma filosofia que ele inclusive carrega para o Ruby, sua linguagem principal.

Aprendizado em Público: A Arte de Errar, Pivotar e se Divertir com Código

Tanto Leandro quanto Luciano compartilharam suas experiências com aprendizado em público. Leandro faz lives na Twitch/YouTube onde literalmente aprende enquanto transmite – já fez lives para aprender Elm e, no meio do caminho, pivotou para Rust. Ele já construiu um web server em assembly ao vivo, uma saga que durou várias lives, e cometeu erros teóricos no processo, mas sem vergonha de se expor. Luciano relatou um erro durante uma palestra na Python Brasil: ao codificar ao vivo no Jupyter Notebook, cometeu um erro básico que não conseguiu identificar na hora, mas tinha a solução pronta em outro notebook e a corrigiu. O erro acabou sendo didaticamente útil, pois as pessoas viram o problema acontecendo e a correção em tempo real.

Jeferson observou que esse tipo de abordagem exige segurança para lidar com trolls na internet. Leandro respondeu que seu propósito é aprender, não acertar sempre, e que a comunidade que o acompanha é muito nichada e nerdola, portanto compreensiva. Luciano complementou que, para quem tem experiência, depurar código que você mesmo escreveu é mais fácil do que depurar código gerado por IA ou escrito por outra pessoa, porque você conhece o raciocínio por trás.

Os Limites da IA Generativa: Por que Ela Não Sabe o que Diz

Os três participantes discutiram os perigos do uso acrítico de IA gerativa (ChatGPT e similares). Luciano deu um exemplo clássico: se você perguntar a um modelo antigo "se um carro leva 5 horas de São Paulo ao Rio, quanto tempo levam dois carros?", ele respondia 10 horas, com argumentos extremamente bem articulados e convincentes. Quando corrigido, ele mudava a resposta para "2 horas e meia". O problema fundamental: a IA não sabe o que é um carro, nem o que é uma estrada. Ela apenas regurgita texto baseado em padrões estatísticos. Outro exemplo: perguntar qual estado brasileiro não tem a letra "A" – a resposta correta é Sergipe, mas o modelo insistia em Pernambuco, soletrando P-E-R-N-A-M-B-U-C-O e alegando que não tinha a letra "A".

Luciano alertou que a IA pode aumentar a desigualdade educacional: quem já sabe o assunto usa IA para acelerar; quem não sabe fica à mercê de código gerado automaticamente, sem conseguir depurar ou sequer saber que algo está errado. Leandro, que se define como ex-hater de IA, passou a usar ferramentas como Cloud Code no terminal, mas com uma abordagem cuidadosa: ele programa em baby steps, exige que a IA escreva código junto com testes, e sempre revisa o que foi gerado. Para iniciantes, no entanto, a recomendação foi clara: aprender a programar exige sofrimento, frustração e horas de prática – não dá para pular essa etapa pedindo para a IA fazer tudo.

Rust, Hype ou Realidade? O Debate sobre a Linguagem do Momento

Leandro se declarou entusiasta de Rust, mas não acredita que seja a salvação do universo. Ele gosta do sistema de tipos robusto e da segurança de memória sem garbage collector. Aprendeu Rust fazendo desafios difíceis como implementar uma lista duplamente encadeada, o que forçou o uso de smart pointers e a evitar referências circulares. Luciano, por sua vez, fez uma análise mais cética: Rust é uma linguagem para programação de sistemas (kernel do Linux, compiladores, browsers), mas para a maioria das aplicações web, o ganho de performance em CPU é irrelevante porque o gargalo está em I/O (banco de dados, APIs externas).

Luciano citou o artigo "Why not Rust" (Por que não Rust), escrito por um core developer do ecossistema Rust, que demonstra seis formas diferentes de definir uma struct com um campo, variando apenas a posição de um apóstrofo (lifetimes) – conhecimento que a maioria dos programadores nunca precisará ter. Ambos concordaram que o fanatismo da comunidade é o maior problema, e que linguagens como Go resolvem os mesmos problemas de forma muito mais simples para a maioria dos casos. Luciano também mencionou que a comunidade científica adotou Python porque ele é alto nível e acessível, enquanto as bibliotecas de álgebra linear pesada (multiplicação de matrizes) são escritas em Fortran, C, C++ ou Rust – mas o usuário final só vê Python. Foi assim que Python dominou machine learning e IA.

Ferromodelismo, Micro:bit e Arduino: Hobbies que Ensinam Engenharia na Prática

Luciano compartilhou seu hobby de ferromodelismo (trens elétricos em escala). Ele é frequentador do Modelódromo do Ibirapuera, onde a Associação Brasileira de Ferromodelismo mantém uma maquete de 100m² há 65 anos. Os trens seguem padrões abertos (escala HO, trilhos de 16,5 mm, voltagem de 0 a 15V), ao contrário de Lego (que ele criticou por ser proprietário e usar conectores fora do padrão). Luciano construiu um medidor de velocidade para trens usando Micro:bit (uma placa de desenvolvimento da BBC, distribuída para milhões de crianças inglesas) com dois lasers e sensores de luz – quando o trem interrompe um laser e depois o outro, o display mostra a velocidade em km/h em escala. Ele também colocou uma câmera DJI (modelo que não deu certo comercialmente, mas é leve o suficiente) em cima de um vagão para filmar a viagem em primeira pessoa.

Jeferson mencionou o Núcleo de Tecnologia do MTST, que ensina crianças de comunidades periféricas a construir hardware e software do zero usando placas ESP32 (custam R$ 10-20, programáveis em Python). Eles fazem hortas automáticas, robôs e carrinhos, e já realizam cerimônias de formatura. Leandro, pai de um filho de 14 anos, achou a ideia excelente como introdução à programação – diferente do Scratch, que ele considera muito bobinho para adolescentes. Luciano reforçou que Arduino e Micro:bit são motivadores porque o resultado da programação sai da tela (um LED pisca, um servo motor se move), dando feedback imediato e tangível, em vez de frustrar a criança por não conseguir fazer um Fortnite (que custa milhões de dólares para ser desenvolvido).

Ensinar Programação na Era da IA: Sofrimento, Casca e o Papel do Professor

Luciano fez uma afirmação polêmica, mas realista: se os alunos não sofrerem, eles não aprendem. Não se trata de sadismo, mas de reconhecer que o aprendizado profundo exige horas de frustração, insistência e quebra-cabeça. Assistir 60 horas de vídeo e pedir para IA resolver os exercícios não ensina nada. É preciso criar casca – um termo que significa desenvolver resiliência e intuição para resolver problemas. Leandro concordou, dizendo que programar é como a música: você precisa praticar, errar, e com o tempo desenvolve um racional interno que permite depurar seu próprio código com facilidade, mas não o código gerado pela IA ou escrito por outra pessoa.

Luciano alertou que o modelo educacional atual, onde o aluno se vê como cliente que paga mensalidade e pode reclamar se o professor cobra muito, está destruindo a qualidade do ensino. Isso, combinado com o uso irresponsável de IA, vai ampliar o abismo educacional – quem tem boa formação usa IA para acelerar, quem tem formação precária usa IA como muleta e nunca desenvolve as habilidades fundamentais. A mensagem final foi: use IA como um assistente (tipo o Clippy do Word), mas não deixe que ela pense por você. E, acima de tudo, recuse trabalhar em bets (casas de aposta), que Luciano classificou como "coisa do mal" que precisa ser banida, pois o profissional de TI qualificado para passar numa entrevista de bet certamente passa em muitas outras empresas éticas.

Livro Python Fluente: Edição Física, Xilogravura e Software Livre

A edição física do Python Fluente (volume 1 de 3) está em pré-venda e já saiu da gráfica. Luciano passou seis horas carimbando e autografando os exemplares. A capa é uma xilogravura feita pelo artista paraibano Thiago Castor – ele esculpiu a imagem em madeira, aplicou tinta com rolinho e transferiu para o papel com uma colher de pau. O artista está recebendo metade do valor da venda das gravuras no Catarse. O miolo do livro foi produzido integralmente com software livre, gerando PDF direto do computador de Luciano para a gráfica (exceto a capa, que tem detalhes de cor feitos por softwares proprietários da editora).

Luciano reforçou que o livro está disponível gratuitamente online em pythonfluente.com, mas a versão física é uma obra de arte que vale a pena adquirir – não apenas para consulta, mas também pelo valor artístico e pelo conteúdo opinativo (Luciano comenta sobre outras linguagens e expressa seus pontos de vista). Jeferson, que já possui a edição em inglês, chamou o livro de "bíblia" e guarda com todo carinho.