These Advanced OOP Design classes are more meta than I ever could have thought. Stéphane is that kind of guy that charges your batteries when listening him. A great and passionate speaker.
Today's class was more like a open-your-eyes session than a hardcore technical lecture. Maybe many people does not like these kind of things, but myself, I love them. It's when you feel you're not sure you're in the right path, or don't feel motivated enough to hack on things, the right person cracks in and explains his experiences, and gives you metarules to clear your ideas. Like giving you the toolkit and materials to build your toolchain to eval on yourself, and then, make or break.
Instead of doing the explanations on "why tiny methods matter", or discussing about aggregation vs composition (luckily I did my homework yesterday anyway), he pointed us some ideas of "how stuff should work" (Note to self: buy www.howstuffshouldwork.something), or better said, "where things are going". Also, explained his opinions about some dynamic languages. And explained the beauty of uniformity (object -> class -> metaclass-> metaclass class).
Some points I got (all bullets multiplied by my vision of things):
- Gimme a man(1) with examples, or better still: gimme access to the code that uses XYZ function.
- Simple and small m/(systems|rules)/ make $1 powerful and extensible. Don't break the simplicity as far as you can.
- Systems should be small, but not smaller than useful (They're trying to do that in pharo)
- Object -> Classes -> Metaclasses -> Metaclass class is so beautiful
- Marketing is capable of amazing things.
On the meta side (all bullets multiplied by my vision of things):
- Do stuff you like. Be a kid. play with stuff, break things, fix them, or throw them away, but don't be passive about the world.
- Take the time to learn things. Invest in yourself. And now it's easier than ever getting info about anything you like. No more traveling 30 km to get a book that iif you're lucky, you can take home. "OH HAI INTERNETZ".
- Value your time. Signal / noise is low nowadays. Evaluate what you spend time on.
- Use internet wisely. After you downloaded all the crap you won't have time to watch/listen, take a look at http://arxiv.org/ ,http://portal.acm.org , or just take a project you like, and play. You can mail your 'idols' and probably they will answer you kindly.
- You're not obliged to do anything of that, but keep in mind we're part of our community (the REAL world), and it depends on us building the future of the culture, community and so. Choice is yours.
It's difficult to express how happy I am to attend these lectures. Thanks again to JD and SD. I think I'll subscribe to pharo mail list, and try to collaborate in anything I can do. Even if I only can do little support on IRC to smalltalk newbies.