Need some quick help on designing an App for a Uni project

Discussion in 'Public Game Developers Forum' started by shenfrey, Oct 17, 2013.

  1. shenfrey

    shenfrey New Member

    Jan 2, 2010
    1
    0
    0
    Hey guys,

    Our brief is to design a app, not to physcially create it. However we need to take it seriously and think about the development costs and software we will need to design it. Our idea involves food recipes, picking the food you want to use and then the app will give you a recipe that uses them ingredients.

    My question is, what software will we need to design it for an iPhone aside from Xcode and Photoshop? We will need any backend databases or anything simillar? Can the App be designed entirely using Xcode if we were to choose to go with no images?

    Any help would be greatly appreicated, thanks guys.
     
  2. Destined

    Destined Well-Known Member

    Aug 11, 2013
    1,063
    0
    0
    It would be silly not to go with an sql database for this? Why would you have no images, people are visual. Lots of people would have no interest.

    netbeans can be used to write the php scripts you will need. Getting a database is cheap now days.
     
  3. #3 MindJuice, Oct 24, 2013
    Last edited: Oct 24, 2013
    Xcode can certainly be used for this app even if it requires images. You can also use Xcode to edit the scripts for the backend, although there are better alternatives.

    For the backend, you could go with something like MySQL, but a simpler option is MongoDB with node.js or Python (in particular, python-eve is awesome for whipping up a Mongo-backed REST API for an app).

    If you want an administrator to be able to add new ingredients, recipes and images, you'll probably also want to include a simple dashboard with login capabilities. The dashboard can also call into your REST API to view and edit the data. You'll, of course, need a web server for this (nginx or Apache). You can write the code to create your web pages in PHP, Python, Ruby, etc. Lots of choice there.

    You'll also need to decide on CSS or a variant (less, SASS, Stylus, etc.), templating engine (Jade, Jinja, etc.), web scripting language (Javascript, CoffeeScript, Dart, etc.) You might also want a framework like Twitter Bootstrap. There are many little pieces to think about.

    Alternatively, this could be done with manual calls to the REST API, but it would not be fun.
     
  4. Simengie

    Simengie Well-Known Member

    May 14, 2012
    101
    0
    0
    Well I guess I see this different than what was listed so far. For a Uni project I suggest a self contained app with no back-end server requirements. For a Uni project this is pretty straight forward and minimize the skill sets needed. The app would have its DB done in Core Data. This keeps you contained to writing Obj-C code for the whole of the project and reduced the skills you would need to have to complete the project. I would replace Photo Shop with GIMP to reduce start up cost if you don't have PS already.

    The concept is simple really. A user input area that lets them put one ingredient per line to be used as search terms for a DB look up. The look up would rank results based on the number of requested ingredients that where found and what percentage of the recipes total ingredients that the search terms represented. If you entered 5 ingredients and recipe A has all 5 and it has a total of 20 ingredients it would have a score of 100 and 25 (100 being perfect test results). Recipe B has all 5 ingredients and it has a total of 10 ingredients for a score of 100 and 50. The results list would list Recipe B then Recipe A. Concept could be expanded to allow other scoring areas. But that is the basic idea.

    Being self contained you could allow the user to add their own recipes to the DB. As it is CoreData based you could back up and keep up to date across devices using iCloud.

    Probably way more in depth that I needed to go. But you can build a great app for a uni project and not need anything more that XCode and GIMP. While I agree that a centralized DB on a server would be long run a good idea for a commercial product I do not believe the additional effort makes any sense for a uni project.

    In a pure start up cost situation, you remove a lot of overhead cost for an app that you do not have any market analysis for. The bigger point would be that when you do find the need for a server based DB a good design would allow you to simply point at it. I will explain.

    The search entered actually searches 3 DB's.
    The user input recipes DB
    The default provided recipes DB
    The server based expanded recipes DB

    You turn on the last one only when the app's demonstrated it is viable and will support the overhead cost. Until then use regular app updates to expand the default provided recipes DB.

    Overall this is a progressive design that would allow you to grow the product. As you develop it. Consider for a moment, that the default provided recipes DB will need to be populated at some point. If you use the user input mode to add everything and simple use a hidden developer option to export/email the DB to yourself you could just drop it in as the default provided DB. It is one less interface you have to develop.

    Hope this gives you some insight in how to go about this in manner that allows you to progress and expand at a reason and controlled pace.
     

Share This Page