What's HOT and what is NOT - 1o Semestre 2008

Bons , ae seguem os meus :

:arrow: RIA de forma decente - SilverLight, Flex e afins ( Olhem tb para frameworks como GraniteDS) !!.
:arrow: DSL´s e Engines de regras como Drools
:arrow: BDD , metodogias ágeis
:arrow: Linguagens dinâmicas para VM - Groovy, Ruby entre outras.
:arrow: Linguagens para concorrência e específicas como Erlang,Scala e Lua para games :slight_smile:
:arrow: CEP, OSGI e SCA ( acredito que de outra forma, como o Luca disse, vão continuar a fazer as mesmas coisas, de outra forma).

Desce:

:arrow: C#, está virando uma coisa de doido.
:arrow: CMMI, PMI e afins
:arrow: Laszlo , Ajax
:arrow: Spring, Frameworks complexos java para Web
:arrow: UML, MDA, Maven e Menta (sacanagem hein SAOJ ? :stuck_out_tongue: )

[quote=rodrigoallemand]
Vc acha mesmo que as consultorias [A-Za-z]{3} vão morrer mesmo por causa da sua metodologia?!?!? Tem certeza?!?!? Mas do fundo do seu coração mesmo?!?!?
E o CMMI for Acquisition, que é um dos modelos de CMMi?!? Vc acha que as empresas vão comprar hardwares por metodologias ageis tambem?!?!? Jura?!?
E pior sobre as [A-Za-z]{3}, os clientes delas vão falir por causa das consultorias que utilizam metodologias que não são ageis?!?!?

P.S.: É, cv, o seu [A-Za-z]{3} pegou mesmo![/quote]

Tem gente que está falando com o coração e não com a cabeça. :stuck_out_tongue: Depois que você vê falarem em “agile waterfall” a sério, como eu vi, você começa a perder a fé na humanidade…

CMMi, PMI, ITIL, WS-Deathstar, ESB, e a construção de pirâmides tecnológicas que não têm outro propósito senão exaltar o poder dos projects sponsors nos acompanharão por muito tempo ainda.

Eles investiram porque quiseram :smiley:

Mas o caminho pra SOA é morrer mesmo, não tem muito pra onde correr não, só vai se manter enquanto houverem empresas jogando dinheiro no buraco negro.[/quote]
Exatamente. Saca só o drama da empresa onde trabalho atualmente …
http://emerleite.wordpress.com/2008/02/15/a-maravilhosa-teta-chamada-soa/

[quote=emerleite]Exatamente. Saca só o drama da empresa onde trabalho atualmente …
http://emerleite.wordpress.com/2008/02/15/a-maravilhosa-teta-chamada-soa/[/quote]

Rapaz, eu conheço empresas que trabalham a anos com EAI e serviços de mensageria em geral aonde os arquitetos nem sonhavam da existência do “Enterprise Integration Patterns”, não conheciam ferramentas ESB e ainda enchiam a boca pra dizer que JMS “não serve pra isso”.

Eu tenho é medo quando eu vejo gente falando por aí hoje em ESBs, “arquiteturas orientadas a serviços”, BPM e afins, é merda na certa. E das fedorentas.

Realmente é triste. Pouco provavel conseguir implantar integrações e SOA com qualidade sem ter lido a literatura do Gregor Hohpe.

[quote=rubinelli][quote=rodrigoallemand]
Vc acha mesmo que as consultorias [A-Za-z]{3} vão morrer mesmo por causa da sua metodologia?!?!? Tem certeza?!?!? Mas do fundo do seu coração mesmo?!?!?
E o CMMI for Acquisition, que é um dos modelos de CMMi?!? Vc acha que as empresas vão comprar hardwares por metodologias ageis tambem?!?!? Jura?!?
E pior sobre as [A-Za-z]{3}, os clientes delas vão falir por causa das consultorias que utilizam metodologias que não são ageis?!?!?

P.S.: É, cv, o seu [A-Za-z]{3} pegou mesmo![/quote]

Tem gente que está falando com o coração e não com a cabeça. :stuck_out_tongue: Depois que você vê falarem em “agile waterfall” a sério, como eu vi, você começa a perder a fé na humanidade…

CMMi, PMI, ITIL, WS-Deathstar, ESB, e a construção de pirâmides tecnológicas que não têm outro propósito senão exaltar o poder dos projects sponsors nos acompanharão por muito tempo ainda.[/quote]

rodrigoallemand, a resposta do rubinelli responde suas perguntas sobre o que escrevi :slight_smile:

Não acho que irão afundar, mas eu quero mais é que afunde. E pode levar junto alguns estúpidos deptos de TI de clientes também :slight_smile:

T+

[quote=Maurício Linhares][quote=emerleite]Exatamente. Saca só o drama da empresa onde trabalho atualmente …
http://emerleite.wordpress.com/2008/02/15/a-maravilhosa-teta-chamada-soa/[/quote]

Rapaz, eu conheço empresas que trabalham a anos com EAI e serviços de mensageria em geral aonde os arquitetos nem sonhavam da existência do “Enterprise Integration Patterns”, não conheciam ferramentas ESB e ainda enchiam a boca pra dizer que JMS “não serve pra isso”.

Eu tenho é medo quando eu vejo gente falando por aí hoje em ESBs, “arquiteturas orientadas a serviços”, BPM e afins, é merda na certa. E das fedorentas.[/quote]

Mauricio, concordo contigo que existem muitas formas de se integrar, mas arquiteturas SOA não são exatamente um Lixo. Talvez não da forma como a maior parte dos consultores implementa, mas para uma empresa que precisa ter “componentes intercambiáveis” em plataformas heterogêneas e coordenados ( Orquestrados como gostam de falar BPM) para formar um serviço, a linha de pensamento pode sim fazer sentido.

Talvez a implementação desses não seja a mais adequada, aí é olhar soluções existentes no mercado e conceber uma solução que realmente faça sentido à sua estratégia, como citado, mensagens assíncronas.

O que realmente acontece e vejo todos os dias isso na empresa, é que muitos consultores rezam a cartilha da companhia sem estudar à fundo a base.

Mas vi muita gente também criticando WS-SOAP sem base alguma ou justificativa em seu favor. Existem cenários que você precisará hoje usar SOAP, um deles é mercado financeiro, onde a segurança da informação é levado à sério, e tramitar somente sobre https não é necessariamente o primor para essa necessidade.

Não há SilverBullet e concordo que o REST acaba com a complexidade do WS- Entretanto, no mercado Enterprise a arquitetura acabará sendo uma dobradinha.

Há outras tecnologias para integração, concordo, como JMS e aqui entra o Papel do ESB, talvez para expor o serviço a uma organização do serviço - WorkFlow, via um BPM da vida.

Um case de Real World: http://www.cauldwell.net/patrick/blog/PermaLink,guid,9ba58b84-f978-4b49-8aa5-5c2c0e0c9458.aspx

[quote=Kenobi]Mauricio, concordo contigo que existem muitas formas de se integrar, mas arquiteturas SOA não são exatamente um Lixo. Talvez não da forma como a maior parte dos consultores implementa, mas para uma empresa que precisa ter “componentes intercambiáveis” em plataformas heterogêneas e coordenados ( Orquestrados como gostam de falar BPM) para formar um serviço, a linha de pensamento pode sim fazer sentido.

Talvez a implementação desses não seja a mais adequada, aí é olhar soluções existentes no mercado e conceber uma solução que realmente faça sentido à sua estratégia, como citado, mensagens assíncronas. [/quote]

O meu exagero é intencional :slight_smile:

Nas próximas semanas nós vamos ter reunião do grupo de usuários Java local e o título da minha palestra é “O SOA morreu: Por uma arquitetura orientada a Recursos” :stuck_out_tongue:

SOA hoje já está muito preso a SOAP e WS-*, perdeu o seu sentido como uma arquitetura e virou a “implementação”. Eu diria até que o home realmente foi infeliz, serviços lembram coisas que não tem estado, aonde você dá uma entrada e recebe um resultado, como uma calculadora, um recurso já tem uma apresentação diferente, ele parece uma coisa que tem estado, que está lá pra ser visto, alterado, ele representa melhor as nossas entidades dentro de um sistema e a maior parte dos web services é exatamente sobre isso, recursos e entidades, é só olhar web services famosos com o da Amazon que você percebe que o que é interessante são as entidades e não “serviços”.

É óbvio que o conceito de SOA em si vai muito além e não está preso aos web services baseados em SOAP, mas não é isso que os fornecedores de soluções SOAP falam, eles vendem as suas ferramentas como se fossem a última cocada do tacho e isso levou muitos “arquitetos” a acreditar que eles são, realmente, a melhor solução, tanto que muita gente caiu de boca na brincadeira e dançou. Já vi muita gente “criando” web service no Visual Studio usando um DataSet como fonte de dados e sabe como é que fica o WSDL, um “any element”, não tem ferramenta Java que entenda que diabos é isso. Cadê a interoperabilidade desse troço?

SOAP nasceu errado, nasceu na dependência de que todas as ferramentas implementariam o padrão do mesmo jeito e que tudo ia funcionar perfeitamente. Mas assim como não funcionou pra Corba, EJBs, JSF e outras tecnologias que dependiam de “ferramentas” pra poder trabalhar, falhou miseravelmente.

Acho que existem sim muitas formas de se implementar uma arquitetura aonde pequenas aplicações sejam especializadas em implementar determinadas partes do trabalho, assim como também existem diversas formas de se implementar a famigerada “orquestração” (eu, pessoalmente, detesto o termo), o problema é quando todos procuram os modos mais difíceis de se fazer isso sem nem parar pra considerar que o investimento em complexidade não vai se pagar nem no médio nem no longo prazo. É muito difícil de se encontrar uma empresa que realmente tenha necessidade (e, principalmente, capacidade) pra montar um ESB e fazer uso de verdade dele, não é uma simples questão de chegar alguém e dizer que “agora tudo é serviço”, é uma questão de se formar uma conciência nas pessoas de que agora eles não são mais equipes de desenvolvimento separadas, mas pequenos grupos de um grupo maior que tem que se preocupar com muito mais do que “escrever uma aplicação”. Dar manutenção em APIs públicas, especialmente num ambiente complexo como um ESB, não é um trabalho trivial e o “motorista de gerador de WSDL” com certeza não é uma pessoa com capacidade pra fazer isso.

[quote=Kenobi]O que realmente acontece e vejo todos os dias isso na empresa, é que muitos consultores rezam a cartilha da companhia sem estudar à fundo a base.

Mas vi muita gente também criticando WS-SOAP sem base alguma ou justificativa em seu favor. [/quote]

Criticar WS-SOAP é incrivelmente fácil, é só você ter passado por um projeto de integração de linguagens/tecnologias/runtimes diferentes, tipo Java + Perl ou Qualquer coisa + .Net, são histórias pra se carregar pela vida toda :slight_smile:

Eu nem queria dizer que REST é silver bullet, mas nesse caso, infelizmente, eu não consigo ver problema algum em se usar REST. A informação de endereçamento é parte do recurso nesse caso, então a representação do recurso teria que vir junto com a representação do endereçamento da máquina, o que ele fez foi mover uma informação que é do domínio (a localização/identificação do leitor preso ao tranformador) pra fora dele, colocando num cabeçalho SOAP, é uma escolha arquitetural que pode ter sentido no caso dele, em REST não faria sentido algum, essa informação faz parte do recurso, então tem que vir junto dele ou pelo menos ser referenciada de forma que seja possível pegar ela também.

Um caso aonde eu acho que tentar fazer com REST é perda de tempo é mensageria assíncrona, especialmente se você estiver rodando em cima de HTTP, então o melhor a se fazer é correr pra uma ferramenta especializada em fazer isso (o que? ws-reliable-messaging? não, obrigado :slight_smile: ).