Friday, February 26, 2021

What language should I start learning?

Introduction

One of the questions we hear very often is, "What programming language should I start learning?" It is a tough and simple question to answer. How can it be both? On one hand, it is very tough, as you might have been "exposed" to a language you like and are getting used to, which means you should probably strengthen the skills you already have. On the other hand, it also depends on what you want to create. This article will open for discussing how you choose the best language to start with. This can very quickly be opinionated, and no answer is the correct one. We hope it will give you some thoughts and ideas, which will help you in the process. Here we go.

Understanding your needs

First of all, you have to understand your needs. This is an area we often neglect because we either get too excited to start working with something really cool, or we haven't thought about creating a plan for the learning journey. As with many things in life, planning is often the key to success. It's important to understand what you need to accomplish when learning a new programming language, and how you intend to use it. For instance, if you are going to create an iOS application, you probably want to invest your time learning Swift and SwiftUI. The same goes for creating beautiful and responsive websites. JavaScript coupled with React, Vue, or Angular could be a great thing to look into.

Mobile Applications

There are two major platforms to consider when developing a mobile application, Apple's platforms (iOS, watchOS, iPadOS), and Google's platforms (Android). It's important to understand the product that you are creating an application for. Knowing your targeted audience will help in deciding whether to focus on Apple first or Google First. If you figure out that Apple is the way to go first, then there is only one good choice; you have to learn Swift. There are great resources out there, but one of my go-to is the Apple Developer site, where you will be able to find great beginner resources as well as more advanced material.

apple_developer.png

You might as well be in the Android camp for excellent reasons, and then Kotlin is insanely cool to learn. There are a lot of similarities with Java, and you can mix both to your liking. One of the reasons why you might want to start with Android is due to the considerable large option of devices to choose to support, and it will open up a comprehensive market. My go-to resource when learning Kotlin is at the Android Developer site. The application (IDE) you will be using most often is called Android Studio, which is on many levels very similar to Xcode from the Apple world.

android_developer.png

Web Applications

Getting started in web development is one of the most preferred options. One of the reasons is due to the broad market it supports. Almost every company or community will need a website/application to support its activities. It can be a speedy and efficient way to secure a job, which is giving you much freedom in terms of work location, time of work, and other benefits.

If I were to start learning web development right now, I would start with HTML and CSS to grasp it. Then I would dive in to learn about JavaScript basics and quickly turn my attention to React. The most important note here is, don't fall for the tutorial trap. There is so much content out there, but do yourself a favor and plan a project of your own, even though it is a simple website displaying a few pictures and paragraphs, but make sure you spend at least half of the time on your own projects and half of researching through tutorials and other resources. Where my learning really took off was when I decided to jump on my own portfolio project, which is now live at mathiasrs.com. I started out with a very basic frontpage. I had a profile image with my profile text, then I revisited my boring paper CV and turned it into something more visually appealing. A CMS got implemented to easily write and post about my experience, and hey, why not adding a Twitter post feed, so I did that. What quickly happened after was that I started Code Shape due to my desire to bring people a great learning experience in web and app development.

Wrap-up

It doesn't really matter where you start as long as you feel dedicated to what you do, and suddenly you have created amazing things you can be proud of. If you are still in doubt, just start the chat, and we can hear your story and point you in the right direction.

We look forward to seeing what you can create! 🤩

Back to articles