One of the biggest challenges people that want to learn programming face is where to begin. While there are countless resources on coding available both online and in print, it is not so easy to know where to start. The goal of this article is to give you some tips on not only where to begin, but also how not to spend enormous amounts of money in the process. In fact, learning how to code can be an inexpensive pursuit, as you will soon see.

The first place that I recommend you look at if you want to learn a computer language is This website offers courses in Web Fundamentals, Python, Ruby, JavaScript, PHP, and jQuery. Which language should you learn first? Here is my quick breakdown of some of them:

Web Fundamentals:  This is ideal if you want to learn how to create your own website. The tutorials walk you through the process of learning HTML and CSS, the building blocks of web design.

JavaScript: This language is perfect if you want to learn how to code your own smartphone apps.

Ruby and Python: If you want to become adept at navigating databases or utilizing data, these two are your best bet.

No matter what language you choose, Codecademy splits up the learning process into fun tutorials, which you can explore at your own pace. Step-by-step instructions walk you through what you should do and if you ever get stuck, there are hints and a discussion board available to help you. After every tutorial, you have the option of creating a little app or program, such as a cash register or a version of the board game Battleship. The nonthreatening user interface and teaching method make Codecademy the perfect place for an aspiring programmer to learn how to code. Best of all, the site is free!

After you are comfortable with the basics of coding, I would suggest you try out one of the growing number of massive open online courses (MOOCs). These are free online courses taught by distinguished professors from universities around the world. The classes largely mirror the ones taught at the actual universities, with a few modifications to make them more accessible to online learning. Usually video lectures are posted once a week, with students expected to watch them and complete corresponding homework assignments. Midterms and finals are taken online as well.

Two websites with introductory computer science MOOCs that I can highly recommend are edX and Coursera. edX started as a learning partnership between the Massachusetts Institute of Technology and Harvard University, but has now expanded to offer courses from numerous universities. Students have the option of either auditing the class, or, if they sign up in time, they can take the course during the scheduled times and receive a certificate upon completion. Coursera also offers free online university courses in introductory programming. Similar to edX, lectures are posted weekly and there assignments for you to complete within a certain timeframe. When you pass the class, you receive a free Statement of Accomplishment. However, for a fee ($49 as of this writing), you can purchase a Verified Certificate that will have the partnering university’s name on it.

I hope these two steps, starting at Codecademy and then moving on to free online university courses, give you a clearer idea of where and how to start learning to code. Both of these steps provide you with cost-effective access to some of the best computer language teaching methods around, allowing you to explore the wonderful world of programming at your own pace.