When you first start learning how to program, it can be difficult to find resources that will help you along your arduous journey. Whatever language you decide to learn will have its own set of quirks that you have to grapple with. Sometimes, you may feel like you’re not quite cut out for programming. But don’t fear. Anyone can learn to program with a little bit of perseverance. Results won’t occur in a month, two months, or three months. It may take a year or more to make much progress.
However long it takes, there will come a point where your skills will be sharpened enough to work in teams of coders to build and maintain projects. Until then, here are some little known resources to light your path.
Peter Norvig, director of research at Google, wrote a great article about the importance of treating programming like a craft. This should be pinned somewhere near your computer as you pound your way through #100daysofcode. It will remind you that growth happens over many months.
Speaking of #100daysofcode, what better way to motivate yourself than to join a challenge? The principle of this challenge is to commit an hour every day to coding. You should continuously strive. Sometimes, we need the help of others to keep ourselves accountable. You can tweet your progress and encourage others.
Carrying on the spirit of community, Dev.to offers a wealth of resources for new programmers, intermediate programmers, and professional developers. There are topics ranging from job tips to command line tips. The articles are written by developers for developers.
If you’re itching to join one of the many expensive coding bootcamps out there, try The Odin Project first. This website provides a free curriculum that will teach you how to build a website from the ground up. If you plan on becoming a web developer, you should give this site a shot.
There are times where reading a well-written article or book just doesn’t cut it. We need to see the code being written live.
Focusing mainly on CSS, The Code Player teaches you how to develop various website features like drop down menus and sliders. All of this is accomplished in a live code player. You can pause or adjust the coding speed to your liking.
Even the most experienced developer needs a cheat sheet from time to time. If you have a hard time remembering a particular syntax, you can simply bookmark a cheat sheet from OverAPI in a language of your choosing.
At some point in time, you are going to have to learn to document your code. Markdown is the language of documentation. Github’s guide is extremely scannable, which makes it the perfect reference for anyone who may need to know how to present, say, a code block in their documentation.
This website focuses on teaching scripting languages that aspiring back end developers may want to learn. Don’t be triggered by the title of the website: the site covers a lot of the basics of each language. Unfortunately, the only free course is Learn Ruby The Hard Way.
Front End Masters is one of the best ways to learn all of those new front end technologies that technical recruiters want you to know. The videos cover Vue.js, React.js, Web Assembly, and much more. The videos are segmented into sections, so it’s easy to code along with the instructor. If you have a few bucks to drop, this site will teach you a lot.
If you’ve worked with CSS even just a little, you may have come across the fact that centering elements isn’t always easy. Though this site is more of a crutch, you’ll learn to live with the fact that CSS requires a lot of trickery.
It’s duly appropriate that there’s a site called CSS Tricks. Normally, if you have a CSS question, this will be the site that shows up in Google search. It’s a fantastic site to learn the twists and turns of CSS.
This site is unlike many tutorial sites in that it’s structured like a book. The site map is laid out in the home page so you can jump from lesson to lesson. Each lesson ends with a set of tasks that help reinforce what you learned in that lesson.
If you’re an aspiring web developer, there comes a point in time when learning how to comply with web standards becomes just as important as learning new technologies. Google’s Web Fundamentals teaches you how to provide the best user experience possible while avoiding design pitfalls.
Though Ruby on Rails may have lost steam these past few years, it is still a powerful framework that has lowered the barrier of entry to the world of web development. Rich on Rails supplements basic Rails knowledge by providing tutorials that teach beginner Rails developers how to perform routine back end tasks like authentication.
If you’re a computer science student at college, you’re most likely going to be working with Python. Computer Science Circles teaches you the fundamentals of Python. It also provides a sandbox where you can try solving problems.