Гуидо ван Россум је 20. фебруара 1991. године објавио у групи алт.соурцес прво издање програмског језика Питхон, на којем је радио од децембра 1989. у оквиру пројекта стварања скриптног језика за решавање проблема администрације система у оперативни систем Амоеба, који би био вишег нивоа од Ц, али би, за разлику од Боурнеове љуске, омогућио практичнији приступ системским позивима ОС.
Назив за пројекат изабран је у част комичарске групе Монти Пајтон. Прва верзија увела је подршку за класе са наслеђивањем, руковање изузецима, систем модула и листу основних типова, дицт и стр. Имплементација модула и изузетака је позајмљена из језика Модула-3, а стил кодирања заснованог на увлачењу из АБЦ језика, чему је Гвидо претходно допринео.
Када је креирао Питхон, Гуидо се руководио следећим принципима:
- Принципи који су уштедели време током развоја:
- Позајмљивање корисних идеја из других пројеката.
- Тежња за једноставношћу, али без претераног поједностављивања (Ајншајнов принцип „Све треба да буде речено што једноставније, али не и једноставније“).
- Пратећи филозофију УНУКС-а, према којој програми имплементирају једну функционалност, али то добро раде.
- Не брините превише о перформансама, оптимизације се могу додати по потреби када је потребно.
- Не покушавајте да се борите против преовлађујућих ствари, већ идите са током.
- Избегавајте перфекционизам; обично је довољан ниво „довољно добар“.
- Понекад се углови могу исећи, посебно ако се нешто може урадити касније.
- Други принципи:
- Имплементација не мора бити специфична за платформу. Неке функције можда нису увек доступне, али основна функционалност треба да функционише свуда.
- Не оптерећујте кориснике деловима којима машина може да рукује.
- Подршка и промоција корисничког кода независног од платформе, али без ограничавања приступа могућностима и карактеристикама платформи.
- Велики сложени системи морају да обезбеде више нивоа експанзије.
- Грешке не би требало да буду фаталне и неоткривене — кориснички код би требало да буде у стању да ухвати и обради грешке.
- Грешке у корисничком коду не би требало да утичу на функционалност виртуелне машине и не би требало да доведу до недефинисаног понашања тумача и пада процеса.
Извор: опеннет.ру