Apostou no LINQ to SQL? Acreditou ser uma tecnologia MARAVILHOSA e que teria um futuro brilhante por ser um “produto Microsoft”? Más notícias: a banca caiu. Em um post recente, a equipe de desenvolvimento do projeto basicamente declarou o fim do mesmo, tal como citado no próprio post:
We’re making significant investments in the Entity Framework such that as of .NET 4.0 the Entity Framework will be our recommended data access solution for LINQ to relational scenarios. We are listening to customers regarding LINQ to SQL and will continue to evolve the product based on feedback we receive from the community as well.
Descobri esta novidade ao visitar um outro blog e, sinceramente, soou como uma música que já ouvi algumas vezes. E uma que, sinceramente, sinto me aliviado por não mais me afetar. Só para lembrar algumas tecnologias da Microsoft nas quais milhares de pessoas investiram e, de repente, do dia para a noite, viram todo o seu investimento ser jogado no lixo (siga os links abaixo para sentir uma pontinha de medo caso ainda esteja desenvolvendo para a plataforma Microsoft):
- Visual Basic (pré .net). Lembram-se quando saiu o Visual Basic .net? Que maravilha! Só tinha um problema. Se você quisesse atualizar sua aplicação feita com uma versão anterior da linguagem, teria de reescrever práticamente do ZERO todo o seu código. Isto porque o VB.net não era o Visual Basic com o qual todos estavam acostumados. Era simplesmente OUTRA linguagem de programação.
Chegaram até a criar um assistente, que nos fornecia uma lista ENORME de mudanças a serem feitas na sua aplicação. A lista era (e ainda é) tão absurda, que faria MUITO mais sentido, simplesmente escrever algo como “REESCREVA DO ZERO”. - Visual Fox Pro. Declarado extinto pela Microsoft há mais ou menos uns dois anos atrás. Ninguém o usa, certo? Errado. O índice TIOBE em 2006 apresentava o FoxPro na 12ª posição.
- Visual J#. Uma maneira bem bacana de migrar suas aplicações para .net, certo? Errado: a Microsoft também o extinguiu. Neste caso, não foi lá grande prejuízo, uma vez que de cara, as pessoas não engoliram a tecnologia. Lembram do Microsoft J++?
- .net 1.0. Como ouso colocar a plataforma .net na lista de tecnologias abandonadas pela Microsoft? Simples: eram tantas as incompatibilidades com as versões posteriores, que em diversos casos, aplicações inteiras tiveram de ser reescritas! Caso precisasse utilizar código compilado com uma versão mais antiga do framework, sabe o que você deveria fazer? Rezar!
- VBA. Chocante: a Microsoft está agora com planos de matar o VBA também (pro Mac, já não existe mais). Este será substituido por um SDK para desenvolvimento de aplicações para o Office. Muita gente não se lembra, mas o VBA era licenciado pela Microsoft a outros desenvolvedores. O AutoCad, por exemplo, oferecia suporte a VBA. Adios amigos! VBA não será mais licenciado!
- VB Script: alguém se lembra dele? A resposta da Microsoft ao JavaScript. O que houve com ele? Bem: a partir de 2007, não serão incluídos novos recursos na linguagem. Traduzindo: foi pro saco.
- DAO/Jet. Sim: muita gente considera o DAO (biblioteca para acesso a bancos de dados) um lixo fedorento, medíocre, ridículo e repugnante. No entanto, MILHOES de aplicações foram escritas usando esta biblioteca. E o que ocorreu? Morta também. Substituída pelo ADO.
ADO é bem melhor que o DAO/Jet, no entanto, o suporte a DAO simplesmente desapareceu.
Se você já precisou lidar com bancos de dados legados no formato Access 97, sabe do sofrimento que estou falando. - Active X: qual foi a última vez que você ouviu falar nele? Só pra lembrar, era a resposta da Microsoft aos applets Java. BILHOES foram investidos na tecnologia, que se mostrou ineficiente, insegura e, com o tempo, foi aos poucos sendo esquecida (e todo aquele investimento? também?)
Da mesma família do ActiveX, podemos também nos lembrar de uma sopa de letrinhas extremamente divulgada que acabou virando pó: COM, COM+, DCOM. - Active Desktop: quando foi lançado o Explorer 4 (aliás, ainda hoje considero a melhor versão do Explorer), este veio com um novo recurso chamado Active Desktop. Com ele, você poderia incluir pequenos widgets no seu desktop, e foi inclusive um dos argumentos de venda para o Windows 98, uma vez que possibilitaria aos fabricantes de computadores maior customização de seus sistemas. Pois é, mais um pra lista. Foi substituido pelo Windows Sidebar no Windows Vista que…
- Windows Sidebar: também excluído. Lembra daquela irritante barra lateral do WIndows Vista? Aquela que a Microsoft tentou fazer com que novamente, milhões de desenvolvedores desenvolvessem mini aplicativos para a mesma? Pois é: no Windows 7, este recuso será substituido por algo semelhante aos Widgets do Mac OS X.
Estas são apenas algumas das tecnologias das quais me lembro (com certeza há mais algumas). Todas possuem algo em comum: um imenso alarde, milhares de desenvolvedores apostando nas mesmas, e em seguida, a Microsoft as abandonando, deixando bilhões de linhas de código para serem migradas para alguma outra tecnologia (normalmente, da própria Microsoft).
Dos casos citados, provavelmente o mais grave consiste no do Visual Basic. Afinal de contas, no que diz respeito ao número de aplicações corporativas escritas usando a linguagem, equivaleria (levando em conta as devidas proporções) ao COBOL. O mínimo que estes desenvolvedores poderiam esperar da Microsoft era compatibilidade das versões posteriores do produto com o VB 6.
(Só para lembrar: C++, que foi um pulo gigantesco em relação ao C possuía retro-compatibilidade total (pode-se argumentar que C++ seria outra linguagem, mas o exemplo continua válido). Isto sem mencionar o Delphi, que mesmo o 2008 ainda é compatível com a primeira versão da linguagem.)
Então, com base neste post, devemos acreditar que a Microsoft é uma empresa cruel, nojenta, sem ética, fedorenta e malvada? Claro que não. O que se verifica aqui é a ineficiência do modelo fechado/proprietário. Coloque-se na posição da Microsoft: são produtos que não se mostram mais tão interessantes quanto eram no momento do lançamento. Do ponto de vista administrativo, a Microsoft está correta. Se estas tecnologias fossem abertas, com certeza os desenvolvedores que apostaram nas mesmas não sofreriam um prejuízo tão grande, pois haveria mais de um fornecedor.
Observando o outro lado da cerca, aonde se encontram as tecnologias abertas, percebe-se um cenário radicalmente diferente. Há uma comunidade realmente ativa, aonde todos colaboram para o desenvolvimento da plataforma. Não é como no caso de tecnologias fechadas, como por exemplo o Delphi ou o Visual Basic, nos quais a comunidade consiste apenas em consumidores de novos plugins e componentes para seus ambientes de desenvolvimento. Nas tecnologias abertas, a comunidade atua no desenvolvimento das mesmas. Se um fornecedor resolver sair do jogo, não há problema: há outros. Mesmo que todos os fornecedores desapareçam, situação esta ainda mais improvável, ainda existiriam as especificações completas das mesmas, ou mesmo o código fonte. Na realidade, não seria exagero dizer que, no caso das tecnologias abertas, a comunidade é o principal fornecedor.
O mais triste que percebo é que ainda hoje muita gente investindo alto em tecnologias proprietárias cujo roadmap não é nem de longe garantido. Há pouco tempo atrás, em uma apresentação de um produto “fantático” de uma empresa da Bahia, que promete “revolucionar” o desenvolvimento de aplicações, perguntei: “qual o roadmap deste produto?”. E a resposta que obtive dos apresentadores foi: “road o quê?”.
E depois nos dizem que aprender história é perda de tempo…
Links legais:
a lista de softwares descontinuados pela Microsoft (reparem no número de bobagens que realmente, TINHAM de ser descontinuadas)
Deixe uma resposta