views:

41

answers:

2

I want to develop a social networking web site in java. I want to use Spring, Hibernate, Jasper as well as sms apis.

At fresher level, I want to know if I am on right path to use these technologies ? Suggest something more if I should follow.

What database I should use ? (PostgreSQL, MySQL etc.)

And, at last, what architecture I should follow for this development ? means How do I structure my development to get my web ready ?

A: 

It doesn't make a great deal of difference - PHP, Java EE, ASP.net are all quite capable. And again any sensible DB should be fine, so MySQL is a fair choice.

I'd personally use Java + MySQL but that's only because I don't like/use PHP and I don't know.net well enough.

You could also quite legitimately use Ruby [on Rails] or one of the Java-based languages like Groovy.

John
Actually, I don't know RoR or groovy. Are the easier to learn ? Should I go for CMS ?
Sarang
@Sarang if you want to be productive use what you know best. If you want to learn, those might be fun and a bit different from things you already know.
John
A: 

You might want to read chapter 6 titled "Data Grows Up: The Architecture of the Facebook Platform " in the book Beautiful Architecture: Leading Thinkers Reveal the Hidden Beauty in Software Design. Disclaimer: I've co-edited the book, but I don't profit from its sales; author royalties are donated to the international humanitarian aid organization Médecins Sans Frontières. The chapter on Facebook's architecture seems to be summarized in this blog post.

Diomidis Spinellis
_Is_ FB considered good architecture? Hard to think something that's had to grow to support 200+million users in only a short time can have avoided a lot of tortured hacking :)
John