Slobodan softver i internet stvari (1. deo)
Autor: Aleksandar Todorović
Da li možemo računamo na softverske gigante?
Internet je postao rasprostranjeniji nego što je iko mogao pretpostaviti. Današnji pametni telefoni imaju više snage nego super-računari koje smo koristili pre samo 20 godina. Kompanija Cisco predviđa da ćemo do 2020. imati preko 50 milijardi uređaja spojenih na internet. Faza priključivanja računara, laptopa i telefona na internet je već iza nas, a sada su došli na red i ostali uređaji: pametne naočare, pametni satovi, pametne kuće, pametni automobili… Nova rešenja i novi „pametni” predmeti se pojavljuju na tržištu rekordnom brzinom i to je već svima vrlo poznato.
Kako se Linux snalazi na novom tržištu koje je veće nego ikada do sada?
Otvorene tehnologije imaju ogromnu prednost nad vlasničkim rešenjima u ovoj fazi razvoja interneta. Više se ne radi o jednoj vrsti uređaja i o jednom operativnom sistemu koji treba da komunicira sa istim tipom uređaja. Sada se radi na tome da se poveže što više različitih uređaja i da se omogući njihova međusobna komunikacija i upravljanje. Da bi jedna kompanija tu preuzela prevlast, morala bi da u vrlo kratkom vremenu izbaci mnogo kvalitetnih različitih proizvoda na tržište i da uveri potrošače da su baš njihovi proizvodi ono što im treba. Iako ne želimo da potcenjujemo velike kompanije kao što su Google, Microsoft i Apple, mišljenja smo da su šanse da se to dogodi veoma male, pogotovo uzimajući u obzir da je ta trka već u toku, a od Microsoft-a i Apple-a još uvek nismo videli ništa van tradicionalnog tržišta koje obuhvata računare, laptopove, tablete i pametne telefone. Google i te kako vodi u toj bici jer je do sada na tržište već izbacio pametne televizore, satove i naočare (sve bazirano na Android-u), a pored toga je uradio ogroman posao i kada je u pitanju plasiranje na tržište prvog automobila koji ne zahteva ljudsko upravljanje. Jedina prednost Google-a u odnosu na ostala dva giganta na tržištu jeste upravo taj što je Google-ov softver baziran na otvorenom kodu, te ga je kao takvog lakše prilagoditi za različite namere i različite uređaje.
Međutim, da li zajednica koja voli otvoren softver može da računa samo na Google? Svi znamo da ta zajednica (iz već dobro poznatih razloga) nije previše oduševljena ni sa Android-om za pametne telefone i biće im vrlo teško da prihvate da im neka prilagođena verzija Android-a pokreće i ostale uređaje. Sklanjajući Google na stranu za sada, ostaje nam Red Hat, koji se ne fokusira na borbu za gigantima, Canonical još uvek pokušava da prati korak te da se probije na tržište pametnih telefona i tableta, i Mozilla koja pored probijanja na tržište pametnih telefona pokušava da uradi nešto potpuno drugačije – da nam osigura otvoreni internet.
Kako rade pametni uređaji?
Da bismo shvatili kako da napravimo potpuno otvorene uređaje, moramo naučiti kako oni rade. Procesori u današnjim pametnim telefonima imaju više snage nego što su imali super-računari prije samo 20 godina, što je vrlo impresivan podatak koji dokazuje koliko smo napredovali. Međutim, iako su danas minijaturni procesori vrlo jaki, nisu besplatni. Većina uređaja koji će u budućnosti biti spojeni na internet već su odavno u upotrebi u svom „glupom” izdanju (u kontekstu „anti-pametni” upoređujući sa pojmom pametni telefoni). Naša trenutni budilnik ne može da zna da smo budni već dva sata, naš frižider ne može da zna da nam je ponestalo mleka u njemu, a aparat za pravljenje kafe ne može da pretpostavi kakva bi nam kafa odgovarala ovog jutra. U njima se ne nalazi procesor, nego mikrokontroler, mali uređaj koji služi isključivo da uređaje uključimo i isključimo i da javi ostatku sistema šta da rade kada je uređaj uključen. Sada, zamislimo da sve mikrokontrolere u svim uređajima odjednom zamenimo procesorima i damo im neke „pametne” osobine. Po navici, kada ustanemo, počnemo da radimo nešto na našem telefonu, bilo da proveravamo koliko je sati, proveravamo mejlove, društvene sajtove ili nešto slično. Ukoliko radimo neku malo kompleksniju radnju (radnju koju nije moguće uraditi ukoliko nam se spava), naš telefon bi tada mogao da pošalje informaciju našem budilniku da se isključi, frižider bi mogao da proveri imamo li dovoljno mleka i da nas obavesti o tome da li treba da odemo do prodavnice, a aparat za kafu bi mogao da zna da smo budni već neko vreme, te na osnovu toga da pretpostavi da nam nije potrebna jaka kafa da nas razbudi ovog jutra. Sa današnjom tehnologijom mi smo odavno u mogućnosti da tako nešto izvedemo, pa šta nas to u tome sprečava?
Ono što nas sprečava jeste upravo cena procesora. Cena na kojoj se kreću procesori iz pametnih telefona jeste jednostavno neprihvatljiva za korišćenje u nekim kućnim uređajima iz tog razloga što bi se cena tih uređaja morala podići na višestruko veći iznos u odnosu na onaj na kojem se trenutno nalazi. Sa druge strane, mikrokontroleri nemaju snage da se nose sa svim zadacima koje im možemo postaviti sa ciljem da nam kućni uređaji postanu „pametni”. Međutim, šta ako mikrokontrolerima postavimo nešto lakši zadatak?
Tu se za pomoć možemo obratiti jednoj od tehnologija koju koristimo od kada postoji internet: „Cloud” komuniciranje. Šta ako naši uređaji ne moraju da spremaju ogromne količine podataka? Šta ako se odluke donose van naših kućnih uređaja? Cena za izgradnju procesora koji treba isključivo da se poveže sa internetom i preuzme malu količinu podataka je mnogo manja nego cena stavljanja punokrvnih procesora u pametne uređaje. Rešenja o tome šta uređaj zapravo treba da uradi se nalaze u „Cloud”-u, naš procesor ih samo treba preuzeti i na osnovu datih rešenja izvršiti operacije. Čini se kao poprilično jednostavno. Sada kada smo vas uveli u ovo jednostavnije rešenje i objasnili kako pametni uređaji rade, vreme je da pokažemo povezanost između ovog rešenja i slobodnog softvera.
Povezanost između ovog pristupa i slobodnog softvera jeste u tome što različiti uređaji ne moraju da pokreću potpuno različite operativne sisteme. Svi uređaji bi mogli da koriste vrlo slične operativne sisteme, samo programirane na način da se upravlja drugačijim delovima uređaja da bi se izvršila hardverska operacija za koju je taj uređaj namenjen. Sam proces prilagođavanja jednostavnog operativnog sistema za tačno određenu upotrebu jeste daleko lakši kada pred sobom imamo slobodno softversko rešenje nego kada pred sobom imamo vlasnički softver. Možemo da proizvedemo mnogo više pametnih uređaja u kraćem vremenu nego što bi to izvela neka kompanija, i vrlo brzo bi svi uređaji u našem domu mogli biti povezani na centralni server u našem domu na kojem bi se smeštali podaci i donosile odluke. Podaci o nama nikada ne bi trebalo da napuste naš dom, proces nabavke novih uređaja i njihovo povezivanje na našu mrežu bi bilo trivijalno, a uređaji bi imali interakciju sa nama, onakvu kakvu smo mogli samo da zamislimo pre nekoliko godina, a moramo priznati da i sada budi neki osećaj dalekog futurizma u nama.
Međutim, taj futurizam je već ostvarljiv za osobe koje imaju nešto više novca, želje da svoje snove pretvore u stvarnost i znanja da programiraju kako bi ostvarili to sve. Internet stvari („The Internet of Things”) je na putu i fanovi slobodnog softvera imaju nekoliko rešenja dostupnih već sada. Međutim, ta rešenja još uvek nisu dostigla nivo da su laka za korišćenje. Svako ko pokuša da implementira pametne osobine u dostupnim uređajima će morati dobro da se potrudi da bi to ostvario, a mi ćemo vam u sledećim brojevima predstaviti nekoliko projekata koji se fokusiraju na internet stvari koristeći prvenstveno slobodne komponente, te predstaviti opasnosti koje nam u budućnosti donosi internet. U sledećem broju vas očekuje članak o Spark projektu.
System Error. :o) Ne koristim pametni telefon. Dovoljno sam pametan. :o)
E pa ako ne mogu da sačekam sat vremena da se ugreje voda u bojleru onda neka crknem a tako i ostali.
Uostalom šta će da rade sa viškom vremena kada već ne moraju da kuvaju kafu i idu u prodavnicu. Da gledaju Parove?
Aco, već sada svi koji žele mogu da znaju kuda si krenuo jer sigurno u svom Android uređaju imaš bar nekoliko aplikacija koje imaju dozvolu geo-lociranja uređaja, a koja se može koristiti za, npr. ciljano reklamiranje (Ideš u Sutomore? Evo ti reklame sa restoranima u tom mestu, na primer.). Naravno, to je moguće i zloupotrebiti, ali da li zbog te potencijalne opasnosti treba prestati sa razvojem i upotrebom novih tehnologija?
Konkretan primer primene (koji nije tu zbog lenjosti): dolaziš sa duge vožnje iz tog istog Sutomora kući, i želiš da se istuširaš i odspavaš čim stigneš, ali avaj, kući nema nikoga da uključi bojler i ti si osuđen ili da čekaš da se voda zagreje, ili da ideš kod komšinice… IoT bi ti omogućio da, npr. preko veb interfejsa uključiš bojler još dok si u putu i time se spasiš „muka“.
Ma nemoj! Pa da svi znaju šta radim i kuda sam krenuo i to preko mog frižidera. Da li je moguće da su ikome potrebni uređaji za kafu jer ih mrzi da je sami skuvaju?!