Languages and Large Sites

From Dev411: The Code Wiki

Table of contents

By Language

C++

  • Google (main search engine)

Java

  • Google (Gmail)
  • eBay
  • E*Trade

Perl

  • Amazon.com
  • del.icio.us
  • LiveJournal
  • Slashdot
  • Yahoo!

PHP

  • Digg
  • Wikipedia
  • Yahoo!

Python

  • Google (Google Groups, various smaller apps)

Ruby

  • BaseCamp

By Company

Amazon.com

  • Perl with Mason

del.icio.us

  • Perl with Mason

Google

  • C++ (search engine)
  • Java (Gmail)
  • Python (Google Groups, etc.)

The following is from Python at Google by Greg Stein (http://panela.blog-city.com/python_at_google_greg_stein__sdforum.htm) Google's Engineering Process

At Google, python is one of the 3 "official languages" alongside with C++ and Java. Official here means that Googlers are allowed to deploy these languages to production services. (Internally Google people use many technologies including PHP, C#, Ruby and Perl). Python is well suited to the engineering process at Google. The typical project at Google has a small team (3 people) and a short duration (3 months). After a project is completed developers may move to other projects. Larger projects are sub-divided into 3 month deliverables, and teams get to choose their own language for their project. Engineers are given their 20% time to work on what they want to at Google. Many new ideas spring from this 20% work, and "bottom up" seems to be the mantra at Google. Greg stated that architecture and design were not mandated from the top, but rather the teams working on these projects were given the freedom to suggest and deliver.

LiveJournal

  • Perl

Slashdot

  • Perl

Yahoo!

  • PHP
  • Perl
  • Python (People Search, Yellow Pages, Maps)