Learning review and signpost (January to March 2015)
This post reviews my personal development activity from 26 January to 27 March (60 calendar days)
Plan for this period
The plan for this period was a deep-dive into using Git and GitHub (or other code hosting services such as Bitbucket) effectively. I’ve been using both Git and GitHub for a couple of years, but I’ve always felt that I was only really scratching the surface of using them effectively. Now also felt like the right time because I’ve been part of a team moving our organisation towards Git and GitHub for version control and collaboration.
To develop these skills I chose a few resources, including:
- The Git and GitHub LiveLessons course from Addison Wesley. This is a comprehensive learning resource in which Peter Bell to a GitHub trainer to starts at the very basics of Git as a command line tool and progresses through to effective collaboration strategies using GitHub.
- The ‘Basics of Git and GitHub’ webcast from GitHub which provides a really nice overview. This includes an introduction to the pretty amazing ‘image diff’ tool from GitHub (described from 47:23).
- A resource I would strongly recommend for the time constrained is the GitHub and Git Foundations training YouTube playlist. The format for this is a series of short (around 5 minute) introductions to key features. I found this format great as both a learning tool to since I could watch one when I was, say, washing up to and as a good way to remind myself of key concepts.
- The documentation available via the command line (via to help) and on the Git website. On this point, it’s worth remembering that to in addition to the extensive documentation to the Git site also provides access to a free online edition of Pro Git from Apress.
Outcomes
There’s no doubt that my understanding of Git and GitHub has improved considerably during this period, and I’ve been sharing this knowledge with the Designers and Developers I work with. I feel confident in using these tools effectively, and am now routinely using both on Windows and Mac (via the Command Line, GUIs and web interfaces). I also feel much more capable of participating in Open Source projects to which is great. This is all good stuff, and the time spent has been well invested.
One significant but unexpected benefit is gaining an understanding of the tried and tested workflows for Git. Atlassian provide a great resource for understanding and comparing these. One I’m particularly attracted to is Git Flow on the basis that it
…provides a strict branching model [which] …provides a robust framework for managing larger projects
I will be strongly suggesting this for larger Git-based projects involving several team members. It is relatively controlled, but provides a huge amount of confidence to and that’s priceless.
Plans for next sprint
I’ll be kicking off the next sprint on 1 April 2015, and will spend the next few days identifying the things I’ll focus on. This is almost certainly going to start with looking at modern best practices in PHP development. This is partly inspired by the recent release of Modern PHP from O’Reilly, but also because I’ve been writing more and more PHP apps and WordPress functionality these days. This has given me a renewed interest in PHP as a language, so I want to be sure I’m doing it right. I’m interested in the new language features, community standards (such as those from PHP: The Right Way and PHP-FIG) and modern tooling (especially Composer). I’m also curious to find out how the recent advances in PHP and its community can add to WordPress development, so there’s likely to be some WordPress specific learning too.