If you do not know what git is or if you didn't master it very well, or if you would like to become in the future a programmer (a professional one, or someone who just like to code during a weekend), then this article is for you!
If you know git, but you do not fully understand a command git rebase -i HEAD~4
or git add -p
, then you should also read this :)
This weekend is about programming!
I remember how difficult it was for me, to start programming. It was 14 years ago, I didn't have an internet connection or some more experienced friend, which could help me when I had a question. Back then I only had few books. Now is much, much easier!
If you would like to start learning how to write code, CodeSchool is in my opinion very good option for the beginning, especially if you like video and interactive lessons, as I do. I do not recommend CodeSchool very often because usually you need to buy a subscription for most of their courses, but not today!
Plenty paths to choose
Being an IT specialist is like being a doctor. Every time during a family gathering, you are constantly asked by everyone, Could you take a look at this rash?" /"Could you fix this broken computer?". I am mentioning about this because as people know, there are many types of doctors (cardiologist, dermatologist, internist, etc)... and there are also many types of IT specialists or even many types of programmers.
But you should be an expert in some areas
So, which path you should choose is a topic for another long article, but the truth is, only you will know the answer. But there are things, which every programmer should know, exactly like every doctor should be able to do CPR. Funny thing is, that this analogy is pretty good, as git can prevent a project from the sudden death of the project.
What is git?
Git (pronounce[gɪt]
) is a tool, which helps keep a history of your whole project in an elegant way. If you will use git in a proper way, you will always be able to undo some changes in case of any crisis or bug.
On CodeSchool there are 3 courses about git, and 1 course about github (biggest service which uses git). Read more, to learn which course is the best for you!
#1 - Try Git
The first thing, this course is....terrible! The whole reason why I am writing this article is to say to people, that first course is the worst from the whole series. To finish the course, you just need to know how to read, and re-type every suggestion, which are given to you in every challenge. You will not learn much from that. Yes, a course is interactive, but there is no video. There is also no information why you need to do particular things, why particular git command is needed. The only good thing about this course is... that it is always free. But to be honest, you can skip it without any regrets.
#2 - Git Real
This course is really good. All things which were described in TryGit are also described here, but in much better why! Each git command is not only well described, but you are told a story/example of a situation, when exactly you might need each command. Everything is very well visualized, everything is clear.
Interactive console is not perfect, because when I tried to type git status
(a command, which gives more information about current state of repository), then console responded, that git status
is not a solution for this challenge :D
After this course, you should know git on a basic level, which should be enough to work with git on daily basis, even as a professional programmer. This is paid course, unless there is a free weekend, like right now :)
#3 - Git Real2
Recently I had an opportunity, to see how my wife went through this course, and I was sitting next to her, as a help. I have to admit, that as someone who considers himself as git-expert, I was really surprised about things which they put into this part.
Topics in this part are rather advance, but at the same time extremely useful from time to time. In this part you can learn about:
- interactive rebease
- squashing
- retrieving accidentally reset commits
- conflicts resolving
- modifying a history
- git submodules
As you can see, those things are not trivial. Even if you do not need those things every day, it is extremely good idea, to learn about those things, because when you understand how this work.. this is not so difficult after all :) Even if you will forget the details, you at least will know, that that there is a solution for your problem, you just need to recall it :)
This is paid course, unless there is a free weekend, like right now :)
#4 - Mastering Github
I was skeptical about this course, but now I need to recommend it as mandatory. First of all, very nice thing is, that this time you will not use a simulated console, but actual GitHub website. You will create a repository, do commits, create Pull Requests and CodeSchool bot will check everything and do interactions with your repo. It will pretend that there are multiple co-workers in your project :)
This course describes few times things which already have been covered in Git Real and Git Real2, but this time those things are described in slightly different way. The very important fact is, that this course, in my opinion, can be very helpful even for people, which already know git well. For example, this course describes a PullRequest-based workflow. This is completely different approach from those with one single central repository.
There are 7 parts in this course, and every part between 1 and 4 is very interesting. Later there is more about GitHub alone. I think this might not be so entertaining for everyone. You will learn how to create Github Wiki, Github Pages, how to integrate GitHub with 3rd party services, how to use their API with tools like curl
, how to manage your repository. Also at the end, you will learn how to use hub
, console client of GitHub, which serves as a wrapper for git.
Summation
Git is very important and nowadays this is a standard among developers of every operating system and every programming language. Very often git is listed in articles which describe X things which every programmer should know.
Some people are saying, that git is hard to learn. I think with those courses it is much easier to learn it, and also... I need to empathize, that every second spent on learning git, probably will repay many times in the future :)
I wish I got slighlty any idea about coding . Nice community work you are doing appreciated !
Really, you should take a look on CodeSchool. There is no easiest way to start which I know about. Python in my opinion is good for start: https://www.codeschool.com/learn/python
Really, this is much easier than you think, and this weekend those courses are free :) There is no more excuses :P
And even paying for some good courses is all worth it! Coding is an important skill today.
Exactly! More and more professions are now under the threat of automation and artificial intelligence. IT is not a safe haven either, but it is much more likely to have in 10 years a job as a coder, than as a driver or as a shop assistant.
I totally agree. Even creative jobs are "in danger" but I think appreciation for creative work is often tied to a personal identification with the person behind it. I don't know if "artificial art" will be wide spread but we know now that computers and robots and AI can potentially do every single job for us and it's just up to us to decide which work will be "better" in whatever way when a human does it.
bots don't get distracted. I am now going to be a good human and finish my Henry David Thoreau essay and get a chunk off my analysis of the movie "Six degrees of separation" which includes an analysis of the culture industry. Oh the fun ...................................
According to Theodor W Adorno and Max Horkheimer, the administered modern world is sustained in part by technologically reproduced mass art. They contend that the culture industry serves the totalitarian impulses of modern capitalist society, not least because the interests of leading broadcasting firms, publishing companies, and motion picture studios are economically interwoven with those of other capitalist industries. In its attempt to produce and reproduce the social relations of a homogenized society, the culture industry contributes to the hypnotization of the individual consciousness and the maintenance of the status quo. It transforms art into commodities and people into complacent consumers, depicting a “realistic” world that is really no more than a combination of stereotypes, advertising and propaganda. The culture industry also helps create a state of mind in which people’s desires for pleasure and happiness are activated but deferred in endless entertainment. It incalcates resignation, habituating consumers to the everyday drudgery of pensatory entertainment for the life of regimentation but instead represses the desire for happiness, depicting the modern world in a degraded tragedy of “realistic” characters who accept the inexorable order of things. In this way the culture industry manages the psyche of its consumers.
Thanks for sharing. Im hoping I have time to check it out this weekend as Ive been wanting to get better at coding just never had the time/resources so now if I can just find the time
Oh thanks for the article!
I think i Will recommend it to my friends-developers!
I am Cornholio! You will name your baby Bungholio! Is he an albino? Holio Bungholio... will be albino... and a gringo....
Congratulations @noisy! You have completed some achievement on Steemit and have been rewarded with new badge(s) :
Award for the number of comments
Click on any badge to view your own Board of Honor on SteemitBoard.
For more information about SteemitBoard, click here
If you no longer want to receive notifications, reply to this comment with the word
STOP
i am upvoted and reply your post plz visit me
upvoted,reply,follow and resteem when you work in steemit thanks alot,
my id = https://steemit.com/@pranashroy
thanks for upvoted me. thanks alot for supporting