• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Apps What do I need to make this app

Hi everyone,

I am a complete novice as far as coding is concerned (please excuse me using any incorrect terminology here) and have a few questions about what I will need from an infrastructure perspective to make this app:

I want to make an application that showcases artwork from a variety of different artists, which can be refined by things such as artist, style, content etc.

I would like to have users register to be able to like and comment on artwork and for this artwork to be updated on a weekly basis by myself.

Navigation for the user would simply be a "feed" similar to what you have on Facebook or Twitter - with the pictures just streaming down the screen.

In my mind, it is basically just like a shopping app without a payment system - but here is where I start to get lost.

I assume that I will need some central server or database that I can update with the artwork that then feeds to all the users that have the app on their mobile. If this is the case -

1. What programming language/software do I need to make this database?

2. Further to this, where am I storing the data (anything from the artwork to the user profiles) - is it stored in the cloud or do I need to have a physical hard drive connected to the internet?

From the user end of the application, I have downloaded the Android SDK from Google and that is it so far.

3. Is this the correct thing to create the user end application or do I need to look for other software to work with and learn?

I appreciate this is pretty basic stuff that I am asking and it may seem I am getting ahead of myself but I want to know what areas I need to target my learning and understanding to get this off the ground.

Any help or comments would be greatly appreciated - thanks in advance.
 
Navigation for the user would simply be a "feed" similar to what you have on Facebook or Twitter - with the pictures just streaming down the screen.

In my mind, it is basically just like a shopping app without a payment system - but here is where I start to get lost.
I think I'd go more in the direction of just a website and they could use their browsers. Otherwise you're developing both the site and he app and doubling your work.

I assume that I will need some central server or database that I can update with the artwork that then feeds to all the users that have the app on their mobile. If this is the case -

1. What programming language/software do I need to make this database?
You don't make the database, you use one that's already made, like MySQL. You use SQL to talk to it. You could use PHP, Ruby or Python as the programming language on the server.

2. Further to this, where am I storing the data (anything from the artwork to the user profiles) - is it stored in the cloud or do I need to have a physical hard drive connected to the internet?
You're storing textual data in the database, on your website. You're storing the artwork as picture files, with their names and locations stored in the database.

Where the database runs is on a server connected to the internet. Whether you run that yourself (you'll need backup power, otherwise a power failure and you're off the air, you'll need daily off-site data backup pickup, you'll need redundant fiber to the internet [or the next moron who digs a hole to get down to a water pipe puts you offline for a week or two], you'll need a backup server, you'll need a system to call your cellphone if the server goes offline) - or you buy server space for about $25/month and let them worry about all that and more, is up to you.

3. Is this the correct thing to create the user end application or do I need to look for other software to work with and learn?
As I said, I'd do it as a website and let the users use their web browsers to connect to it. The website could automatically email them any time there's something new to look at.

I appreciate this is pretty basic stuff that I am asking
That's what most "web developers" think, and it's why we have so many terrible websites out there. It's not "pretty basic stuff", it's a few weeks of designing the system, then a few weeks of writing it - at least. You can chop a tree down with the "pretty basic stuff" of swinging an axe at it, but if you haven't planned the work first, you could drop the tree on your house. And most websites done by amateurs work like they had trees dropped on them.

First figure out the advantages and disadvantages of doing it either way - a website and the users using browsers, or a dedicated server and an Android app. Then figure out exactly how the way you choose is going to work. Then design the system. (When you're finished, go back and add in all the stuff you forgot, and change all the stuff that won't work with the stuff you designed later. Keep going back and forth like that until you think it might actually have a chance of working.

Once it's all designed, it's time to start writing code. That's the easy part. Once Shakespeare figured out how the story was going to go, and what catchy phrases to use, anyone could have written his plays down.

The coding is the easy part - WHAT to code is what takes 99% of the time and effort.

Then run it and note down all the things you forgot, did wrong, didn't do, etc., go back to the beginning, fix all those things up, run it again, etc., etc. - until it actually works.)

(I probably left out a few things, but this is you project, not mine, so I'm not going to go back and add in the things I left out, fix the things that are wrong because of what I wrote later ... see how that works? Your software is never really finished until you are. You write the last mod as they nail the coffin shut.)
 
Back
Top Bottom