Hanoi Coding Dojo Session #7
Written by Dương “Yang” ヤン Hà Nguyễn (cmpitg) and available on his weblog, here is the full text of the post:
I intended to blog about this session yesterday but I was too deep in writing a unit testing framework for newLISP and forgot all about the time . Well, here is a quick note about our last Coding Dojo session.
As usual, I am one of the laziest and latest comer in an event. Althought I’m trying to fix this, for some (stupid) reasons, I’m still always always late. Last Saturday was no exception. The Dojo started at 2:00 PM and the time I arrived was sadly 2:10 PM. On the way to IFI, I prepared for the worst situation. You know that, don’t you? Well, an extremely angry crowd with stone, shoes, and rotten tomatoes…
When I just had a couple of steps from IFI, I saw someone standing in front of the door. Guess who. It’s Serge, my co-organizer, with a deadly sight and strong arms, waiting for something/someone to beat. Just for a moment, I thought my life was over, I just wanted to go home right away. Unfortunately, he saw me with his very cold face…
If you were to be me in such a situation, what would you do? Making a U-turn and running away as fast as possible? Not to mention that it’s shame to do so, you would probably be beaten merciless to unconsciousness, under Serge’s powerful arms. Hiding somewhere? With IFI’s terrain and Serge’s iPhone, trust me, you won’t stand a chance. It seems that you only have one choice: confront it, look at Serge’s face and give him your most innocent smile…
And that’s exactly what I did. But I won’t tell you what happened next. If you’re reading this, then I’m probably still alive. And that, that is the thing that matters the most.
It turned out I was not the latest one. Quang Duong arrived after me a couple of minutes, and we just had 3 people for a Dojo. Well, if you consider the quality over quantily, that’s not bad at all. We chose a decorated version of a Kata named FizzBuzz from Paris Coding Dojo to do. We did 2 Katas in one session: 1) Randori mode using Python and 2) Prepared mode using Pharo/Smalltalk, conducted by Serge. We also had some discussions about the way the 2 Katas were done. Here are some summarizations:
- FizzBuzz is a very simple Kata, and thus very useful to introduce the concepts of Coding Dojo to everyone, especially to newcomers.
- The 2 ways we solved FizzBuzz in Python and in Pharo reflect the way you really think in different languages, and that’s one of the best examples I’ve ever since. You can solve this problem under 8 lines of code (not including unit tests) without knowing much about the language. The idea and the structure of the code are extremely clear, extremely reflective. Plus, if you do it as a Kata completely from ground up, I believe you have a clear (maybe small, but very clear) picture of what a Coding Dojo is and how to solve simple problem using a programming language.
- We have talked a bit and briefly watch a screencast on Vimeo about another Kata named Robozzle, conducted by Emmanuel Gaillot using Haskell. Due to some unknown problems, we were not able to watch it completely at the Kata. You can watch in on Vimeo for free. The video is about 52 minutes long. If you have slow Internet connection or couldn’t watch it for some reason, join us at our next Dojo and so I can give you a copy. See the end of this entry for more details.
- Last, we have a short discussion about doing another Kata using Mikado method with some small game.
Though there were just 3 people, the session was still interesting . Thank you, Serge and Quang Duong.
My apology to Serge if I over-joked in this entry. Please tell me if this disturbs you, I will fix it and get more serious.
Next Dojo Session
The next Coding Dojo will take place at IFI as usual, from 2:00 PM to 4:00 PM. See our homepage for more details. Feel free to join us. Don’t worry about lack of knowledge or programming skills. You are always welcome!!!
- newLisp @ Wikipedia: http://en.wikipedia.org/wiki/NewLISP
- Hanoi Coding Dojo homepage: http://hanoicodingdojo.github.com/
- Paris Dojo’s Kata: FizzBuzz: http://codingdojo.org/cgi-bin/wiki.pl?KataFizzBuzz
- Paris Coding Dojo homepage: http://codingdojo.org/
- Randori Kata: http://codingdojo.org/cgi-bin/wiki.pl?RandoriKata
- Prepared Kata: http://codingdojo.org/cgi-bin/wiki.pl?PreparedKata
- Pharo/Smalltalk @ Wikipedia: http://en.wikipedia.org/wiki/Pharo
- HanoiLUG FizzBuzz problem: http://bit.ly/jF0dhG (original link: https://github.com/HaNoiCodingDojo/Problems/blob/master/HanoiLUG_FizzBuzz/HanoiLUG_FizzBuzz.rst)
- Python programming language @ Wikipedia: http://en.wikipedia.org/wiki/Python_%28programming_language%29
- Robozzle Kata @ Vimeo: http://vimeo.com/8445870
- Emmanual Gaillot @ Vimeo: http://vimeo.com/emmanuelgaillot
- Haskell @ Wikipedia: http://en.wikipedia.org/wiki/Haskell_(programming_language)
- Mikado method: http://mikadomethod.wordpress.com/book/
- Robozzle homepage – an online puzzle game: http://www.robozzle.com/
- Hanoi Coding Dojo session #7: https://github.com/HaNoiCodingDojo/HNCDSession7
- Hanoi Coding Dojo @ Github: https://github.com/HaNoiCodingDojo/