1 hr 3 min

Estático vs. Dinâmico Inviável

    • Technology

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

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

1 hr 3 min

Top Podcasts In Technology

No Priors: Artificial Intelligence | Technology | Startups
Conviction | Pod People
Lex Fridman Podcast
Lex Fridman
All-In with Chamath, Jason, Sacks & Friedberg
All-In Podcast, LLC
Hard Fork
The New York Times
Acquired
Ben Gilbert and David Rosenthal
The Neuron: AI Explained
The Neuron