Many programming languages have funky names and (semi) interesting stories behind why those names were chosen. Python was so-named due to the creator’s love of Monty Python comedy. Java pays homage to the dependency of programmers on one of the most widely used addictive (yet legal!) drugs on the planet. Groovy, I’m guessing, was written by some fun-loving dudes who wish they were still living in the psychedelic-seventies. There is also a very bemusing Wikipedia article on a whole host of “joke” programming languages – my favourites are LOLCODE (designed to imitate lolcats memes) and Chef (where the programming instructions resemble cooking recipes!)
When I first heard of Git, one of the world’s most popular version control systems , I immediately wondered why someone would choose to use such a name. I suppose any word in the English language could stand for something rude or nonsensical in another, but this seemed to be a very weird choice of name for anything – this is what urban dictionary has tosay about the word! It turns out that Git was invented by Linus Torvalds, who also came up with the Linux operating system. Apparently Torvalds once said “ I'm an egotistical b*stard, and I name all my projects after myself. First 'Linux', now 'git'”!
In my previous blog post, where I interviewed a friend who had recently become an app developer, I received some advice to get a GitHub account ASAP. It seemed pretty sound guidance, as GitHub provides a free online way to track changes being made to files and projects. Up until now, I thought the only program that had a “Track Changes” feature was Microsoft Word and for the Udacity homeworks and mini-programs I had written myself, I had just been saving multiple versions on my computer whenever I added new code. Little did I know that, although the first steps of creating a GitHub account and installing the software were easy as pie, the path ahead was one rocky road.
Unlike the many tutorials out there for Python or HTML/CSS, it took A LOT of digging to find a tutorial that started from the very beginning. I was surprised at how many assumed some familiarity with the basic git-related terminology from page 1, while I was still asking what “commit” even meant (no, this is not related to being a commitment-phobe in real life!)
|“Repository”, “Commit”, “Fetch”, “Push”….you what???|
The best (free) tutorials for complete Git – newbs I found were the following:
After reading these multiple times and following the steps one-by-one, plus A LOT of trial and error from playing around with different commands from the official Git documentation (and often failing), I finally think I understand some of the basics. As usual with a lot of programming related problems, while you are experimenting around it can sometimes feel like you are hitting your head against a brick wall, when you do get a breakthrough, there’s a real sense of achievement.
I started off with uploading a web application that functions as a basic blog that I built as part of Udacity’s Web Development course (review to hopefully come in a later blog post). Then later, through a tech-related mailing list I’m on, I found out about an open-source project that I could easily contribute to. I have mentioned previously that I live in London near an area that is called the Silicon Roundabout due to the fact that there are many tech startups in close proximity to Old Street roundabout. There is an organisation called TechHub that has been set up to help support these growing businesses and they have set up a website that acts as a guide to where to eat, drink, sleep and workout near the Silicon Roundabout.
One of my favourite things to do is put on my geeky spectacles and an assortment of brightly coloured clothes from American Apparel, go out in Shoreditch and eat way too much food. So when I saw this project, I knew I could contribute in some way and using basic HTML knowledge, I could understand how to add my recommendations of places to eat and drink with friends or entertain investors.
You can find my GitHub account at https://github.com/ttz21 and you can see the simple edits I made, as well as my other mini-projects, which I will hopefully be expanding upon in this blog at some point in future!