Inviável

Estático vs. Dinâmico


Listen Later

No início dos anos 2000, as linguagens de programação mais proeminentes nas empresas eram C, C++, Java e C#. Todas eram linguagens estáticas e cerimoniosas, além de um tanto claudicantes num momento em que a Web demandava mais e mais software. Quando surgiram frameworks como o Ruby on Rails e runtimes como node.js, programadores e programadoras mundo afora beberam da água como beduínos sufocando num deserto de erros de compilação. A vida parecia, de súbito, muito boa.

Para nossa tristeza, felicidade de programador é passageira. Todo aquele ganho de produtividade foi paulatinamente substituído por dificuldades de manutenção, redução de qualidade e muitos chamados de suporte na madrugada. As (agora enormes) bases de código dinâmico tornaram-se fontes de profundos ressentimentos para muitas equipes.

Surgiu aí a pergunta: e se o jeito antigo e o novo dessem match um no outro? E se construíssemos coisas novas olhando para o que a academia vem fazendo com linguagens estáticas? E se eu dissesse que minha variável x é mesmo um número? Alguém disse microsserviços? E se, e se?

Pois bem: o e-se-e-se virou o tema do Inviável 41. Vem com a gente que 2 não é string e a chapa é quente!

  • Rollbar: Top 10 JavaScript Errors
  • C#: /dynamic/
  • Scala: Dynamic
  • Haskell: Data.Dynamic
  • TypeScript
  • Flow
  • Sorbet
  • Hack
  • Typed Racket
  • What Makes a Good REPL
  • REPL-Driven Development
  • Making Impossible States Impossible
  • Phantom Types
  • GADTs
  • TypeScript: Advanced Types
  • Recomendações:

    • Leonardo
      • react-spring
      • React.PureComponent
      • Making Sense of React Hooks
      • Vitor
        • “New Dark Age: Technology and the End of the Future”, James Bridle
        • Barry
        • ...more
          View all episodesView all episodes
          Download on the App Store

          InviávelBy Vitor Capela e Leonardo Couto