Software Development Summary for absolute Beginners

onwuzor victor
5 min readNov 20, 2017

If you are a beginner in the software development ecosystem, chances are you can’t wait to start developing badass web apps, mobile or desktop apps.

Perhaps you are having problems deciding which programming language or Platform to start with. Should I start with web apps, or mobile apps? If mobile, should I build for Android, IOS, or Windows devices? Or should I just learn them all? What programming language should I learn? Which one does what? The more you read online on which language to start with, the more you get confused by the debate on language superiority.

I totally understand your predicament and you are not alone.

This write up is aimed at giving you a general broad view of the tech industry, the platforms that exist (Web, Mobile and Desktop, {Android, Windows and IOS}), what tools and programming languages you’d need to learn to build for each platform. I will be as plain as possible, few tech terminologies.

Web Applications:

To get started, you need a PC (Personal Computer), Browser (Chrome, Firefox, Edge etc.) and a Text Editor (Notepad, Sublime Text, Visual Studio Code, etc.)

Web Development can be divided into Front-End and Back-End

Front-End: This is the visible part, the gesture, the feel of a web app. A person who is specialized in front-end development is called a front-end developer (or web designer). What languages do I need to know?

· HTML (Hyper-Text Markup Language): HTML is a markup language and not a programming language. It is the building block of every web app, as no web app can exist without it. It’s like building a house without a foundation. Yah! HTML is the foundation of every web app.

· CSS (Cascading Style Sheet): If HTML is the building block and foundation of web apps, then CSS gives beauty to the HMTL. Imagine an unpainted house, that is how an HTML would look without CSS. CSS takes care of the colors, text size, animations, responsiveness and lots more.

· JavaScript: This takes care of the interactivity of the web app like validation, advanced animation, DOM manipulation.

Back-End: This is the part the end users can’t see. It involves getting input from the user to the database and giving the user a feedback. A good example is the login process. A user inputs his/her email/username and password. This takes the input and verifies if the user’s info is available in the database and if so, redirects the user to a specific page and if not, gives the user an unauthorized message as feedback. A person who builds the back-end architecture is called a back-end developer. A person who does both the back-end and front-end is called a Full Stack developer.

What languages do I need to know? Basically there are different web back-end programming languages.

· PHP, Python, Ruby (Ruby on Rails) and the newest baby relative to others, NodeJs. You can pick anyone of them. There is so much debate on which one is better and that is not the aim of this article but, they all do pretty much the same thing on the web. NodeJS is a JavaScript framework for the back-end. If you love JavaScript, NodeJs might be a good place to start.

Mobile applications:

Android Apps (Mobile, TV, Wears etc.): Android apps are applications that run on Android Operating System. A person who builds android apps is called an Android Developer.

What do I need to learn to build android apps?

Obviously PC (Personal Computer)

IDE (Integrated Development Environment). There are many IDE’s to use but Android Studio is highly recommended.

Java Programming Language (note that Java and JavaScript are not in any way related. It’s like car in car-penter) or Kotlin Programming Language which is the new official language for android development by Google.

XML (Extensible Markup Language) for UI (User Interface) and Structure. It’s like the HMTL for Android development.

IOS Apps: These are applications that run on the IOS operating system, basically Apple devices. What do I need to learn to build IOS Applications?

Mac Laptop: This is a must

IDE: Xcode

Programming Language: Objective C, Swift (The official language for IOS Development)

Apple App Store: This where your app can be downloaded by users. Your app has to be approved by Apple before it can get into the app store.

For web developers, it is also possible to build a Mobile App with your basic knowledge of HTML, CSS and JavaScript. Sounds good, right? That’s not all, with just one code base you can build for IOS, Android and Windows without having to write for each platform.

There are many resources online to help you get started on any one you have decided to learn. Hopefully, now you have a broad view of how app development works, the platforms available and what languages you’d need to learn for each platform.

--

--

onwuzor victor

Full Stack Software Engineer | Minimalist | Nerd | Technical Writer