We can change!
[ Home | Studying | Business | Book Reviews | Blog | Diversity | Contact Me ] Tuesday, May 20, 2008
Currently Reading: XHTML 1.0 validated
CSS validated
I'm test-driven!
My Flickr Photos
AgilCoop
Google Groups
Dojo@SP
Dojo@SP
Visite-nos!
Agile Alliance
Powered by blojsom
16/Apr/2008

Running Java 6 on a Mac

Following the recent trends on Planet TW, George and I decided to share our homage to those who, like us, miss (or don't) running Java 6 on a Mac :-)

Running Java 6 on a Mac

Comments [2] | Trackbacks [0] | Posted by dtsato at 6:19 AM [Trackback URL]

Technorati Tags:

16/Apr/2008

Don't let you Mac fall asleep

If you ever got your Mac screen dimming or your Screen Saver running in the middle of a presentation, here's a quick tip: give you Mac some Caffeine. Before discovering this I used to play around with Energy Settings but always forgot to change it to 'Custom' and, let's face it, switching this functionality on and off in one click is always better than two! Enjoy! :-)

Comments [0] | Trackbacks [0] | Posted by dtsato at 4:50 AM [Trackback URL]

Technorati Tags:

13/Apr/2008

What happened to the System Metaphor?

It's been a while since I read the 2nd Edition of "XP Explained" and I really enjoyed the emphasis on separating practices from values and principles. If you try to map the original 12 XP Practices to the new primary and corollary practices, you will notice that it's not a one-to-one map. And that's great! Practices are good when you are at the Shu level of learning, but they should be tailored to specific situations, and understanding the underlying principles and values is what will help you do that.

Besides Pair Programming and Test-Driven Development, most of the original XP practices are distilled in more than one practice in the second book. Refactoring and Simple Design are better exposed as Incremental Design, while the Planning Game can be recognized in a list of practices such as: Stories, Weekly Cycle, Quarterly Cycle, and even Slack. Although Coding Standards are not explicitly cited as a practice, you can see its importance when reading about Shared Code and Single Code Base. But you will miss one practice in particular from the first book: the System Metaphor.

The System Metaphor was probably the less adopted practice and usually one of the hardest to explain. If you're able to express and design your system in a shared metaphor such as "Payroll is like an Assembly Line", you will see the benefits of this practice shining through: communication with domain experts will be easier and the gap between domain model and implementation will become much shorter. But as it turns out, it is not easy to find a useful metaphor for every system.

If you miss this practice from XP and is looking for the underlying principles behind it, I strongly recommend reading Domain Driven Design, by Eric Evans. Striving to find an Ubiquitous Language to bridge the communication gap between developers and domain experts, and isolating complexity in a rich domain model are goals worth fighting for. In Eric's words:

System Metaphors are not useful on all projects. Large-scale structure in general is not essential. In the 12 practices of Extreme Programming, the role of a System Metaphor could be fulfilled by a Ubiquitous Language. Projects should augment that language with System Metaphors or other large-scale structures when they find one that fits well.

Other patterns for large-scale structure are discussed in the book, as well as a lot of other precious material. So if you still haven't done it, go read the book!

Comments [0] | Trackbacks [0] | Posted by dtsato at 4:39 PM [Trackback URL]

Technorati Tags:

07/Apr/2008

Git tip for Brazilians

While working with Git on my current project, my pair and I noticed a source of waste when synchronizing with the master repository: in Portuguese "Puxe" means pull, which sounds exactly like push, but with the opposite meaning. Push in Portuguese is "Empurre". Because of that, it always take me a few seconds before figuring out which command to execute. Since we are all for eliminating waste, here's the visual solution in our pairing station… :-)

Git push or pull?

Comments [3] | Trackbacks [0] | Posted by dtsato at 5:07 AM [Trackback URL]

Technorati Tags:

16/Mar/2008

Impressions from QCon 2008

Working for ThoughtWorks is a very rewarding experience. After finishing my first project and delivering a Rails app in 1 month, last Friday I had the opportunity to attend QCon London. Overall it was a really nice day and my feeling at the end of the day was that I should have been there on Wednesday and Thursday :-)

I started the day attending the "Architectures You've Always Wondered About" track. The first talk was really good and Randy Shoup talked about the architectural principles behind eBay. I had already read about eBay's transactionless style for achieving availability and scalability through data partitioning, but it was interesting to hear about the way they approach deployment for new code and features. There are no changes that cannot be undone. They have automated deployment tools that manage the dependencies between different components (a la package management systems such as apt) that allows rollout ant rollbacks (a la Rails' migrations) of different pieces of code. Interesting stuff!

The second talk on that track was supposed to be about Twitter's architecture, but for some reason it was cancelled and replaced by an interesting presentation about BBC's new media publishing system. Nothing really ground breaking in terms of technology, but it was interesting to hear about their current process of migrating a huge physical media storage (with guys in motorbikes taking tapes from site to site) to digital format, and how it changes their editorial process… somehow the image of the guy in a motorbike reminded me of the Pigeon's high bandwidth transfer protocol :-)

After lunch, I switched to the "Programming Languages of Tomorrow" track. I first listened to Joe Armstrong's talk about Erlang (and the case for concurrent systems on a multi-core soon-to-arrive future). He is a very entertaining speaker and I think that he successfully delivered his message to the general audience.

Next came Ted Neward with an introduction to Scala for the lazy Java developer. Although I didn't consider myself the audience for this talk based on the title, I was interested to see and learn a little more about Scala. He covered the basics of the language and I enjoyed watching real code instead of slides, but I was hoping to hear more about Scala's concurrency features… maybe lazy programmers are still not worried enough about concurrency :-)

The track finished with an Open Space style session, where participants discussed about which factors are driving the increasing interest and resurgence of different languages. For me this was the most interesting discussion of the day and it strengthened the case for polyglot programmers. One of the topics was that it usually takes years for someone to become an expert at something and that it's harder to leave that knowledge behind to learn something new. I think that it all comes down to whether you want to be a specialist or a generalist and I've already stated my position of trying to be both. Another interesting aspect of the discussion was Martin's point that the evolution happens in cycles and that after a period of stabilization, it's time (again) for broadening the options and looking for new ideas that will lead us to the next big thing. In these times it's important to look for new learning opportunities instead of narrowing your knowledge. I think it's time for me to use the generalist hat for a while… :-)

Finally, the closing panel gave me a good summary of the things I saw and the things I missed. Some of the highlights that I hope will be available at InfoQ soon were Kent Beck's session and keynote, Martin's and Jim Webber's keynote, and Ola's and Venkat's sessions on blending dynamic languages and extending the Java platform.

I was really impressed with the quality of the conference, from tracks, to sessions, and speakers. QCon is one of the best technical conferences I've participated and I recommend it for anyone interested in enterprise software development. I'm looking forward to attending again next year.

Comments [1] | Trackbacks [0] | Posted by dtsato at 3:23 PM [Trackback URL]

Technorati Tags:

24/Feb/2008

Coding Dojo São Paulo @ Agile 2008

For those of you who didn't know, after going to XP 2007 last year and speaking with Emmanuel Gaillot, I decided to start a Coding Dojo in São Paulo, Brazil. We've been running weekly sessions since last July and after I moved to London, Mariana, Hugo, Fabricio, and others are making sure that the Dojo continues. It has been very fun and educational to organize and run the Dojo, so we decided to share our experiences with the community. We are proposing a 30 minutes Experience Report to be presented at Agile 2008. I wanted to submit this proposal earlier to allow more time for feedback and reviews, but the bureaucracy of moving to another country and the excitement of working with very talented people has kept me busy. But the deadline for submitting session proposals to Agile 2008 is tomorrow, and I didn't want to lose the opportunity of attending and sharing our experiences. We would appreciate any feedback to improve our session. The link to the proposal is here. Thanks!

Comments [0] | Trackbacks [0] | Posted by dtsato at 6:57 PM [Trackback URL]

Technorati Tags:

11/Feb/2008

Generalist or Specialist: Why not Both?

For a while I've been planning to write on this subject. The question of whether going broad or going deep into a subject area has always been present in my life. In this post I will scratch some of my current thoughts on the subject. Feedback and other opinions are welcome!

Some Background

My parents always told me that I couldn't be good at everything. But they've always been very supportive on everything I decided to do. Being a great musician, magician, and programmer was not an easy task, but that never stopped me from trying. But then I read something funny that became a good argument for a while…

The Specialist Paradox

An specialist is someone who knows more and more about less and less, ultimately knowing everything..... about nothing!

That even made me review my resumé to remove any reference to the word "specialist" and include the word "generalist". :-)

Swinging the pendulum

But I forgot that you can always change the argument to take the other extreme and come up with a "Generalist Paradox". And then I watched Kent Beck's keynote speech last year at XP 2007 about Ease at Work. We are always trying to be the best, but then we realize how bad we are and start thinking we are the worst. A great lesson that I took from his words is that while swinging that pendulum back and forth, we never stop to think that neither of those extremes are good. Being at ease is trying to find how to stay in the middle.

In our discussion, the extremes of the pendulum would be the common view that generalists are best at defining the problem or goal and specialists are best at solving the problem or "executing the plan":

Generalist or Specialist?

While researching about this subject, I learned that you have similar concepts in Biology (highlights are mine):

A generalist species is able to thrive in a wide variety of environmental conditions and can make use of a variety of different resources (for example, a heterotroph with a varied diet). Specialist species can only thrive in a narrow range of environmental conditions and/or have a limited diet. Organisms do not fit neatly into either group, however. Some species are highly specialized, others less so, while some can tolerate many different environments. In other words, there is a continuum from highly specialized to broadly generalist species.

We can leverage that same idea, letting go the "Us vs. Them" argument and starting to think about generalist and specialist as complementary skills. David Armano has already suggested changing the "or" to "and", but I would dare taking it one step further…

It's all about context

Specialty is contextual. Anyone in my family would consider myself a specialist in programming and software development. But they don't have a clue that Computer Science is a broad area with so many fields. Some interest me more than others, so I could say I'm a generalist at that level. But since my interest in software development and Agile Methods is greater than other fields, one could say I'm a specialist, although I wouldn't consider myself an expert at anything :-)

I can see the XP principle of Self-Similarity applied here. I think that the above picture is just a simplification of reality. There are some dots underneath the surface that you can only connect if you specialize a little bit. And I would say that the same fractal structure would appear as you go deeper and deeper into your endless search for knowledge. Sometimes you will have to go back and look broader for a while, but that's not wasted effort. That's why I now see value in being both a generalist and a specialist in different contexts.

Comments [1] | Trackbacks [1] | Posted by dtsato at 12:14 AM [Trackback URL]

Technorati Tags:

21/Jan/2008

Starting 2008 on the right foot

From now on, I will be writing in English. I've been planning to do this for a while, but the "New Year" is always a good time for a personal retrospective and some planning for the future (although I think shortening the feedback loop to less than one-year would be beneficial). Besides the usual reasons for writing in another language (training, reaching a wider audience), I think that anyone seriously working with software development should be able to at least read English. I might still publish translated versions of some of my posts, but don't count too much on that.

Speaking of changes, it's finally time to annouce the good news:

I'm a ThoughtWorker

Some of you may already know, but since I've started interviewing back in 2006, more than one year has passed and many things happened. The one big thing that was holding me back was my Master's, but since I've finished it back in June, things started moving. After a lot of paperwork going back and forth between Brazil and the UK, I've finally managed to get my Work Permit and entry clearance approved. My passport couldn't have arrived in a better time than one week before Christmas. It was the gift I've been wishing throughout the year.

I want to say I'm very excited to work for ThoughtWorks! For those of you who were close during all this time, I want to say a big THANK YOU. My family and friends have been very supportive. But now is time to pack my stuff and give a step forwards. I'm starting in the second week of February and am looking forward to report the news. Wish me luck!
Comments [9] | Trackbacks [1] | Posted by dtsato at 1:32 AM [Trackback URL]

Technorati Tags:

20/Dec/2007

Os Valores Ágeis não se Expressam em Palavras, mas em Ações

A ImproveIt está deixando o mercado de serviços e consultoria em Métodos Ágeis e XP. Estava escrevendo esta resposta como um comentário e percebi que estava ficando grande demais, então resolvi dedicar um post, afinal, meus amigos da ImproveIt merecem :-)

Amigos da ImproveIt no Rio On Rails

Mais importante que vender e disseminar os valores ágeis é mostrar que eles fazem parte da sua filosofia de vida. Com essa mudança vocês demonstram tudo aquilo que é difícil de vender em XP mas que faz muito sentido para quem usa: coragem, abraçar as mudanças, transparência na comunicação e envolvimento com a comunidade.

Até poucas semanas atrás eu não conhecia o pessoal da ImproveIt pessoalmente. Tive o prazer de conhecê-los graças aos eventos de rails em São Paulo e no Rio. Agora posso afirmar com certeza que eles têm o talento e o conhecimento necessários para que o sucesso venha rapidamente.

Amigos da ImproveIt no Rio On Rails

Tenho certeza que a mudança não é uma reação aos pontos levantados pelo Vinicius. Apesar de eu mesmo ter participado e até promovido os treinamentos de Scrum do Boris, concordo com as críticas. Tanto que, se olharem meu currículo, coloco o treinamento como curso e não certificação. Prefiro olhar pelo lado positivo da mudança. Acho que a mudança de rumos está muito mais relacionada com as possibilidades que enxergam no futuro do que com o que já fizeram no passado. E é exatamente esta atitude que eu admiro. Mudar sem medo. Coragem.

Desejo muito sucesso a todos: Vinicius, Tapa, Rafael, Felipe e Leandro (o único que não conheci pessoalmente, infelizmente). Continuem produzindo produtos de qualidade assim como fizeram com os treinamentos, palestras, consultorias, posts e podcasts sobre Métodos Ágeis e XP. Um grande abraço!

Comments [1] | Trackbacks [0] | Posted by dtsato at 12:31 PM [Trackback URL]

Technorati Tags:

15/Dec/2007

[ANN] Certified Scrum Master em 2008

Pessoal, meu amigo Boris Gloger, da SPRiNT-iT, me pediu um favor para divulgar os próximos cursos oficiais de Certified Scrum Master no Brasil. Duas turmas estão agendadas para Janeiro, uma em São Paulo e outra em Recife. Para mais detalhes, acesse diretamente: Eu fiz esse treinamento em Abril e cheguei a apresentar um seminário sobre o assunto no IME (slides). São dois dias repletos de atividades e práticas que te farão questionar algumas premissas e trarão uma breve experiência do desenvolvimento ágil com Scrum. Altamente recomendado!

Comments [0] | Posted by dtsato at 12:31 AM [Trackback URL]

14/Dec/2007

RSpec 1.1.0

O David Chelimsky, core developer da equipe do RSpec, anunciou hoje o lançamento da versão 1.1.0 na lista de discussão do projeto. Essa versão é um grande marco para o projeto, trazendo novas funcionalidades e diversas melhorias:
  • Story Runner: Como já falei aqui no blog, o projeto RBehave foi integrado ao core do RSpec, ganhando o nome de Story Runner. Com isso, o RSpec se torna um framework full-stack para BDD. Além de definir o comportamento do seu código, você também pode colaborar com seu cliente através de cenários executáveis, escrevendo os testes de aceitação para sua aplicação. A possibilidade de escrever story tests em texto puro é um grande passo nessa direção. Quem assistiu minha palestra no Rio on Rails teve a oportunidade de ver uma demonstração dessa funcionalidade.
  • Integração com o Rails 2.0: A nova versão está integrada com o novo Rails 2.0. O plugin RSpec on Rails também foi atualizado para aproveitar a funcionalidade dos story tests na sua aplicação Rails.
  • Transição fácil do Test::Unit: Uma funcionalidade bem interessante para quem está migrando do Test::Unit para o RSpec. Para migrar, você precisa apenas:
    1. incluir um 'require spec' no seu arquivo de teste;
    2. trocar a definição da subclasse de TestCase 'class ClassContextTest < Test::Unit::TestCase' por uma descrição do tipo 'describe "class in context" do';
    3. Converter os métodos de teste 'def test_should_do_this' por blocos 'it "should do this" do';
    4. Transformar asserts 'assert_equal 2, some_calculation' em shoulds 'some_calculation.should == 2';
    5. remover a dependência com Test::Unit, removendo o 'require 'test/unit'
  • Exemplos encadeados: Agora você pode escrever um bloco "describe" dentro de outro.
Essa era a notícia que eu estava esperando desde minha primeira palestra sobre o assunto na RejectConf'SP) e, depois do lançamento do Rails 2.0 na semana passada, a integração com o RSpec finalmente chegou. Aproveitem!

sudo gem update rspec

Comments [0] | Posted by dtsato at 5:52 PM [Trackback URL]

14/Dec/2007

Rio On Rails

Esse fim de semana tive a oportunidade de conhecer o Rio de Janeiro e participar do Rio on Rails, organizado pelo pessoal da ImproveIt. O sábado foi repleto de Ruby e Rails e no domingo tive um tempinho para passear e conhecer um pouco da cidade maravilhosa.

Vista do Pão de Açucar

Os organizadores estão de parabéns. As palestras foram muito bem escolhidas e acho que deram um bom gostinho de como é divertido programar em Ruby e Rails para quem nunca tinha experimentado. Como sempre, eventos são uma excelente oportunidade de conhecer gente nova e trocar experiências e o Rio on Rails não deixou a desejar. Conheci o Ronaldo Ferraz, que falou um pouco sobre DSLs, o Demetrius Nunes, um dos pioneiros na adoção de Rails no Brasil, o Eduardo do site o Curioso, todo o pessoal da Improveit e do projeto Lucidus e mais um monte de gente que não vou lembrar do nome, mas que estavam presentes para fazer mais um grande evento da comunidade Rails no Brasil.

A platéia parece interessada

Minha palestra sobre BDD e RSpec foi uma evolução da palestra no RejectConf'SP. Com mais tempo para explicar os conceitos e fazer uma demonstração mais calma, acho que consegui passar uma idéia melhor da experiência de programar com BDD em Ruby e Rails. Os slides já estão disponíveis aqui, assim como o esqueleto da aplicação demo que desenvolvi, com o passo-a-passo da demonstração. Quem quiser também consegue pegar a versão final do código apresentado.

Palestrando...

Uma coisa legal que eu consegui terminar de preparar para a apresentação foram algumas das novidades do RSpec 1.1.0, como o Story Runner (integração com o RBehave, que eu apresentei no screencast do Dojo@SP), os plain text story tests e o protótipo do editor de story tests no browser.

Amigos no evento

Para rodar os exemplos, você precisará do Rails 1.2.6 (não fiz update pro 2.0 na palestra pois o patch da integração do RSpec com o Rails novo saiu na sexta a noite e não quis arriscar a demonstração ao vivo), do RSpec e do Rcov, caso queira verificar a cobertura (gem install rcov). Quem gostou da integração do Autotest com o Growl que eu usei na demonstração, pode pegar meus arquivos de configuração no Google Groups do Dojo@SP (não esqueça de instalar o Autotest com 'gem install ZenTest').

Comments [2] | Posted by dtsato at 5:10 PM [Trackback URL]

03/Dec/2007

WebDevCampSP 07

Esse fim de semana participei de mais um evento que não estava planejado (essa é a graça de ser ágil, não?), o WebDevCampSP 07. Apesar do evento contar com um número menor de participantes, gostei bastante por ser mais "intimista". O estilo "desconferência" acabou me contagiando e, depois de assistir as palestras do sábado e de conversar com o Akita e o Dairton acabei preparando uma mini-palestra sobre testes.

A palestra foi curta, mas minha idéia era encarar o assunto de outro ponto de vista: ao invés de falar as vantagens de testar seu código, foquei nos riscos que a falta de testes pode causar. Além disso, falei um pouco também sobre diferentes tipos de teste, ferramentas que podem facilitar sua vida e fiz uma demonstração de como gravar um teste de aceitação do Selenium com o Selenium-IDE. Se você se interessar pelo assunto, os slides já estão disponíveis.

Foi bom reencontrar amigos e conhecer novas pessoas. Os organizadores e patrocinadores estão de parabéns! Foram dois dias de aprendizado, troca de experiências e networking. O evento tem tudo para crescer e fazer sucesso no ano que vem.

Lembrando que no próximo fim de semana estou embarcando para o Rio on Rails. Quem estiver interessado na minha palestra e não puder comparecer, vai ter a chance de assistir um "demo" na próxima reunião do Dojo@SP. Espero vocês lá!

Comments [2] | Posted by dtsato at 3:48 PM [Trackback URL]

21/Nov/2007

RejectConf SP'07

Continuando com a maratona, participei de mais um evento excelente. Sou um pouco suspeito para falar pois dessa vez tive a oportunidade de ajudar na organização do primeiro RejectConf para a comunidade Ruby e Rails brasileira. Não posso deixar de agradecer ao Akita, à Caelum e ao Prof. João Eduardo Ferreira do CCSL/IME-USP pelo apoio e ajuda na organização do evento.

<a href="http://gallery.mac.com/akitaonrails#100041"><img src="http://gallery.mac.com/akitaonrails/100041/IMG_0713.jpg?derivative=medium&source=web.jpg&type=medium" alt="Abertura do evento com jef" width="240" height="180" class="flickr_photo"/></a>

Apesar de termos atrasado um pouco o cronograma, já sabíamos que isso podia acontecer (big design up-front não funciona :P). No entanto, a qualidade dos palestrantes e a participação do público em geral superou e muito minhas expectativas.

Platéia cheia no começo do dia

Foi muito bom conhecer algumas pessoas pessoalmente, como o Eduardo Fiorezi, o Vinicius, Tapajós e o pessoal da ImproveIt, além de reencontrar amigos e conhecidos, como o Carlos Villela, o Fernando Meyer, o Fabio Kung, Paulo e Jonas da Caelum, o Hugo e o George (ainda não o conhecia) do Pagestackr, meus amigos do IME (Pedro, Dairton, Giuliano, Fabricio, Jef) e muitos outros que com certeza estou esquecendo de listar.

Reencontrando amigos no RejectConf

Palestras e Palestrantes

Do ponto de vista técnico, todas as palestras foram excelentes. O conteúdo abrangia diferentes níveis de conhecimento, agradando aos iniciantes e aos desenvolvedores mais avançados. Todo o material vai ser disponibilizado, assim como os vídeos gravados no evento.

Os palestrantes estão de parabéns! Foi incrível como algumas palestras pareciam se "linkar" umas com as outras. Parecia até que havíamos combinado algo antes :-)

RSpec e RSpec on Rails

Minha palestra foi curta e, apesar de uns probleminhas técnicos (bugzinhos), correu tudo bem. Eu falei brevemente sobre o conceito de Behaviour-Driven Development e mostrei um pouco de código ao vivo. Desenvolvi uma aplicação demo para obter feedback (positivo ou negativo) das palestras e deixei meu notebook ligado para quem quisesse votar durante o evento. Apesar de alguns problemas com a rede wireless, algumas pessoas conseguiram acessar e votar. Tirei um screenshot do widget criado pelo Safari 3 mostrando o resultado final da votação. É claro que o placar é irrelevante a não ser pelo fato de que o coffee-break venceu disparado!! :-)

Widget da aplicação demo que usei na minha palestra

Os slides da minha palestra já estão disponíveis para download, assim com o código-fonte da aplicação demo e as notas que usei na implementação ao vivo.

Apresentando para um público grande

Se você tem alguma sugestão para melhorar minha palestra, por favor deixe um comentário. Você gostou ou não gostou da minha palestra? Aprendeu alguma coisa? O bug na demonstração atrapalhou muito? Você prefere ver código ou slides? Essa palestra será a base do que vou apresentar no próximo evento de dezembro, o RioOnRails, por isso sua opinião é muito importante. Lá terei mais tempo para elaborar os conceitos e mostrar um demo mais completo e detalhado. Espero vocês lá!

Ensinando a usar o RSpec no Rails

Mais uma vez, todos os que participaram estão de parabéns. Tenho consciência que podemos melhorar muitas coisas para o ano que vem, mas o importante é que demos o primeiro passo. Acredito que daqui pra frente a comunidade Ruby e Rails brasileira só tende a crescer.

Comments [1] | Posted by dtsato at 12:43 AM [Trackback URL]

20/Nov/2007

Conexão Java 07

Final de feriado chegando. É hora de voltar a ativa e contar como foram os eventos da última semana. Primeiro um pouco sobre o Conexão Java.

Audience at Conexão Java 07

Sexta-Feira

Foi a primeira vez que participei do Conexão Java e gostei bastante do evento. Além de re-encontrar amigos, as palestras que assisti foram excelentes. Na sexta-feira o Alexandre Magno falou um pouco sobre Scrum e, apesar de ter precisado sair no meio da palestra, os comentários que ouvi foram todos positivos. Na sexta acabei assistindo só essa palestra, pois fiquei o resto do dia ajudando o Carlos Villela terminar seus slides (percebam que minha participação foi importante.. he he).

Peugeot Certified Driver :-)

Sábado

No sábado, o keynote do CV criticou os "arquitetos de uma nota só" que preferem usar sempre a mesma ferramenta para resolver qualquer problema. Além de argumentar sobre a importância da plataforma Java vs. da linguagem Java, os tópicos levantados deixaram a platéia preparada para as próximas apresentações.

Carlos Villela's Keynote

O Philip Calçado re-apresentou a palestra de arquitetura do Just Java (dessa vez sem o Paulo) e agradou bastante o público. Apesar de eu já ter assistido a palestra, foi bom para ouvir mais um pouco sobre as "arquiteturas Java do passado". Particularmente achei muito valioso ele ter levantado temas recentes como Domain-Driven Design e DSLs.

Philip

Depois foi minha vez. Minha estréia como palestrante foi bem recebida. As pessoas que me procuraram depois da palestra me deram um feedback positivo e alguns comentários online que li (aqui e aqui) me deixaram bastante feliz com o resultado. Espero que tenha conseguido passar minha mensagem, deixando algumas sementes para discussão sobre Métodos Ágeis, XP, Scrum e Lean. Minha apresentação já está disponível para download aqui.

Palestrando no Conexão Java 07

Após minha palestra fomos almoçar numa churrascaria e acabei perdendo a palestra do Vinícius. A última palestra do dia foi do Fernando Meyer, core developer do JBoss, sobre ANTLR e seu uso na criação de DSLs externas. Gostei pois ele mostrou os conceitos básicos de um compilador (parsing, análise léxica, análise semântica, interpretação, geração de código, etc.) e partiu para um exemplo prático de código. Dei uma ajudinha depois da palestra com um bug (essas coisas acontecem) e os slides e o código estão disponíveis no blog do Fernando Meyer.

Fernando Meyer

Espero poder participar de mais eventos como esse. Se você assistiu minha palestra, deixe algum comentário (positivos ou negativos). Feedback é sempre importante e me ajudará a melhorar para as próximas apresentações. O que você gostou e não gostou da minha palestra? Você aprendeu alguma coisa? Algumas das idéias surtiram efeito no seu dia-a-dia?

Comments [1] | Posted by dtsato at 2:32 AM [Trackback URL]

< May >
Sun Mon Tue Wed Thu Fri Sat
    123
45678910
11121314151617
18192021222324
25262728293031
       
Search this blog:

Tag Cloud:

agilcoop agile announcement baby steps brazil coaching coding dojo agile conference communication conference conference qcon contest database design domain driven design feedback feeds fisl fit fun game generalist specialist agile xp git google google reader improveit incremental java lean legacy code lego mac mac presentation manifesto metaphor metrics music olpc personal piano programming python quality refactoring research rss rubiks cube scrum settlers show simplicity speaking stratego studying talks tdd thoughtworks training tutorial ubiquitous language writing xp xp2007

Feeds: