10 Free Resources for Coding and Coders

By Nikhil Abraham

The technology world is constantly evolving. New technologies are invented, developers build new products using these technologies, and new markets emerge from people using these products. The following resources help you continue learning, answer questions, and stay abreast of these changes.

The resources listed below are all completely free. Many of these resources stay free by depending on community members like you to contribute, so don’t be shy about participating!

Learning-to-code websites

Learning to code is a constant journey that never ends for even the most experienced programmers. New languages and frameworks appear every day, and the only way to stay current is to keep learning. Although you may not be an experienced developer just yet, the following resources appeal to beginners with different learning styles. You can learn general introductory computer science topics or specific web development techniques by reading text or watching video lectures, and do it at your own pace or in a scheduled class.

Codecademy

Codecademy, created for people with no previous programming experience, is the easiest way to learn how to code online. You can use the site to

  • Learn front-end languages like HTML, CSS, and JavaScript

  • Try back-end languages like Ruby, Python, and PHP

  • Build real pages from websites like AirBnb, Flipboard, and Etsy

Front-end languages address website appearance, whereas back-end languages add website logic, such as what to show users and when.

You don’t need to download or install anything to start coding at Codecademy — just sign up or sign in and start learning.

If you get stuck, check for a hint at the bottom of the instructions, or click the Q&A Forum link to ask a question or to see if someone has already posted a solution to your problem.

Coursera and Udacity

MOOCs, or massive open online courses, are classes or courses that are taught via the Internet to a virtually unlimited number of students. These courses encourage the use of online forums and interactivity to create a sense of community. Coursera and Udacity, two of the biggest MOOCs, have a variety of coding-related courses. Each course is taught through a series of video lectures by a university faculty member or an industry expert.

image0.jpg

Hackdesign.org

The other half of coding is designing. Good visual design is often the difference between having hundreds of people use and share your website and having millions of people do so. Hack Design has 50 design lessons created by top designers from around the world, including designers from Facebook, Dropbox, and Google.

Each lesson is emailed to you weekly, and includes articles to read, and design tasks to complete based on what you have just learned. Topics covered include typography, product design, user interactions, and rapid prototyping tools.

Code.org

In December 2013, Code.org made history when over 15 million U.S. school students participated in a learn-to-code event called Hour of Code. Throughout 2014, an additional 25 million students would practice their programming skills for one hour. Code.org hosts its own content for students from kindergarten to eighth grade. It also provides links to other learn-to-code resources, which are targeted for a range of ages.

Code.org also has offline learn-to-code materials, so you can keep learning even if you don’t have reliable access to an Internet connection.

Coding-reference websites

As you learn to code, you will get stuck. Your code just won’t behave as you intended. This happens to every programmer — it’s an inevitable part of the process of turning human logic and fuzzy thoughts into rigid code a computer can understand. The important thing is to have a plan, and to have some resources to help debug your code and solve your problem.

The following resources include reference texts, which help you check your coding syntax, and community user groups, which help you check your program logic.

W3Schools

W3Schools is one of the best resources for beginners who are just starting to learn. The website includes reference material and basic tutorials for HTML, CSS, JavaScript, PHP, and other programming languages, libraries, and standards.

image1.jpg

In addition, the reference pages include many coding examples, which you can view and modify in your browser, along with a list of attributes or properties that can be used. If you know you can insert an image using HTML, change the text color using CSS, or show an alert to the user using JavaScript, but you cannot remember the exact syntax to do so, try starting with W3Schools.

Mozilla Developer Network

Mozilla Developer Network (MDN) is a wiki-style reference and tutorial website that covers HTML, CSS, JavaScript, and various APIs. The website is maintained by the developer community, so anyone can contribute — even you! Although not as beginner-friendly as W3Schools, MDN is one of the most complete and accurate sources of documentation for web languages.

Developers frequently use MDN to reference syntax, and also to see desktop and mobile browser compatibility for specific tags and commands. You can also check out tutorials on MDN hosted by the Mozilla Foundation, a non-profit organization that helps support and maintain the Firefox browser.

Stack Overflow

Stack Overflow is relatively young, founded in 2008, but has quickly become the best place for developers to ask and answer questions about coding. Anyone can ask a question, individual programmers provide answers, and the website community votes up or down the answers to show agreement or disagreement. The site includes topics that cover all major web programming languages, and the most popular topics include JavaScript, Ruby, and Python.

Before asking a question, search the website and see if an answer to your question has already been posted. One of the website rules of etiquette is showing you have done some research before posting a question.

Tech news and community websites

There are people coding all over the world, and someone in Shanghai can make an app you use every day just as easily as someone in San Francisco. A number of resources are available for developers to better understand what others are working on, both at big companies and at startups. In addition to what people are working on right now, if you have a website you want to build, it can be helpful to see what has been built in the past, so you can identify areas for improvement.

The following resources help you stay informed on what is happening in the tech community, and interact with other people interested in tech in your city.

TechCrunch

TechCrunch is a popular blog that covers technology startups and major technology companies. In 2006, the website cemented its reputation when it broke the story of Google acquiring YouTube for $1.6 billion. Along with its online reporting, TechCrunch has conferences throughout the year, such as Disrupt, which hosts conversations with industry veterans and highlights new tech startups.

Hacker News

HackerNews (HN) is a discussion website hosted by YCombinator, a startup incubator in California. The website homepage is a collection of hyperlinks, often to startup websites and news articles, that individual users have submitted.

image2.jpg

After a submission is made, the entire community can upvote the submission, and the top-ranked submissions are listed first on the homepage. Also, the community can comment on individual submissions, and each comment can also be upvoted, with the top-ranked comment appearing first on each submission page.

Submission titles that begin with “Show HN” are a request to the community to comment on a startup website that has just launched. Submission titles that begin with “Ask HN” are a request to the community to answer or comment on a question.

Meetup

Meetup is a website that organizes face-to-face local meetings based on interests or activities. Meetup organizers, who are volunteer community members, host meetings by posting information on the website. Then, community members search, join, and RSVP for meetings through the website.

Although you can learn alone, finding other people learning to code is a great way to stay motivated and keep up your momentum. The people you meet may be learning to code for the same reasons you are, such as to build a website, improve skills for an existing job, or find a new tech-related job.