“Dicts and sets” • Algorithms and hash tables detailed in https://www.fluentpython.com/extra/internals-of-sets-and-dicts/ – How efficient are Python’s dict and set? – Why can’t we use any Python object as a dict key or set element? – Why are set elements unordered? – Why and how do dicts preserve insertion order? (since Python 3.6)
using Python • Focus on special methods (__dunder__) from chapter 1 • Functions in depth before classes • More than 1000 external references – with short URLs that I can update when necessary • Opinionated essays about language design (Soapboxes) • Theory illustrated with practical examples
(re)inventing – • Native data structures in depth Contrasting concepts (covered separately in the docs) – Lists, tuples, arrays, queues – Data classes, named tuples – Threads, processes, coroutines ☠☠☠ • Balanced coverage of all supported typing disciplines • Metaprogramming and metaclasses!
O'Reilly • 2015: Fluent Python released (EN, PT-BR) • Through 2022: 1st edition published in 9 languages • 2022: Fluent Python 2nd edition released • 2024: full text at PythonFluente.com (PT-BR); Brazilian publisher drops 2 nd edition • 2025: crowdfunding for the 2nd edition in PT-BR • 2026: delivering to crowdfunding backers; available in bookstores
by O’Reilly) • PDF and HTML generated with Asciidoctor.org (Ruby) • Translated from English to Portuguese by a human: my friend Paulo C. Oliveira • Revised with the help of the community and languagetool.org – not an LLM: a narrow AI specialized in spelling and grammar correction
language designed for “end user programmers” – • • • Scientists, analysts, journalists, artists etc. Transparent and representative governance Not dependent on any specific government or corporate support Not driven by profits
Not driven by consumption, companies or hierarchical institutions Online “social networks” are no substitute for that – Too much algorithmic meddling – Too many trolls and robots Face to face collaboration may be the best antidote to culture wars and radical polarization
uma comunidade, 5 fundadores precisam estar juntos no mesmo local. Para entrar, novos usuários precisam conhecer 5 usuários já existentes, presencialmente. A cada mês, todo usuário deve encontrar 5 outros usuários, presencialmente; caso contrário, o acesso é suspenso. Para reativar, basta encontrar 5 usuários, presencialmente. “5” é só um exemplo
sair de casa para encontrar pessoas • Sem bots • Atitudes de provocação (trolling) têm consequências na vida real • Promove a solidariedade local: – Quem tem uma furadeira que eu possa pegar emprestada? – Quem pode ajudar a consertar o pneu de uma bicicleta?
promise AGI for the benefit of mankind • But they stole everybody’s content • Abused human data workers • • Unleashed unsafe “companions”, leading to multiple cases of self-harm: Character.ai faliu! Want to cover the Earth with data centers (Sutskever)
• Hyping existential risk to distract from present harms • Circular financing: – • I give you $100B, you buy $100B of my stuff, now we both have $100B, total $200B, free money! Accusing the Chinese of stealing IP while profiting from the largest IP theft in history
autonomous • Humanoid robots are useless, fake, or frauds – • • Read Rodney Brooks, professor of robotics at MIT https://dub.sh/gUwas1F But Tesla now is all about autonomous vehicles and humanoid robots! And SpaceX is now all about AI and datacenters!
for software development We have tools and methods to verify generated artifacts, but most professions don’t – Automated testing is essential • • But LLMs may cheat, writing tests that pass even when the implementation differs from the spec Implement TDD: tests written first, agent can only update tests with permission
Anthropic” – • Subscriber of Claude Code at $ 20/month – • • I may get $ 1.500 in damages for Fluent Python Passei a usar OpenCode com Deepseek I would be very stressed if I was in a company and was forced to do agentic coding I predict a major financial scandal (like WorldCom)
Schwartz, destroyed by the Obama DOJ for downloading articles from JSTOR I stayed away from AI until I decided to keep my connection to my friends in the professional software development community who have no choice Up next: explore local models and open source models (harness > model)
Let’s make a smoothie! Who can contribute with fruits? EVERYONE ELSE: Great idea, here’s the fruit I have! SAM ALTMAN: The smoothie is ready. It’s $20 a glass! EVERYONE ELSE: But you took our fruits to make it! SAM ALTMAN: No I didn’t! Where’s your fruit? Show me!
every external source used in training must open source the model. • Too radical, or just fair and common sense? • Civil disobedience: until that happens, let’s ignore copyright!