getting into github
Yesterday I did a couple of talks at the AGI Northern Group Showcase in York, one of which was titled “A Beginners Guide to GitHub for Geospatial Folk”. Given that, for various reasons, I was managing on 3 hours sleep and fuelled by caffeine and jammy dodger biscuits, it seemed quite well-received, so I thought I’d expand on it a bit here.
There are definitely some major hurdles for “beginners” to overcome when faced with going public on GitHub. Yes, there are tutorials to help you understand the syntax and workflow, but they tend to be of the “Hello World” variety, or they are focused on the collaborative coding workflow, which might not be appropriate for the casual user. Then you have to beware of the trolls, or at the very least, the people who don’t understand the need for constructive criticism.
My quick suggestion for an easy way in, which also happens to do the world a great service, is to use GitHub for hosting presentations. Not only is this a safe way of learning to use Git/GitHub without exposing any coding inexperience, but you help rid the world of powerpoint, one presentation at a time!
So… go find Big, or Reveal.js and clone it to your local machine. Write your talk (yes write it- none of this gui nonsense). When you’re happy with it, push it up to your own GitHub repository. Use the nifty GitHub pages functionality to create a hosted version of your talk. There’s no need to worry about versions of powerpoint, you just access your hosted talk, or take along a local copy. This is just html, so every browser in the world will render it (in some form)- even lynx *.
GitHub may or may not be the most important social network or place to put your CV, but if you’re put off from getting involved because of the learning curve or the public nature of it all, then this is one way to do it. Then once you’re happy with the interface, find yourself some non-controversial repositories to contribute to- my first pull request was to the Vaguely Rude Place Names Map of all things! Other good projects you can contribute to are related to documentation, such as the QGIS Training Manual. Again, these are an easy way in- no one will complain if you fix a typo!
*I know this because I’m nerdy enough to have installed Git on my Nexus 10 tablet via the super Terminal IDE app and instructions from DamGit…