Freelancer Logo So funktioniert's Jobs durchsuchen Einloggen Registrieren Projekt posten
Find Jobs
Hire Freelancers
Get Ideas
Your complete guide to hiring a programmer

What type of software should you develop?

If you're a developer with itchy coding fingers, but not sure which type of software you should develop, this post will give you some direction.
06.02.2020 • 5 Minuten Lesezeit

A rundown of the different types of software you could build

So, you're an entrepreneur who wants to develop the next big thing. A bit of software that blows minds and makes other developers smack their foreheads in “why didn't I think of that” disbelief. A coded marvel that redefines the technology space and gets users hooked and hungry to pitch their money at you in dangerous-sized wads. Good to hear it!
That said, there may be one teensy tiny barrier standing between you and this great destiny: you don't quite know what type of software to develop. Or, alternatively, you have the inklings of an awesome idea, but you simply don't know what category your baby fits into.
Join with us now as we do a rundown of different types of software out there and the demand for each. Let's answer all of your questions and set your entrepreneurial feet on the path to Easy Street.

Featured Work in Programming

Portfolio item image
Delphi Application to Consume SOAP
by qprotex
Portfolio item image
Conversion PSD to HTML
by puneetjaini
Portfolio item image
WPF Agenda Scheduler
by amusto
Portfolio item image
Bitrix24 Installation
by d1mf13

Major software type 1: Applications software

Let's chop everything right down the middle from the get go. When it comes to types of software, you have two major groups: Application software and system software. Let's dive into the former first.
Application software can be further divided down into Specific Purpose Software or General Purpose Software. Applications can be a multitude of things — word processing, SaaS tools, spreadsheeting, image manipulation, games — just about anything your heart desires, really.
Before we continue into these two subcategories, it's also worth noting that as pieces of software have become more and more laser-focused on specific tasks, clustered suites of them have sprung up. For example, Adobe offers a suite of design software that allows a variety of complex artistic disciplines to co-exist remarkably well, be it desktop publishing, web design, video creation and more. Similarly, Microsoft has its popular Office suite, a multi-software offering that's essentially a one-stop shop for cubicle drones everywhere.

Specific purpose software

It's all in the name, really. Specific Purpose Software is a piece of code written to do a very particular thing. We'll give you a few "for instances" here, to help fire up your own imaginative juices.
We might be talking about a billing system that deftly itemises your company's goods and services. Or we could be talking about a security system that tracks the attendance of employees via biometric integration. Alternatively, you might need some Specific Purpose Software to conduct HR administration. Closely related to that last example would be a bit of accounting software that handles accounts payable and/or employee payroll.

General purpose software

General purpose tasks are pieces of code that have a much broader scope in terms of usage and adoption. A prime example would be a piece of multimedia software that allows the user to weave together an impressive pastiche of video, images, animation or hyperlinked web content. A lot of the aforementioned content will have most likely been tweaked into their optimum forms via another bit of General Purpose Software; a graphics editing program like Photoshop, perhaps.
Another example: the beancounters you know down in the accounts department will have discarded their calculators and abacuses long ago. They all crunch numbers on electronic spreadsheet software. Likewise all of your pertinent contact info and office misdemeanors will have no doubt been logged into a DBMS (Database Management System).
Last but not least, the very words your reading now have been brought to you by one of the most widely used pieces of general purpose software used in the world today. Thanks, word processor! You've saved me countless hours and have eroded my once acceptable penmanship to the point where people mistake me for a doctor. One with arthritis.

Freelance Programming Experts

Avatar des Nutzers
Flagge von Miguel Angel F. @qprotex
100 USD / hour
4,9 (210 Bewertungen) PHP ASP C Programming Java JSP
Visit profile
Avatar des Nutzers
Flagge von Shivam P. @shivampanchal
20 USD / hour
4,8 (160 Bewertungen) PHP Java Python Visual Basic Graphic Design
Visit profile
Avatar des Nutzers
Flagge von Dmytro B. @d1mf13
25 USD / hour
5,0 (158 Bewertungen) PHP Script Install Windows Desktop System Admin Linux
Visit profile
Avatar des Nutzers
Flagge von Armando M. @amusto
70 USD / hour
5,0 (148 Bewertungen) ASP C Programming Java JavaScript XML
Visit profile

Major software type 2: System software

The other major direction you can go in is writing Systems Software. The output you'll produce here is considerably less flashy and high-five worthy to anybody not holding a computer science degree, but it'll also be incredibly important. System software is the stuff that includes programs dedicated to managing the computer itself – file management and the disk operating brains of your computer.
The latter, known as the DOS, handles the physical hardware resources available to your computer in addition to applications and data. Basically, if it weren't for system software, you and I would be clacking away on our keyboards, typing instructions of War & Peace length in to make the most basic things imaginable happen on the screen.
From here System Software can be further categorised down into two more disciplines, System Management Programs and Developing Software. Let's take a quick gander at each of those now.

System management software

The first discipline concerns the operating systems (or OS) we've already spoken about, also device drivers and system utilities. A good example of device driver software could be some finely coded instructions that can optimise the output abilities of a graphics card (to make video games look even more disturbingly lifelike). Meanwhile, a system utility is written as a sort of hardware maid to clean up disk drives of bad data, or to compress/backup/defragment/virus check your files.
System Management Software also extends to the Basic Input/Output System (or BIOS) that controls the hardware plugged and wedged into your computer's motherboard. We're talking stuff like the RAM, Blu-Ray drive, Graphics card, UDB ports, Cooling Fans and more. Without the proper software to cohere all those bits and bobs into a basic known state, your HAL-9000 PC wouldn't even boot up. 

Development software

This second discipline takes a different route as it's roftware equired for the (hopefully) easy creation of yet more software. Some popular sub-categories include programming languages, language translators, linkers and loaders.
Programming languages are typically rated as low-level and high-level (an e.g. of each would be assembly language and C++). There's also machine language that is the real nitty-gritty, super primitive binary stuff that a computer (and Neo from The Matrix ) reads. Language translators are comprised of Assemblers/Compilers/Interpreters that are like digital towers of babel that allow foreign bits of code to find common ground and communicate effectively.
Lastly, Linkers are system programs that scoop up a variety of disparate libraries and object modules into a coherent executable (i.e., a program). A Loader is like the ignition spark that transitions an executable file from your chosen disk and into your computers memory, thus booting the software.
Now that you have a firmer grasp on the wonderful world of software, what will you create? Will you dazzle the world with System software that powers a new generation of uber-powerful Batcomputers? Or will you code some application software masterpiece that makes life immeasurably easier and quickly becomes indispensable?
Alternatively, you could take the much, much (much) easier route. Present your idea to a software developing wunderkind that you've hired on Have them build your software dreams into reality. At minimum, you'll save yourself about a decade's worth of studying and school fees!

Ähnliche Storys

10 tips for SaaS success
7 Min. Lesezeit
10 tips for developing your first game
6 Min. Lesezeit
The top machine learning skills you need
6 Min. Lesezeit
How to build a game for console or PC
6 Min. Lesezeit
What is the difference between Java and JavaScript?
6 Min. Lesezeit

Bleiben Sie auf dem Laufenden

Abonnieren Sie unseren Newsletter, um über wichtige Themen auf dem Laufenden zu bleiben.
Vielen Dank für Ihre Anmeldung! Behalten Sie Ihren Posteingang im Auge für unser nächstes Update.
Die E-Mail-Adresse wurde bereits abonniert.
Ups, da ist etwas schief gelaufen. Bitte versuchen Sie es erneut. Wenn das Problem weiterhin besteht, kontaktieren Sie bitte den Support mit den folgenden Fehlerinformationen: Fehlercode:

Sprechen Sie mit einem unserer technischen Co-Piloten, der Sie bei Ihrem Projekt unterstützt

Jetzt Hilfe erhalten

Für Sie empfohlene Artikel

Artikel-Miniaturansicht The ultimate guide to hiring a web developer in 2021
If you want to stay competitive in 2021, you need a high quality website. Learn how to hire the best possible web developer for your business fast.
11 min read
Artikel-Miniaturansicht Web development: Front end vs back end
Want to get into web development but don't know whether to be a front end or back end dev? We'll teach all of the skills required for both jobs.
8 min read
Artikel-Miniaturansicht Scaling your startup for the future
Scaling your startup is a delicate balancing act. Scale too quickly and your funding is depleted. Scale too late you've missed your opportunity.
23 min read
Artikel-Miniaturansicht How to come up with a great business idea
Struggling to come up with the best idea? Our exhaustive guide runs through the idea generation process to help you tap into your inner Steve Jobs.
10 min read
Registrierte Benutzer Veröffentlichte Jobs
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2022 Freelancer Technology Pty Limited (ACN 142 189 759)
Vorschau wird geladen
Erlaubnis zur Geolokalisierung erteilt.
Ihre Anmeldesitzung ist abgelaufen und Sie wurden abgemeldet. Bitte melden Sie sich erneut an.