Here I come, there I am.

 Предговор

Интересен въпрос е на какво са базирани по-големите сайтове в България и в световен мащаб. На какъв хардуер вървят, операционните им системи, backend и frontend връзката. Последните 2 години обаче е адски модерно да си 'PHP програмист', разбираш ли - взимаш една дебела книжка за PHP + MySQL Development и си най-големият.

Не ме разбирайте погрешно - в LinkedIn профила ми съм споменал за опита ми с различни DB сървъри, с Java SE/EE, PHP, малко опит с много скриптови, функционални, динамични или както щете ги наричайте езици. Това, което не ми допада в PHP е, че болшинството от 'кодери' си нямат хал хабер от алгоритми, структури от данни, оптимизации, сигурност и други съществени неща в програмирането като цяло. Да не говорим за методологии и шаблони за дизайн. Лично аз се опитвам да прилагам максимално приложната си практика и в PHP проекти, под присмеха на wanna be 'разработчици' край мен.

В категорията по-горе не се включват мои приятели и познати, с които съм имал вземане-даване. Т.е. истински програмисти, за които PHP е просто средство, а не ултимативното решение на всеки проблем, в което има всичко наготово. Хора като Любо (mylo), Шерифа, Кръстев, Калоян, Vortex и доста други предимно PHP разработчици. 

Но, както и да е. Мисълта ми е, че, по мое мнение, болшинството уеб сайтове в България се пишат на PHP. Това важи със сигурност за малките (и донякъде средни сайтове), но в топ БГ сайтовете това често остава вярно. Чудно ми е: защо?

Имам някои предположения, които са доста in the wild обаче, така че смятам да си ги спестя. Избягвам и флеймове за програмирането, защото всеки си има избор - има фанатици на PHP, на Java, на .NET, на C++, на Python... На готовите системи; фанатици на M$ и Linux/BSD/Unix и какво ли още не. Някои ползват MySQL, други се кефят на Oracle, трети - на Postgres. Живеем в свободен свят и всеки има право да решава. Както казах по-горе, добре е всички тези неща да са просто инструменти, управлявани от знанията.

Българския пазар

Опитах да намеря разумни класации за най-популярните портали в България. Нямам голям успех, но попаднах на 2 полезни линка:

 В първата класация преобладават PHP-базираните сайтове. Сайтовете на Investor със сигурност са PHP-та, както и по-голямата част от останалите листнати страници. За съжаление, някои от порталите са с променени URL-и и използваната технология не е съвсем ясна на пръв поглед. Други използват системи или frameworks, което също пречи на работата. Трети, като сайта на НОИ, ми изглеждат относително статични - вероятно само HTML. Все пак доминира на над 80% употребата на PHP в, така да се каже, големите сайтове според класацията.

Прегледах първите 30-тина сайта от класацията. Очевидни са 3-4 не-PHP сайта. Останалите или са твърдо писани на PHP, или (3-4 случая) не мога да определя със сигурност.

WARNING: Изводите ми са базирани на файловите разширения на страниците, на мнения от форуми/блогове или на хора, които работят като кодери на определените сайтове. Не мога да гарантирам на 100% за адекватност на информацията, тъй като цялата информация е скрита и може да бъде маскирана (при добро желание на собствениците).

През последните 2 години имам различни частни поръчки от клиенти, които не са технически лица. Обикновено обаче се споменава: "Едно PHP сайтче". Така и не ми стана ясно каква е идеята да се ползва точно PHP. Сред популярните български сайтове има множество хостинги за PHP, но само 2 (известни на мен) за Java - ICN и hostsyst. Ясно е, че поддръжката на Java / .NET сайтове е по-паметоотнемка, но дали това е причината? Хората казват: "Търсенето определя предлагането". Ако търсенето бе за други популярни платформи, то би следвало да има и повече хостинги за тях. Освен това, като freelancer и разработчик в софтуерна компания, съм писал уеб решения на Java за компании в сферата на финансите, услугите и други с офиси в България и по света. Естествено, що става въпрос за големи и сериозни проекти, се взимат dedicated (или собствени) сървъри и хора, които отговарят за тях.

В световен мащаб

Титулярите по света са малко по-ясни от тези в нашия малък пазар. Alexa, MostPopularWebsites и Compete дават достатъчно близки резултати, за да не се съмняваме във фаворитите. Последният линк е на две години и половина, но предлага и класации по месечни view-та на сайтовете.

Както споменах по-горе, няма как да твърдим със сигурност на какво са писани най-посещаваните сайтове. Още по-трудно е в световен мащаб, защото там говорим за стотици, ако не хиляди пъти по-голям трафик и по-обемни бази от данни. Базите понякога са популярни решения, но друг път са custom реализации на разработчиците и компаниите. Връзката до тях се реализира и на C++/Perl или друг способ с цел оптимизация. Презентационният слой също е изграден от дебела палитра езици.

Ще се фокусирам над видимата част на сайтовете (с леки отклонения), според моите изследвания:

Сайт Изпозлвани инструменти
Google Python/Java/PHP,C++
YouTube Python
Live.com ASP.NET
Facebook
PHP (има и Java апликации)
MSN
ASP.NET
Wikipedia
PHP
Blogger
Python
MySpace
ASP.NET / Cold Fusion
Rapidshare
HTML/CGI
Flickr
Perl/PHP/Java
Digg
PHP
LiveJournal
Perl
hi5.com
Java
LinkedIn
Java
Yahoo!
Perl, Python, PHP
eBay
Java (JSP), C++
Amazon
Java/Perl, C++
baidu.com
PHP


 Не се и съмнявам, че съм изпуснал фаворити, но това надали е най-важното в момента. Горният списък е изграден от извадка на най-популярните уебсайтове в света. Обърнете внимание колко от тях използват главно PHP? 4 от сайтовете използват PHP като главен език, а 2-3 от тях - за определени модули на подсайт. Да не говорим, че PHP-то не е само в backend частта :)

Ето и едно кратко изследване на по-известните платформи: Nati Shalom

Доста сериозни vendor-и ползват Python. А колко голяма част от компаниите в БГ търсят Python разработчици? Ясно е, че българите са най-големите тарикати, но ми се струва, че ще догонваме 'големите' с няколко години закъснение.

Ето и една интересна статия за 10-те умения, нужни на програмистите идните 5 години. :) Интересно ми е и вашето виждане на уеб света близките няколко години.

П.С. Умишлено не съм писал JavaScript по обясними причини.

Share and Enjoy:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google
  • MySpace
  • Slashdot
  • Technorati
  • TwitThis
del.icio.us Digg DZone Facebook Google Google Reader Magnolia reddit SlashDot Technorati ReadMe.ru Dobavi.com Dao.bg Lubimi.com Ping.bg Pipe.bg Svejo.net Web-bg.com

Сходни постове:

  1. Какво (си мислим, че) знаем за обособените части? Ако трябва

Related posts brought to you by Yet Another Related Posts Plugin.

Comments

22 Responses to “На какво се пишат сайтовете по света и у нас?”

  1. Марто on April 2nd, 2009 16:18

    Сам си притоворечиш или аз не те разбрах.
    Първо изброените от теб "първи" не са "сайтчета". Силата на php е точно в това, че всеки може да си напише "сайтче" без да знае какво е гарбич колектор (по повода даже има един виц..), стуктури, алгоритми и оптимизация.
    Защо се използва PHP?
    - защото е лесно
    - програмира сравнително бързо
    - общата цена е по-ниска в сравнение с другите
    Същото е изведено и в таблицата която си пуснал.

    Когато излезем от определението "сайтче" нещата стават други, изискванията стават други, разполагаемите пари имат (или поне е необходимо) други, много по-високи, стойности.

    Не мога да разбера от къде идва настървеното ти нежелание да признаеш, че PHP има своето място. Както сам каза пазара сам го определя;)

  2. Acnapyx on April 2nd, 2009 16:26

    Ами какво да ти кажа... и обратното важи. Като знаеш, че ще си разгониш фамилията, докато намериш хостинг примерно за Жаба или Python, избираш - щеш не щеш - PHP. Ако си дребна риба, неизбежно си ограничен до това и MySQL, освен ако си имаш собствен сървър и ти се занимава с колокейшъни.

    При нас всичко мърда на PHP, въпреки че си имаме собствени сървъри, така че можем да качим каквото ни хрумне. За качествата на кода обаче не ми се говори, още повече че половината сайтове са портвани с левия крак от PHP4 :(

  3. Марто on April 2nd, 2009 16:26

    Една друга точка: в момента на един споделен хостинг сървър спокойно се събират до няколко хиляди PHP клиентски сайтчета. При това сайтове писани както дойде. Какво ще стане ако те са писани на Java? Дали машината ще издържи на повече от няколко стотин? Ами ако са писани както дойде? Минат не минат 15мин и рестарт?;)

  4. admin on April 2nd, 2009 16:28

    @Марто, не си ме разбрал правилно. Сайтовете на Инвестор не са 'сайтчета' (никъде не съм го написал), но не формират 50% от топ 20 на българския пазар. Смятам обаче, че някои от тях трябва да присъстват в Топ 40, а Jabse ги поставя по-назад. Ето защо съм комбинирал двете статистики.

    Целта ми бе да опитам да намеря най-популярните сайтове в България и навън. Защото високата популярност води до огромен трафик, често съчетан с гигантски бази от данни и доста други проблеми, свързани със синхронизацията, сигурността на порталите, скалируемостта и много други фактори. Исках да съпоставя най-enterprise сайтовете у нас с тези навън. Може би не съм подбрал правилната статистика. Но e-commerce сайтовете у нас ползват предимно PHP, докато eBay и Amazon са на Java. vbox7 е на PHP, а Yahoo е на Python. Ясно е, че нашите са бегли подобия на оригиналите, но съм сигурен също, че собствениците планират (или поне се надяват) да настигнат прототипите по трафик.

    Личното ми мнение е, че PHP не е подходящ език за истински големи проекти. Личното ми наблюдение е, че е масовият език за разработка в БГ. Не съм сигурен дали наблюденията ми са правили и мнението ми е миродавно. Затова очаквам оценка и мнение на колеги, приятели, познати и други читатели на блога :)

  5. admin on April 2nd, 2009 16:31

    @Acnapyx, повечето хостинги в БГ поддържат светата 'P' троица - PHP, Perl и Python. :)
    Аз имам особено респектирано поведение към Python впрочем.

  6. Георги Фурнаджиев on April 2nd, 2009 16:41

    Хубаво изследване. Но имам един въпрос. Само по URL ли съдиш за технологията?

    Може например на PHP да ти напиша сайтче и да сложа разширения каквито ти душа иска ... Включително и exe ;)

  7. mraiur on April 2nd, 2009 16:43

    Хора PHP е един от малкото езици сигурно дето може да се ползва в две крайности. Първо да се научиш да прайш връска с База ще са ти нужни 5 мин . За да хванеш толко, че да можеш да пишеш "сайтче" ти треа 2 седмици . Такива кочини са екстра ако нема какво да правиш. Може да се напише и сериозен сайт на PHP и не е като да няма аналогии на garbage collector самоче много малко хора задълбават да видят кое как става.

    Относно сървърите може да се каже че не се искат кои знае какви параметри за машината по една прост а причина PHP не е като Java която си има собствен "сървър" а се партнира с Apache което ги поставя в удобно положение като Едните правят платформа другите интерпретатор.

    Няма нищо лошо в PHP4 самоче все още е толко лесно просто да напишеш нещо стил 4-ка защото и 5-цата го поддържа. Ще видиме какво ще стане като пуснат 6-жата без съпорта за предните версии.

  8. admin on April 2nd, 2009 16:43

    @Фурнаджиев, в WARNING частта на статията съм написал:
    "Не мога да гарантирам на 100% за адекватност на информацията, тъй като цялата информация е скрита и може да бъде маскирана (при добро желание на собствениците)."

    Това имах предвид :) Примерно icn.bg ползват разширение .icn ;)

  9. Георги Фурнаджиев on April 2nd, 2009 16:45

    Оф, изтрий ми мненията ... сега прочетох още веднъж онова WARNING: :(

  10. admin on April 2nd, 2009 16:47

    Няма проблем, очаквах такъв въпрос. Все пак се надявам статистиката да е относително точна и да дава що годе ясна представа за технологическото развитие в уеб среда.

  11. Георги Фурнаджиев on April 2nd, 2009 16:50

    За един от сайтовете си в заблуда.

  12. admin on April 2nd, 2009 16:52

    Очаквам коментари и корекции... Не претендирам за абсолютна точност, а и имам интерес към избора на техническите ръководители на големите портали. Кой от сайтовете не съм оценил правилно?

  13. Bo on April 2nd, 2009 20:43

    Марио,
    пише не толкова за да коментира, а по скоро да допълня. Има, и то никак не малки интернет приложения, които комбинират няколко технологии. Това, с което съм се сблъсквал (най-често индиректно) е PHP frontend и Java backend.
    п.с.
    А за езиците - няма лощ език има кофти програмист.

  14. admin on April 2nd, 2009 20:53

    @Боби, наскоро ми се присмяха на идеята за съвместна работа с няколко платформи едновременно :) Иначе съм с две ръце 'за' такива комбинации, стига да спомагат за по-качествен краен продукт.

  15. drJeckyll on April 10th, 2009 15:23

    "vbox7 / zazz нямат ясна дефиниция за използвани език/платформи, но дълго време търсеха PHP програмисти и съм склонен да вярвам, че системата е базирана на PHP тоже."

    Trying 87.121.59.2...
    Connected to http://www.vbox7.com.

    HTTP/1.1 200 OK
    Date: Fri, 10 Apr 2009 12:05:00 GMT
    Server: Apache
    X-Powered-By: PHP/4.4.9

    По-ясно ли е сега :)

  16. Марио Пешев on April 10th, 2009 15:37

    Мда, благодаря за request-а. :)

  17. drJeckyll on April 10th, 2009 15:56

    //off
    не знам какво имаш предвид под request, обаче всеки горе долу запознат с web сървъри човек може да пусне един telnet, да се свърже към сървъра който го интересува и да изиска тази информация :) хубаво е да го беше направил ... нямаше да има чуденки :) хич не е сложно:
    telnet http://www.xxx.com 80
    ..
    ..
    HEAD / HTTP/1.0
    (enter)(enter) и си готов :)

  18. Марио Пешев on April 10th, 2009 16:04

    @drJeckyll, под 'request' имах предвид HTTP заявката. :) Бях пуснал заявка на сайтове като government.bg, които са под Apache, но не пише, че са на Python примерно, затова съм изключил да направя търсене за vbox7.

    Та, все пак благодарства. :)

  19. drJeckyll on April 10th, 2009 16:21

    "Правителственият сайт, номер 3, който наскоро се асоциираше с думата 'провал', ползва някаква Python система. Мисля че става въпрос за Face Control CMS."
    с риск да стана досаден ... government.bg ползва perl, а не python ... .pl все още е Perl ... .py е Python :) тъй, че и това може да оправиш ... face control е писан на perl :)

  20. nofearinc on April 10th, 2009 16:36

    Виноват. Техническа грешка. Не случайно на няколко места написах, че очаквам feedback. :)

  21. drJeckyll on April 10th, 2009 16:49

    айде още да налеем :)

    "Подозирам също, че Host.bg е Java базиран, заради .do разширенията (може би Struts framework), макар че Host.bg не предлагат Java hosting, което пък е тъпо."

    според мен някой е решил, че просто .do (сигурно идва от английското do) звучи по-добре от .php

    Trying 87.120.40.4...
    Connected to http://www.host.bg.

    HTTP/1.1 200 OK
    Date: Fri, 10 Apr 2009 13:45:17 GMT
    Server: Apache/1.3.41 (Unix) PHP/4.4.8 mod_ssl/2.8.31 OpenSSL/0.9.8g
    X-Powered-By: PHP/4.4.8
    Set-Cookie: PHPSESSID=ae8d4df95383c08cdbdee2bd69063d13; path=/

  22. nofearinc on April 10th, 2009 17:05

    Чудех се защо сайтът им е на Java, ако не предлагат такъв хостинг в България.

Leave a Reply