QCon London 2
More from QCon 2009: Tony Hoare on science and engineering. Architecting for scalability. Microsoft surface. Scala introduction. Reconciliation. Michael Feathers. The Obama campaign.
Tony Hoare on the spectrum between scientist and engineer.
In his opening keynote Tony Hoare talked about the spectrum between(computer) scientist and engineer. He underlined the different goals
and methods of both and how important it is that both sides communicate to benefit from each other. Interestingly the way he presented the topic was nearly identical to the workshop with Sam Aaron I attended yesterday. While Sam tried to polarize between "modernism" and "wabi-sabi" Tony Hoare did it between "modernism" (for the scientist) and "post-modernism" (for the engineer).
One of Tony's topics, that one has to have formal specification for programs to talk about correctness of programs, of course caused discussion on
how to achieve formal specifications. One of the attendees suggested to use test driven development as a way to formalize requirements and
Tony Hoare somehow agreed.
Panel discussion on architecting for scalability.
For me the nuggets in this discussion were
- When you have a scalable architecture, linear gains / penalties
don't shift the ultimate limit (but costs...)
- While language might change the way you think about problems its
implementation does typically only linearly affect performance (and
then see above)
- When doing SOA, watch out for services that provide too much data
to important consumers, as the network is a bottleneck.
- Use real data when doing performance tests because artificial test
data might be too random or clustered in ways different from real data
such that data alignment / indexes / whatever are used differently
leading to false results.
And it has been great to have Cameron Purdy in the panel who really nails some things down...
I had the pleasure of trying out this giant iPod touch at the Microsoft booth. It's a huge difference seeing this thing on the web
and trying it out in reality. I'm quite convinced that this is a technology that could have real value if it becomes affordable.
You can use that thing to interact with the displayed information. Not only a single person, but many can play with the virtual cards, photos, whatever is displayed.
Have you ever tried to get a design right by starting in some UML editor? That doesn't work for me well. I need some large sheets of paper to evaluate the first ideas. When working with multiple people I like to use small cards or post-its and shuffle them around on a table or whiteboard.
If we had a Microsoft Surface and a "tolerant" UML tool, we could try things without the need to manually transfer the result from / into
the computer. By "tolerant" I mean a tool that supports incremental development of the model with relaxed model checking to ease "playing"
with the model. Basically what I liked in Booch notation: cloudy, incrementally drawable notation that incrementally can be made more
precise and formal.
Scala introduction by Jonas Boner.
Jonas tried to do a Scala introduction that goes behind basic syntax and "hello world", and succeeded in doing this. For people like me
that already know that level of Scala there was not too much of new information in that talk. I had wished for more detail on how well
Scala does in real world applications and what the issues are you have to look for compared to other languages. Nevertheless I like Jonas'
style of presentation.
Changing the reconciliation process.
Brian Oliver from Oracle did not exist and even lesser talked about a better way to do reconciliation. That's a joke of course: Oracle
obviously had forced him to include a really ridiculous disclaimer at the start of his presentation.
It was a great presentation that covered the functional requirements on reconciliation, what's difficult about it, and how you could use
data grids to improve the situation.
Michael Feathers on Testing and Programming Languages.
By accident I attended the recording of this interview and I'm glad that I did. Check the video when it is online, he has a lot to
say. Also check out his blog (http://michaelfeathers.typepad.com/)
On the IT support of the Obama campaign.
Martin Fowler and N.N. presented how they supported Barack Obama in his campaign by working on the IT services for his supporters and
volunteers. I learned a lot about the american election system which is rather different from what we have in Germany (Is it really such different?
Have to think about that...). I wonder if I like the idea how much influence it might have whether the parties hire people that are good
at creating web sites or not. But that's obviously one aspect of how politics works.