Saturday, November 6, 2010

Impressions of Qcon San Francisco 2010 conference

My journey of 5-day Qconsf 2010 is just finished, now I am on the plane flying back to Toronto. This my first time to attend Qcon conference, the whole conference is so nice, I really enjoyed the whole conference. Now I am trying to write down what I thought about this conference. It will be just an overview, I will give more detailed post for each interesting talks in future.

2 Days tutorial: fantastic
1. Joseph Yoder and Rebecca Wirfs-Brock's Adaptive Object Model is really nice, actually I supposed to take Dan North's architect course, but I changed my mind in the last minute. I really missed Dan North's course, but AOM is really good. because it provide several patterns to make the application architecture more flexible, which is really important for using static language like Java. I think it is really useful to use this model in my current java application development.

2. Continuous Delivery
I am Martin Fowler's follower, finally I have a chance to listen to Martin Fowler training. My current build process is really painful, I think I have an idea to improve my current build system, including:
  •      break down one big build script to several pieces,
  •      create dependency
  •      use code analysis
  •      use build server like Hudson
  •      use Junit test
  •      set up build artifact
  •      unify configuration of developing environment and deploy environment 
  •      decouple the dependency of developing build script from deploy build script.
  •      use puppet and cucumber
  •      simplify the ant build script: use gradle or gant
My goal: shorten the deploy build time, shorten the developing unit test build time, try to automate every thing, shorten feedback, improve productivity
Martin's Friday's Keynote is also fantastic, I bought his latest book: Domain Specific Language, my suggestion is just to buy any of his book, you will not be disappointed.

overview of 3-day talks
The 3 days talks are really good, every day I feel struggle to choosing which one I should choose. I choose Java track (wednesday), NoSQL(Thursday), Parallelism programming(Friday). I will say most talks are really good, some talks you will find which is not you expected. My most favourite is Michael Feather's talk:the most important part is about conway's law: your code structure mirror your organization structure, wow!, totally striking, before I have some kind of impression, but I did not aware this rule, fantastic! Michael's talk is so important because it gives your insight to deeper thinking. like zen medication, action of awaken and awareness. Thank you Michael!

My favorite speakers
I am so happy that I have chance to meet following famous speakers:
  • Martin Fowler
  • Dan North
  • Ralph Johnson
  • Dan Ingalls
  • Erik Meijer
  • Michael Feathers
Some speakers I am not familiar, they give really wonderful talking:
   Joe and rebecca
   Stuart Halloway

What I learned
NoSQL, Concurrency & parallel programming and functional programming are my blind spots. Thorough 3 ays conference,  I just get some concepts, since they are all very good speakers, I know what I am going to learn next steps.
Especially when I attended two talks by Stuart Halloway about Clojure, I learned that clojure is such a elegant beautiful language, and the more important is closure defines/redefines the concepts about value, time, perception, which are totally different with traditional object oriented model. OO is not the only thing to observe the world. This is big mindset change. Stuart's second talk about time model in clojure is brilliant, pretty philosophy, it will take me longer time to fully understand them.

who I meet
 Mark:  I talked to him a lot, who is a ruby guy, I got lots of information about tools of ruby from him.
 Jai:  Java guy, I found we read quite similar computer books,
 Wei: java guy, I learned some form him about NoSQL.
 Daniel: .NET guy, I am so impressed by his productivity of blogging,  I noticed he just he keep writing in a Martin Fowler's keynotes talking,  I thought he might do something else,like checking email, but when after the talk, he told me he just finished his another blog post about the talk, oh my god! Compare to him, usually I take notes on my notebook, then later type them on the computer; it always take a longer time to write a blog post, I need to learn this skill. how to blog your thought easier and faster.

And I talked many other guys I forget their names,  I found we almost read same books, shared same vision, like "learn a new language every year", it is a very good chance to learn, get feedback, you will aware your ignorance, your blind spot, you need to learn more !

It is really interesting that a group of people come from different country, with different back ground, share the same philosophy.

Next actions
  Am I going to come QCon next year? Maybe, it depends on my own budget.
  Get more involved in I talked to Floyd about submitting articles to infoq, which is a good idea, but you have to commit to submit at least one article each week, which is sound stressful to me right now, it is challenge you have to overcome. Do it!

No comments:

Post a Comment