How to build a social network

1,186 views
Skip to first unread message

Rodrigo Ruiz

unread,
Apr 20, 2011, 7:23:37 PM4/20/11
to Django users
Hi, I'm a new programmer and I want to make a social network like
facebook or orkut.

I only know the basics of C and a bit of Objective-C (OOP). I know
nothing about web programming.

My question is, where should I start learning how to make my social
network with python (django)? Any particular book? opencoursewares?
Tutorials?

I've searched google for that information but I found nothing, no
books on social network in amazon, no tutoriais teaching what I need,
only found an opencourseware about python from MIT but it doesn't
explain how to make a social network.

I only found something about pinax, didn't really understand what that
is and couldn't find any tutorias/books as well about social network
with pinax.

Thank you for your time,
Rodrigo

Matías Aguirre

unread,
Apr 20, 2011, 8:01:47 PM4/20/11
to django-users
Excerpts from Rodrigo Ruiz's message of Wed Apr 20 20:23:37 -0300 2011:

> Hi, I'm a new programmer and I want to make a social network like
> facebook or orkut.

Hi Rodrigo,



> I only know the basics of C and a bit of Objective-C (OOP). I know
> nothing about web programming.

I hope you don't do this on those languages :D



> My question is, where should I start learning how to make my social
> network with python (django)? Any particular book? opencoursewares?
> Tutorials?

First, you should learn web development, get used to it, take Django, do
a couple small applications that will teach you how all this weird things
work. There's a lot to learn here, but it totally worths the effort.

Second, IMO, this whole social buzz is overestimated, there's not much
difference with any other site beside that it's highly oriented to users and
built by users, so you should focus on user-oriented development here, the user
is the center of this little universe and interconnections are fundamental.

The main problem with this sites is scalability, but that's something you
should take into account when the site really suffers from this issue.



> I've searched google for that information but I found nothing, no
> books on social network in amazon, no tutoriais teaching what I need,
> only found an opencourseware about python from MIT but it doesn't
> explain how to make a social network.

Yeah, I don't think it will be to much around, scalability papers maybe, but
there's nothing different besides that that is worths writing.

> I only found something about pinax, didn't really understand what that
> is and couldn't find any tutorias/books as well about social network
> with pinax.

Pinax is a collection of applications that are usually needed by websites. It
makes your life a little easier because their setup already takes into account
the integration needed.



> Thank you for your time,

I hope this clears the things a little.

Good luck,
Matías

> Rodrigo
--
Matías Aguirre <matias...@gmail.com>

Ruturaj Dhekane

unread,
Apr 20, 2011, 8:02:25 PM4/20/11
to django...@googlegroups.com
Hi Rodrigo,

I feel Social network is a hype term that has come into picture in recent few years. However such instances already existed many many years back.
Social Network is a word of two parts, Social - which needs users/people and their interactions with the system, and the word Network- which means that the interactions are amongst the Users also. Such social networks already existed in the form of Forums, bulentin boards and even now as Email (mailing lists!!)

On Thu, Apr 21, 2011 at 4:53 AM, Rodrigo Ruiz <rodrig...@gmail.com> wrote:
Hi, I'm a new programmer and I want to make a social network like
facebook or orkut.
Since you have specifically mentioned Orkut/facebook you can design one on your own from basic principles of what is needed in the social network. 

I only know the basics of C and a bit of Objective-C (OOP). I know
nothing about web programming.

My question is, where should I start learning how to make my social
network with python (django)? Any particular book? opencoursewares?
Tutorials?
Django tutorial will be quite helpful in first place.  

I've searched google for that information but I found nothing, no
books on social network in amazon, no tutoriais teaching what I need,
only found an opencourseware about python from MIT but it doesn't
explain how to make a social network.

I only found something about pinax, didn't really understand what that
is and couldn't find any tutorias/books as well about social network
with pinax.

Later on you might want to read about AJAX to make your social network attractive by adding dynamism and study scalability issues in MySQL if your website becomes a hit.

-
Ruturaj
--
You received this message because you are subscribed to the Google Groups "Django users" group.
To post to this group, send email to django...@googlegroups.com.
To unsubscribe from this group, send email to django-users...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/django-users?hl=en.


Rodrigo Ruiz

unread,
Apr 20, 2011, 8:06:42 PM4/20/11
to django...@googlegroups.com
Can I learn how to make a socicial network website like facebook just with those Django tutorials?

Rodrigo Ruiz

unread,
Apr 20, 2011, 8:09:41 PM4/20/11
to django...@googlegroups.com
Another thing I still haven't decided is between python with Django or ruby on rails.

I know it's a Django group, so I know i must expect the good aspects on Django, but why should I use Django instead of ruby on rails?
I don't know any, so I can't defend any, but one thing I had trouble with pytho with Django is information on what I want. With ruby I found a book on amazon "RailsSpace - Building a Social Networking Website with Ruby on Rails" which is specifically for what I want (build a social network), but I wasn't able to find anything on django.

George Silva

unread,
Apr 20, 2011, 9:11:16 PM4/20/11
to django...@googlegroups.com
Your question is sorta of naive. With Django or Ruby you can build any kind of websites. Your software must provide it to be "a social network".

First of all, as others recommended, learn webprogramming. CSS, HTML are a must. Now for the "social" aspect of the thing, it will depend on your modelling, goals, and a lot of other things.

You can make a social network with django in three minutes, but I doubt you can make one as popular or as well designed as Facebook in that little time (and a lot of other things)

Well, good luck...

George

--
You received this message because you are subscribed to the Google Groups "Django users" group.
To post to this group, send email to django...@googlegroups.com.
To unsubscribe from this group, send email to django-users...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/django-users?hl=en.



--
George R. C. Silva

Desenvolvimento em GIS
http://geoprocessamento.net
http://blog.geoprocessamento.net

Kenny Meyer

unread,
Apr 20, 2011, 10:53:22 PM4/20/11
to django...@googlegroups.com
On Wed, Apr 20, 2011 at 8:09 PM, Rodrigo Ruiz <rodrig...@gmail.com> wrote:
> Another thing I still haven't decided is between python with Django or ruby
> on rails.
> I know it's a Django group, so I know i must expect the good aspects on
> Django, but why should I use Django instead of ruby on rails?

I think you will mostly get subjective comments and not good answers
on your question. Best thing is to try them both, and go with the one
you feel most comfortable with.

I will vouch for Django, but again, that's totally subjective, and a
pretty bad question on the Django mailing list. :)
Do a google search like "Ruby vs Django site:stackoverflow.com" and
you can get some quick results.

> I don't know any, so I can't defend any, but one thing I had trouble with
> pytho with Django is information on what I want. With ruby I found a book on
> amazon "RailsSpace - Building a Social Networking Website with Ruby on
> Rails" which is specifically for what I want (build a social network), but I
> wasn't able to find anything on django.

There is Pinax, as previously mentioned.

Rodrigo Ruiz

unread,
Apr 20, 2011, 11:02:57 PM4/20/11
to django...@googlegroups.com
What about things like being able to make a profire and show user content on your website (like a social network does), or making groups that people can sign up and that others can see? Aren't does things specifically to social network? It probably is a naive question, but i thought making a social network with these kinda features was different from making a static website like wikipedia.

Rodrigo Ruiz

unread,
Apr 20, 2011, 11:06:22 PM4/20/11
to django...@googlegroups.com
I get what you mean, problem is i searched google a lot, and no clear answer on what is the best. But that is not the most important, I can always try both, the biggest problem is that I couldn't find any easy book or tutorial or anything complete for python with django. All I found were pieces in a lot of different places. What I'm looking for is, for example, one book that covers all I need to build a social network, or one tutorial.


--

Dug_the_Math_Guy

unread,
Apr 20, 2011, 11:06:43 PM4/20/11
to Django users
Hi Rodrigo,
I'm new to Django too. I started with the tutorial, then bought a book
called "Practical Django Projects 2nd edition"
Its probably a comfortable level for someone who knows some
programming,
and it shows how to write some basic Django apps and includes a few
chapters about a social code sharing site
that he's implemented for illustration purposes. Obviously a code
sharing site is different than FB/orkout
but if you read it and see how Django apps work I think you'll be able
to understand how to write FB/orkout like
functionality. The "business logic" behind these sites isn't that
complex and once you have a nice language like
Django, you can write some concise apps that build that logic
gracefully.
You may need to know some about web development in general,
like what a HTTP request is and how to work with html & css
There are probably many books out there, I don't have any suggestion.
Also there is a video series on a video tutorial site called showmedo
that has someone writing a pretty much full
social site in a series of videos with the code available as well.
Its not exactly like FB, but its basically a site for college students
to invite each other to parties and find out what their
friends are doing the coming weekend. It should be helpful, though
will not be exactly like FB or orkout.
Here's that video series:
http://showmedo.com/videotutorials/series?name=PPN7NA155
and also some other Django video tutorials that might be useful from
the same site:
http://showmedo.com/videotutorials/django
Good luck with your project.
I think Django is the right language to choose but I have no where
near enough experience to justify arguing that on a
development forum, I just think its cool ;)
Dug
On Apr 20, 8:06 pm, Rodrigo Ruiz <rodrigo.ru...@gmail.com> wrote:
> Can I learn how to make a socicial network website like facebook just with
> those Django tutorials?
>
> On Wed, Apr 20, 2011 at 9:02 PM, Ruturaj Dhekane <rutura...@gmail.com>wrote:
>
>
>
>
>
>
>
> > Hi Rodrigo,
>
> > I feel Social network is a hype term that has come into picture in recent
> > few years. However such instances already existed many many years back.
> > Social Network is a word of two parts, Social - which needs users/people
> > and their interactions with the system, and the word Network- which means
> > that the interactions are amongst the Users also. Such social networks
> > already existed in the form of Forums, bulentin boards and even now as Email
> > (mailing lists!!)
>

Rodrigo Ruiz

unread,
Apr 20, 2011, 11:25:00 PM4/20/11
to django...@googlegroups.com
Thank you very much, haven't looked up on your links yet, but it was very enlightening.

Dug_the_Math_Guy

unread,
Apr 20, 2011, 11:28:59 PM4/20/11
to Django users
Rodrigo,
here is a page with some free python learning material.
http://www.onlinecomputerbooks.com/free-python-books.php
The first one "Dive into Python" is a classic I think
It may be good since you have some c & OOP background
If you look on the left you'll see some other categories of free
material. To learn about web dev maybe read some on CSS,
MySQL, Webdesign to get the basic ideas of how the technologies
interact to make a webpage work.
Dug

Kenneth Gonsalves

unread,
Apr 20, 2011, 11:33:54 PM4/20/11
to django...@googlegroups.com
On Thu, 2011-04-21 at 00:02 -0300, Rodrigo Ruiz wrote:
> What about things like being able to make a profire and show user
> content on
> your website (like a social network does), or making groups that
> people can
> sign up and that others can see? Aren't does things specifically to
> social
> network?

no. practically every site I have built (including one for financial
accounting) has these features
--
regards
KG
http://lawgon.livejournal.com
Coimbatore LUG rox
http://ilugcbe.techstud.org/

shacker

unread,
Apr 21, 2011, 11:31:53 AM4/21/11
to Django users
On Apr 20, 4:23 pm, Rodrigo Ruiz <rodrigo.ru...@gmail.com> wrote:
> Hi, I'm a new programmer and I want to make a social network like
> facebook or orkut.

"social network" is a pretty vague term. I think you need to define
the list of actual features you want the site to have and how they
should operate (after you learn web development and Django basics, of
course). Start by defining criteria for behaviors like:

- Is all content public unless explicitly marked private? If so, you
would need a mechanism for testing the permissions of any given user
to view any given piece of content.

- Can any user "follow" any other user? Does the followee need to
grant permission before the follow relationship is established? What
happens when you follow someone? Do you get emails about their content
updates?

- Can users "tag" each other? What is the mechanism for tagging? How
do you parse content fields for these tags? Does this fire a signal
that sends an email?

And so on. Be as specific as possible at the outset so you know what
you're actually building. Get clear in your head about how data is
modeled, how tables (classes) will relate to one another. Figure out
which parts of the site you can build with 3rd party reusable apps
(such as django-registration and django-profiles) and which you'll
need to build yourself. Start by building out the data model and
testing relations in the admin, and go from there.

Django is an awesome choice. Here's the social network I built in
Django: http://bucketlist.org/

Scot


Kumar Anirudha

unread,
Oct 15, 2013, 3:27:49 AM10/15/13
to django...@googlegroups.com, rodrig...@gmail.com
Hii,

I've been developing websites on html, php, javascript for quite some now.. I've been coding on python and made small Django apps too like a blog. I want to know how and what else is needed for a social networking site.

Swathi Rajanna

unread,
Jul 22, 2014, 4:12:15 PM7/22/14
to django...@googlegroups.com, rodrig...@gmail.com
try realdjango.com  The explanation is brilliant and to the point.
Reply all
Reply to author
Forward
0 new messages