Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Samberino

macrumors newbie
Original poster
May 27, 2004
24
0
So I did a search on the forums to try and find specific answers to my questions, but haven't been able to. I would appreciate any help I can get with

Below is the summary of the project I am faced with for University:
Aim: The aim of the project is to design and implement a web site to facilitate sharing the sort of
stories that people have when they have been travelling. Visitors to the website will be able to
search the storybase, add their own stories and comment on existing stories.

Basic tasks:
* design and implement an underlying database to store the stories and user details.
* design and implement the web interface which allows stories to be submitted for
moderation.
* link the website and database.
* provide the means for successfully moderated stories to be entered into the database
and therefore be available on the website
* allow users to search for stories using keywords.

I have a MacBook running on Leopard and a Dell Laptop running on XP, so platform is not a problem. I would like to know what would be the simplest & easiest way to implement the above requirements? My friend has suggested I use Oracle & Developer Tools. Is it infact the best solution?

Do pardon my ignorance here, but I would appreciate any information on:
1.) the best set of tools/applications to use for my project?
2.) any guides, tutorials, step by step instructions on how to proceed?

I have some basic knowledge of HTML & SQL queries.

Thanks.
 

Super Macho Man

macrumors 6502a
Jul 24, 2006
505
0
Hollywood, CA
Oracle/Developer Tools is one of many options. It's good that you have basic HTML/SQL knowledge, but that's not enough - you need to learn a server-side programming language as well. Here is what I would suggest:

1) Choose a programming language (PHP? Perl? Python? ASP? Ruby?)
2) Choose a database (MySQL? PostgreSQL? Oracle?)
3) Choose a database client for your database (not strictly necessary but makes db management easier until you get the website interface for adding/removing/modifying records fleshed out)
4) Get a good book that discusses all of this, brew a lot of coffee and read your ass off (this is without a doubt the most important step)
5) Implement

The PHP/MySQL combo is the most commonly used, which means it is the most newbie-friendly and has the most end-user documentation. For the most part you can use any combination of (1) and (2). I personally don't like Oracle but that's just me. Oracle's db client is good (SQL Developer) but their free db (Oracle XE) doesn't run on the Mac.
 

iSee

macrumors 68040
Oct 25, 2004
3,540
272
First, I'd check with your professor or whomever to make sure your options are really wide open. Usually when you are ask to implement a class project there are some guidelines on the tools to use.

If it really is wide open, then choosing an appropriate tool stack is really part of the assignment. Here's my advice:

(By the way, I don't think I'm giving too much help for a school assignment--in the real world, asking advice on direction is an excellent first step in coming to a good solution to this kind of problem.)

Really, this kind of app can be implemented fairly easily using any of the common tool chains people use to develop web apps. The answer is really, "Whatever tool chain you already know best."

Since it doesn't sound like you have much past experience in this area, I think you should choose based on the availability of good tutorials.

I saw some on the main "Ruby on Rails" site that looked good. Here's a link. Look at the tutorial section. There's even a link to an article specific to Mac OS X. http://www.rubyonrails.org/docs
 

Samberino

macrumors newbie
Original poster
May 27, 2004
24
0
Guys, thanks for your input / suggestions. It looks like I am down between MySQL & PHP, and Oracle + Developer tools.

Even with the information I have, I am not in a position to favour one over the other, and would appreciate any final thoughts or winning arguments in favour of either of the 2 potential solutions.

Thanks.
 

ChrisA

macrumors G5
Jan 5, 2006
12,914
2,164
Redondo Beach, California
Even with the information I have, I am not in a position to favour one over the other, and would appreciate any final thoughts or winning arguments in favour of either of the 2 potential solutions.

Just about anything will work. You could use PHP, write a CGI script in Perl or "whatever". For a short project like this I would choose to use whatever I already know best even if that was something web designers don't use much. Learning to tool can be the bulk of the project. All you are doing is presenting the user with some HTML forms and capturing the data to a DBMS. I'd use a Perl cgi-bin script (using exactly the technique descried in "learning perl" (http://www.oreilly.com/catalog/lperl3/) for that is just because for me it's easy but it you have a more complex job it is worth it to learn a better tool.

One bit of advice: Get the DBMS design "right". Design a general purpose __fuly normalized__ table structure. You don't know exactly were the project will go and may change things later. You do NOT want to have to change the design of your tables

A good rule of thumb is a table should have each row represent a real-world "thing". So if you find you have a table that contains a column for "story" test" and other columns for the person who wrote it You've have a design error.
 

eastcoastsurfer

macrumors 6502a
Feb 15, 2007
600
27
Guys, thanks for your input / suggestions. It looks like I am down between MySQL & PHP, and Oracle + Developer tools.

Even with the information I have, I am not in a position to favour one over the other, and would appreciate any final thoughts or winning arguments in favour of either of the 2 potential solutions.

Thanks.

I would go with the MySQL and PHP (which generally also means Apache and frequently linux, which is often abbreviated as LAMP). There are lots of tutorial sites out there and additional tools to help you. Also, in your case I think Oracle would be over kill for what you need to get done. Plus the java based dev tools that come with Oracle are not very robust which is why anyone who does much with Oracle ends up purchasing TOAD.

I also agree with the post above that says take the time up front to get your db design done right from the get go. It will save you tons of time on the backend, because if you find you need to change your db design after writing code against it, it becomes a huge PITA.

Good luck!
 

Samberino

macrumors newbie
Original poster
May 27, 2004
24
0
Thanks

Thanks alot fellows, for the feedback. I knew owning a Mac was more than just owning a computer. Its the community & its user-base which makes it all the more sweeter.

Appreciate all the help.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.