This content has been written a long time ago. As such, it might not reflect my current thoughts anymore. I keep this page online because it might still contain valid information.
Teaching Is The Best Way To LearnClermont-Fd Area, France
Earlier this year, I gave lectures to undergraduate students at IUT de Clermont-Fd (France). I taught web development (using PHP) (slides & sources), and security, mainly focused on Web/APIs security (slides & sources).
I introduced not only best practices in web development, but tools such as
Puppet, and GitHub.
Each student worked on a Virtual Machine,
so that they could do whatever they wanted to. Except a few weird issues, that
was really interesting because pushing updates, from my point of view, was
really easy. The workflow was pretty straightforward, they all started by
git pull && vagrant up and that was it!
Students wrote their own micro-framework in PHP, relying on components such as the Symfony ones and managed thanks to Composer. They wrote unit tests as well as functional tests. Some students even published their code on GitHub. Most of them did a great job by building a web application combined to a true REST API, serving content in the best format for the clients.
As for the security lectures, I tried to give an overview of well-known security topics, including authorization, authentication, some authentication mechanisms, and how to secure the web.
That was a really great experience! I learnt quite a few tips on how to be better at teaching. I am used to talk to skilled people, so my vocabulary is really technical. That was the first thing I had to change while explaining something to my students. They never did web development before. Introducing high-level concepts using simple words is not straightforward but it is a really good exercise for those who want to improve their communication skills. Also, as I needed to be able to answer various questions, I had to know my topics by heart, including how things worked under the hood. I studied a lot to be better while performing in front of the students.
I got positive feedback from students and that was cool given that it was my first year as teacher. I enjoyed teaching things that took me a few years to learn.
Actually, I think I open sourced my knowledge.