Code Health Group/projects/DevEd/Workshops
This page will provide the info on future workshops, along with the place to sign up. Please respect assigned number of slots for each workshop. If none of the dates work for you, please contact the trainer.
Test Driven Development Bowling Kata Workshop
editDescription: This workshop is about learning basics of Test Driven Development - its rules and Red-Green-Refactor loop. Workshop is interactive and can be performed in PHP, Java or JS (please contact the owner directly if you prefer different language). I have a placeholder for a workshop every week (rotating between timezones). Participants do not have to be from the same team or project, but understanding the same language is beneficial. In any case - language use here is pretty basic.
Duration: 2h
Owner: TBD
Max participants: 6
Prerequisites: Participants, after adding themselves, should send a trainer a selection of known languages and github handle (workshop is interactive and requires an read/write rights on workshop repo).
Recurring/Scheduled Workshops
editBelow are the recurring/scheduled workshops. If you'd like to request a special session, please do so here.
Trainer | Zbyszko Papierski (zpapierski@wikimedia.org) |
---|---|
Date | 5pm to 7pm UTC, 2021-11-18 on Google Meet |
Participants | <add name, email and github handle here> |
<add name, email and github handle here> | |
<add name, email and github handle here> | |
<add name, email and github handle here> | |
<add name, email and github handle here> | |
<add name, email and github handle here> |
Trainer | Zbyszko Papierski (zpapierski@wikimedia.org) |
---|---|
Date | 8am to 10am UTC, 2021-12-02 on Google Meet |
Participants | <add name, email and github handle here> |
<add name, email and github handle here> | |
<add name, email and github handle here> | |
<add name, email and github handle here> | |
<add name, email and github handle here> | |
<add name, email and github handle here> |
Refactoring Workshop
editDescription: This workshop will look at some patterns and tools we can use to refactor our code. It will be hands on, with live coding and discussion. Please have a look at the code (Java, PHP or Python) before the workshop and try to refactor it as best as you can. We will do the same exercise live, focusing on the process, not on the end result. Make sure you have the code checked out and loaded in your IDE before the start of the workshop.
Prerequisites: You should be familiar with how your IDE works.
Duration: 1h (+30 minutes of preparation before the workshop)
Owner: Guillaume Lederrey
Max participants: 10
Recurring/Scheduled Workshops
editBelow are the recurring/scheduled workshops. If you'd like to request a special session, please do so here.
Trainer | Guillaume Lederrey |
---|---|
Date | 9am to 10am UTC, 2025-01-22 on Google Meet |
Participants | <add name and email here> |
<add name and email here> | |
<add name and email here> | |
<add name and email here> | |
<add name and email here> | |
<add name and email here> | |
<add name and email here> |
Trainer | Guillaume Lederrey |
---|---|
Date | 8pm to 9pm UTC, 2024-12-04 on Google Meet |
Participants | <add name and email here> |
<add name and email here> | |
<add name and email here> | |
<add name and email here> | |
<add name and email here> | |
<add name and email here> | |
<add name and email here> |
Feedback / Comments
edit[Kimberly Sarabia] - I appreciated Guillaume for walking me through refactoring concepts I have yet to discover. He helped me unlearn some less-than-ideal habits I may have picked up throughout my career, such as making the refactoring process more complicated than it has to be. I look forward to digging into the resources he recommended for further learning.
[Jennifer Ebe] - I really enjoyed learning about refactoring session, I learnt a lot, including tools to refactor. A great use of your time to become a better software engineer.
[Clare Ming] - I've attended a few of these workshops (java, php). The most humbling realization coming out of these sessions is that my habitual approach to software development is backwards from TDD (adding tests after building a feature rather than starting with tests). Participating in these sessions has prompted me to problem-solve more efficiently/effectively and to challenge my assumptions about what I thought I already knew about code refactoring. It's also interesting and edifying to see how other seasoned engineers adeptly use their IDEs. Guillaume is delightfully Socratic in his approach and invokes us to think more deeply about how and why we optimize code. I highly recommend these workshops.
[Eyitemi Egbejule] - This was a much needed refresher workshop. Tools are meant to speedily optimize your workflow, and this workshop taught how just to improve on code refactoring, leaning heavily on support from your IDE. Also, my approach to code refactoring previously didn't consider that refactored code shouldn't necessarily change much about what the code does. Now it considers changing the how the code does it. Would gladly recommend this workshop to engineers of all experience levels.
[Bill Pirkle] - Absolutely worth the time. There are so many ways this workshop can go depending on the audience's specific interests. Everyone, regardless of experience level, will find something useful from this. I personally have trust issues with letting my IDE make changes to my code for me. This workshop was a much-needed reminder that our tools are there for a reason, and I'll be more effective at my job if I let my tools do theirs.
References
edit- Book: Refactoring - Improving the Design of Existing Code, by Martin Fowler, with Kent Beck
- Online catalogue of refactoring patterns
- IntelliJ: Code refactoring
- VS Code: Refactoring