Best Place to Learn to Code
Tags: beginners, coding, programming, tutorial
Published: 2024-02-12 22:45:43

**The new world brings new problems**

The availability of information online was the major turning point of our millennium. It used to be practically impossible to self-teach without at least a very helpful librarian.

At some point though, the immense amount of information at our finger tips in many ways became a burden, leaving us inundated with options all guaranteeing to solve, or teach, our problems away.

Finding the right path to commit your time to is a challenging process, requiring thorough research of your available options to ensure the most optimal route is taken.

![You, a beginner programmer](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ihtnmzzefe5kbb9fvmig.jpg)

**The choosers dilemma**

Learning to code — like learning to do most things, is a journey filled with plateaus and breakthroughs. The big question people get hung up on: “where do I start?”

The first step is to grasp the fundamentals, there is arguably no better way to do so than by picking a small problem or project that you’re interested in undertaking. When you’ve got something close to the heart that you care about, it can be a great motivator to persevere through the lulls of the learning process.

Once you’ve got a project in mind, do some research to see what languages are compatible with your desired task. From there, the combination of a guided beginner focused resource and google will be your best friends. Having access to all this information is undoubtedly a net benefit, but we find ourselves back at the original dilemma: how am I supposed to make sense of the practically infinite number of answers online, what’s correct, what’s going to be a waste of time and what is just fundamentally wrong.

**A wall for your ball**

This is where the benefit of an experienced developer comes into play, you can flock to reddit and post questions in various online communities hoping someone will give you an answer. Most of the time someone will eventually respond, but there’s a delay and the answer may either be inaccurate or require an expanded explanation itself.

Learning to code in the age of AI resolves this issue, instead of a random experienced dev sporadically half-answering your questions — why not ask an AI model? There are resources, such as GIGO’s CodeTeacher, that are available online to do exactly that. The ability to bounce ideas, ask questions and have them bounce right back is critical for aspiring programmers to keep momentum, ultimately accelerating the learning process.

**The simplified breakdown**

Assuming you have access to an exterior resource to answer your questions (private tutor, CodeTeacher, chatGPT, etc.), here are the best places to learn to code:

1. [Codecademy](codecademy.com)
2. [Coursera](https://www.coursera.org/)
3. [GIGO Dev](gigo.dev)
4. [Replit](https://replit.com/~)
5. [Udemy](https://www.udemy.com/)

Let’s break down what each of these platforms offer and some of their pros and cons.

---

**Codecademy**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ppjt87tmmpicec4ks9b4.png)

An interactive online learning platform, Codecademy provides a simple approach to familiarizing yourself with the fundamentals of coding. Offering courses in a variety of programming languages, including Go, CSS, JavaScript, Python, and more, Codecademy allows learners to practice coding directly in their web browser, with no IDE setup required by the user. The platform’s user-friendly interface and emphasis on interactive coding exercises make it a good choice for beginners looking to grasp the fundamentals of programming and simple language syntax.

The major downside here is that [Codecademy](codecademy.com) offers no live-time feedback/insight, instead offering on the spot solutions for specific code-blocks in the course. While they have a well-rounded help resource center built out, if your question is unique there is a long delay and potential to never receive an answer, instead forcing the user to rely on external resources, such as google. It’s nice that they give you the answer, but oftentimes this leads to a lack of true conceptual understanding.

Here is a link to their Go language courses: [https://www.codecademy.com/catalog/language/go](https://www.codecademy.com/catalog/language/go)

---

**Coursera**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4rvy2xd4p05b3ueqj6q2.png)

Coursera is an online learning platform that collaborates with universities and organizations worldwide to offer a diverse range of courses. These courses cover a wide array of subjects, including programming, data science, business, and more. Through Coursera, learners can access high-quality content, video lectures, and interactive assignments, often receiving certifications upon completion. The platform provides the flexibility of self-paced learning and the opportunity to engage with instructors and peers through discussion forums. With its commitment to providing accessible and accredited education, Coursera serves as a gateway for individuals seeking to enhance their skills or pursue academic and professional development in a variety of fields.

While the quality of [Coursera](coursera.org) courses are superb, they can come with an equally difficult to swallow price tag. Additionally, these are oftentimes college courses and bring everything that comes with it in terms of work load volume. An aspiring programmer looking to take their first steps into the real world of coding needs consistent wins to feel the progress and thus keep an ample supply of motivation. With such long form content (some courses can take months to complete), the wins are spread far & wide, leading to learning fatigue and course drop out. If you are extremely self-disciplined and cost is of no concern, this is a good option for you.

Here is a link to their Programming with Google Go Specialization course: [https://www.coursera.org/specializations/google-golang](https://www.coursera.org/specializations/google-golang)

---

**GIGO Dev**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7iztyacisvkqumkykraz.png)

Currently in Christmas theme, [gigo.dev](gigo.dev) streamlines the learning process.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ja5sl96n1myfu9k5w0rj.png)

Built by self taught developers, GIGO focuses on aligning learning with the real world of development. The team that built GIGO has each individually felt the pain of trying to learn programming alone from online resources, as a group they fostered a fundamental requirement for the platform:

> “Instead of learning to code, you must learn to be a developer.“

Many online resources are capable of teaching the basics of syntax and simple concepts such as functions and loops. Where most fall short (and hinder self learners from landing real world programming jobs) is they don’t teach how to be a functioning member of a development team.

Concepts such as pushing new builds to production, proper testing, debugging (information gathering) and appropriate code structuring are often completely absent from online pre-packaged learning resources.

---

[GIGO](gigo.dev) offers a catalogue of ready to go projects delivered in an easily digestible format.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/puecn3uj7l6b1cwhp2to.png)

Those just starting out their coding journey are presented with a simplified, but engaging experience.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7rbdyqi6m6afgfbb39hl.png)

One of the most challenging aspects of beginning to program is downloading and configuring an IDE (integrated development environment) with the appropriate language and file structure. GIGO removes this challenge by offering a built in pre-configured IDE.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4qmwsy2t9c1lu3vkuuv3.png)

This is actually VScode, a commonly used IDE in the world of development. By introducing beginners to VScode, this not only allows beginners to execute code on a whim with no set up, but also familiarize themselves with one of the commonly used tools by developers in the workforce.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wzkz8nwlui2hfxt2gwkq.png)

A massive advantage of the GIGO platform is CodeTeacher. Code Teacher (CT for short) is an advanced educational chatbot designed to help developers at all levels. Whether you are learning to code, fixing existing code, or writing new code, Code Teacher is there to help.

CT apart has intimate knowledge of your entire code base and can see what you see in the editor, offering precise and relevant guidance.

Additionally, CT can help you navigate the GIGO platform and assist you in crafting workspace configurations for your GIGO DevSpaces, making your coding experience seamless and integrated.

If you are starting your coding journey and wish to accelerate the learning process with a vibrant community of like-minded learners, and live-time feedback on your project attempts, then [GIGO](gigo.dev) may be right for you.

Here is a link to the project [Python Basics: From Hello World to Classes](https://www.gigo.dev/attempt/1691908320060768256) 

---

**Replit**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pdcjoiwvuqm7z3ikrwlv.png)

Replit is an online platform designed to simplify coding and collaboration for developers. It offers a cloud-based coding environment where users can write, execute, and share code in various programming languages without the need for local installations. Replit’s unique feature lies in its emphasis on real-time collaboration, allowing multiple users to work on the same code simultaneously. The platform supports a wide range of languages and frameworks, making it versatile for different coding projects. With its user-friendly interface, collaborative capabilities, and focus on making coding accessible, Replit serves as a valuable tool for both individual learners and collaborative coding teams looking for a seamless and efficient coding experience.

Replit uses their own custom built IDE, which is a disadvantage to beginners looking to transition from the starting phases into the workforce. They have shifted towards a B2B model, with an emphasis on collaborative coding. If you are part of a team looking to bring a project up to speed and want to collaboratively contribute to the same file simultaneously, Replit is likely right for you.

Here is a link to their project selection page: [https://replit.com/learn](https://replit.com/learn)

---

**Udemy**

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1g429tcuyisyqpr5dgdb.png)

Udemy is a popular online learning platform that provides a vast selection of courses on diverse subjects, including programming, business, design, and personal development. Offering both free and paid courses, Udemy allows instructors from around the world to create and share content with a global audience. The platform’s courses often consist of video lectures, quizzes, and supplementary resources, providing learners with the flexibility to study at their own pace. Udemy’s extensive library covers a wide range of topics, making it a go-to resource for individuals seeking affordable and accessible education to enhance their skills or pursue new interests.

Udemy shares many similarities with Coursera, where the quality and quantity of courses is excellent but come with a cost. Generally, these are longer time commitments (3+ months) as they contain the volume of content found in a college course. Though these courses are mostly taken at your own pace giving the ability to skip ahead or work overtime to advance more quickly. An aspiring programmer looking to take their first steps into the real world of coding may find them useful to learn the basics as well as, dependent on the individual course, the ability to communicate directly with a course instructor.

Here is a link to their course Go: The Complete Developers Guide (Golang): [https://www.udemy.com/course/go-the-complete-developers-guide/](https://www.udemy.com/course/go-the-complete-developers-guide/)

---

With practically an endless amount of options to start your learning journey, picking the right path ultimately depends on your final goals, timeline, resources and self-discipline. Do a deeper dive on the options above and explore the web to find whats right for you. Above all else, good luck on your journey into the fantastic world of coding!!!