If you want to start learning to code, the most vital thing to do is just start! Write your first line of code and go from there.
I’m recommending Python because it’s relatively easy to pick up, has a growing community and thus, more use cases.
If you haven’t already read it, check out Why learn Python as your first coding language.
Python can be used for so many things, and in this article, I will highlight a few of them.
If you are thinking of writing miniature or ad hoc programs to automate your work with your computer, feel free to use Python!
It is a general purpose language. In fact, you can write scripts with other languages too. But if you ever want to write scripts that, say, may involve math libraries to analyse data, or say data crunching, this is where Python shines.
The ability to tap into its diverse libraries will allow you to do very interesting stuff.
One of the students at NEXT Academy used Python to write a script where you can put in any video and the program will churn out the transcript using natural language processing.
It was not perfect (thanks to our Asian accents), but at least it was free!
One of the big reasons for this is because Python is open source and free for commercial use. This means that if your research is successful and you want to do something commercial with what you’ve created, you don’t have to pay!
Luis Otavio Martins shared a story about how his friend was using MATLAB for research purposes. When he wanted to patent his work, he found out he needed to pay a lot of royalties to Mathworks.
While not everyone is a researcher and you might not be looking to get a patent on anything, there are other professions for which data is as important. For example, journalists might need data to back up their stories. Hospital pharmacies might need data to see what medications work best for their group of patients.
If you are a researcher, it is time to roll up your sleeves and get yourself familiarised with this powerful language.
Research requires you to gather, manipulate, visualise and analyse data.
Gregory Saxton, who was conducting social media research, wrote scripts with Python for his research.
The script he wrote could automatically download tweets (with an API) or scrape data (if there were no APIs), convert the raw information into readable formats, and even do linguistic analysis as well!
Do you know that some of the biggest companies in town was built with Python? Here’s a quick list:
When it comes to developing web applications, Python has frameworks such as Django and Flask to do the task.
When you have a good understanding of coding and web frameworks, you can build all types of apps.
Data scientists normally have three main tasks, which are to analyze, aggregate and optimize the data for the company.
Check out the data science hierarchy of needs here: How to become a data scientist in 2019
If you know any data scientist, they would often speak about R, which is another programming language. R is great with data analysis, statistics and graphical models.
However, Python has made great strides in the same area. Looking at the chart below, Python continues to grow as the most popular language in data science and it’s eating into R’s market share.
There are a lot of Python libraries which you can work with for large data sets. Some of the notable libraries are NumPy (for math stuff), SciPy (scientific computing library), Pandas (for data analysis) and Matplotlib (for data visualization).
Today, machine learning and AI are buzzwords that’re being thrown around everywhere. Many people think that machine learning and AI are the same things but there are nuances.
Below is an image of the relationship between, A.I. and deep learning.
AI is a program that mimics a human’s cognitive process.
Machine learning is the ability of machines to receive a set of data, learn from it and change the algorithm accordingly.
For deep learning, it uses multiple neural networks to learn. (A neural network is a computer system modelled on the human brain and nervous system.)
If you’re interested, feel free to check out more in-depth information here: Cousins of Artificial Intelligence
There are many Python libraries that can be and are being used for machine learning, deep learning and AI. They include Tensorflow, Theano and PyTorce.
As more developers do work in this field, the amount of resources and libraries will continue to grow. In fact, one of our graduates, who is now in Singapore started Nurture.ai, which is dedicated to making AI research more efficient, reproducible and accessible.
IoT is another one of those buzzwords flying around. People are talking about Internet of Things and iIndustry 4.0.
Want to get started? It isn’t something that you have to pay exorbitant prices for or buy from a shop.
Today, people are investing in Raspberry Pi to kickstart their DIY IoT projects.
Check out this remote home locking system one of our students devised: Lock n’ Roll
Believe it or not, he and his team built the app and programmed the device in about two weeks! They even had a working prototype.
There are many IoT-related Python libraries that are being developed. Don’t believe me? This site has more than 100 repositories: Zerynth.
The versatility that Python brings has opened up plenty of possibilities. Besides programming the IoT device, you can use Python to create the web app that controls the device, collect data and analyse it as well.
While Python is not as powerful as Unity when it comes to programming games, it allows you to build something fun with it!
If you use PyGame, you can build games like Super Potato Bruh (a Super Mario Brothers clone!).
It’s like those Choose Your Own Adventure type books, but on your screen!
Try it out on Derek Shidler’s website: Adventure Game. Go ahead and read the source code too. You’ll see how readable Python is.
This is one interesting use case. With technology being so accessible, we have a large range of media to choose from.
If you like reading, but you also enjoy graphics, check out Over the Hills and Far Away
You can use the Python library Ren’Py to create something like this.
While Python may be an extremely versatile language, when you are picking a language to start with, you have to ask yourself why you want to pick up coding.
And more than just learning a language, it’s also important to learn computational thinking. So that no matter what language you start with, you are able to apply it to creating what you want.
If you’re ready to start learning, check out our Full Stack Web Development Bootcamp, a 10-week immersive learning experience.
Also published on Medium.