CoderDojo Heroes: Fergal Dearle – CoderDojo Wexford

Fergal hero 2
What CoderDojo are you from?
Wexford, Co. Wexford. Ireland
When and how did you get involved in CoderDojo?
Both my wife Caroline and eldest daughter Eabha are teachers in Wexford town. I started hearing from them about the kids who were attending CoderDojo. Caroline mentioned to several people that I was a professional software developer and the word was coming back on several fronts that I should volunteer which I eventually did at the beginning of 2015. I have to say however, that it has been one of the most interesting and rewarding things I’ve been involved in in my career.
What is Groovy?
Groovy is a programming language which runs on the Java Virtual Machine. It is a dynamic language with a lot of similarities to Python, Ruby and Perl. Your programs can be run on all the same Operating Systems and devices as Java but it is a much simpler and less verbose language.
How did you come up with the Groovy concept for your CoderDojo?
When I joined the Wexford CoderDojo there was a Java programming class. The stepping stones for the kids to Java were Scratch then HTML then Java. However it was was already apparent that Java was quite a difficult language for the kids to learn. Mainly because the there is so much syntax to master before you can program a simple program.
The classic first program everybody tries to learn in any new language is Hello World, in other words, just print the words Hello World on the screen. To do this in Java you need a class, a method and you need to use a System object to help you print. You also have a bunch of curly brackets {} and semi colons to put in the correct places. This is a lot to ask from kids grappling with their first real programming language.
I proposed instead that we start using Groovy. In Groovy the Hello World program is one line:
println “Hello, World!”
Thats it! So we tried it out for a couple of classes and it worked. The simpler nature of the Groovy language meant that we could focus on building the concepts out as we needed them. Variables, conditions and looping first. Only when the kids had some grasp of the basics did we introduce them to classes and methods.
I had written a book on Groovy in 2010 Groovy for Domain Specific Languages and was in the process of completing the second edition. I was inspired to incorporate the work we were doing into the final chapter of the new edition. We built a Game engine in Groovy so the kids could write their own algorithms for playing Tic-Tac-Toe. I’m proud to say that two of the CoderDojo ninjas algorithms are now featured in the second edition of the book.
Fergal hero
How do you think Groovy can / has benefited your CoderDojo?
There is no doubt in my mind now that moving to Groovy has been a good thing to do. Using Groovy as a teaching language has allowed us to focus on teaching concepts to the kids rather than syntax. Groovy is an ideal language for adding extensions (Domain Specific Languages DSL). We have used this feature to add the game engine concept to the language for the kids while still keeping the syntax as simple as possible. In fact myself and Tony Davidson who is also a mentor in Wexford CoderDojo will be presenting a paper at the Groovy Grails Exchange Conference in London in December 2015. The paper : AST Transforms: Building a simple Game Engine DSL for kids will present to the techniques we used. Our hope is that we will inspire other Groovy developers to also start teaching Groovy at their local CoderDojos. Who knows what the future might bring.
Describe what CoderDojo means to you in 3 words
Mentoring, mentoring, mentoring 🙂
What is one of your favourite memories from your Dojo?
Working on an algorithm and having an 11 year old tell me how to optimise it… awesome!
How would you encourage someone to set up their own Dojo?
I would show them the fruits of the Ninjas work at the best projects awards?
What advice would you give to all the young coders out there?
If at first you don’t succeed, try, try try again. Coding is about exploration. You never get it right the first time and there is never one single solution. If you think something might work, just try it out.
If you want to recommend someone from your Dojo for the Hero series, please contact us on: [email protected] A big thank you to Fergal for taking part!

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *