July 07, 2021

The universe of coding and software development

Coding is like medicine. There is a universe of disciplines and professions inside of it. And it work like that for coding too.

The universe of coding and software development
Voxel Community Trento

The world of coding: a universe

When you say coding, it’s like saying medicine. There are many different branches, topics and specializations inside of it. A doctor would never tell you “I do medicine” but instead they will tell you what’s their specific occupation.

Coding works like that too.

Doing coding” means all and nothing. Every developer has their own specialty, a specific area they decided to focus on and expand professionally, deepening their knowledge and growing their hard skills. You’ll discover instead developers doing “Frontend development” or “Data Science” or more, like “Data Visualization” and “iOS development”.

It’s usual that some area are not neatly separated, because it happens that one incorporates approaches and techniques from, other area of software development.

Here at Voxel Community we identified some macro-areas (they surely are not the only ones existing and the final ones) e we decided to tell you more about them, so you can have a starting point for your own and unique travel as a Voxel and as a person inside that big Univers that the world of software development is.

The areas of coding we identified are the following:

  • Web Development,

  • Mobile Platform Development,

  • Data Science,

  • Gaming and Videogames,

  • Frameworks and Libraries Development,

  • Firmware Development and Micro-Controller.

🖥Web Development

Web Development is the area of coding that collects all those software developer building apps and pages that are accessed through a browser. Whether it is the Voxel Community website, your Twitter profile or the app to access your online banking account, if you are suing it on a browser and an Internet connection is required, then some web developers have been working to build those softwares.

The world of web development has its own areas of specialisation as well and different kind of professionals all work together to create web apps and web pages.

Commonly, these professional figures are:

  • Frontend Developers - these developers build the interfaces users will be using the most and they build them with ReactJS and VueJS, but also with tools and technologies such as TailwindCSS and Bootstrap to add a touch of style and color to web pages,

  • Backend Developers - backenders develops APIs, the small packages of functionalities apps require when users do actions while using the web apps on the browser. They use coding languages such as GoLang or SQL.

Clearly, these are not the only professional figures existing. Some developers mix the features of these two world or even of other coding areas, such as machine-learning and cyber-security.

At Voxel we focus a lot on web technologies and web development for many reasons, but mainly because web development lets you develop and publish different kind of softwares in a very accessible way, with low or even zero costs. A great number of web projects let coders achieve big results with minimum effort. There are many open and free resources you can use and add to your projects too.

The other areas of coding

📱Mobile Platform Development

Questa area dello sviluppo software include tutte le professioniste che si occupano di creare applicazioni per le principali piattaforme mobile, ovvero iOS (il sistema operativo di Apple) e Android (il sistema operativo di Google).

Come con lo sviluppo web, anche in questo ambito si trovano sviluppatrici che si occupano delle interfacce e della interazione con gli utenti e sviluppatrici che si occupano di sviluppare API, gestire le operazioni sui database e raccogliere i dati.

Esistono tecnologie specifiche, come FlutterSwiftXamarinNative Scripts e React Native. Questi ultimi hanno molti punti in comune con lo sviluppo web dato che fanno uso delle stesse tecnologie (rispettivamente, VueJS e ReactJS).

📊Data Science

Coding professionals who work on cleaning, handling and analysing huge quantity of data are Data Scientists. Data Science has many ties with statistics and math and it usually is employed to analyse behaviours and extract patterns and predictions.

If you have ever heard of Machine Learning or Intelligenza Artificiale, then you already got in touch with two kinds of Data Science. TensorFlow from Google and PyTorch are two libraries Data Science developers use often.

🕹Gaming and Videogames

Developers who create games are coders who specialized in building algorithms, in scripting and advanced game dynamics, as well as in highly advanced graphic rendering.

Games are usually developed for specific gaming platforms, such as XBox, Playstation or Nintendo, but they can also be produced for web, phones and desktops.

In this case, many branches of coding come together for the development of a game.

🗂Frameworks and Libraries Development

For building softwares, you need softwares too. There are coders out there who are busy building tools, libraries, frameworks and operative systems other coders can use to develop more software themselves too.

We already cited some libraries, PyTorch and VueJS are one of them, that have been developed by this specific kind of developers - also operative systems, like MacOS, Window, Ubuntu and Raspberry, have been developed by Frameworks and Libraries Developers.

It’s a vast area, this one, as it spans across many field of industry and technology, such as cyber-security, security systems, images loading, files conversion and more. At the same time, it is a field with a high potential of going really deep on a topic.

🎛Firmware Development and Micro-Controller

Last but not least, the field of coding that is made of all those coders that build scripts and softwares used to control circuits and other types of hardware. If you ever piloted a drone or if you have a smart coffee maker or a Nest thermostat, then you can be sure there were coders who built all those firmwares in order to orchestrate the work of all the circuits.

Something that’s really accessible and pretty affordable, to start building firmwares and control circuits, is Arduino. It’s a kit made of many different hardware components (such as motherboards, wheels, LEDs and microphones) and a software you can install on your computer and use to code and program all of them.