Version Control with Git
Learn how to use Git, a popular Version Control System and essential tool for any developer.
Reddacity may receive an affiliate commission if you enroll in a paid course after using these buttons to visit Udacity. Thank you for using these buttons to support Reddacity.
Reddit Posts and Comments
1 posts • 163 mentions • top 18 shown below
133 points • _pyrex
Yeah, I remember my freshman year. I would TAR all my projects according to their versions. If I messed up, I'd untar and start fresh. Glad Google has a free git course where I learned the fundamentals in 2 days. Changed my life. Then beginning my Jr year, git was taught and surprisingly not many other students knew what it was or bothered to learn. Any programmer should definitely pick this up even if it's for simple projects. If y'all want private repos for free, consider creating a git server with a Raspberry Pi.
Edit: link to course https://www.udacity.com/course/how-to-use-git-and-github--ud775
804 points • StoopidSxyFlanders
3 lesser-known tips for learning web development
Hey guys, I'm learning web development at the moment and thought I'd quickly share a few lesser-known tips that I've found to be quite useful.
Create a Trello board to keep track of everything you learn.
Not only does it help structure your education, it helps reinforce what you've learned when you're writing down the learning outcomes. Plus you can show it to potential employers when job hunting as proof of what you've learned (I would argue this is almost as good, if not as good, as a formal bachelor's degree).
I basically just copied the Trello board provided in the OSSU course and modified it slightly. Here's an example of what my board looks like (it's a bit messy and incomplete at the moment but you get the idea). And here's an example of what the cards look like.
Dedicate today/tomorrow to learning Git and GitHub
You likely already have an idea about what Git is, but if you don't know how to properly use it then spend today or tomorrow learning it. It only takes a day to learn and the pay-off is huge. Here's a good course on Udacity that teaches you all the important stuff.
One of the many, many, MANY advantages of learning Git is that you will be able to upload (or 'push') all your projects, exercises, notes, assignments, etc. to your GitHub repo, which you can then link to on your Trello board. Here's an example of my GitHub repo for the Web Development Bootcamp course I'm taking.
Seriously, learn Git now. It's so powerful and helpful that once you've learned it you will be using it for every single project you do from now on.
Use Sublime Text (not Notepad ++)
>EDIT: Apparently there are even better options than Sublime Text. Check the comments below.
I used to use Notepad ++ and swore by it. I'd heard about Sublime Text before but thought it was simply an alternative, so I didn't see the point in switching since Notepad ++ was doing everything I need and I loved it. Big mistake. Sublime Text can do everything Notepad ++ can do plus more.
Snippets are perhaps the biggest advantage of using Sublime Text (maybe you can do this in Notepad ++, I'm not sure, but it's very easy to setup with Sublime). Snippets are basically templates that can be triggered using keyboard shortcuts. For example, I've setup a snippet so that when I type 'htmlbs' then press tab, it automatically creates a HTML template that uses Bootstrap framework. Here's the output to show what I mean.
Since you will likely be completing a lot of exercises and projects during your studies, this will be a big time-saver so you don't have to hand-write or copy/paste the same code over and over and over again.
59 points • desrtfx
- "Clean Code: A Handbook of Agile Software Craftsmanship" by "Uncle Bob" Robert C. Martin
- "The Pragmatic Programmer" by Andrew Hunt and David Thomas
- "Think Like A Programmer" by V. Anton Spraul
- Udacity: Git and Github
12 points • ProtectYourNecks
Neat, this one looks pretty basic but good:
222 points • Lechickensoul
I'm 34 and I got my first programming job after about a year of self learning! Here are my main resources
Hello! I'm here to thank this community for the great time and the inspiration it gave in the last months of hardworking. Also, to share some of my humble tips. Feel free to msg and ask for any help. I'm working as a front end developer after a year and a few months trying to learn by myself webdev. I had more details about my personal journey on this freecodecamp post: https://forum.freecodecamp.org/t/one-year-of-fcc-gave-me-my-first-job-as-a-front-end-developer/151669
Here's a list of online resources that helped me along my journey through the zero webdev to employeed-TI-guy For frontenders, most of it...
Free: 1- Udacity have a great Git course: https://www.udacity.com/course/how-to-use-git-and-github--ud775 If you are new around the computer science world dont forget to grab some basics of data structure, algorithms and some logic at Havard https://cs50.harvard.edu/
2 - More data Structure at Coursera! This is a pretty tough one, be prepared. The language is Java but dont worry, the trees, liked list and the other stuffs are the same for every language - https://www.coursera.org/learn/algorithms-part1 and https://www.coursera.org/learn/algorithms-part2
Cheap: Go for the Udemy discount coupons(a quick search on google will do) and get some of the best online courses for 15 bucks or less
Expensive: Nope. I'm just too broken
- Daniel Shiffman's Code Train(former Rainbow-Code) - https://www.youtube.com/user/shiffman
- Sarah Drasner is all over Youtube teaching the SVG art
- MPJ's Funfunfunction - https://www.youtube.com/channel/UCO1cgjhGzsSYb1rsB4bFe4Q
- Look Lea Verou CSS expert talks
Travis Neilson's DevTips - https://www.youtube.com/user/DevTipsForDesigners
https://codepen.io/ of course lol
I hope you find something useful. Just let me know if guys need any help! Thanks!
22 points • akame_21
Several questions I have, that I think will help some people new to FCC
In the beginning FCC had me sign up for Github... but I haven't used it all? Should I be using it for everything that I do? Would the codeacademy git/github or udacity free github course be worthwhile to better understand git/github?
I've seen several mentions of the "command line" before when doing some basic research on programming, and I've seen people state that knowing the command line is essential to get a job. Can you eli5 what the command line is and at what point (if at any point) it would essential to learn it? Codeacademy.
Is there any major benefits to making sites responsive using CSS, as opposed to Bootstrap? It seems Bootstrap is a lot easier to make a site responsive, but I'm not really sure.
Another thing I see pop up a lot is content management sites (CMS), like Wordpress. What are the benefits of them? Would I ever want to look in to these at some point down the road?
EDIT: added number 4.
EDIT #2: Thanks so much guys - all the responses were really helpful. I really don't have much to say other than thanks because all of my questions were thoroughly answered! Happy coding!!!
20 points • ichmagkartoffel
I was in the exact same position as you currently are a couple of months ago, here is what I did that helped me a lot:
- I started off with Introduction to Computer Science, this helped me understand how the web works and learnt the very basic nuts and bolts of programming, algorithms, data structure and computer science in general.
There is an amazing course made available for free by Harvard University called CS50, this course has some rave reviews online. You can access the whole course for free here: https://www.edx.org/course/cs50s-introduction-computer-science-harvardx-cs50x
Next, I moved to Python, there is an amazing Specialization Course (a series of 4 courses) on Python for absolute beginners for free on Coursera (auditing the course is free, it's payable if you want a certificate) https://www.coursera.org/specializations/python?
I'm in the process of completing the above Python Specialization, and I'm trying to write code to automate stuff, this way I'm able to put my skills to use and build something useful out of it, there is a really cool book called: Automate the Boring Stuff with Python: Practical Programming for Total Beginners Book by Al Sweigart which has a collection of some cool and simple projects which you can build using Python.
While you're learning python I would highly recommend you to learn Git, it shouldn't take you long to learn (2-3 hours at the max, to learn the basic stuff) and create a profile on Github and try to add some code to your repository on a daily basis. Here is a free course to learn Git and GitHub: https://www.udacity.com/course/how-to-use-git-and-github--ud775
This is a really cool way to keep a track of what you've learned while also helping other developers to easily review your code.
I initially tried watching random videos online but either I used to get stuck of I kept jumping from one video to another without learning much, I found a structured approach towards learning really fun and less intimidating.
Most important of all is that you dedicate some time on a daily basis towards your learning as opposed to learning once a week and you'll see real results in a few months.
Hope this helps and I wish you all the best.
5 points • megu-
Try https://www.udacity.com/course/how-to-use-git-and-github--ud775 if you're the type that learns well from videos/lectures. It's a great intro to git, and it's free. 👍
3 points • samort7
I learned Git from this free tutorial series on Udacity.
2 points • chhuang
This udacity course is good for newbies or rusty programmers (like me) that wants to refresh git.
Took me less than a day to finish it. If you don't like to read wall of texts on how to use git, this is a good material IMO.
> Now most of you might think that this is way too easy of a platform to not understand.
I'm sure majority of us doesn't even use or know how to use its full features.
Get comfortable with command line
git commands and don't rely on GUI or IDE git plugins too much. They are good and productive on their own, but when it comes to buggy problems, command line saves your day.
2 points • basteez
I guess you have to learn git before and you're lucky as there's a free course on Udacity
7 points • Baalinooo
Udacity offers multiple Git+Github courses: which is best?
Udacity has offered for some time the course How to use Git and GitHub.
As a Git/GitHub beginner, I'm not sure which I should take. I've heard good things about the old course, but I image the new courses should improve on the old.
Has anyone here taken the old or new course? Which would you suggest I take?
2 points • ACOblivion
How do I go about learning Git?
So I'm looking to start learning Git, though I'm a bit short on time, what with classes starting again. I'm wondering what the general approach I should be taking is to learn Git at a level an entry-level software engineer or intern should be expected to know it.
I came across resources like this and [this] (https://www.youtube.com/watch?v=Y9XZQO1n_7c) that teach the fundamentals in a few hours or a day. The Pro Git book is around 500 pages, though. Is it true that you don't need much beyond the basics as an intern or junior dev? Is it fine to just learn the fundamentals in a day or 2 and learn the rest as I go, through practice, or should I try to cover most of the book too? Thanks.
22 points • SenyorHote
Entry-Level Job hunting
Is it enough to land an Entry-Level Developer job? Is there a minimum requirements for qualifying as a dev? I asked this cause i rarely got replies on my email application(could be my resume tho). and also is it worth changing language as most jobs here in my country wants PHP instead of Python. Here are the lessons on the course on Udacity. I would also appreciate it if you could suggest another course to follow or take to help me become better.
Part 1: Developer Tools
Part 2: Databases with SQL & Python
Part 3: Servers, Authorization, and CRUD
Part 4: Deploying to Linux Servers
Im now at "Authentication & Authorization"
3 points • CleverBunnyThief
Checkout this course on Udacity. I did this one when I first started learning Git. It really helped understand how to use git.
Pro Git is like the bible on Git. Chapters 1 - 3 should help get up and running.
Read Github's tutorials if you want to try Github.They have way more stuff online. This is just a basic intro.
I switched over to Bitbucket because they offer unlimited private repositories with their free account.
3 points • Wisgansin
I'm a CS grad with a few years in a professional position.
I can give a few recommendations, but to prepare, I'd say first manage your expectations. CS is a very broad field that involves a lot of mathematics and doesn't necessarily mean programming in a professional capacity.
There are too many topics to get even a basic fundamental overview of what you're going to get into in a month. The best starting point is to develop your problem solving skills. Your habits as a long term learner are more important than having the information you need for any single problem.
If you want an idea of the kind of problem solving you'll be getting into, I'd recommend this free udacity course on version control: https://www.udacity.com/course/how-to-use-git-and-github--ud775
It doesn't require any prior programming experience, but will teach you a very useful industry skill that isn't language dependent. Version control will let you save, switch between, and share multiple versions of any file, but is most often used for programs. This won't seem useful yet, but when you start making your own programs outside of the assignments, it will be a godsend and you'll be way ahead of your peers. This is my first recommendation for anyone starting out.
If you really want to dive into programming in an object oriented language, I'd recommend https://www.udemy.com/naked_cs/ by Penny De Byl. I don't like recommending udemy courses for any topic because the quality is usually low and they have too much video time without enough hands on exercises, but this is an exception. Udemy is slow just by its format, but the exercises are just the right difficulty for a beginner. It covers a lot of things you'll see in your first year. There are a lot of free ways to learn the same things; this is just my recommendation.
One last thing:
Always give an honest attempt at any programming problem you have before looking up a solution or asking for help. That doesn't mean don't check references at all, because of course you'll need that frequently. Just don't copy and paste answers without seriously trying to solve it first. This will make an enormous difference in your problem solving skill, which is more fundamental than anything else.
1 points • smitchell556
Resources I've found to be really useful are:
- Git: https://www.udacity.com/course/how-to-use-git-and-github--ud775
- Bash: https://learnpythonthehardway.org/python3/appendixa.html
As far as text editors go, consider trying a few different ones and seeing what you like. I used Vim pretty consistently for a few months, but ended up switching to Emacs after trying it for one day and I've been using it ever since. Vim is good to know the basics for because you'll find it on every *nix OS, but it's pretty common to find Emacs as well (including the school servers).