views:

3894

answers:

13

Hulu, Twitter, Techcrunch, etc are written in Ruby.
Yahoo, Facebook, and tons of big social networks are written in PHP.

But what are some big top-name enterprise sites written in Python?

I am going to spend my time investing in either Python (w/ Django) or Ruby (w/ Rails) to create a data-intensive web application that has a personalization/recommendation tool (similar to Amazon).

Coming from a PHP background (OOP, Zend Framework), which would be best?

+12  A: 

A huge chunk of Google's website is implemented in Python.

sli
python is mostly used for internal tools (driving crawlers and other batch jobs etc.) at google. I don't think they use python for their website at all. All their public facing servers are written in C++ or Java.
ididak
Gustavo Rubio
Google's help pages use Python (I'm assuming the .py extension isn't a trick). Example: http://mail.google.com/support/bin/answer.py?answer=12381
TenebrousX
+5  A: 

Django is used to run a wide variety of sites. You can see all the ones that have been registered at www.djangosite.org. Since Django was born from developers working in the news industry, you'll find that a lot of news organizations have quickly embraced it.

However, as djangosites illustrates, its been used for everything from personal blogs, to photo sharing sites, to social networks (Cloud27 was specifically built to show off the Pinax social networking suite). Pownce, a social network based around music and file sharing, was written using Django, but its creators had to close their doors when they were hired elsewhere.

Its also worth noting that the Google App Engine uses Django's template language. Not specifically Python, but heavily influenced by a Python framework.

Soviut
App engine is too Python language
PEZ
I know, I meant the template language itself isn't python.
Soviut
+12  A: 

youtube and reddit both are, i believe. oh, and jaiku uses twisted, so i assume the rest of it is in python as well.

Autoplectic
+3  A: 

As Autoplectic said, Reddit was rewritten from Lisp to Python.
Here's the tale.

Chesspark is another personal favorite.
See Chesspark Design Details Part 1, Part 2, and Part 3.

Gordon Wilson
Reddit was later rewritten in Python again, but another web framework. From web.py to pylons, AFAIK.
stesch
A: 

Ok, this might be not an enterprise class site, but for a gaming nerd like me, http://www.curse.com is written in python.

kender
Curse is Django to be even more specific. I talked to the guy who created it at Djangocon and he gave a short talk about it.
Soviut
oh right, wasn't actually sure if it was Django or something else, it's python for sure tho, and many gamers use it, so thought I'd mention it
kender
It appears to use ASP.NET now.
Matt H
+14  A: 

What aspect of "big" are you interested in?

  • Scaling - either of Python/Django or Ruby/Rails will almost certainly handle any type of traffic you're going to throw at it.

  • Large code base - similar maintainability between RoR and Django. It comes down to personal preference (I prefer Python)

  • Support and community - both RoR and Django have large, active, helpful communities. Neither are going away, both are healthy and growing, used by both large and small entities.

I don't think you'll find the "big site" aspect to be a particularly helpful determinant of what you use. Both are easy to pick up; try them out and see what feels more natural to you. I tried both, liked both initially, but ended up strongly preferring Django.

Parand
Ruby has traditionally been known to have issues with scaling that Python doesn't have to the same degree. Most notably are the issues of memory leaks in Ruby that are basically now considered normal.
Soviut
@Soviut. Correction RAILS is known to have scaling problems. Ruby itself is fine. I can't comment on Django, but as I haven't heard complaints about it, I assume that scales well.
Macha
What scales well is scalable code.
Wayne Koorts
Ruby is "known" to have issues with scaling entirely because of Twitter. It seems that they wrote some poor backend code and blamed the tool they were using.
Chuck
Yeah, in this day and age I'd venture to say the "scalability" bugs have been shook out of Rails.
MattC
A: 

Django was used by Pownce but they were bought out by another company. I think because they wanted Pownce's talented team rather than their twitter like web application.

Abs
+2  A: 

It looks like google help files are all in python

example: http://mail.google.com/support/bin/answer.py?answer=69570&topic=13260

see the answer.py? That's a python script.

(unless of course they did something unnatural with the .py extension... But I doubt it)

Also, see http://highscalability.com/youtube-architecture for Youtube architecture and their use of python.

Christopher Mahan
+1  A: 

cuil is using CherryPy, a web server written in Python.

stesch
+3  A: 

We are using Django on Noovo, currently about 50k lines of code. I would choose web.py if I had to do it again. We also do recommendations etc.

Btw, you won't make it without unit tests, so have everything covered from the start.

Sebastjan Trepča
could you elaborate on why you'd start over in web.py over django?
Adriano Varoli Piazza
+1  A: 

FriendFeed is written in Python.

You could also see the source codes of some big Google App Engine apps:

Ivo Danihelka
A: 
  • Tabblo which is backed by Hewlett Packard is using django.
  • SuggestionBox is also using django.
  • Bitbucket is also using django.
  • Disqus is also popular and used in many blogs as their commenting system.
  • Quora is using Python both on the front end and backend. I have a gut feeling it will be big in the future.
jpartogi
A: 

Andalucia.org is using Django (all except home page, that will be migrated soon). Some links:

  • www.andalucia.org/destinos/provincias/cadiz/
  • www.andalucia.org/turismo-cultural/visitas/giralda/
Lin