Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie

App Development Timeframe

Options
  • 05-04-2014 10:13pm
    #1
    Registered Users Posts: 1,639 ✭✭✭


    Hi all,

    A friend and I have put a lot of work into collecting geo location data across Ireland over the past three to four months. On top of that we have been manually collating accompanying additional data with resepct to each geo location data point. Unfortunately, the information wasn't available for the most part freely so we've logged a lot of calls and emails chasing this data up.

    There are desktop sites around who have some of the individual components of what we are looking to do, however, there is no-one doing what we propose on a mobile platform at present (there are two apps who do a very small version of what we do, but they are poorly executed with insufficient info/useability for them to be succesful).

    We are now at the point where we are looking to develop an app based on the data we have collected at this point. Whilst we are both fairly in tune with mobile technology we are for the most part illiterate when it comes to programming (I'd have a good bit of VBA but nothing more than that save for some basic enough Ruby online learnings I've done). Given the shortfall in tech knowhow we are looking to outsource the development of the app.

    We would appreciate if people on here could advise us (if possible) on the below requirements with respect to how long we should budget for a reasonable amount of hours to complete the project which in turn will help us to budget for the project. Our preference would be to get two developers to work on the project with a track record each in iOS and Android development unless we could find someone who can show they have produced good map based apps on both platforms . Something we are considering is hiring an Irish developer (on a consulting type role) to oversee the development of both apps using somewhere like ODesk to source programmers abroad. One benefit of this in our mind is that an Irish developer would be easier to interact (i.e. explaining the tech stuff in a non so tech way) with and would help identify potential timewasters/chancers if we decided to outsource abroad.

    Requirements:

    Platform: Android and iOS mobile only. Desktop in the future if sucessful.
    UI Design: Stock templates from the iOS or Android SKK developer kits
    User Registration: Just want a database listing of users who would be required to log in to use the app. No social network login required.
    Database Creation: We have the geo data and associated data that goes with it. The database would require updating weekly on a specific day. We would like users to be able to submit database updates which would be reviewed by either of us. Database updates would be simple Yes/No responses.
    Mapping: We have thought about the pros and cons of including Google/Apple maps within the app but we are think it is best if the geo data parameters are passed to these individual apps i.e. users would be taken out of our app and into Google or Apple's native mapping apps.
    User Input: We would like to have a feature whereby a user could submit their current location along with accompanying data. We imagine this to be similar to the likes of whatsapp's 'share my location' feature. We would like the info when shared to capture geo location data i.e. longtitude/latitude co-ordinates.
    Advertising: No in app advertising
    In app purchasing: No in app purchasing required.
    Push Notifications: We would like users to be able to select a number of locations and receive weekly updates that could be viewed upon opening the app.

    Thanks all for feedback and comments you have! PM me if you prefer.


Comments

  • Registered Users Posts: 1,639 ✭✭✭LightningBolt


    Anybody able to offer some guidance on the above? Tried to be as specific as possible, perhaps I was too specific?


  • Closed Accounts Posts: 19,777 ✭✭✭✭The Corinthian


    Anybody able to offer some guidance on the above? Tried to be as specific as possible, perhaps I was too specific?
    OK, I'll bite.

    Reading through your spec, it appears pretty straightforward and not overly complex, to the point that I would look at the possibility of using a multi-platform framework, such as Titanium or Unity. The advantage of that approach is that you need only a single codebase for both versions, which naturally cuts down your development times and resource needs (not by 50%, as you'll still have to include OS specific code).

    Where such an approach won't work is if your app is going to be particularly complex or avail of specific API's that are not supported by such frameworks. As what you want appears to be pretty basic, it may be an option.

    Note I say may, because genuinely I can't fully judge unless you go through your functionality spec in detail first.

    LBS (GPS and geo-data manipulation) appears to be the only particularly 'clever' functionality involved, so where comes to what experience you should be looking for in a developer I'd ask them how they would go about getting the distance between to geo-locations, in any interview. I'm sure you know it's not simply hypotenuse calculation, but you'd be surprised how may developers with 'LBS experience' don't.

    Done natively, I'd guestimate each platform could be comfortably done in about 15 working days - much, much less (under 10) if you have a well-written and clear spec. Using a framework, I'd guestimate between 60% to 75% of the time that it would take to do two separate native apps.

    However, you don't simply have an Android and iOS app to do, but also a Web site that it'll need to communicate with, where you appear you want to manage your user logins, news stories and so on. Excluding any public brochureware front-end to such a site, you're probably talking well over 20 working days once you add in everything you want it to handle, as it actually appears to be quite a bit when you think it through.

    Indeed, most of your development costs will be Web, rather than app based.

    If you outsource abroad, either you should have experience in doing so, or hire in someone locally with experience to PM them. Otherwise it becomes pot luck and you could get seriously burnt if you're unlucky, as you've already realized yourself. Rule of thumb is they'll likely cost you about 15% - 20% of the hours being billed by the developers (but naturally at local rather than outsourced rates).

    That's about it. Usual caveats about this being free advice and full of assumptions and so on apply. Hope this helps you.


  • Closed Accounts Posts: 5,361 ✭✭✭Boskowski


    You'd call a library function to determine the distance between two gps points :)


  • Closed Accounts Posts: 19,777 ✭✭✭✭The Corinthian


    Boskowski wrote: »
    You'd call a library function to determine the distance between two gps points :)
    I meant from first principles naturally. Understanding what you're coding can make a big difference from someone who's just plugging data into a black box :p


  • Registered Users Posts: 1,639 ✭✭✭LightningBolt


    OK, I'll bite.

    Reading through your spec, it appears pretty straightforward and not overly complex, to the point that I would look at the possibility of using a multi-platform framework, such as Titanium or Unity. The advantage of that approach is that you need only a single codebase for both versions, which naturally cuts down your development times and resource needs (not by 50%, as you'll still have to include OS specific code).

    Where such an approach won't work is if your app is going to be particularly complex or avail of specific API's that are not supported by such frameworks. As what you want appears to be pretty basic, it may be an option.

    Note I say may, because genuinely I can't fully judge unless you go through your functionality spec in detail first.

    LBS (GPS and geo-data manipulation) appears to be the only particularly 'clever' functionality involved, so where comes to what experience you should be looking for in a developer I'd ask them how they would go about getting the distance between to geo-locations, in any interview. I'm sure you know it's not simply hypotenuse calculation, but you'd be surprised how may developers with 'LBS experience' don't.

    Done natively, I'd guestimate each platform could be comfortably done in about 15 working days - much, much less (under 10) if you have a well-written and clear spec. Using a framework, I'd guestimate between 60% to 75% of the time that it would take to do two separate native apps.

    However, you don't simply have an Android and iOS app to do, but also a Web site that it'll need to communicate with, where you appear you want to manage your user logins, news stories and so on. Excluding any public brochureware front-end to such a site, you're probably talking well over 20 working days once you add in everything you want it to handle, as it actually appears to be quite a bit when you think it through.

    Indeed, most of your development costs will be Web, rather than app based.

    If you outsource abroad, either you should have experience in doing so, or hire in someone locally with experience to PM them. Otherwise it becomes pot luck and you could get seriously burnt if you're unlucky, as you've already realized yourself. Rule of thumb is they'll likely cost you about 15% - 20% of the hours being billed by the developers (but naturally at local rather than outsourced rates).

    That's about it. Usual caveats about this being free advice and full of assumptions and so on apply. Hope this helps you.

    Thanks for that The Corinthian. Very informative. Our plan is to only have a mobile platform with an online database to keep track of user registrations and store real time user updates relating to the geo data i.e. visibility poor/average/good. Would you recommend building out a website in conjunction with the apps? Users would be accessing this information outside as opposed to sitting down at home or in the office so we were looking to push mobile as the preferred platform, however, you are far more experienced in this regard. If you think a public website is required we will take that advice on board. Thanks again.


  • Advertisement
  • Registered Users Posts: 7,868 ✭✭✭The_B_Man


    Thanks for that The Corinthian. Very informative. Our plan is to only have a mobile platform with an online database to keep track of user registrations and store real time user updates relating to the geo data i.e. visibility poor/average/good. Would you recommend building out a website in conjunction with the apps? Users would be accessing this information outside as opposed to sitting down at home or in the office so we were looking to push mobile as the preferred platform, however, you are far more experienced in this regard. If you think a public website is required we will take that advice on board. Thanks again.

    The "online database" will have to be stored on a web site. Not necessarily web pages with content, but at least a server that stores the database that your phones connect to.


  • Closed Accounts Posts: 19,777 ✭✭✭✭The Corinthian


    Would you recommend building out a website in conjunction with the apps?
    OK, let me explain; with the type of architecture and functionality you're looking for, you have to build a 'Web site' in conjunction with the apps, even before them, as you appear to be doing a lot of stuff online which the apps will need to have access to.

    As The_B_Man pointed out, your "online database" isn't in some magical cloud ready to go once unwrapped - it's on a server and has to have a good bit of business logic programmed around it so that it's actually useful.

    When I say 'Web site', I don't necessarily mean something like this, with pretty pictures and human readable, but a Web application which would be more machine friendly. The most a human will see with a browser is holding page, or potentially they could access one of your feeds and see lots of publicly available code (probably JSON or XML) and raw content.

    As such there will be a fair bit of server-side development that has to be done, even if you don't need a traditional 'Web site' - not just to handle all the uploading of user geo-data, updates or registrations, but also to administer it and your user base (and you'll need some sort of protected Web console for that, won't you?)

    Whether you do a more traditional Web site at the same time, is a marketing question that you need to answer, but you'll technically already have a Web presence either way. One page corporate site, interactive consumer site or nothing (a holding page). Up to you and your marketing strategy; I just mentioned a basic brochureware site as an afterthought.

    My main point was that much of your development work - potentially the majority - will actually be Web rather than app programming. As such, if you get only timelines for developing the apps, you'll be omitting a very significant portion of the overall project.


Advertisement