Introduction

In this post, we'll list free programming resources that you can get on the internet.

We organized them into categories so you can skip those you don't care about.

Note: we're not affiliated with any of these resources, we just find them interesting and helpful.

So let's start

Education

Whether you want to use programming to change the world or just earn a decent salary, you'll need some educational resources to help you along the way. Luckily, the internet is full of free learning opportunities.

Here are some sites that offer education in computer science or in some specific programming language.

Pluralsight

Pluralsight logo

Pluralsight is an education company that offers a variety of video training courses for software developers, IT administrators and creative professionals through its website. Pluralsight is good because there are beginner, intermediate and advanced level topics for some programming languages, frameworks or tools. They also have videos grouped in categories called paths. Paths combine specific courses and tools into one experience to teach you any given skill from start to finish. Paths are aligned to an individual's knowledge level to help you develop the right skills in the right order.

It's a subscription-based site, which means that you need to pay money to get access to their videos. They also offer a 10-day free trial. But we'll show you how can you get one month for free.

To get Pluralsight for free for one month, you just need to go to Visual studio benefits and log in with your Microsoft account. If you don't have a Microsoft account, you can easily create one with any email address. Once you are logged in, you should see this:

[Image]

As you can see, you also get a free subscription for some Microsoft products and also one month of premium subscription to LinkedIn learning.

Udemy

Udemy logo

Udemy is an online learning and teaching marketplace with over 155,000 courses and 40 million students. There you can learn programming, marketing, data science and more.

Every now and then, some courses become free so you can claim them on your Udemy account. To do so, you need to obtain a coupon that gives you a 100% discount.

People post these codes on this subreddit. Just get the code and apply it to the course. Then you can start watching that course. Keep in mind that not all courses are good, so sometimes it's not even worth taking a coupon.

The Odin Project

The Odin Project mascot

The Odin Project is an open-source online curriculum for learning web development. The curriculum contains programming fundamentals and two career paths you can take. One path is to become full-stack Ruby on Rails developer and the other is to become a full-stack JavaScript developer. We'd recommend taking the JavaScript path unless there are plenty Ruby on Rails jobs in your area.

freeCodeCamp

freeCodeCamp is a non-profit organization that consists of an interactive learning web platform, an online community forum, chat rooms, online publications and local organizations that intend to make learning programming accessible to anyone. The curriculum is mostly focused on web development but there are also parts of the curriculum focused on Python (data analysis, machine learning and scientific computing).

freeCodeCamp also has a great YouTube channel where they post various programming tutorial videos.

Free Programming Books

Free Programming Books is a list of over 3,000 free programming books and other free programming resources, maintained collaboratively as a repository on Github. With lists in 29 spoken languages, it has helped countless programmers around the world acquire and improve their programming abilities.

edX

edX logo

edX is an American massive open online course (MOOC) provider created by Harvard and MIT. It hosts online university-level courses in a wide range of disciplines to a worldwide student body, including some courses at no charge.

You can learn about computer science, data science, business, chemistry, medicine, music and many other topics. You can enroll in courses for free, access materials for a limited time and, only if you want a certificate at the end, you can pay for it.

Game development

Most of us wanted to create some kind of game at least once in their life. Devga.me is a great starting point. They have a great number of guides, tutorials, free resources, tools and engine recommendations, a YouTube channel and a Discord community.

Web hosting

If you want to host a personal project, proof of concept or any non-commercial app, you can do that easily and for free on several web hosting providers.

If you don't have any application to host, then you can create a basic 'Hello world' application written in Java, C# or any other language you are working with and host it. That way you are getting useful and new experience of putting applications on the server.

'The Big Three' free tier

Google Amazon Microsoft logos

The three most popular web hosting providers are Amazon, Microsoft and Google. But they are not just web hosting providers, they offer cloud services. But for now, let's just focus on web hosting. If you want to host a web application, select one of the providers and Google how to do hosting. There are plenty of tutorials explaining step by step how to do that. If you are a web developer, it's good to have some experience with any of the providers because most companies are using cloud services almost on a daily basis.

Heroku free tier

Heroku logo

Heroku is a cloud platform as a service (PaaS) supporting several programming languages. One of the first cloud platforms, Heroku has been in development since June 2007, when it supported only the Ruby programming language, but now supports Java, Node.js, Scala, Clojure, Python, PHP and Go out of the box. There is a high chance that you can host any language on Heroku using Docker. They have documentation for every language they support so it should not be hard to have your application up and running quickly.

Github pages

GitHub logo

If you want to host a website, portfolio or your blog, you can do it for free and it's very easy.

All you have to do is:

  • Create or log in to your Github account.
  • Create a new repository and name it your_github_username.github.io
  • Add index.html with some content and commit that.
  • In your browser visit your_github_username.github.io. You should see the content of your index.html.

Now you can create a website from scratch using HTML, CSS and JavaScript or you can just download a free website template and change the text and images.

Organization

Being a developer means that you're sitting in front of a computer most of the day. You are using your mind a lot more than your body. This can result in mental exhaustion, stress and burnout. To prevent or reduce those negative impacts on your mind, it's a good idea to organize your days and increase your productivity.

Todoist

todoist logo

As a developer you get (or take) tasks from issue tracking and project management applications like Jira. But during your workday, you need to do several other things that are not directly connected to your tasks like attend meetings and calls or talk with your colleagues, review pull requests, onboard new team members, etc.

The number of these tasks can grow significantly and thus become overwhelming. To deal with this, it's better to write them down than trying to memorize them all. This also makes it easier to keep them in a prioritized list, which enables you to see them at a glance and resolve them in order of importance.

Todoist is an application that does that. It allows you to create tasks as a TODO list for every day, set a priority on every task and even sort tasks into projects. When you complete your task, just delete it and focus on the rest of the list.

Note-taking applications

Notion and Evernote logos

Evernote is an app designed for note-taking, organizing, task management and archiving. The app allows users to create notes, which can be text, drawings, photographs, audio or saved web content. Notes are stored in notebooks and can be tagged, annotated, edited, searched, given attachments and exported. Evernote is cross-platform, for Android, iOS, macOS and Windows. It's free to use with monthly usage limits and offers paid plans for expanded or lifted limits.

Notion is an application that provides components such as notes, databases, kanban boards, wikis, calendars and reminders. Users can connect these components to create their own systems for knowledge management, note-taking, data management and project management, among others. These components and systems can be used individually or in collaboration with others.

Applications like these two are useful for taking notes when learning something new, taking meeting notes, creating a draft version of product documentation etc., but can also help you keep track of all tasks you've worked on.

Documenting business logic or even programming paradigm which was used to complete that tasks will prove itself useful when someone in the future asks you about some feature you've worked on or some bug you've fixed. Then you'll be able to easily remember why and how it was done. This is especially useful when you work on several tasks or even different projects in a short time period. It's always easier to write stuff down than try to remember it.

f.lux

f.lux logo

If for whatever reason you need to work on your computer in the evening, it's a good idea to install f.lux. f.lux is an application that removes blue light from your computer screen during the evening hours. Blue light might give you trouble sleeping. According to some researches, blue light suppresses the body's release of melatonin. This can make it difficult to fall asleep once you move from your screen to your bed.

f.lux makes your computer screen look like the room you're in, all the time. When the sun sets, it makes your computer look like your indoor lights. In the morning, it makes things look like sunlight again. Once you install it, you'll need to configure it and then you'll forget about it. It will do everything automatically.

Student benefits

If you are a university student and you are lucky that your student email address is accepted on these pages, you can use the benefits they offer for students.

GitHub Student Developer Pack

GitHub student developer pack is probably the biggest and most famous pack of benefits for students. They offer free access to some tools and frameworks, credits for web hosting, resources for learning, etc. We're sure that this pack will give you enough material to play around with and you can use it to increase your skill level, knowledge and boost your portfolio.

JetBrains IDE licenses

JetBrains logo

JetBrains is a software development company that makes tools for software developers and project managers. The company offers many integrated development environments (IDE) for the programming languages Java, Groovy, Kotlin, Ruby, Python, PHP, C, Objective-C, C++, C#, Go, JavaScript and SQL. The company created the Kotlin programming language.

For students, they offer free licenses for every IDE for personal use. If you are Java/Spring developer we'd recommend their IntelliJ IDE.

It's also worth mentioning JetBrains Academy. JetBrains Academy is an online platform to learn programming, including such programming languages as Python, Java and Kotlin. Their resources are great because they teach you language from beginner to advanced level.

LinkedIn learning

LinkedIn Learning logo

LinkedIn Learning is a massive open online course provider. It provides video courses taught by industry experts in software, creative and business skills. You can get access for free by having a library card. To see if your library is eligible, just Google LinkedIn learning. If it is, you just need to get a code for the website and start learning.

Namecheap domain

namecheap logo

Namecheap offers free .me domains and to select universities in the US, UK, Canada and Australia.

However, if you have access to the GitHub student developer pack, then you can claim your domain for sure. While you might not see value in having your own website just yet, it can be a good idea to try to set it up and connect it to a domain, because this process will teach you a thing or two about how the internet works.

Conclusion

In this post, we gave you a lot of resources that you can get for free. Pick whatever you like, do whatever you want and get some experience. After all, investing in your knowledge is never a bad idea.

Categories: Resources

0 Comments

Leave a Reply

Avatar placeholder

Your email address will not be published.