How to Begin: Your Programming Journey

One of the most intimidating aspects of any learning journey is the beginning—staring at what seems to be an impossible chasm to cross with no inkling of where to place your first step. The chasm seems to be twice as wide and twice as hard to traverse when you want to begin programming. There are more languages than you can count on both hands and twice as many opinions about them. There are numerous websites and guidebooks and tutorials for you to choose from and no idea which one is reputable or worthwhile or even relevant with how quickly technology changes and adapts. It can be paralyzing—but doesn’t have to be.

This guide is intended to take some of the stress out of those first steps. It is not comprehensive in any sense of the word and it won’t help you decide which programming language to choose or which path to take. Those are questions only answerable by you and where you want to go. However, this guide will be there to help you choose which resources you can rely on for these initial steps on your journey. It will give you reputable avenues to pursue on first steps and miles along the path. Everything presented below will be free or have free components you can interact with.

Guides and Courses to Light Your Way

In my own programming journey, the best guides and courses I have found are both illustrative and interactive. They offer explanations, examples, and ways you can interact with the code yourself to test out what you are working on. Programming is a practice and that means you must practice, practice, practice. The two resources I find myself returning to each time I have an issue or need to work on a concept are freeCodeCamp and W3Schools.

freeCodeCamp is a non-profit organization that offers thousands of hours of tutorials on their website—everything from responsive web design to data analysis with Python. Each course is broken down into categories which are broken down into topics that build on each other. You can drop in from the beginning or find the piece that you are currently missing and practice on that. All their tutorials are free, and you don’t even have to have an account to access them (although you do need one to save your progress). In addition to their robust range of tutorials, freeCodeCamp offers an incredibly rich YouTube channel with free courses and a forum for when you need to ask specific questions. freeCodeCamp also offers certifications you can add to your resume or LinkedIn profile if you are pursuing a career as a software developer.

W3Schools is the other developer resource I want to highlight in this guide. As robust as freeCodeCamp’s offerings are W3Schools dwarfs their offerings. You can find tutorials, reference documents, exercises, and more on their website. I regularly have a W3Schools tab open when I’m working on a project or learning a concept. One of the most helpful features of the W3Schools website is the number of code examples they display followed by a green ‘Try it Yourself’ button at the bottom so you can practice concepts along the way. W3Schools is an industry-standard guide for developers and will be an invaluable resource on your coding journey.

One last resource to keep in mind, and one I won’t discuss in-depth, is developer documents. As you progress in your programming journey you’ll inevitably need to access a developer document like MDN Web Docs. MDN web docs is a living document for web developers maintained by Mozilla. It is an invaluable resource for web developers and one of the more accessible documents you’ll interact with along the way. Often web docs are intimidating and inundated with more information than you can process at one time, but you’ll need to become acquainted with accessing and interacting with them along the way. Remember to take it slow and not to get too caught in the weeds in the beginning. As you progress on your journey these documents won’t seem so inaccessible.

Resources Offered by St. Louis Public Library

While there are several resources like the ones I discussed above living in the wild of the web, as a member of St. Louis Public Library you also have access to free learning resources that can help you on your way. These include and Gale Courses. Both resources offer courses on software and web development from beginning to advanced concepts. offers video tutorials while Gale Courses are more traditional instructor-led online courses. You can access and Gale Courses for free from home with an SLPL library card. Navigate to our website,, and select Digital Content from the navigation bar at the top of the page. From there select Online Learning and choose either option. You will be prompted for a library card number and your personal PIN before gaining access to all of the courses offered on both. Good luck on your programming journey!