Say I wanted to create a basic website where users would
- Have their own accounts (with username and password)
- Be able to upload photos and accompanying text
- Be able to comment on others’ uploaded photos
I guess one could write the above from scratch using PHP/MySQL/etc, but the above set of features is quite basic these days.
So are there any pre-fabricated software packages that have most of the above already written, and you just take the code and customize it for your case?
Yes - look at either Flickr (they provide a groups feature which might suffice) or if you truly want to have it be a separate thing, look at Gallery.
How technical are you? Look at Joomla. You can get all sorts of plugins for Joomla including photo galleries with text. Allow people to post pictures, sign up for accounts, etc.
No real programming is involved, but you do need to be technical.
Take a look at http://njkinus.org which is one of the Joomla sites I’ve setup. There’s a photo gallery there.
I had another site called Goodbye Dick! The idea was that Dick Cheney was soon to be leaving office, and people posted all sorts of vacation possibility pictures, LOL pictures, etc. Unfortunately, I took the site down to use it for something else because it probably had the types of features you were looking for.
Try Drupalor e107 for content managment, both are free and quite powerful