The 7 Programming Languages & Frameworks to Learn in 2020

Curated recommendations for passionate coders

Kent Sia
Kent Sia
Jan 3, 2020 · 7 min read
Image for post
Image for post

Choosing the right programming languages or framework for your applications impacts not only the speed and timeline of the development, but it also influences your ability to scale in the future.

Here I’m sharing the top 7 programming languages that you should know now in 2020 and to be relevant in the next couple of years. If you are one of the people who are still struggling or passionate about picking which programming language to learn in front-end or back-end fields, then this post is right for you.

1. Java/Kotlin — Spring Framework

Spring framework
Spring framework

Many of you may have asked why Java? Is Java still even exist or popular? The answer is Yes. Choosing to learn any programming language is not just based on popularity metrics or whether the date it got created. Whether you like it or not, Java is still the enterprise standard programming language and it is widely used. The job opportunity is also one of the factors to take into consideration when we choose a programming language to learn.

Kotlin is a cross-platform, statically typed, general-purpose programming language with type inference. Kotlin is designed to interoperate fully with Java, and the JVM version of its standard library depends on the Java Class Library, but type inference allows its syntax to be more concise. Kotlin originated at JetBrains, the company behind IntelliJ IDEA, in 2010, and has been open source since 2012.

Spring framework is one of the most popular open-source Java frameworks. It is geared towards the developers and provides an all-round, flexible framework. Spring 5.0 onwards has provided dedicated support for Kotlin. People always compare Kotlin over Java. With Spring, why not we combine both? Since both languages have it’s good and bad.

With the extensions, resources, and documentation found on the Internet, it makes the developers ease to find and adding dependencies required to integrate with different kinds of 3rd party applications.

Most popular products from the Spring framework:

  • Spring Boot is designed to run as quickly as possible, with minimal upfront configurations
  • Spring Cloud is designed for simplifies distributed and microservice-style architecture
  • Spring Cloud Data Flow is a unified service for creating composable data microservices

You should consider using when:-

  • Building an enterprise application
  • Building microservice architecture with the popular cloud provider
  • Building a large team with code controls
  • Looking for a framework that easily scalable and resilient

2. Golang

Image for post
Image for post

Go, also known as Golang, is an open-source programming language created at Google that makes it easy to build simple, reliable and efficient software. The syntax is clean and easy to understand by newcomers.

The beauty of Go is its first-class support for concurrency. Go doesn’t just support multi-threading, it is multi-threaded by design itself.

If you are looking for something that lightweight, fast execution and quick development, Go is one of the best choices. The binary file size for Go is way much smaller (10x) compared to the Spring jar file.

You should consider using when:-

  • Building small and lightweight applications
  • Building for microservice-based container platform
  • Quick development, easy to build, and shorter learning curve
  • Building async & multi-threaded services

3. Python — Django Framework

Django framework considered one of the best Python frameworks in building web applications, and it’s free and open-source. Django offers stability, packages, best documentation and it has good community support.

Django widely used in building CRM, CMS, Booking engines and all kinds of web applications. It supports the fast development of backend APIs with minimal coding.

Among other things, Django is great for data analysis solutions, complicated computations, and machine learning. It is one of the top picks for developers these days.

You should consider using when:-

  • Building large scale web applications
  • API driven applications
  • Don’t mind monolith architecture
  • Data analytics solutions and Machine Learning

4. Node.js — Express

JavaScript is probably one of the most powerful and fastest-growing programming languages for the last few years. In those days, JavaScript used to build only for web, but now if you well-versed in JavaScript, you can develop web applications, back-end with database integrations, desktop applications, and even mobile applications.

Nowadays, JavaScript is used almost everywhere. Since JavaScript has such high adoption and no competition, we can’t foresee it is going anywhere, anytime soon.

Express known for fast, unopinionated, minimalist web framework for Node.js. It is built on JavaScript and has a relatively small learning curve. Most of the developers today choose Express because of its flexibility, simplicity, and extensibility. Not to mention, Express is part of the MEAN (Software Bundle) stack, a collection of full-stack JavaScript-based technologies to develop web applications.

You should consider using when:-

  • Building small scale web applications like portals, dashboards, etc
  • Building desktop applications
  • Building for Minimum Viable Product (MVP)
  • Shorter learning curve
  • You only have a small team and a short timeline
  • Minimizing the expenses spent on hiring backend development team
  • You don’t want to disturb or wait for your existing backend team 😆

5. Angular — Web Framework

Angular
Angular

I have been following Angular many years when AngularJS used to be one of the best frameworks back then. Angular is a TypeScript based open source web application framework built by Google. Angular is a complete rewrite of AngularJS by the same Angular Team at Google. It is powerful, modern and it has very good community support.

Angular is supported on various platforms on the web, mobile, and desktop. One of the main reasons learning Angular is because its ecosystem is large and thriving. The Angular Team has shipped an incredible amount of tooling and libraries to the community. I have attended an Angular conference in 2019, and it is great to meet all the great developers around the world to share the experience of using Angular.

The new version Angular (Version 9) is going to be the next big thing in the JavaScript framework. It comes with smaller bundles size, faster build, better debugging tools and more.

You should consider using when:-

  • Building large scale web applications
  • Looking for a large and great ecosystem for all the tools and libraries in the community
  • Don’t mind a big learning curve
  • You like to write Typescript than JavaScript 🙄
  • It is supported by Google!

6. Vue.js — The Progressive JavaScript Framework

Image for post
Image for post

Vue is a very popular JavaScript framework that grows tremendously for the last years. Vue was created by Evan You when he was working at Google on AngularJS back then.

Why Vue is popular? Vue is a progressive JavaScript framework for building interfaces. It is designed from the ground up to be incrementally adoptable. One of the main advantages of Vue, it has taken many good ingredients from its competitors (Angular and React), by adding its spices to it.

I personally like Vue very much, due to its simplicity, flexibility and most importantly it is written purely in JavaScript. However, Vue is still new, the community is still small, and the majority of the developers are non-English speaking.

You should consider using when:-

  • Building medium scale web applications
  • Looking for quick development and shorter timeline (purely in JavaScript)
  • Medium learning curve
  • You can read Chinese 😉
  • You like JavaScript very much (this is me!)

7. Ionic framework

Ionic
Ionic

I have started Ionic development using AngularJS and Apache Cordova somewhere in 2014. It is an open-source SDK for hybrid mobile applications. Developers can build their mobile apps using JavaScript frameworks. Ionic includes mobile components, typography, mobile themes, and interactive paradigms to build mobile apps.

In the latest release of Ionic, it allowing the user to choose any user interface framework, such as Angular, React or Vue.js. Ionic is promoting one codebase for any platform (iOS/Android/Electron/PWA). Ionic also provide the tools to live updating and CI/CD using Ionic Appflow to achieve the DevOps lifecycle.

You should consider using when:-

  • You want to build small/medium mobile apps
  • Quick development and medium learning curve
  • You do not want to learn native programming
  • Save time and cost to build for both Android and iOS mobile app
  • You love to use your JavaScript framework to build a mobile app

Conclusions

In summary, there is no right or wrong to learn any programming languages. There are several other good programming languages to learn, such as Swift for iOS, Dart by Google, R for Data Science, Flask for Python, etc. Selecting the best programming languages for correct use cases are fairly important for its long run.

The top list here is selected based on the popularity, learning curves, features, and my humble views. I believe learning only a single programming language and expert on it is no longer a thing in 2020. Everyone is talking about full-stack programming these days.

True programmers never stop learning.

I hope you guys enjoy this article. If you guys found this article is useful for you, please share it with your friends and share your comments with me. Thanks!

Happy coding! 😊

The Startup

Medium's largest active publication, followed by +756K people. Follow to join our community.

Kent Sia

Written by

Kent Sia

Tech Evangelist | Entrepreneur | Adventurer | Programmer | Father

The Startup

Medium's largest active publication, followed by +756K people. Follow to join our community.

Kent Sia

Written by

Kent Sia

Tech Evangelist | Entrepreneur | Adventurer | Programmer | Father

The Startup

Medium's largest active publication, followed by +756K people. Follow to join our community.

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store