The structure is basically HotorNot/FaceMash to start. That will be the minimum functionality. From there I'd like to improve it and add the features that will actually make it wicked fun but at the very least a HotorNot that people can contribute to is the immediate goal.
Is it a waste of time to build that into Wordpress to use all of the user, db and registration framework but have to build a plugin for the whole purpose of the site?
Would it be better as a dead simple app built from scratch on a more modern framework?
Should I go with PHP so I can get cheap coding help or man up and learn a big boy language so I can finish it myself in 10 years or go broke trying?
Thanks for reading =)
UPDATE: Thanks for the wicked response, it's great to be able to 'talk' this out with the HN crowd!
Drupal on the other hand forces you to follow some guidance in how you deploy custom modules or make modifications. Sure, you could use complete custom code in Drupal, but it is not as easy to interface with. Wordpress will provide me a window into my custom code and let me hack at every aspect. In its rawest form I end up getting something to manage my blogging, pages, posts, comments, users, etc. all while consuming my hack custom code without issue.
The biggest advantage of Drupal is, that probably you won't have to write a single line of code for this. You would need to learn how Drupal works (on a high-level, basic stuff), then just piece together existing modules and configure your website. That's the main idea behind Drupal - to be able to build and maintain websites without the help of a developer. This doesn't mean that the resulting Drupal module code is overly complicated and difficult to maintain, quite the opposite, it has a great community with high coding standards. Drupal was also meant to be used to build community websites, so it supports structures for multiple users creating content.
If you want to make sure something is more custom I would look at using symfony PHP framework, Ruby on Rails, or Django.
My personal favorite is symfony. You can also add the Zend Library to that framework. Most of my framework experience has been with symfony.
Keep in mind there will be pros/cons to any framework you use.
Check out these: http://www.peopleofwalmart.com/ http://www.beachcreeps.com/ http://latenightmistakes.com/ http://whitetrashrepairs.com/
The list goes on. The area he is stepping into is ran by non-techies who churn and burn. I have spoke and pitched ideas with them. Their usually later 30 year olds who have latched on to a cookie cutter framework template (Wordpress) and pump out ideas with little or no care if they fail.
Investing a lot of time in this strictly from a goal of making money is not worth it. If the goal is to learn, maybe make money then I say you choose something that you are really interested in and could see yourself using later.
A blog I would make on Wordpress in a heartbeat, I wouldn't bother you guys about a blog =)
I have played with Django even less, but it may be worth looking into as well as checking out Google App Engine.
My area of expertise is with custom applications and planing those applications. For what you want I feel that you can either use Drupal or a number of different frameworks.
Drupal can be used with a custom module. It will be easy to find a programmer that can create one for you and it would be easy to find someone that can create a custom theme for the site. Since you will be using Drupal, you would have access to all the features of it. You may run into issues when you start working on your mobile app.
Frameworks (symfony, Django, Rails, etc) will give you more flexibility when it comes to more custom options such as your rating system and more detailed user profiles. Most of my experience is with symfony and I am going to assume that other frameworks have some of the same functionality. Frameworks might be a better fit since you want to incorporate a mobile app.
The reason I would not use Wordpress is because for all you want to make, it is just not a good fit. Wordpress is mainly used for blogs (see one of the above comments) but what you want to make is a lot more then just a blog with some pretty pictures. There will be some type of interactivity on the site such as rating images.
I hope this makes more sense then my original comment =)
In addition to web.py (mentioned below), there is also cherrypy. There are a lot of great lightweight frameworks that still give you some of the benefits you get from something robust like rails or django.
I personally use Django and I think it has the most power per unit of work - this is mostly because the documentation is so good.
Rails is a totally valid option also.
I don't know anybody working on a PHP framework right now who is happy about it, whereas I meet plenty of happy Rails and Django people. There are a bunch of cool looking frameworks like Lift, web2py, etc... but stick with Django or Rails if you're not sure what to do.
Also, nobody ever wants to put their neck out and say it, but MySQL is easier than Postgres to use and manage IMHO.
Facebook was written in PHP...
Re: language choice, pick whichever you are comfortable with, they all kinda do the same thing and you can mix/switch to other languages if the need for them arises later. If you go with PHP, better to go with a MVC framework like Cake or CodeIgniter or whatever, rather than Wordpress, because the Wordpress codebase is famous for being a mess.
Re: ambitions: I'd suggest doing some reading on angel investing etc before assuming you can make a "FB and mobile app" with merely some "cheap coding help".
As for ambitions, I don't see an investment need any time soon but the FB and mobile apps are where the real user base (and money) is for this thing, so I'd like that to not require a full recode or a lot of pain.
This is not to say the whole thing has to be done by yourself, but it's best that you try it alone first. This way you'll know what to look for when you're bringing someone else on.
I really like Ruby and the Rails framework so that's all I can recommend based off of experience.
There are a ton of free resources to check out and the premium resources are definitely worth it too.
www.railsforzombies.org
www.tryruby.org
www.railscasts.com
www.railstutorials.org
www.css-tricks.com (CSS and HTML)
www.pragprog.com (premium)I actually gave a talk at a local WordCamp about this. I built a couple prototypes that had APIs via simple plugins and leveraged WP users and posts (with custom post types) for content. And nearly everything can be abstracted out to the point that users won't know it's running on Wordpress.
As far as what YOU should use, the correct answer will always be "whatever you're comfortable with."
What you should do is first try the base language of each and see which one is easiest to work with. Then you can go from there.
Honestly the most important thing is that you ship.