Skip to main content

Software Development – The 5 Most Talked About Tech Skills and Where to Learn Them for Free

Blog by Dr Paula Beer, Educational Consultant, Academic and TechUP Tutor.

In the previous blog posts I spoke about resources for AI & MLData Science & Analytics and Cybersecurity….now it’s the turn of Software Development.

Skill Four: Software Development


Like many areas of IT careers, there are many interrelated and overlapping terms when it comes to software development. You may have heard people talk about coding, programming, software engineering, web development and more. As this is a post for people looking to develop new skills I won’t get too tied up in these terms, you can dive into reddit if you want to see how people can have quite contrasting takes on this subject. What I will say is that now that many business applications move to the web, it is important, for well rounded knowledge and perspective, that beginning developers bear this in mind.

Author Paula at a TechUPWomen event. Photo: Tianyuan Sun

So to this end, the resources that I present begin with two platforms which concentrate predominantly on coding languages but then the third (the Odin project) is different in that it is a curriculum for web development which cares deeply about encouraging well-rounded full stack (explained later!) developers concentrating on projects and problem solving which connect learners to pre-existing resources rather that writing new ones.

Software development remains a fundamental tech skill. Proficiency in programming languages like Python, Java, and JavaScript is essential for building applications, which is an essential part of software development, so it’s a good place to start. As well as lots of platforms on which to learn software development, there are lots of different programs. So, I’ve chosen platforms on which you can learn multiple programs and enjoy success through projects too.

Free Resources to Learn Software Development

1. Codecademy

What is it?

Codecademy is an American online platform which provides free and paid paths, courses and resources to learn coding languages….and many other things. They list an unfathomable number of languages and courses on the site and they list their currently top trending subjects and courses as AI, Python and Java Script.

What is it like?

It’s big, well-organised and varied! It really emphasises learning through doing with many of the tasks being interactive and users being invited to try out projects and use workspaces to build up a portfolio of projects. You can filter the course catalogue to find the free ones.

The platform is enjoyable to use, teaching via a mixture of comments, use of cheat-sheets which summarise learning and projects via hands-on use of their own integrated development environment (IDE). You also have the flexibility to choose to watch short videos too, which are narrated in a genuinely upbeat and friendly way by humans. 

Are there any quirks?

One issue is that the Learn Python 3 course for beginners is not free. However, you could either complete the Python 2 course (google the differences!)  or use another platform to start Python 3 then complete the other free Python 3 courses on Codecademy such as: “Python for Data Science” or “Build Connect Four Using Python”.


2. freeCodeCamp

What is it it?

FreeCodeCamp provides free coding tutorials and projects. It’s in the name….so they can’t change it, even if they wanted to…which they don’t. Of all the platforms that I have looked at freeCodeCamp (and Odin below) are the only ones that you can’t pay for, even if you want to. Though you can donate to keep it going…perhaps later on in your career!

What is it like?

It is also incredibly comprehensive, providing learning paths which produce a very well rounded experience. The recommended route for a beginner is the “Certified Full Stack Developer” course. The people at freeCodeCamp describe it as “a comprehensive pathway to becoming a Certified Full Stack Developer, covering all the essential technologies required to build modern, scalable web applications from start to finish.”

Are there any quirks?

Not exactly a quirk but certainly an unusual feature is that the resources available represent genuinely months of work and the full course itself isn’t even written yet! The writers are clearly confident that they can stay slightly ahead of you and have the exam ready by the time you are.


3. The Odin Project 

What is it?

The Odin Project established in 2013, describes itself as one of those “What I wish I had when I was learning” resources and “High quality coding education maintained by an open source community”. If you are a beginner it is clear that the only place to start on Odin is the Free Foundations course, which introduces you to the essential tools to build real working websites. It also enables you to move onto their “FullStack JavaScript” or “Ruby on Rails” courses which enable you to create websites from scratch

What is it like?

It is really an ethos and an approach as much as it is a course. They are extremely encouraging and inclusive and really strive to motivate developers who would be good contributors to the community. In addition they are unapologetic about requiring a lot of reading in pursuit of becoming a developer although they do also stress the importance of learning by doing. They integrate projects which can build up to a portfolio to share with would-be employers.

Are there any quirks?

Each of the sections includes carefully curated links for resources, which can be videos or written articles. It really is very different from other platforms in that it seeks to provide a very organised repository of great resources, rather than creating them from scratch.

Photo: Tianyuan Sun

Conclusion

Much like learning foreign languages, learning different computer languages really builds on one another. Learning the logic of programming itself is what we call language agnostic, so it is more about learning the concepts than a specific language as these are similar throughout.

So, don’t overworry about which one you start with but get started and build upon a solid foundation.

Spoiler: Next up is Cloud Computing.