This blog entry is not finished. Sentences might change, the way post is structured might change. In fact everything can change. I normally don’t come back changing old posts but it might happen on occasion too. So be prepared for a constant flux as I learn and re-model.

After I decided to learn how to program I enrolled into a set of courses where main focus was to learn software development theory. I believe I heard about git as a version control tool at that point but definitely had no idea about what Git and GitHub really was. I believe I mentally labeled them as the same thing (which they are not!) and didn’t know or understood enough to start using them. This initial lack of knowledge in that area didn’t help me build up my account on GitHub. Looking at it now from perspective, now I can clearly see why it’s crucial for a new programmer to use git as a version control tool (that’s Git) as well as a space to keep your programming creations in one space, available online to be explored, co-created and checked by other programmers (that’s GitHub).

Why should you?

There’s a couple of reasons for why should you care about your GitHub profile.
Let me share below, what I’ve gathered so far.

  • your progress is recorded

It’s empowering for both sides. For you, because you are able to see that you have been busy, learning and building up software. Therefore your GitHub activity gives you a clear view on how much work have you done. Your employer too, as he has access to evidence and your creations.

GitHub Profile Screen

If you’re genuinely adding up your daily efforts to GitHub profile, then it’s clear you’ve done some work and therefore you had to learn something. It’s the easy way to find out if what you’re bragging about in your Resume has any cover in the actual work done.

  • your work is visible to hiring managers

If your goal is to get hired and work in the industry, then there isn’t a simplier way to have it done, than creating GitHub accunt and pushing code every day into your account. If you do so…

  • you’ll learn how Git and GitHub works

Just by having code that is being managed by git software, you’ll learn skill that’s sought by employers. Basic commands like git log or git status and git commit will get under your skin. Next you’ll grasp how local repository is being synchronised with remote repository and therefore learn how to use git pull, git push, git fetch commands and how they work. The ultimate goal in learning how git works, will be to learn how to work on features by creating a separate branches and then merging those branches with the main build branch (called master) or how to contribute to a software project and get your code merged with main repository build, using pull requests. Personally I am somewhere in the middle of that process but certailny see the power behind this software and highly recommend you to start using it as soon as you can.

  • the above gives you base knowledge to start co-creating with others.

When you know the basics and grasp how this software works, you start thinking why haven’t I used it long time ago? This is obviously normal in many cases, not just with git software. Now, you might wonder, how to learn git?

How to start.

I started learning basics of git long time ago and it was a course I don’t recall the name. It gave me some basics but I remember the instructor wasn’t necesarilly good at sharing his knowledge and I somehow stopped exploring more for some time. After a couple of weeks I found this course: GitHub Ultimate. This course was on point, give me everyting I needed to know as a starter as well as some advanced features. It might not be the best course for you, as you might find instructor not the best fit. If that’s the case, I encourage you to “google” for beginner courses. Finishing up, I would like to stress out the importance of doing the work, I am talking about trying to use git, adding new repositories, trying to manage them, making mistakes, erasing and starting again from scratch. Doing this while trying to figure out how it works is in my opinion the best way to learn (maybe also the hard way) how to use git.