Flex SDK – É chegada uma nova era?

Olá pessoal

Estou fazendo este post para comentar um pouco sobre esses anúncios sobre a continuação do Flex SDK pela comunidade, como a Adobe nos notificou na sexta-feira, dia 11, através deste post.

A algumas décadas (isso mesmo, décadas), nós vemos o surgimento de novas tecnologias com a ideia de substituir as atuais, porque nossas necessidades mudam muito rapidamente, e nós precisamos de ferramentas para satisfazer a nossa demanda, por isso todos nós sabemos que nenhuma tecnologia, ferramenta, sistema operacional, hardware, ou seja, tudo que envolve TI, não irá durar para sempre. Esse é o ciclo de vida na informática, quando algo não serve mais uma nova tecnologia irá surgir naturalmente e irá substituí-la.

Eu nem preciso fazer uma analogia com as tecnologias de desenvolvimento desktop, com certeza você que está lendo já fez um flash back daquilo que você viveu, ou que ouviu algum professor na faculdade e achava que ele só dizia besteira.

Isso aconteceu com o Flash em um primeiro momento, que surgiu para atender uma demanda no desenvolvimento que o HTML não atendia, e na seqüência, 6 anos depois do surgimento do Flash (se não me engano), surgiu o Adobe Flex, um produto que viria a atender o desenvolvimento de aplicações “Enterprise”.

As pessoas julgam a curva de aprendizado do Adobe Flex extremamente simples, talvez isso não fique claro para todos, mas hoje nas faculdades, todos aprendem programação orientada a objetos, estrutura de pacotes, herança, etc. E é isso que o Flex é, a sua linguagem é orientada a objetos com desenvolvimento orientado a eventos, um modelo muito claro de se entender, e muito parecido com as linguagens mais populares que nós temos hoje no mercado para backend (Java, .NET, PHP, Ruby), porém, nem todas as faculdades contêm o Flex em sua carga horária, mas mesmo assim, mesmo sem entender o Flex, o analista/programador que sai da faculdade, se depara com essa tecnologia e todos os conceitos que ele aprendeu se fazem valer e tudo começa a fluir muito bem (Tente ensinar Flex para uma pessoa que trabalhou a vida inteira com o modelo estrutural, sem conceitos de orientação a objetos, você verá que essa coisa de curva de aprendizado vai por água a baixo).

Pois bem, passado-se alguns anos o Flex é usado em larga escala mundial para o desenvolvimento de aplicações “Enterprise”, mas ele não ficou restrito apenas a esse seleto grupo de grandes empresas. Hoje, pequenas e médias empresas pagam para ter soluções com essa tecnologia, pois acreditam que ela irá resultar em um projeto de qualidade, em cima de um custo que ela possa arcar, e em um tempo que seja possível ela esperar para que seja atendida.

Jogando um balde de água fria em tudo o que eu escrevi até agora, a Adobe optou por descontinuar o Flash Player para mobile (já fiz um post sobre isso), e optou também por doar o projeto a uma fundação opensource chamada Spoon, e em seu post, lamentavelmente existe um trecho de 3 linhas aonde a Adobe afirma acreditar que o HTML5 será a médio-longo prazo, a linguagem de desenvolvimento das aplicações “Enterprise”.

Mas voltando ao segundo parágrafo do meu texto, eu escrevi que é natural uma evolução das tecnologias, levando algumas a “morte” ou a um nível de uso muito baixo, mas isso acontece com naturalidade quando novas tecnologias surgem no mercado para atender novas demandas, atender com recursos que ainda não existiam, oras, isso é natural, é o que acontece com celulares, tvs, geladeiras, carros, homens, mulheres (calma Stefan, exagerou, não exagerei, quando seu relacionamento está ruim, você não parte pra outro?), mas agora, pela primeira vez eu vejo uma linguagem ser substituída por outra com menos recursos. Não podemos acreditar que por surgirem alguns frameworks que reduzem a incompatibilidade entre navegadores, o número de recursos se iguá-la. Obviamente o HTML5 é uma linguagem que tem muito a oferecer, a evoluir, mas será que ela já é madura o suficiente para substituir o legado que o Flex construiu?

Mas voltando ao Flex e a Spoon, você já parou para pensar que os componentes da Flexlib que são utilizados por muitos desenvolvedores podem estar dentro do FlexSDK em breve? Já pensou que o Swiz, Mate ou RobotLegs podem um dia serem embutidos dentro do FlexSDK? Já pensou que a WebORB ou a GraniteDS por exemplo, podem se aproximar ainda mais seus produtos do FlexSDK? Já pensou que você pode submeter um componente, ou um patch de correção do Flex para o SDK e ter seu nome lá, publicado, com seus méritos de colaboração a um projeto OpenSource?

Para finalizar esse post, vou contar uma breve experiência que eu tive no ano 2001 se eu não me engano. Nessa época eu trabalhava com servidores Linux e utilizávamos um servidor de email chamado Exim. No Linux existem dois serviços para emails, um controla o envio de mensagens, e outro o recebimento, e na época, o Exim ainda estava começando, os logs eram muito complicados de se analisar, pois eram em dois logs separados. Eu e meu colega de trabalho Genilto, criamos um analisador de logs, que lia os dois arquivos, verifica o envio e recebimento de mensagens, e gravava isso em uma base de dados MySQL para que fosse possível analisar o tráfego de envio e de recebimento, casando as informações caso um email tivesse sido enviado e recebido pelo mesmo servidor. O projeto foi publicado e recebemos emails de usuários de várias partes do mundo, comentando, tirando dúvidas, parabenizando e criticando nosso projeto, isso foi uma experiência muito bacana. Obviamente que o projeto durou pouco, pois logo veio uma nova versão e nosso projeto acabou sendo desnecessário pois mudou-se a forma de logs e a própria Exim corrigiu o problema.

Uma das mensagens que eu quero deixar nesse post é essa experiência que eu tive. Trabalhar com opensource é muito gratificante, obviamente que na escala do Flex, não é cada um em sua casa que vai resolver os problemas e criar inovações, postá-las e pronto, mas acredito que pelo número de empresas, número de negócios envolvidos, esse dinheiro irá aparecer e o projeto continuará a evoluir, ao menos, é isso que eu acredito, mas independente disso, sua contribuição poderá estar lá.

A segunda mensagem é que eu não sou viciado em Flex, antes que eu tenha que responder isso em algum comentário ou email, acredito que mais dia menos dia, algo melhor surgirá e deixaremos de utilizá-lo. Também quero dizer que é óbvio que estou atento ao mercado, e não quero ser chamado de vovô-flex daqui a 5 anos com a galera #soudev apontando na rua, “olha lá, aquele é o Stefan que ainda usa Flex, será que ele tá comendo direito??? Tá magrão, antes ele era gordo pra caramba….”.

A terceira mensagem é que não sou contra mudanças, e espero que um dia o Flex saia de cena, mas que saia como um soldado vencido e não como um soldado abandonado.

PS: Esse é o post que inaugura a categoria “HTML5″ em meu blog, hoje fiz um teste e dei duas tuitadas sobre javascript e tive um bom feedback, talvez seja hora de compartilhar algo com o pessoal ;)


8 Comments

  • Daniel Schmitz |

    Parabéns pelo post, e pela sensatez! Flex não é imortal, e nem morre da noite pro dia. Assim como html 5 não é perfeito e não está pronto ainda. Mas chegará um dia em que uma tecnologia vai ser mais empregada que a outra, e isso continuará indefinidamente. Esperto é quem domina tanto um quanto outra!

  • @jandersonfc |

    É assim que se fala Sr. horochovec, Tudo tem o seu tempo na área de TI , e ainda vai ser não sei por quanto tempo do flex, aliás, antes mesmo da comunicação da Adobe sobre o flex eu já tinha feito um post que vai de encontro com o que você falou principalmente na última parte

    “Esse é o post que inaugura a categoria “HTML5″ em meu blog”

    http://www.jandersonfc.com/as-tendencias-sao-suas-aliadas/

    []s

  • Stefan Horochovec |

    @Jandersonfc

    Confesso que o HTML5 não estava em meus planos no momento, não é uma questão de zona de conforto, etc, realmente eu ainda acho inviável ele nos projetos que eu tenho trabalhado, mas não posso me dar ao luxo de fechar os olhos para ele.

    Quero postar algumas coisas sobre zkoss, knockout.js, backbone.js, dojo, etc. São APIs e frameworks que eu vejo pouca gente comentando no Brasil, e são bastante interessantes. Já que dediquei uns dias a essa nostalgia toda, nada melhor que compartilhar com o pessoal minhas experiências. Bastante gente reclamou sobre IoC e DI no Javascript, os twittes que eu mandei eram sobre isso e recebi várias DM da galera agradecendo. Acho que o pessoal está com dificuldade em encontrar material sobre isso.

  • Andre Sieiro |

    Sinceramente, vc teve uma otima visão sobre oque aconteceu…

    Mas não vejo um futuro para o flex/flashbuilder tão próspero…

    Assim como vc, estou olhando para o html5/js, mesmo não sendo uma forma maravilhosa de desenvolver projetos, mas é oque existe para agora…

    A Adobe deixara seus usuarios “orfãos”, descontinuando o player e repassando a “bomba” par aos próprios usuarios finais….

    não vejo nenhum usuário disposto a comprar e resolver os problemas que a própria Adobe desistiu de resolver…

    Por este fato, acredito que o desuso é o futuro desta tecnologia….

    E tudo começa agora, quando o cenário era ótimo, compilando para todas a plataformas, novos sdks, linguagem as3 madura, uma boa comunidade de usuarios desenvolvendo… ai “chutam o balde” …

    Esta é o momento de dar um upgrade(downgrade) para a nova tecnologia, pois mesmo que ela não seja a definitiva, temos que ganhar nosso dinheiro…

    Abraços!

  • Felipe Reis |

    eu que estava começando a aprender essa linguagem(flex) … será que vale a pena investir ???

  • Marcelo |

    André, só uma pequena correção, o flash que foi descontinuado é o flash para dispositivos móveis e não o flash que todos nós estamos acostumados para desktop. A adobe doou a sdk do flex o que em minha opinião tem mais a ganhar que perder. Java chegou ao que é hoje graças a inúmeros desenvolvedores que contribuiram com projetos open source, a comunidade participando evoluiu a linguagem e hoje ela é o que é. Muitos consideram que o fato da SDK agora estar nas mãos da apache significa um cemitério, mas equecem de projetos como Apache httpd, Apache Tomcat, Apache Struts, Apache Ant, entre outros. Só pra se ter uma idéia, eu dei uma pesquisada na android store para baixar um browser e encontrei uma infinidade de browsers lá, logo, imagina você tendo que se preocupar em manter compatibilidade com milhares de browsers para dispositivos que nunca foram o seu nicho de mercado. Quem aqui já viu ou leu em algum lugar que a Adobe foi ou é forte em browser de mobile. Além do mais, a adobe possui uma linha do Flex voltada para dispositivos móveis que está funcionando sem maiores problemas e com boa aceitação principalmente na Apple Store. Infelizmente para aqueles que querem acessar animações em flash do browser do dispositivo móvel terá que recorrer a outras alternativas, o que na minha opinião forçará os desenvolvedores a construir versões mobile de seus sites. Em resumo, ratifico a afirmação do post. Nenhuma tecnologia dura para sempre, existe uma evolução natural e TODOS que não querem ficar para trás precisam evoluir, mas anunciar a morte de uma tecnologia baseada em “Achismo” e “boato” é pura irresponsabilidade, principalmente vinda de nós que acabamos por formar opinião e definimos a tecnologia que nossa empresa usará.

So, what do you think ?

  • Current day month ye@r *