Bring this dinosaur web developer back to the future!
April 6, 2011 2:23 PM   Subscribe

Bring this dinosaur web developer back to the future!

It's been years since I did web development. I started back in the day on UNIX, with vi, sh, hand-coded html, perl, awk, sed, csh, all that good pre-Web 2.0 stuff.

OK, here's the project. I imagine there are better tools out there now - please point me to them!

PURPOSE: a website for veterinary medical interns to
1) rate and review veterinary internships*
2) help each other through overnight emergency shifts, by sharing information, expertise, support

*Veterinary internships are not regulated by any professional organizations, and some are downright exploitative. However, there's no forum for providing any feedback about these programs. Having seen a couple of friends go through them, I want to help future veterinary students make good decisions by having good information available.

1) Login to forums (Real Names) - the user can use Facebook or Google or our own site-specific login to interact with the website. It'd be nice for the forum to have "add to favorite" and "like" features a la askmefi.
2) Anonymized feedback on internship programs - with some sort of control on "one person, one vote". The user needs to feel very safe from retaliation by the program administrators. (Not wikileax level, but safe.)
3) Internship program ratings - using a SQL database.

This is self-funded. Labor is free - with UNIX, SQL, and coding skills. I can pay for hosting for up to, oh, say, $100/month. I've been looking at, or a virtual server would be nice too.

So, I need recommendations for open-source CMS, forum server software, database server software, hosting, etc. What is the lingua franca these days - PHP? Ruby on Rails?

If you were putting together a website like this over a few weekends, what would you use?

I thank you, and many future vet students thank you!
posted by metaseeker to Computers & Internet (11 answers total) 6 users marked this as a favorite
Best answer: I would do Python (Django), or Rails.

1) Your logins are actually one of the more complicated pieces! If you are using google addresses anyway, maybe consider using google app engine?

Holler as you need more help :)
posted by gregglind at 2:33 PM on April 6, 2011 [1 favorite]

Best answer: If there's a lingua franca, it's PHP. It's the most widely used server-side scripting language.

Folks will tell you that it's an ugly language, for any number of reasons. Many of those points are valid. But it's also a perfectly serviceable language for small-to-mid-size sites (and even some pretty huge ones, such as Facebook), easy to learn, almost universally supported by webhosts, and has a thriving community and a large base of open-source libraries and applications.

I've been (slowly) learning Python and Django as I have time, and I definitely like them. They I wouldn't recommend them to a novice or someone whose web development skills are rusty, though.
posted by ixohoxi at 2:36 PM on April 6, 2011

er...I meant to delete "they", of course
posted by ixohoxi at 2:37 PM on April 6, 2011

Best answer: Still hand-coding in vi. But I'm hand-coding Wordpress template files. Moving into Django. But Wordpress has so many free plugins that you can quickly make it do just about anything.

If you come from the world of sh and awk, I think you could tackle Django/Python pretty easily. But it might take more than a couple weekends.
posted by Victorvacendak at 2:40 PM on April 6, 2011

Response by poster: To clarify - the "couple of weekends" is what I imagine many of you would need to quickly whip up something like this. :-) I myself have plenty more time to devote to this labor of life.

Looking into Django and Google App Engine.... thanks for those leads! Oh, and I can code in C, Java, so python and all that is fine.
posted by metaseeker at 2:43 PM on April 6, 2011

Best answer: DEFINITELY look into a web framework.
While back in the day you had to roll everything yourself (user registration, templating system, etc) nowadays most of the heavy lifting has been done for you so you can focus on specific features you need for your project rather than to re-invent the wheel.

I would read up on search on stackoverflow for comparisons (like say, this one comparing Python web frameworks).
There are pros and cons for each web framework, no matter what language so it's really up to you to research what fits your needs best.
Pick a language that easiest and makes sense the most for you, whether it be Python, PHP, Ruby, etc. From there, there are contenders for each language - Django for Python, CakePHP/Symfony for PHP, Rails for Ruby, etc. Good luck!
posted by xtine at 2:46 PM on April 6, 2011

Response by poster: Oops, I meant "labor of love". And seriously, y'all are awesome.
posted by metaseeker at 2:57 PM on April 6, 2011

Drupal! - I find that 90% of the time, when there's some piece of functionality I want to build into a site, somebody's already written a module for it. (The hard part: sometimes there are several and it's tricky to choose which one.)

The book "Using Drupal" is pretty good, and has some nice sample projects, including a product review site.
posted by epersonae at 5:02 PM on April 6, 2011

FWIW, here's some modules that look promising:

Facebook Connect
Google Friend Connect
VotingAPI plus Fivestar
posted by epersonae at 5:06 PM on April 6, 2011

Joomla has a pretty big installed base as well; it's a PHP-based open source CMS. (I use it professionally some but not by choice.) again, lots of plugins, fairly easy to set up, good integration with other stuff - it ships with Google integration by default, and Facebook Connect is an extension away. same with the forum and ratings things. you may not need to (from scratch) code any of this stuff unless you really want to. (this, FWIW, would hold true for Drupal or WordPress too.) depending on where you host this thing, you may have Joomla (or Drupal or WP too) available as an easy install or one-click install option - I know DreamHost specifically does offer WP and Joomla in such a manner.

as for just frameworks, you have several options in PHP. some of the bigger ones are Zend Framework, Code Igniter, Lithium, Symfony and Solar. there are, of course, many many others, but these are fairly popular. they all (to some extent) take care of some tedium and enforce things like MVC patterns and deal with some security concerns.
posted by mrg at 6:06 PM on April 6, 2011

Drupal out of the box will suit you just fine. Features include fancy user management and social networking, forums, polls, skinning, and much more.

It should take you no more than a day to install and customize. Even better, don't install it yourself and look for a hosted drupal service instead. (Make sure they provide Drupal 7 e.g. hostgator).

At the very minimum, give it a try it before you dive into hand coding a solution from scratch.
posted by rada at 10:55 AM on April 8, 2011 [1 favorite]

« Older Zombie sewer movie   |   The force is not with me in remembering this video... Newer »
This thread is closed to new comments.