Rather than having a technology-first mindset, the best freelance developers have a project-first mindset. They don’t limit themselves to a single technology so any answer that gives you a single technology to learn is fundamentally flawed.
This article discusses practical freelancing projects and many of them are interdisciplinary. Here’s a list of projects and an initial reference of the technologies you may use to solve them.
- Gun detection from surveillance camera: Python, TensorFlow, machine learning concepts, maths, scripting
- Web scraping for price comparison: Python, BeautifulSoup, HTML
As you can see, to solve any of those practical projects, it’s not enough to study one or two technologies. Instead, you need to know your field—and be prepared to study new things as they arise.
With a project-first mindset, you are doing just that. You learn what you need to learn to get the project done. Initially, it’ll take a long time but you’ll be able to finish similar projects more quickly as you go along.
Of course, it helps if you know the coarse field you want to solve projects in. For example, you can focus on machine learning projects, web projects, or server-side maintenance projects. However, don’t restrict yourself too much as the demand is constantly changing. What’s hot today may not be hot tomorrow.
To summarize the points discussed:
- Focus on projects, not technologies.
- Over time, focus your energy more on more on one field that fits your personality and personal preferences. You may not know the field already so don’t fear to explore new fields within a certain percentage of your time.
- Start with a more fundamental view and learn the basics well because they are relevant in every field.
Which are the hottest programming languages?
Having said this, it doesn’t harm to start with the programming languages that are currently growing. These are the ones which will be around many years from now.
The key result from the StackOverflow report is the following: Python is both the fastest growing and most loved programming language. If you want to improve your rapid code understanding skills in Python, consider getting the book “Coffee Break Python”.
What are the best general programming language projects for freelancers?
If anyone knows, it’s Upwork. In a recent blog article, Upwork shows five big opportunities for freelancers nowadays:
- Websites: front-end and back-end web development stay trendy. Some hot technologies are React, AngularJS, and Vue.js.
- Machine learning, AI, and Big Data analytics: Most large companies see the need to go into AI these days to stay competitive. At the same time, the data sets to be analyzed are growing massively (even faster than processing power). Naturally, there are plenty of ML, AI, and Big Data jobs out there. Some hot technologies in these areas are TensorFlow, Python, Spark, and Scala.
- Back-end software development: It sounds boring but this is often where the opportunity lies. Some hot technologies are Java, Ruby, Python, C#, or PHP.
- Mobile app development: The number of apps on the app stores is still growing and growing. There’s no downturn in this trend. So if you are a freelance web developer, you’ll never run out of jobs. Learn Android OS and iOS app development.
- Systems programming, robotics, and hardware: these areas require low-level skills. Learn C and C++ to excel at those (or even Rust).
So a reasonable strategy for you is to pic a niche first, and then start studying the most important technologies for this niche—by focusing on concepts to increase the lifespan of your knowledge.
In the best Python freelancer course in the world, I give you everything you need to know to go from $0 per hour to $50 per hour as a Python freelancer in a few months. As Python is the hottest programming language these days, becoming a Python freelancer may easily be the most profitable choice of your life.