Executando verificação de segurança...
5

Realmente, essa piada do desenvolvimento web tem suas falhas e acertos. Mas olha, acho que faltou falar sobre um pedaço importante da história entre 1995 e 2010. Eu estava lá quando jQuery era a grande coisa. O problema que ele resolveu não foi exatamente o JavaScript em si, mas a forma como interagíamos com diferentes navegadores. Cada navegador tinha sua própria API, tornando a vida dos desenvolvedores um verdadeiro caos. Era pior do que escrever código em C para múltiplas plataformas, onde você se depara com uma infinidade de #ifndef TARGET para adaptar seu código a diferentes ambientes. O jQuery unificou essa experiência, oferecendo uma interface consistente que escondia a API de cada navegador, tornando a vida dos desenvolvedores web significativamente mais simples.

Eu não estava lá no início, mas lembro bem dos tempos em que interagíamos com os clientes usando Java, e eu dava meus primeiros passos na informática, quando XML e AJAX eram a grande moda. É uma pena que XML não entrou na piada, porque, na época, parecia mesmo ser a solução para tudo. Muito mais do que o WebAssembly (Wasm), talvez? O XML é o formato por trás de alguns dos sistemas mais complicados que lidam com especificações de texto, como o banco de dados de mapas abertos OpenStreetMap, e até mesmo os arquivos do Word e Excel, que usam XML para estruturar seus dados. A claro, e não podemos esquecer do JSX que é motor por trás do React.

Mas sabe, talvez a solução fosse nem usar a web, né? E cadê o Flash na piada? O Flash, em seu auge, era onipresente na web, essencial para animações, jogos e até mesmo todos os vídeos. Mas ele não era texto, e é aí que começa sua queda. Mas ele só morreu mesmo, porque o iPhone que definiu do futuro da Intenet decidiu não o suportava. E é por isso que o Wasm não decola como esperado. Muitos dos IOs poderiam ser feitos diretamente via Canvas e outras APIs, mas aí não se pode interagir com o documento da página – ou seja, o texto! O problema do Wasm é tentar transformar a web em uma máquina virtual, quando ela deveria ser apenas uma plataforma de texto.

Mas todo mundo insiste em usar a web para outras coisas que não texto. Eu queria fazer uma piada sobre isso, mas ainda não vai ser dessa vez. Talvez a verdadeira piada seja essa insistência em complicar o que era para ser simples, né? A web como uma máquina virtual infinita, quase como um 'Infinite Jest' da programação. Quem sabe um dia a gente não consegue rir disso tudo?


"Infinite Jest" é um romance que, em sua trama, apresenta um filme tão cativante e envolvente que as pessoas perdem a motivação para viver após assisti-lo, pois nada mais parece ter sentido. Isso me faz pensar nos programadores que perdem o interesse em outras atividades, tão absorvidos pelo desenvolvimento web que se esquecem de todo o resto. Talvez a grande piada esteja nisso.

Carregando publicação patrocinada...
4

Sim, estava falando em algum lugar sobre isso. jQuery resolve parte da zona das tecnologias, mas não diretamente o JS.

Melhorou, mas ainda desenvolver pra web para evitar as difeenças de plataforma, aina não é essa maravilha toda. Em vez de 3 SOs agora escrevemos para 3 browsers :D

Nunca achei que o XML era solução :D Nem JSON :D Wasm também não soluciona tudo, mas já que as pessoas não querem solução para tudo, ele pode ser ótimo. Podia ser mais se o W3C não tivesse tanta politicagem, no parágrafo seguinte você fala do problema.

Web é ótima.................. para sites.

O browser tomou o lugar de SOs porque eles não entregaram o que as pessoas estavam pedindo. Dá para fazer tudo igual sem o browser, mas ele entregou pronto, os SOs, especialmente o Windows, não entregaram (até veio um pouco depois, tarde demais, as pessoas não queriam nem olhar pra isso). Wasm também é gambi, mas é o que tem quando a escolha toda foi errada. O avião é ótimo enquanto não tivermos o teletransporte (o problema que na computação a gente tem, só não é tão conveniente porque não venderam bem).

Acho que a piada não é incluir plugins.

5

Você esta absolutamente correto: a ascensão dos navegadores como uma espécie de "sistema operacional universal" reflete diretamente a incapacidade dos sistemas operacionais tradicionais de atender às demandas cruciais dos usuários e desenvolvedores. A portabilidade sempre foi uma dessas demandas-chave. E embora, já tivessemos resolvido esse problema, para o 'desktop', não estavamos prontos para o mobile. Essa 'loucura' toda começou quando o CEO de uma empresa quis acessar todas as informações do ERP pelo seu novíssimo iPhone, surgindo uma necessidade urgente de adaptabilidade e os navegadores surgiram como heróis improváveis nessa história, oferecendo a solução 'perfeita' para essa demanda.

O Google, consciente de que tinha perdido a batalha dos sistemas operacionais, fez uma aposta inteligente e massiva na web como plataforma de aplicações. O Chrome OS é a materialização dessa visão, transformando o navegador na peça única da experiência do usuário. A W3C, que deveria ser o principal órgão regulador das normas da web, acabou se tornando uma espécie de 'ONU' do mundo digital, com sua relevância muitas vezes ofuscada pelo poder das big techs. Atualmente, estamos à mercê dessas gigantes, que frequentemente definem unilateralmente o que é melhor para a web e seus usuários. Ainda bem que a Apple decidiu matar o Flash - já imaginou quão terrível seria a web hoje se ainda estivéssemos presos aquela porcaria?

E se surgisse uma nova plataforma que proibisse o uso de JavaScript? Seria incrível, certo? Seria uma verdadeira revolução, um retorno à essência do que a web deveria ser. Mas quem teria a audácia e o poder para fazer isso hoje? No cenário atual, não parece haver um único jogador capaz. A Nokia teve algumas ideias brilhantes com o Maemo nos primeiros dias, mas depois de fracassar, até tentou lutar junto com Microsoft no Windows Phone, mas perderam completamente a batalha dos smartphones. A Microsoft hoje reconhece abertamente o erro de ter negligenciado o mobile. No entanto, eles apostaram alto na nuvem, e o Azure hoje é muito mais relevante do que o Windows. Eles também investiram massivamente em IA, e talvez, apenas talvez, com as IAs gerativas, possamos ter algum tipo de interface de texto super avançada.

Olhando para trás, a outra grande piada, é que o Unix (e Matrix) sempre esteviram certo desde o início. A interface de texto é, de fato, a interface definitiva - simples, poderosa e incrivelmente flexível. Se a web tivesse seguido essa filosofia desde o começo, talvez estivéssemos em um mundo digital muito diferente hoje. Uma web onde cada aplicação é baseada em texto, eficiente e direta, sem as distrações e complicações das interfaces gráficas atuais.

4

Já positivei no 1o. parágrafo :)

Eu admito que até uso algumas coisas web, mesmo quando tem "nativo". Mas só porque o nativo é tão ruim que não vale a pena. A desgraça é que é muito comum.

Positivei de novo pelo 2o. parágrafo.

Ah, vai pelo terceiro também, por citar o Maemo.

Não posso mais.

3

Legal, maniero! Seu feedback e apoio confirmam que não estou apenas delirando como um velho lunático. Realmente, não tenho propriedade para falar sobre o que aconteceu antes de 2010, mas tenho uma boa ideia do que ocorreu depois disto.

A ascensão dos dispositivos móveis mudou completamente o jogo. Além disso, a luta silenciosa do Google contra a Apple e Microsoft consolidou a Web como a plataforma de aplicação padrão para dekstops/laptops/netbooks/tablets/smartphones/embarcados.

Sabe, talvez um dia eu me sente para escrever "A História Contada do Desenvolvimento Web", junto ao 'Guia Não Contado do Desenvolvimento Web'. Seria uma oportunidade interessante para juntar as peças e oferecer uma visão completa sobre essa jornada que tem moldado o nosso mundo.

Gostaria de começar bem do início, com os primórdios, quando estilos eram integrados diretamente no HTML e tabelas eram usadapas para formatação visual. Mergulhariamos na implementação de um servidor HTTP básico em C, seguindo o padrão original HTTP 1.1. E depois exploriamos os mecanismos de renderização de HTML/CSS e de execução do JavaScript. Somente depois disso cobriria as últimas bizarrices como microserviços e aplicações nativas Electron. A popularidade dessas soluções apesar de todos seus probelmas, merece ser estudada. A filosofia do Unix: "Write programs that do one thing well" e "Write programs that work together well", parece ser todo o hype por trás dos 'microserviços', não é mesmo?

O objetivo é iluminar as origens de todas essas bobagens, para enfim aprender a fazer do jeito certo. É sempre bom ouvir que não estamos sozinhos em nossas impressões e experiências. Valeu pelo apoio, e quem sabe em breve não teremos esse livro nas prateleiras, hein?

A verdadeira questão que permanece é: agora que temos uma web que é consistente e robusta em todos estes dispositivos, e um exército de mão de obra qualificada e acessível, por que haveríamos de usar qualquer outra coisa? Parece que a web se firmou como a escolha óbvia, e o desafio agora é entender como podemos continuar a aprimorá-la e adaptá-la para as necessidades futuras, o wasm parece o caminho óbvio, veremos.

2

Não, tem uns 3 ou 4 velhos lunáticos que pensam o mesmo :D

Eu não colocaria microsserviços nessa :D É algo extremamente problemático que só vale a pena em casos muito específicos, e as pessoas só não percebem tanto porque a maioria nem faz, só fala que faz, pra ver o nível, fazer errado é mais fácil.

De fato não acho que vamos usar algo novo tão fácil. Menos ainda acho que vamos voltar o que era bom e só precisava de uns cortinhos. Mas não posso deixar de contar isso para as pessoas.

Vou falar algo polêmico, mas posso por ser independente. Web é como o capitalismo, enquanto o nativo é o socialismo. O socialismo é claramente melhor. O capitalismo é o que todo mundo quer, por isso não ter como ir contra. Claro que no caso só o socialismo é mais complicado porque todos tem que querer do jeito certo. Se um falhar, começa desmoronar, por isso não vai acontecer, e se acontecer errado será muito pior. Por isso vamos ficar com a web.

Eu ainda acho que toda vez que fizermos algo para melhorá-la, e vai acontecer assim, estamos gastando tempo que poderíamos melhorar o que já existia e era melhor, até que todo mundo se convença que web não faz sentido para aplicações. Mas novamente, não vai acontecer. A não ser que eu, você e mais uma meia dúzia ganhemos um concurso que Google, Microsoft, Apple, e outras passem para nosso controle, mesmo que por algum tempo, até entregar o que precisa e forçar as pessoas verem que dá para fazer melhor. Fora isso não vamos influenciar em nada em qualquer lugar, mesmo na web, não conseguimos nem melhorar o wasm.

Estava discutindo a pouco com amigos, o Wasm só é bom porque ele conserta várias coisas da web. Mas não tudo porque o W3C não quer. E agora querem usá-lo como se fosse uma JVM, o que não faz sentido, e já está provado que não, mas as pessoas vão se meter de novo nisso. Temos que consertar as pessoas.

2

A conversa de voces dois foi um baile de história e experiencia, sempre muito bom ver a história sendo contada por aqueles que trabalharam e experienciaram toda a evolução da internet e da área de TI, nesse caso, da web até os dias de hoje