What do successful applications have in common? Versatility vs.
niche Most successful software out there is versatile in its nature; a lot can be done with them then just a few tasks.
Maybe the most versatile piece of software currently in the market is Microsoft Excel and similar spreadsheet programs.
They can be used for number crunching, time schedules, graphs, forms and so on.
Niche software on the other hand is more risky to get into, technology changes fast and can render them useless.
An example in the early 90s it was difficult to get some PC-games running because of memory limitations, a company named Quarterdeck developed Gamerunner to solve the problem.
Gamerunner soon withered away as PCs became more and more powerful.
However there is also very successful niche software, such as the WinAmp media player which had time on its side and didn't miss the online media trend.
When developing niche software it is important to take the future survival of the particular niche into account.
Usability & Design Of course a computer program should be designed with usability in mind, however it is very difficult to define what usability is.
Most successful programs do follow some kind of easy to grasp logic without having users scouring through thick manuals and documentation.
When a user starts a word processing program it is pretty clear what to do, although there is loads of functionality not directly visible to the user.
Surely there are many of programs out there which are successful but not easy to get started with, one example is 3D Studio Max.
However the extra effort has to be worth it for the user, in 3D Studio Max the extra effort is rewarded by top-notch detailed 3D-models which would be impossible to hand-draw with the same quality.
Solves a problem It is pretty clear that a program should solve one or many problems for a user and do it more efficiently than if the user had done it manually.
The last part is perhaps most important.
For example there are loads of note-taking applications out there, but how many actually replace pen and paper? Standards The times when you could develop a special non-standard file format for your software is over, today is all about standards or de facto-standards.
Even large software companies have problems with this, for example Microsoft's .
docx format hasn't caught on.
Future The programs of the future will most probably be on the web or sync up to the web, so-called cloud computing.
This means that users can access their software from anywhere and always stay current.
This presents a number of opportunities for developers.