Version Control

Quite possibly the most widely used and at the same time least acknowledged technology, version control has saved me from myself more times than I can count. I use Git on a daily basis and still marvel at the capabilities. There's countless ways of learning it, like this Udacity course. Git is the most popular system, and if you get frustrated initially, maybe this will help: from Navin Narra's Tweet

And finally a few articles and opinions about git:

Perhaps not directly related to version control for day-to-day development, but I highly recommend proper semantic versioning when releasing software.