Što je zajedničko Instagramu, Googleu i Netflixu

Obožavaju ga i početnici i iskusni developeri. Upotrebljavaju ga neke od najuspješnijih tehnoloških tvrtki. Predstavljamo vam sedam najpoznatijih aplikacija napravljenih uz pomoć programskog jezika Python

92
Python

Neke od najpoznatijih i najkorištenijih aplikacija na svijetu – osim dominantne pozicije na tržištu – imaju još nešto  zajedničko: sve su napravljene uz pomoć Python programskog jezika.

Python je zaista jedan od moćnijih programskih jezika, a s napretkom strojnog učenja i umjetne inteligencije posljednjih godina dobija sve više na važnosti. Otac ovog programskog jezika je Guido van Rossum, a nastao je daleke 1991. godine.

Upotrebljavaju ga neke od najuspješnijih tehnoloških tvrtki. Predstavljamo sedam najpoznatijih aplikacija napravljenih uz pomoć programskog jezika Python.

1. Instagram

Najveća svjetska aplikacija za dijeljenje fotografija koristi Python u svom backendu. “Izabrali smo Python zbog jednostavnosti i praktičnosti koja se poklapa s našom filozofijom ‘napravi prvo jednostavne stvari’. Jednostavnost, u ovom slučaju, donosi i efikasnost.”

Instagram trenutno ima najveću svjetsku implementaciju Django web razvojnog okruženja, koji je u potpunosti napisan u Pythonu. Instagram se u posljednje dvije godine udvostručio, a nedavno je premašio brojku od 500 milijuna korisnika. Upravo iz tog razloga, u Instagramu postoji snažna potreba za maksimiziranjem učinkovitosti, kako bi njihova platforma i dalje glatko radila.

2. Google

Google je najrasprostranjeniji pretraživač i drži 75 posto tržišta. Dugogodišnji inženjer u Googleu, Alex Martelli, objasnio je kako su počeli koristiti Python: “Mislim da je sve počelo kada su prvi zaposlenici Googlea (Sergey, Larry, Craig …) donijeli vrlo dobru odluku: Python gdje možemo, C++ gdje moramo”.

Podset C++ koristio se za dijelove softverskog stoga gdje su presudne vrlo male latencije i / ili stroga kontrola memorije, a Python, omogućujući bržu isporuku i održavanje programa, za ostale dijelove. U to vrijeme, krajem 90-ih, izbor za potonju ulogu bio je u osnovi između Pythona i Perla.

Ostali su skriptni jezici bili ili nedorasli (Ruby, na primjer, još nije postojao) ili su imali drugih problema i ograničenja. Perl je bio zreliji, pogotovo u pogledu svog ekosustava dostupnih dodataka putem CPAN-a, ali Python se smatrao čitljivijim i održivijim, a povezivanje s bibliotekama C ++ (putem SWIG-a) bilo je lakše.

>>Evo koje su najtraženije poslovne vještine u 2020. prema LinkedInu

3. Spotify

Spotify vam omogućuje slušanje glazbe (ne u Hrvatskoj, doduše) bez odgode zbog bufferinga. Aplikacija je pokrenuta 2008. godine i od tada je broj pretplatnika premašio 75 milijardi.

Iako je Spotify internetska stranica napravljena u WordPressu, aplikacija je napravljena pomoću Pythona. Geoff van der Meer, Spotifyjev inženjer, objasnio je to ovako: “Dvije glavne stvari na Spotifyju za koje se koristi Python su pomoćne usluge i analiza podataka. Python ima naviku pojavljivati se i na drugim nasumičnim mjestima, jer većina njihovih programera rado programira u njemu”.

Pomoćni program Spotifya sastoji se od mnogih međuovisnih usluga povezanih putem vlastitog protokola za razmjenu poruka putem ZeroMQ-a. Oko 80 posto ovih usluga je napisano u Pythonu.

Usluge koje nisu Python obično se pišu u Javi, iako ih ima nekoliko i u C ili C ++.

4. Netflix

Za Netflix znamo svi. Ima 33 milijuna korisnika u 40 zemalja, a oni mogu uživati u više od milijardu sati serija i filmova tjedno. Prema Netflixovom blogu, developeri imaju slobodu biranja tehnologija koje najbolje odgovaraju njihovom poslu.

Sve više i više, programeri se okreću Pythonu zbog bogate standardne biblioteke, jezgrovitih i čistih, ali izrazitih sintaksa, velike zajednice programera i bogatstva trećih strana koje biblioteka može iskoristiti kako bi riješila zadani problem.

Njegova dinamična podloga omogućuje programerima brzo ponavljanje i inoviranje, dvije vrlo važne kvalitete na Netflixu. Te su značajke (i ostale) dovele do sve opsežnije uporabe Pythona u svemu, od malih alata koji koriste boto za razgovor s AWS-om, do pohrane podataka s membranom pythona i pycassa, upravljanja procesima s Envoyjom, anketiranja nemirnih API-ja do velikih aplikacija sa zahtjevima, pružanje web sučelja s CherryPy i Bottle i ‘data crunching’ sa scipy.

5. Uber

Uber dnevno ima preko 15 milijuna vožnji. Na nižim razinama Uberovi inženjeri prvenstveno pišu u Pythonu, Node.js, Go-u i Javi. Započeli su s dva glavna jezika: Node.js za tim na Marketplaceu i Python za sve ostale. Ovi prvi jezici i dan danas pokreću većinu usluga koje rade na Uberu.

6. Dropbox

Dropbox je dom našim fotografijama, dokumentima, videima i datotekama. Možete li zamisliti što je sve potrebno za rast s 2000 korisnika na 200 milijuna? Rajiv Eranki iz Dropboxa kaže da su koristili Python za sve. Zašto? Zbog podrške na više platformi, čitljivosti, lakoće učenja. Ove snažne strane Pythona bile su presudne za Dropboxovo rano i brzo skaliranje. Brzi razvojni ciklus koji omogućuje Python bio je presudan za implementaciju, testiranje i upotrebu novih značajki.

Za njih je 2012. počeo raditi tvorac Pythona  Guido van Rossum. Rossum je i dalje zaposlen u Dropboxu.

7. Pinterest

Tko od nas na Pinterestu nije pretražio mnogobrojne ideje za uređenje stana, za bojanje namještaja, za uradi sam projekte? Pinterest koristi Python i modificirani Django na nivou aplikacije. Za web servere koristimo Tornado i vrlo selektivno – node.js.

FreshBooks je kanadska softverska tvrtka koja u Hrvatskoj otvara razvojni centar za Europu u kojem će se zaposliti veći broj IT stručnjaka, između ostaloga poznavatelje Pythona. Tvrtka poziva sve kojima je Python jedan od omiljenih programskih jezika za rad da se prijave za posao softver inženjera u FreshBooksu.

FreshBooks je osnovan 2004. u Torontu, a najveći broj korisnika ima u SAD-u i Kanadi, gdje se, kako kažu iz te tvrtke, nalazi među top tri računovodstvena online servisa te ga je do sada za potrebe poslovanja koristilo oko 20 milijuna ljudi.