66 pontos por GN⁺ 2026-02-25 | 5 comentários | Compartilhar no WhatsApp
  • Curso prático do MIT focado em ensinar intensivamente habilidades de uso de ferramentas que não são abordadas nos currículos tradicionais de Ciência da Computação nas universidades
  • Ensina como usar com eficiência as ferramentas essenciais que desenvolvedores utilizam todos os dias, como linha de comando, editores de texto e sistemas de controle de versão
  • Na edição de 2026, ferramentas e fluxos de trabalho de desenvolvimento baseados em IA foram integrados a cada aula, oferecendo uma estrutura de aprendizado alinhada ao ambiente prático mais atual
  • As aulas estão disponíveis publicamente em vídeos no YouTube, e discussões entre alunos e equipe docente podem ser feitas no OSSU Discord
  • Há suporte a código aberto e traduções multilíngues para permitir uso livre também fora do MIT, contribuindo para a formação de desenvolvedores no mundo todo

Visão geral do curso

  • Enquanto disciplinas de Ciência da Computação tratam de temas avançados como sistemas operacionais ou aprendizado de máquina, a proficiência em ferramentas de desenvolvimento costuma ficar como algo que os alunos precisam aprender por conta própria
    • Este curso aborda de forma sistemática habilidades essenciais para o trabalho prático, como linha de comando, recursos avançados de editores de texto poderosos e funcionalidades avançadas de sistemas de controle de versão
  • O objetivo é ajudar os alunos a usar de forma mais eficiente e fluida ferramentas nas quais eles investem centenas ou milhares de horas ao longo da vida acadêmica e da carreira
  • A familiaridade com essas ferramentas aumenta a velocidade de resolução de problemas e amplia a capacidade de lidar com problemas complexos

Aprendizado com integração de IA

  • A edição de 2026 reflete o fato de que ferramentas e fluxos de trabalho de desenvolvimento assistidos por IA estão se espalhando por toda a engenharia de software
    • Quando usadas com consciência de suas limitações e da forma adequada de aplicá-las, elas podem trazer grandes vantagens para profissionais de CS
  • Não há uma aula separada sobre IA; em vez disso, as ferramentas e técnicas de IA mais recentes são integradas diretamente às aulas de cada tema

Cronograma das aulas

  • São 9 aulas no total, de 12 a 23 de janeiro de 2026
    • Tópicos principais: introdução ao Shell, ambiente de linha de comando, ambiente e ferramentas de desenvolvimento, depuração e profiling, controle de versão com Git, implantação de código, Agentic Coding, qualidade de código e mais
  • Todas as aulas podem ser assistidas pela playlist no YouTube

Participação e comunidade

  • Os alunos podem fazer perguntas e discutir no canal #missing-semester-forum do OSSU Discord
  • O curso é ministrado em conjunto por Anish, Jon e Jose, e o contato pode ser feito pelo e-mail (missing-semester@mit.edu)

Expansão para fora do MIT

  • O material do curso também é público fora do MIT e é discutido em várias plataformas, como Hacker News, Lobsters, Reddit, X, Bluesky, Mastodon e LinkedIn
  • As edições de 2019, 2020 e 2026 continuam sendo amplamente compartilhadas online

Traduções e código aberto

  • Existem traduções comunitárias em mais de 15 idiomas, incluindo árabe, chinês, alemão, japonês e coreano
    • Essas traduções foram produzidas por comunidades externas e não passaram por revisão oficial
  • Novas traduções podem ser adicionadas via GitHub Pull Request
  • O material do curso é publicado sob a licença CC BY-NC-SA, e o código-fonte pode ser consultado no GitHub

Agradecimentos

  • A produção dos vídeos das aulas e a realização do programa IAP 2026 foram possíveis com o apoio do MIT Open Learning e do SIPB

5 comentários

 
bungker 2026-02-25

Por que não é a licença MIT?

 
yklovejesus 2026-02-26

kkkk

 
boolsee 2026-03-03

Uau... até o vídeo tem legendas em coreano.
O conteúdo também é bom...

É outro assunto, mas o mundo realmente melhorou bastante. Estamos numa era em que dá para assistir às aulas do MIT pela internet em nosso idioma.

 
laeyoung 2026-02-27

Parece The Pragmatic Programmer para universitários, então parece muito bom.

 
GN⁺ 2026-02-25
Comentários do Hacker News
  • Fiquei feliz em ver que a seção “Beyond the Code” aborda comentários (comments)
    O que eu sempre dizia aos alunos nas aulas introdutórias de programação é que um bom comentário deve explicar o porquê (why) do código
    Algo como “i+=1; /* Increment i */” não agrega nada, e uma explicação como “incrementa i no meio do loop para verificar o próximo valor com antecedência e avaliar a possibilidade de troca” é muito mais útil
    Comentários ficam mais fáceis de entender quando são escritos de forma descritiva, como se você estivesse explicando para a sua avó
    O código passa a maior parte da sua vida útil em manutenção, então quanto mais fácil for entendê-lo, menor será o custo e maior sua longevidade

    • Eu prefiro comentários honestos como “isso aqui está meio gambiarra, mas fiz assim porque estava com pressa”. Esse contexto humano também ajuda quem vai ler o código depois
  • Foi muito bom ver um capítulo sobre controle de versão (version control)
    É uma pena que a maioria dos cursos de CS não ensine direito sistemas de controle de versão (VCS)
    Recursos como git bisect, blame, revert e rebase mostram seu verdadeiro valor quando usados corretamente
    Mas muitos desenvolvedores simplesmente ficam no “funcionalidade pronta → git commit -am "changes"
    Quando o histórico de commits é mantido de forma a contar uma história, revisar PRs vira algo prazeroso, mas quando está todo embolado em 26 commits como “try fix”, é horrível
    Controle de versão exige cuidado, e seu valor compensa muito

    • Se a maioria não consegue usar a ferramenta direito, então isso é culpa da ferramenta, não do usuário
      O Git é melhor do que antes, mas ainda não é intuitivo, tem terminologia confusa, é difícil se recuperar quando algo dá errado e não tem “undo”
      Talvez já tenha chegado a hora de criar uma nova ferramenta de controle de versão para substituir o Git
    • Isso soa um pouco duro. Engenheiros já têm coisa demais para aprender, e muitas vezes não sobra tempo para se aprofundar até na UX complexa do Git
    • Parte do problema é a falta de oportunidades de ensino. No começo dos anos 2000, no Reino Unido, os professores sabiam da importância dessas habilidades práticas, mas não podiam ensiná-las porque “não eram acadêmicas”
      Felizmente, na minha universidade os administradores de sistemas ofereciam disciplinas desse tipo, e depois o programa MCIT da UPenn também incluiu Git no currículo
    • A maioria aprende Git em modo JIT, só quando precisa
      Mas recursos avançados como bisect ou git object são difíceis de dominar se você não reservar tempo para estudá-los por conta própria
      Por isso acho que é essencial haver cursos formais que ensinem Git
    • Eu também já ouvi falar dessas funcionalidades, mas quase nunca usei de verdade
      Tento escrever boas mensagens de commit e dividir as mudanças em partes pequenas, mas as ferramentas avançadas do Git ainda são algo que me dá medo
  • Seria bom incluir sed e awk no currículo
    Essas duas ferramentas conseguem substituir programas longos de outras linguagens com código curto e fácil de ler
    No fim das contas, o importante é ensinar a escolher a ferramenta certa. Assim dá para evitar o problema do “martelo de ouro”

  • Um dos meus clientes grandes obriga todos os funcionários técnicos a fazerem 18 horas de treinamento em ágil
    Seria muito mais valioso usar esse tempo para assistir às 9 horas desta série de aulas

  • Fiquei curioso se as aulas também incluem tópicos como entrevistas, negociação salarial, comunicação com gestão, liderança de equipe e crescimento de carreira
    Ter aprendido isso na faculdade teria ajudado muito

    • Ainda não, mas é uma ótima ideia para considerar na próxima versão do curso
  • No curso de Engenharia da Computação (CompE) da Purdue havia uma disciplina prática de 1 crédito cobrindo esse tipo de conteúdo
    Aprendíamos bash e git, e no final víamos um pouco de Python e Tkinter
    Depois, nas disciplinas mais avançadas, já se esperava esse conhecimento para entregar trabalhos
    Foi o crédito mais prático que fiz em todo o curso

  • Se você aprender shell de verdade, pode economizar anos da sua vida
    Recomendo fortemente ler o manual do Bash do começo ao fim. Dá para encontrar a resposta ou ao menos uma pista para praticamente qualquer dúvida
    Materiais recomendados:

  • No fim dos anos 90, durante meu doutorado em Física na NYU, fiz uma disciplina prática sobre ferramentas UNIX no departamento de CS
    O instrutor fazia demonstrações direto no terminal, e foi aí que me apaixonei por UNIX
    Depois instalei Linux e comecei a programar em Perl
    Hoje gosto de assistir aos vídeos de Rust do Jon no YouTube e estou usando Rust de uma forma não tradicional
    Pretendo acompanhar esta série de aulas e “portar” tudo com rustdoc
    Link do meu projeto

  • Fiquei me perguntando se isso não é como na época em que a Sun patrocinava o ensino de Java nas universidades, e agora seria a vez da Anthropic empurrar LLMs

    • Hoje em dia os alunos já usam LLMs ativamente, então talvez nem precise incentivar
      Ainda assim, parece natural que empresas de LLM ofereçam planos gratuitos para estudantes
  • Na minha universidade também havia uma disciplina central de CS que cobria esse conteúdo ao longo de um semestre
    Até hoje consulto minhas anotações daquela época; foi uma das aulas mais úteis que já tive