Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Chcę stworzyć facebooka
Forum PHP.pl > Inne > Hydepark
IIFF
Pan Mark podobno stworzył go w 2 tygodnie, ale jak mogę się domyślać programowania musiał się uczyć wcześniej, zanim siadł do facebooka? Wiadomo jak to dokładnie było?

Ciekawe: Ile by zajęło mi gdybym zaczął teraz uczyć się programowania stworzenie facebooka? biggrin.gif Z już posiadaną wiedzą podstawową(html, css) i ogólnie orientacją w sieci. Ile by to zajęło?

Taki temat mnie naszedł, myślę że ciekawy wink.gif .
rafio
Zajęło by ci to pewnie nieskończoność. Facebook którego widzisz dziś nie wiele ma wspólnego z Facebookiem stworzonym lata temu przez Zuck'a. Tamten w gruncie rzeczy był tylko prostym serwisem do wymiany informacji dla studentów Harvardu. W pewnym momencie inne uczelnie poprosiły o udostępnienie FB i wszystko zaczęło rosnąć.

To było 5 lat temu, przez te 5 lat do FB dołączyło bardzo dużo osób które z prostej stronki zrobiły gigantyczny serwis z milionem funkcjonalności i bilionem opcji... nie podskoczysz bo po prostu nie masz takich zasobów. smile.gif
!*!
IIFF jest moim kandydatem do trola roku.

Nie napisałeś ile masz gotówki biggrin.gif bo chyba nie myślisz że serwery vps czy dedyk są darmowe. A zwykły hosting bez websocetów przy komunikacji jabbero-podobnej zwyczajnie zarżnie się w kilka chwil nawet przy niskim zainteresowaniu.
ShadowD
Nieee, @IIFF chyba tylko spekuluje - mam nadzieję. haha.gif

Nie da się stworzyć takiego serwisu, niestety. Jest to zbyt wielkie i za bardzo znane by coś podobnego mogło zarobić i miało szansę istnienia. Chyba że masz jakiś pomysł z nową funkcjonalnością, której oni nie skopiują w 2 dni, a jest tak wykopana w kosmos, że wszystkich nią zainteresujesz.

pyro
Cytat(IIFF @ 18.12.2011, 03:31:14 ) *
Pan Mark podobno stworzył go w 2 tygodnie, ale jak mogę się domyślać programowania musiał się uczyć wcześniej, zanim siadł do facebooka? Wiadomo jak to dokładnie było?

Ciekawe: Ile by zajęło mi gdybym zaczął teraz uczyć się programowania stworzenie facebooka? biggrin.gif Z już posiadaną wiedzą podstawową(html, css) i ogólnie orientacją w sieci. Ile by to zajęło?

Taki temat mnie naszedł, myślę że ciekawy wink.gif .


Jego prototyp to były tylko profile z komentarzami i relacjami między użytkownikami. Czyli to co on stworzył w dwa tygodni tak naprawdę ktoś taki jak np. ja (jakim skromny!) mógłby zrobić w 2 dni.
Spawnm
Na frameworku z badziew layoutem w 1 pełny dzień by się to wystukało smile.gif
A potem tylko wydać kilkanaście mln na reklamę.


[wolontariat] poszukiwany milioner
Mam super tajny unikalny pomysł na portal społecznościowy, szukam milionera ;D
rafio
Cytat(Spawnm @ 18.12.2011, 15:38:10 ) *
[wolontariat] poszukiwany milioner
Mam super tajny unikalny pomysł na portal społecznościowy, szukam milionera ;D


Hehe, tak mi się coś przypomniało. wink.gif
!*!
Prawda, jak ma jakimś FW to z palcem w nosie max 1 dzień... no i masz wtedy większą satysfakcje jak to Twój własny FW.

Poza tym FB to nie tylko php, html, css i js... są tam też mało znane języki programowania których w zasadzie w europie się nie używa, a ja sam zapomniałem nazwy (mam na myśli czat fb który został w tym napisany, za przypomnienie byłbym wdzięczny).
Shili
FB to nie tylko technolgia języków programowania.

To również zarządzanie danymi dalece bardziej skomplikowane niż w naszych projektach (zapewne wink.gif)
Na mysql czy postgres Facebook długo by nie przetrwał.

Badziew, który udźwignie ruch z reklamy za kilkanaście milionów to na pewno nie jeden dzień roboty.
Samo zaprojektowanie struktury przechowywania danych to nie jeden dzień roboty smile.gif

Natomiast owszem, pierwotny Facebook to dużo prostszy projekt bez tego typu ograniczeń i na starym dobrym mysql też pójdzie biggrin.gif
lobopol
Z tego co się orientuje to facebook stoi w dużej mierze na mysql smile.gif
Shili
Tak, jako składowanie danych, nie ich przetwarzanie,
W 2010 korzystał z Cassandry, a teraz bodajże z HBase.

I to jest clue dotyczące: czemu im się jeszcze baza nie wywaliła na najbardziej zasobożernych elementach.

sweter
Cytat
mam na myśli czat fb który został w tym napisany, za przypomnienie byłbym wdzięczny

chyba Erlang
nasty
Cytat(!*! @ 18.12.2011, 15:44:45 ) *
Prawda, jak ma jakimś FW to z palcem w nosie max 1 dzień... no i masz wtedy większą satysfakcje jak to Twój własny FW.

Poza tym FB to nie tylko php, html, css i js... są tam też mało znane języki programowania których w zasadzie w europie się nie używa, a ja sam zapomniałem nazwy (mam na myśli czat fb który został w tym napisany, za przypomnienie byłbym wdzięczny).


LOL! biggrin.gif
Tak właśnie powstają mity i legendy. "są tam też mało znane języki programowania których w zasadzie w europie się nie używa" No tym to mnie zabiłeś biggrin.gif

Erlang - stworzony przez Erricson - Szewcka firma. Bardzo popularny język funkcyjny w systemach rozporszonych.
C++ - Poczatki swojej egzystencji miał w Danii, jako praca doktorancka.
Javascript - Tu muszę Ci przyznać rację, tego języka akurat nie używa się u Europie.
PHP - (...)


Te języki wchodzą w skład Facebook Chat.
--------------------------

A teraz to już bardziej serio. Właśnie że się da! Co druga odpowiedź w tym temacie odwoływała się do poszukiwań milionerów i inwestorów. Otóż to jest sposób myślenia który miał rację bytu 5 lat temu, nie teraz. Nie kiedy mamy chmury.

Jeśli by przyjrzeć się dokładniej dzisiejszemu Facebook-owi i zastanowić się nad obszarami które wydają się trudne do zaimplementowania to można podzielić je na dwie kategorie:

- Skalowalność
Obsługiwanie 800 mln użytkowników nie jest ani proste ani tanie. Tylko, że koszty obsługiwania tych użytkowników (zakładając, że architektura i implementacja została stworzona przez osoba znającą się na rzeczy) rośnie mniej-więcej liniowo do ilości użytkowników. Podobnie rosną koszta korzystania z chmury - czy to Windows Azure, Amazon EC2, Google, Rackspace, czy inne. Płacisz za tyle maszyn ile potrzebujesz i dorzucasz maszyny do swojej aplikacji bez zmiany jej kodu albo nawet wyłączania jej na chwilke. Tak robi wordpress, icansmile czy Apple iCloud - w godzinach szczytu używa kilkaset razy więcej maszyn wirtualnych niż w spokojnych porach. Cały proces jest zautomatyzowany, dodawania nowych maszyn jest automatyczne i zajmuje sie tym system monitorowania.

Każda z wspomnianych chmur udostępnia technologię którą Facebook musiał od zera implementować - Zapis gigantycznych ilości danych (Azure Table Storage, Google BigTable, Amazoński storage - już nie pamiętam jak się nazywa), Tymczasowa rozproszona pamięć cache (czyli odpowiednik Memcache w FB) - każdy z dużych providerów udostępnia jakąś formę DHT dla swoich klientów w postaci usługi. Podobnie z autentykacją, autoryzacją i całą resztą.

Jak Facebook zaczynał to tego jeszcze nie było na taką skalę na jakiej jest dziś i musiał sam kombinować.
To tak w wielkim uproszczeniu.

- Sztuczna inteligencja
Czyli proponowanie znajomych, przewidywanie jakie posty są ważna dla danego użytkownika, przewidywanie reklam ważnych dla ludzi, itd.. Nie jest to kosmos - w każdej książce o AI można znaleźć algorytmy które odwzorowałyby zachowanie (może o niższej jakości ale to kwestia tuningu) tych mechanizmów z FB.

Z tego co widzę tutaj w tym wątku - to wszyscy wyżej wypowiadający się cierpią, niestety, na syndrom cargo cult programmer...
!*!
Cytat(nasty @ 19.12.2011, 07:46:53 ) *
Tak właśnie powstają mity i legendy. "są tam też mało znane języki programowania których w zasadzie w europie się nie używa" No tym to mnie zabiłeś biggrin.gif


Chodziło w zasadzie tylko o erlang. I pokaż mi teraz większe zainteresowanie tym językiem, nie licząc dużych koncernów. Może masowo szukani są programiści? Albo w Polsce, większość "odkryła" ten język raptem ok. półtora roku temu np. NK się obudziło że ktoś, gdzieś coś w tym napisał i było to wydajne.
nasty
To ze na pracuj.pl nie ma tylu ogloszen dla vhdl co dla php, nie znaczy, ze jest to "malo znany jezyk ktorego nie uzywa sie w europie".
!*!
Jeśli dla Ciebie pracuj.pl czy zlecenia.przez.net są wyznacznikiem szukania ofert, to możemy już skończyć temat smile.gif
Vomit
@!*!, baaasmiley.gif zlecenia.przez.net i pracuj.pl to dwie rozne rzeczy. @nasty napisal wyraznie o pracuj.pl, ktore to kieruje swoja oferte dla osob szukajacych pracowników pełnoetatowych.

Bo co ma być wyznacznikiem jak nie liczba ofert pracy?


nasty
Cytat(Vomit @ 19.12.2011, 12:40:56 ) *
Bo co ma być wyznacznikiem jak nie liczba ofert pracy?


A to też nie jest takie miarodajne do końca! :-)
Bardziej miarodajnym wyznacznikiem jest ilość osób pracujących w danym obszarze.
Np. ilość ofert pracy dla programistów COBOL vs ilość programistów COBOL. Ofert F# vs programistów F#, Foxpro, access, itd...

!*!: co jest wyznacznikiem szukania ofert jak nie zlecenia.przez.net czy pracuj.pl?
szymongzik
i po co podwajac zło na tym swiecie? smile.gif
Zbłąkany
@!*!: podpowiem Tobie - poślizgnąłeś się pod prysznicem i upadłeś, boli Cię głowa i piszesz przez to głupoty ...
Tego typu języki (np. erlang) wykorzystuje się bardzo często (i w zasadzie tylko) tam, gdzie jest potrzeba obsługi masy wątków - dedykowane serwery komunikacyjne, platformy wymiany wiadomości, czy usługi oparte na protokole jabber. Całkiem spory rynek, nie sądzisz? BTW: o większości z tych projektów nigdy nie usłyszysz, bo działają w tle albo są to rozwiązania dedykowane stricte do wyłącznego użytku zleceniodawcy :-)
1010
Cytat(lobopol @ 18.12.2011, 16:05:34 ) *
Z tego co się orientuje to facebook stoi w dużej mierze na mysql smile.gif

Z tego co wiem, to ten ich "mysql" jest przez nich "lekko" zmodyfikowany, żeby to udźwignął.
Tak samo u nich wygląda z php.

Łatwiej było im przerobić mysql do własnych potrzeb, niż przepisać aplikację na inną bazę.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.