How can I find out how hard software features are to code?

Joseph Videtto January 30, 2013
Ads by Google

In a response to a previous post regarding protection of software, Oron Joffe wrote to me saying

“There are lots of considerations and how well a program can be copy-protected is only one of them. The applications one can write for a PC or a Mac can be quite different from those from a tablet or phone app, and the development languages will be different as well.”

That got me to thinking about what types of software features can be more easily implemented in one platform/language over another. I had not considered ‘future enhancement requests’ when designing my app. I realize software features is a very generic term, but clearly there are a number of categories of software features most commonly found on PC’s/Macs/iPad.

I’m thinking of things such as “embedding video into your apps, online user game interaction, online chat, forums for users to communicate, speech to text, text to speech, animation, GUI drag and drop functionality, user-friendly and “slick” looking UI / GUI, client-server communication, replication, speed of application, using parallel processing, integration/communication with 3rd party hardware devices such as Rasberry Pi or Arduino, real-time applications with quickest response time possible, drag and drop, forms integration, integration of ad-ware to monetize the app, integration of user-controlled ‘special effects’ in video apps, integration of sensors of all types, etc.

Is there possibly a listing of these types of ‘generic’ software features somewhere on the internet that lists them and discusses the relative ease of coding these features into one’s software – such as native library support for the features, 3rd party or add-in library support, language features, etc. ?

  1. Max
    February 8, 2013 at 7:07 pm

    I think a google search would be better.

    Xcode & Visual Studio has some of these "generic" features you talk about.
    If you are wondering about 3rd party integration for example a twitter statistic it would be available in twitter's API Documentation.

    • Max
      February 8, 2013 at 7:10 pm

      Also, like people said above, you should learn the basics of programming something before thinking of implementation.

      I think you have the impression that you can easily just drag and drop a "slick UI" onto your application and have it work but it's much more than that.

  2. muotechguy
    January 30, 2013 at 4:35 pm

    It's more a question of which language you feel confortable in; there's always a library to add whatever features you want. How about actually diving in and trying to program something instead of wondering about theoreticals? ;)

  3. Lisa Santika Onggrid
    January 30, 2013 at 1:28 pm

    There is no listing of that such as far as I'm aware of. You can have discussion regarding specific cases in sites like StackOverflow and Quora, but I've never see broad thread discussing the relative difficulty of all kind of features.