Archive for the ‘eventos’ Category

DrDobbs2007 - 27/07

Saturday, July 28th, 2007

O dia começou bem com uma palestra sobre a arquitetura do eBay. Muita gente cita o site como exemplo de quem migrou de C++ para Java mas não sabe que na verdade o problema, como quase sempre, foi o uso que faziam da plataforma. C++ não é uma linguagem tão interessante para construir aplicações web mas mesmo os back-ends eram extremamente problemáticos, com God Classes de milhares de linhas por todos os lados (coisa muito comum em sistemas em Java, de qualquer forma). A palestra seguinte foi de um dos arquitetos do Microsoft Visual Studio pretensiosamente entitulada ‘Agile Architectures’ que ficou no lugar comum de sempre. Pela descrição do processo utilizado para desenvolver a ferramenta percebe-se que é tudo, menos ágil: times enormes, iterações de meses e meses…

A palestra do Ford (sempre ele) sobre métricas em projetos ágeis foi muito boa. Além de mostrar um pouco de como funciona uma grande empresa que usa os processos com sucesso no dia-a-dia ele reforçou a necessidade de medir e agir sobre métricas como dependência entre módulos, coesão, acoplamento, cobertura de testes e etc.

O último dia foi bem legal, assim como o congresso. Interessante notar como havia um público de idade mais avançada que a média deste tipo de evento o Brasil. Interessante também o interesse dos gringos por agilidade, todos que conversei sempre estavam atrás das palestras com este foco e sempre com o mesmo motivo: estavam ouvindo sobre isso há anos e agora começaram a ver resultados, então querem saber como implantar nas empresas. Caravanas de grandes empresas americanas foram mandadas ao evento para tentar entender como Agile e Ruby especificamente poderiam ajudar suas empresas.

Enquanto isso, no Brasil…

DrDobbs2007 - 25/07 Almoço

Wednesday, July 25th, 2007

Após a palestra xarope sobre pseudo-Domain Models foi a hora do almoço com direito à keynote de Ivar Jacobson. Se você acompanha a Dr. Dobbs sabe que o cara -um dos pais da UML e do RUP- está cansado de processos e foi sobre isso sua palestra. Eu estava esperando para comentar sobre a série de artigos aqui em algum momento, pelo visto vai ser agora.

Imagine uma empresa que constrói sistemas. Agora imagina que ela só domina Struts e Hibernate como ferramentas. Todos os projetos, se exceção, são feitos nestas duas plataformas, e pior: os desenvolvedores só usam o que leram em tutoriais na Internet, ninguém sabe de fato utilizar as próprias ferramentas. Além de usar a dupla para implementar aplicações tão pequenas quanto um “fale conosco” (quem nunca viu uma aplicação que nem SGBD acessava e tinha os JARs do Hibernate no classpath?) a empresa usa mal e porcamente as ferramentas quando precisa de fato, simplesmente porque usar ou implantar não significa usar corretamente.

É assim que Jacobson vê a implantação de projetos nas empresas, e disso que ele está cansado. “Ninguém lê livros sobre processos”, ele exclama e isso embasa toda a minha série de posts sobre “pare de se enganar: você NÃO usa RUP”.

O que Ivar propõe é o foco no uso de práticas que fazem sentido. Vê-lo falar (e sacanear o Scott Ambler, na primeira fila, ocasionalmente) fazia transparecer a sabedoria que décadas tentando enfiar conhecimento na cabeça dos outros traz e as consequências que se chega. Recomendo os artigos, vamos focar no tema em outra ocasião.

Logo depois parti para um talk de Juha-Pekka Tolvanen com título “Creating a Domain-Specific Modeling Language: Hands-On”. propaganda da MetaCase apenas, que eu considero um bom case de DSL mas não gosto da ferramenta. Acho que as pessoas precisam aprender que RAD não deu certo para sistemas de verdade e não dará para definição de DSLs, que são programas em si. Que saudades da sabedoria do Jacobson! Bom, fiquei na sessão para recarregar a bateria do meu notebook de qualquer forma…

DrDobbs2007 - 25/07 Eventos da Manhã

Wednesday, July 25th, 2007

Manhã morna no evento. Primeiro uma palestra bem legal com James Hobart entitulada “Designing Usable Web 2.0 Applications” onde ele delineou alguns dos “Design Patterns” (eu chamaria de “Interaction Patterns”) e alguns divertidos exercícios de usabilidade derivados destes. Bem legal.

A segunda foi “Domain Models and Requirements that Span Projects”, de Petter Graf.. Decepcionante. Os slides prometiam bastante mas a apresentação se mostrou uma sequência de conceitos do século passado sobre Domain Model gordos e sobre como derivar requisitos do domínio, geralmente ignorando que o sistema mapeia apenas uma parte pequena do domínio e um foco enorme em ferramentas, sejam CASE ou Mind Maps. Para piorar no final rola um pequeno comentário de como a arquitetura de Entity Beans 2.x mapeia o conceito apresentado muito bem. Já viram o tamanho do problema, né? Medo das pessoas que assistiram esta palestra, muito medo… Os slides desta apresentação estão online. Cuidado com eles! Tome como anti-exemplo!

@Atlanta

Tuesday, July 24th, 2007

Estou em Atlanta esperando minha conexão para Chicago onde participarei da conferência Dr. Dobbs Archtiecture & Design World. Entrar no país do Tio Sam não é fácil nunca, mas até que foi tranquilo (tirando o eterno alerta laranja do aeroporto). Definitivamente com essa cara de chicano e cavanhaque sou presa fácil pra ir parar na inspeção…

O que mais me interessa na conferência são as apresentações sobre DSLs, um tema que vai demorar um tempinho para de fato chegar no Brasil.

Bom, durante a semana devo comentar os acontecimentos.

Falando novamente

Monday, June 25th, 2007

Post dando um up no Falando em Java, evento da Caelum no próximo sábado.

Falemos em Java

Thursday, May 31st, 2007

Fui convidado pelo pessoal da Caelum para participar do Falando em Java 2007. Achei a idéia dos rapazes fenomenal: uma conferência rápida sobre um tópico atual a um preço acessível. Você paga R$200,00 para ir num Sun Tech Days da vida e passear por 2.545 palestras que falam superficialmente sobre um milhão de coisas e não aprendendo muito além de que se você usar Netbeans você vai ser mais feliz, mais gostosão e sua alma não vai para o Inferno, mas se você está cansado disso pode preferir pagar R$40,00 e ter um dia com 5 palestras sobre coisas que você precisa saber pra ontem. A grade inclui indexação e busca de conteúdo, REST, APIs públicas, JavaFX e AJAX, tudo girando em torno do tema Web 2.0.

Bate-papo Sobre Papel do Arquiteto na Bennet

Thursday, May 31st, 2007

Após uma curta passagem turística por Curitiba voltamos a programação normal. Acabo de sair de um bate-papo com os alunos do Marcos Kalinowski que está fazendo um ótimo trabalho na faculdade Bennet, aqui no Rio. O Kali leva profissionais para que seus alunos possam entrar em contato com a realidade do mercado, muito interessante. É extremamente complicado falar de um assunto que os próprios profissionais não entendem bem, como arquitetura de software, mas acho que eles saíram de lá ao menos querendo saber mais sobre a área. Além do papel do arquiteto em si deu para perceber que o grande problema dos alunos é como entrar no mercado. Anúncios que pedem experiência para estagiários, sopas de letrinhas e tudo mais estão preocupando muito os programadores de amanhã.

Faz parte da política da IASA se aproximar cada vez mais dos centros acadêmicos e instruir as pessoas ainda antes que elas entrem no mercado e também dos pesquisadores, como é o caso do próprio Kalinowski.

Um ponto bom foi que rapidamente falamos sobre o posicionamento das duas maiores plataformas no mercado, java e .Net, e minha dica expressa: quem vai demorar uns anos ou mais pra entrar na faculdade deve aprender estas plataformas apenas academicamente. As coisas interessantes em dois anos não serão feitas da mesma maneira que eram há alguns anos, estamos num mercado em franca mudança.

Desenvolvimento Ágil Divertido no XP Rio

Monday, May 21st, 2007

Semana passada fomos Guilherme, Bairos e eu na reunião do XP-RIo. O tema foi um desafio passado pela empresa do Vinicius, a ImproveIt, ao introduzir ao mesmo tempo XP e Ruby on Rails para um departamento de desenvolvimento de software que usava…uhm.. CLIPPER para desenvolver.

Após a explicação de como foi (está sendo, na verdade) feita a “migração do peopleware”, acabamos conhecendo um pouco do estilo que o grupo adotou no seu dia-a-dia. Não vou falar muito porque foram geradas fotos, filmagens e PDFs, que você vê aqui. Vale muito para quem perdeu.

Se você acha que desenvolvimento de software é uma atividade chata e burocrática esta apresentação pode te mostrar que isso não é uma verdade absoluta.

Workshop IEEE

Tuesday, May 1st, 2007

Acabo de voltar de Porto Alegre onde participei do Workshop do SPIN-RS sobre tendências no desenvolvimento de software, realizado pelo IEEE. Foi um evento fantástico com apresentação de pessoas do porte de Philippe Kruchten, Stephen J. Mellor e Rebecca Wirfs-Brock, certamente o melhor conteúdo técnico que já vi em um evento nacional.

A única crítica que teria ao evento não é a este em si mas sim a cultura nacional. Muitas e muitas vezes vemos pessoas se despencando até São Paulo ou onde for e pagando várias centenas de reais para ver meia dúzia de pessoas que fazem apenas propaganda sobre uma dada ferramenta. Quando finalmente temos um evento onde pessoas importantes estão falando sobre temas importantes ficamosrestritos aos poucos que ouvem falar e têm coragem de ir ao local. Parabéns a organização do evento e aos presentes por mostrar que este país não é feito (apenas) de arrastadores de caixinhas.

Hackers Não Frequentam a SDN

Tuesday, April 24th, 2007

Ainda durante o STD2007 tive a chance de participar de um bate-papo
entre alguns convidados e Rich Green, VP de Desenvolvimento de
Software da Sun Microsystems. A Sun tem um zilhão de problemas na
maneira como lida com o desenvolvimento de software mas se tem algo
que deveria ser copiado é este contato entre as pessoas que mandam e a
comunidade.

Durante este bate-papo foram debatidos diversos assuntos sobre o
futuro da plataforma, seu posicionamento no mercado nacional, o papel
dos JUGs e etc. Acabou que não tive a chance de falar sobre um assunto
que considero importante, por isso enviei um e-mail ao Rich comentando
este fato.

O problema é que o mercado de desenvolvimento de software é dividido
historicamente em uma grande massa de programadores de medianos para
não-funcionais e uma pequena minoria de bons programadores. As
ferramentas da Sun (netbeans, Glassfish, java, etc) focam na grande
massa de programadores, uma opção economicamente interessante. As
ferramentas são todas gráficas, com drag-and-drop para até o que não
deve (mais sobre isso em outro post), mas demoraram anos para colocar
funcionalidades básicas no editor de código (prometidas para a versão
7, creio).

Deste modo os programadores da minoria (exceto os que trabalham para a
Sun ou outra empresa que te jogue uma IDE pela guela) não vêem
proveito na IDE a criam um estigma com ela. Todos tivemos péssimas
experiências com geração de código na vida e s mais experientes vão
sempre olhar torto para ferramentas mágicas. O Matisse, por exemplo, é
algo interessante porque depende de uma infra-estrutura de software
flexível, com geração de código mínima (EJB3 segue esta linha). Gerar
uma interface em matisse é cool, mas gerar 15 toneladas de um
XML para Java EE não é, pelo menos não para este
público.

Mas quem liga? Estamos falando de menos de 10% dos programadores do
mundo! O problema é que são estas pessoas que inovam.
Quando você não está integrado com a comunidade de inovação de
software você tem um problema muito grande. Pense se você já não viu
isso acontecer com a Microsoft (outra que sofre com estigmas, não desmerecidos) algumas vezes:

  1. Fulano lança algo cool fora da plataforma (como
    Hibernate, Spring, AOP, JGoodies, Rails…)
  2. A empresa dona da plataforma diz que essa inovação é
    desnecessária, é ruim, não é padrão, dá cárie nos dentes ou qualquer
    outro argumento desesperado
  3. Um tempo depois a nova versão da plataforma suporta essa
    funcionalidade
  4. .

A inovação ocorre fora da plataforma e a empresa teme que correr atrás
do prejuízo a cada versão. Quando as coisas são inventadas elas não
podem ser utilizadas na plataforma sem um enoooooorme trabalho de
adaptação, configuração, criação de adaptador, etc.

Para mim, a solução é algo que a MSFT está fazendo, como comentamos
aqui outro dia, que é criar dividir as coisas em Camadas. Dê todo o
poder de trabalhar com o core da plataforma aos desenvolvedores da
minoria e crie uma camada de abstração para a maioria dos
programadores, que vão adorar lidar com ferramentas gráficas e não se
preocupar com a qualidade do que é gerado.

Não basta haver um editor de código melhorzinho, um profiler e um
debugger. É preciso criar uma plataforma que trate a minoria e a
maioria como público-alvo. No Sun Tech Days deste ano não houve uma
única sessão que eu considere que foi para um programador de verdade.
tecnicamente este evento só vale pela interação com o staff da Sun e
os outros desenvolvedores. As sessões focavam a grande maioria,
exatamente como os produtos da Sun. A empresa tem que se livrar deste
estigma de ‘fazedora de ferramenta pra newbie’, existe gente de muita
competência nesta plataforma e eu realmente gostaria de ver este
talento em ação.