„Mi” i „vi” - priča o partnerstvu sa čitaocima

Od ranih dana ovog projekta smo želeli da imamo komunikaciju sa vama čitaocima, mada to još uvek ne funkcioniše onako kako smo očekivali. Važno je da pre svega razjasnimo ko smo to „mi”, a ko ste „vi” u ovom tekstu. „Mi” se redovno čujemo na sastancima i na druge načine aktivno učestvujemo u projektu. Svi „mi” smo se zapravo skupili iz drugih, starijih zajednica i sklonili smo se sa strane da bismo u svojem miru radili na časopisu. Nismo „mi” neki novi, drugačiji. I „vi” ste „mi”, nema razlike među nama, samo ne pričamo dovoljno često.

Izgleda nam kao da postoji neka vrsta barijere između redakcije, autora i čitalaca. Nekako smo došli u situaciju da je dobar deo autora i inače angažovan u projektu oko drugih zadataka. Međutim, jednako važan deo LiBRE! zajednice ste i vi, čitaoci. Da smo kukali, kukali smo. Sigurno smo već i dosadili. Stanje u redakciji je sada primetno bolje, a sada ste vi na redu za buđenje.

Kada bi trebalo da se branimo, mogli bismo da kažemo da smo „mi” svoj deo posla odradili. U gotovo svakom broju našle su se rečenice kao što su „pomozite da postanemo još bolji”, „podelite svoje mišljenje” i „javite se da…”. Takođe, na stranici svakog broja postoji prostor za komentare, stalno je neko na IRC-u, ima nas na Fejsbuku i Tviteru, a odnedavno održavamo otvorene sastanke „uživo” na Mamblu. Časopis ima svoju zvaničnu i-mejl adresu i to je mesto gde je svaka poruka najbrže primećena, pročitana, i odakle se šalje odgovor. Nismo ostali u potpunom mraku i tišini, ali povratnih informacija još uvek je nedovoljno. Znamo da nas čitate, želimo da nam se i javite.

Ako postoji uredništvo, čitaoci i kanal za komunikaciju, a komunikacije nema - to znači da postoji problem. Razmislili smo i razgovarali smo o tome šta može da bude problem. Razgovarali smo samo međusobno unutar redakcije na javnim sastancima i zaključak je da problem može da postoji u svakom od ova tri dela naše zajednice. Možda smo se ulenjili pa nismo jasno postavili odgovarajuća pitanja. Možda na našim prostorima još nije dovoljno razvijena kultura uzajamnog učestvovanja u projektu, jer koliko je na nama da stvaramo časopis, toliko je i na vama da ga delite, hvalite i činite boljim. Treći, a ujedno i najjednostavniji problem je infrastruktura i sam način kako možemo da razmenjujemo ideje. Pokušaćemo ovim tekstom da načnemo ovaj „naš” deo problema.

Projekat je pre skoro tri godine nastao kao ideja Aleksandra Stanisavljevića na Ubuntu Srbija forumu. Išli smo polako, redom, IRC, i-mejl, viki, Liberator… Sve u svemu, jedna vrlo zanimljiva priča koju ćemo vrlo rado da podelimo sa vama ako vas zanima. Osim infrastrukture, „rasli” smo i u pogledu organizacije, broju timova i članova. Dizajn je doživeo barem tri velike revizije, a posebno smo ponosni i na naše lektore. To je ukratko o nama. Pitajte nas ako vas zanima još nešto, ili želite da se detaljnije predstavimo. A ko ste vi? Posle ovoliko godina, mi još uvek nismo sigurni ko nas najviše čita. Sledi nekoliko konkretnih pitanja oko kojih želimo da nam pomognete.

Da li ste napredni korisnik, haker, programer, redovni korisnik, ili početnik?

Da li su vam tekstovi suviše daleki, složeni i nezanimljivi? O čemu želite da čitate?

Želite li svoj projekat da predstavite široj zajednici putem našeg časopisa?

Šta želite da podelite sa ostalim čitaocima? Kako ste čuli za časopis i slobodan softver?

Drugi problem, koji treba da rešimo, jeste da obezbedimo najjednostavniji put za komunikaciju. Možda smo malo staromodni pa očekujemo da i-mejl funkcioniše i u 21. veku. Koji je vaš predlog? Da li biste radije odgovorili na anketu? Želite li da preuredimo sajt tako da bude prijatniji za komentare? Verujemo da je i ovo problem na čijem rešenju treba da radimo, a tu su nam potrebni vaši saveti i mišljenja. Za početak, najvažnije je da skupite hrabrosti i volje da nam se javite na koji god način želite. Ako ne možete da odlučite kojim putem da nam se javite - pošaljite nam i-mejl na dobro poznatu adresu libre [at] lugons [dot] org da i „vi” zvanično postanete „mi”. Srdačan pozdrav i hvala!

LiBRE! vesti

2. januar 2015.

Novi projekat Voje Antonića

Voja Antonić, projektant prvog kućnog računara napravljenog u Jugoslaviji - „Galaksija”, ima novi projekat slobodnog hardvera. Radi se o DIY (eng. Do it yourself) mini retro 2D igračkoj konzoli.

Koristan link: http://t.co/WuLVwddftb

3. januar 2015.

Linuks AMD® vlasnički upravljački program za grafiku „uništio” Vindouz

Foroniksovi (Phoronix) testovi pokazuju da je AMD-ov vlasnički upravljački program na Linuksu pokazao bolje performanse u odnosu na isti na Vindouzu kada su u pitanju neke mogućnosti OpenGL-a (Opendžiel).

Koristan link: http://t.co/E3Oe3mGxk4

5. januar 2015.

Pirati pišu svoj zakon

Piratska partija Evrope, koja već u dva mandata ima svoje predstavnike u Evropskom parlamentu, počela je izradu sopstvenog zakona o intelektualnoj svojini. Postojeći evropski zakon o intelektualnoj svojini ima elemente autorskog monopola, što Piratska partija želi da izmeni.

Koristan link: http://t.co/Uyl0ZBBloO

6. januar 2015.

Fondacija Linuks dobila tri nova člana

Fondaciji Linuks su se početkom ove godine pridružili IIX, Micron Technology i Planisys.

Koristan link: http://t.co/Ht9MEq3W7a

7. januar 2015.

Flaksboks (Fluxbox) 1.3.6

Flaksboks (eng. Fluxbox) verzija 1.3.6 je dostupna za preuzimanje.

Koristan link: http://t.co/fpsGgeEsAE

7. januar 2015.

Serbian 2015 Openboks

Serbian, domaća distribucija Linuksa bazirana na stabilnoj grani Debijana (eng. Debian), objavila je novu verziju sa grafičkim okruženjem Openboks (eng. OpenBox). Ova verzija Serbiana namenjena je slabijim/starijim računarima.

Koristan link: http://j.mp/15xR5xk

9. januar 2015.

Arduino osvojio nagradu na CES2015

Arduino (eng. Arduino) je osvojio nagradu za inovaciju na ovogodišnjem CES2015 (eng. Consumer Electronics Show).

Koristan link: http://t.co/cWOoqnaYid

11. januar 2015.

Fajerfoks operativni sistem na televizorima

Panasonik (eng. Panasonic) je najavio televizor koji će koristiti Fajerfoks operativni sistem (eng. Firefox OS).

Koristan link: http://t.co/K2GnTsVDTR

24. januar 2015.

RailsGirls® radionice u Novom Sadu

U Novom Sadu su održane radionice koje su namenjene ženama koje bi želele da nauče programiranje. Radionice su trajale dva dana, 24. i 25. januara ove godine.

Koristan link: http://j.mp/1zwolBv

Puls slobode

Autor: Luka Z. Gerzić

Šta je to 31C3?

PS-231C3 je oznaka trideset prvog CCC (eng. Chaos Computer Club) godišnjeg kongresa koji se održava u Hamburgu. To je najveći i najstariji evropski hakerski kongres na svetu. Jedan od osnivača kluba je Vau Holand (nem. Wau Holland), po kome je kasnije kreirana i istoimena fondacija. Klub je osnovan davne 1981. godine, dok kongres počinje da se održava od 1984. godine. CCC klub broji više od 5700 članova. Zvaničan opis kluba, koji organizuje kongres, jeste: „Galaktičko udruženje živih formi, nezavisno od starosti, pola, rase ili socijalne orijentacije, koje ne poznaje granice za slobodu informacije”.

Kako biste imali bolji uvid u veličinu ovog kongresa, daćemo nekoliko podataka sa ovogodišnjeg trideset prvog po redu kongresa.

Za vreme trajanja kongresa, koji je otvoren 24/7, bilo je više od 13.000 posetilaca i više od 1.000 volontera. Postavljeno je preko 9km strujnih kablova i 3200 utičnica za posetioce, a potrošeno je 53 MWh struje za četiri dana kongresa. Postojalo je 125 WiFi pristupnih tačaka (eng. Access Point — AP), te više od 2 Aruba 7200 kontrolora sa desetogigabitnim ap-linkovima (u špicu je imao 7800 korisnika - 68 klijenata u proseku po pristupnoj tački) - i viđeno je preko 20.000 unikatnih uređaja na WiFi mreži. Veći deo komunikacione opreme donirao je Džuniper (eng. Juniper Networks), tačnije 1.2t (tone) Džuniperove opreme (3 miliona evra ukupne osigurane vrednosti). Pored svega toga, procesuirano je 80TB strim videa uživo, enkodovano i distriburiano sa kongresa ka preko 90.000 posetilaca putem CCC CDN opreme (eng. content delivery network). Kongres poseduje sopstvenu GSM i DECT (eng. Digital Enhanced Cordless Telecommunications) mrežu (svako može zatražiti GSM SIM karticu ili doneti svoj DECT telefon). Za one koji vole retro, ove godine je ponovo bio aktivan Zajdenštrase (nem. Seidenstrasse) (sistem cevi za transfer kapsula kroz plastične cevi uz pomoć vakuma).

Naša ekipa imala je tu privilegiju da pogleda kako sam „Kolokejšn”¹ (eng. Colocation) deo (gde možete doneti svoju opremu) izgleda, kao i da bude deo tima od svega osam ljudi koji su znali gde je pravi NOC (eng. Network Operations Center) u kome je smeštena glavna komunikaciona oprema kongresa (kongres poseduje dve lažne lokacije opreme). S obzirom na to da smo posedovali malu termalnu kameru, snimili smo za vas koliko su vrući core („kor”) ruteri kongresa. Uverite se i sami.

Mada, kada govorimo o ovom kongresu, trebalo bi ustvari da razmišljamo o jednom velikom hakerspejsu. Zapravo je to jedan ogroman prostor koji kontroliše celokupna zajednica, gde ljudi sa zajedničkim interesima o kompjuterima, mrežama, mašinstvu, nauci, digitalnoj i/ili elektronskoj umetnosti razmenjuju mišljenja, sarađuju ili se takmiče. Suština je u kolaboraciji, učenju i druženju. Kada govorimo o hakerspejsu, moramo pomenuti da se prvi i najveći hakerspejs nalazi upravo u Nemačkoj, a zove se C-base (Si-bejs).

¹ Colocation - deo računskog centra gde svako može da donese svoju mašinu i da je poveže na internet.

Pripreme za odlazak i ulazak na kongres

Plan za odlazak na ovakav događaj podrazumeva pre svega nabavljanje avionskih karti i hotelskog smeštaja barem tri meseca unapred. Iako se kongres održava u sklopu CCH (eng. Congress Center Hamburg) pored kojeg je odmah hotel „Radison Blu” (eng. Radisson Blue), već dva meseca pred kongres hotel je kompletno bukiran, kao i većina obližnjih manjih hotela i hostela. Odlazak na ovakav događaj preporučili bismo da bude u timu ljudi sličnih interesovanja. Bez poznavanja nemačkog jezika, i bez poznanstava, u solo varijanti, sve ovo jednostavno neće delovati na vas na isti način.

Preporučili bismo vam da ponesete sledeće stvari: noutbuk sa Linuksom (po mogućstvu noviji sa 802.11n/ac WiFi karticom uz dodatnu bateriju), DECT telefon i/ili stari GSM telefon, nekoliko radio stanica/voki-tokija, baterije za punjenje uređaja preko USB-a (što jače to bolje, više od 8000 mAh), eternet kablove (2-5m dužine), produžni gajtan (2-5m), USB3 tvrde diskove (više od 2TB), različite verzije USB kablova, USB2/3 stikove, kvalitetne slušalice, VPN gateway (recimo TL3020 sa openwrtom), 3G WiFi dongle, različite vrste adaptera, termos za kafu, vodu ili sok, i potrebne lekove. Pre polaska, obavezno uradite kompletan bekap svojih uređaja, podignite zaštitni zid (eng. firewall) i vodite računa da na svojim uređajima nemate poverljivih datoteka. Na svim uređajima isključite sve nepotrebne servise, podesite telefon na manuelni izbor GSM provajdera, a nijedan uređaj nikad nemojte ostavljati bez nadzora.

PS-7Toplo preporučujemo dolazak jedan dan ranije ili barem veče pred kongres, uz obaveznu registraciju to veče (uz registraciju DECT telefona i/ili nabavku GSM kartice [Slika 002] koja košta 2 evra), zato što vas na dan kongresa red za uzimanje narukvice može „koštati” nekoliko sati do ulaska, jer su redovi ogromni. Ovogodišnja ulaznica za kongres je koštala 100 evra za sve dane. Obavezno preuzmite aplikaciju za iPhone® ili Android koja će vam olakšati pregled dešavanja i sam raspored kongresa.

Prostor i sam događaj

Pored velikog broja predavanja, koja naravno možete pratiti i uživo putem strima, tu su i druga vrlo interesantna dešavanja kao i druženje sa prijateljima. Sva predavanja su bila prevođena na nemački i/ili engleski jezik kako titlom na ekranu, tako i preko DECT/GSM mreže, naravno u realnom vremenu. Možda je najbolji osećaj onaj da ste svoji među svojima, a tu mislimo među ljudima koji se bave istim ili sličnim poslom kao i vi, a koji slično ili isto razmišljaju.

Sam prostor, tačnije prostorije kongresa, fenomenalno su osmišljene i ukrašene. Mnogo truda i novca uloženo je u sjajne ideje kako za osvetljenje tako i za uređenje samog kongresnog prostora. Definitivno najbolje ukrašen bio je veliki hodnik koji je izgledao kao hodnik svemirskog broda, ukrašen velikim brojem projektora, led dioda i reflektora, uz vrlo specifično ambijentalno osvetljenje. Ovaj hodnik povezivao je glavni hol sa prostorijom gde su bile smeštene radionice za lemljenje i CTF (eng. capture the flag) ekipe.

Od interesantnih dešavanja tu je naravno CTF događaj (Jeopardy style) koji se tradicionalno organizuje. Različiti nivoi težine zadataka kao i raznovrsnost pokrivenih oblasti i ove godine bili su na nivou zadatka. CTF aktivne kategorije bile su: pwn, crypto, reversing, malware, signals i web. Bilo je registrovano preko 1000 timova, a pobednik ove godine bila je grupa 0xffa. Više detalja o CTF-u možete pogledati ovde https://31c3ctf.aachen.ccc.de ili na https://ctftime.org/

Zatim, možete se oprobati u obijanju brava (eng. lockpicking) na nekoliko radionica u okviru kongresa. Kad spominjemo radionice, veliki deo kongresa bio je posvećen i izradi sopstvenih ručno pravljenih CNC (eng. Computer Numerical Control) mašina kao i 3D (trodimenzionalnih) štampača. Razmenjivala su se iskustva u kreiranju kompleksnih 3D objekata kao i kreiranje sopstvenih 3D štampača različitih namena.

Nekoliko radionica za lemljenje, od onih koncipiranih za početnike, do onih naprednih bilo je aktuelno tokom čitavog kongresa. Za sve one koji su želeli da kupe gotove kitove bilo je zaista velikog izbora.

Za one koji su bili frustrirani opremom, ili su jednostavno želeli da unište permanentno neku komponentu (ili ceo računar), bila je instalirana velika hidraulična presa koja bi taj deo opreme pretvorila u gomilu sitnog đubreta. Odličan način da permanentno uništite, recimo, svoj stari hard disk, zar ne?

Na samom kongresu moguće je kreirati sopstvenu majicu/duksericu, koju vam mogu odštampati ili izvesti direktno na vašoj garderobi. Pored toga bilo je moguće laserom gravirati bilo šta od plastike ili aluminijuma na nekoliko laserskih gravera koji su bili prisutni na događaju. Za one koji su želeli da kupe majice, dukserice i ostali reklamni materijal, cene su se kretale od 25 do 45 evra.

Na kongresu je moguće kreirati ID (identifikacionu) kartu sa podacima koje vi izaberete. Sve što je bilo potrebno da uradite jeste da se prošetate do dela za fotografisanje, napravite svoju fotografiju, i popunite željene podatke. Lažna lična karta deluje vrlo uverljivo, ali sigurno neće proći proveru nemačke policije, za ostale ne bismo bili tako sigurni.

Posebnu pažnju posvetili su deci. Pored pune igraonice, gde je bila smeštena velika količina lego kockica i drugih igračaka, bio je kreiran segment sa peskom iznad kojeg je bio montiran 3D skener koji je u zavisnosti od visine ili dubine peska kontrolisao projektor koji je osvetljavao reljef peska (reke, jezera, ravnice, brda i planine) u realnom vremenu. Bila je, takođe, postavka svih mogućih retro igrica na starim konzolama. Za malo stariju decu kreirane su posebne radionice za prve korake u elektronici.

Kraj konferencije i povratak

Pored velikog oduševljenja celokupnim kongresom, naravno moramo da istaknemo i ono što nam se nije dopalo. Prethodna konferencija kao i ova, imale su određenu političku konotaciju koja nam se nije dopala (prim. aut.). Sve u svetlu nedavnih obelodanjenih izjava Edvarda Snoudena (Edward Snowden), Vikiliksa (eng. WikiLeaks) i drugih. Za naš ukus, možda ne bi trebalo mešati, to jest politizovati, ovakve događaje. Sam pozdravni govor na otvaranju ovogodišnje konferencije bio je daleko od inspirativnog, posebno za mlade ljude, dok je završni govor ispratio gaf voditelja koji je izjavio da je od 18. decembra govorio engleski jezik, ali da neće govoriti na engleskom prilikom završnog događaja, što je onima koji su došli da čuju završni pozdravni govor (a ne znaju nemački jezik) bilo veoma neprijatno. Za one koji su propustili, a želeli bi da pogledaju predavanja sa konferencije, to mogu učiniti preko sajta http://media.ccc.de/

Na povratku u Srbiju ekipa koja organizuje BalCCon® (Balkon) (https://balccon.org) konferenciju, čiji je koorganizator „Vau Holand fondacija”, razmišljala je kako da naredni BalCCon unapredi i učini ga još zanimljivijim. Očekujemo vas i ove godine u Novom Sadu, da zajedno napravimo još veći i bolji događaj.

Predstavljamo

Fedora 21

Autor: Momčilo Medić

Nakon godinu dana stigla je Fedora 21.

Ovaj put bez kodnog imena, Fedora 21 dolazi sa mnogo novina koje će privući veliki broj ljubitelja slobodnog softvera. Pre nego što počnemo sa uobičajenim nabrajanjima noviteta i verzijama programa, potrebno je objasniti „večito” kašnjenje Fedore koje se često pominje u krugovima slobodnog softvera. Naime, veliki broj distribucija GNU/Likuksa se mogu podeliti prema načinu izdavanja. Postoje distribucije koje se objavljuju kao rolajuća izdanja (engl. rolling release), kojima zaista i nisu potrebna posebna izdanja jer njihovi korisnici preko ažuriranja dobijaju najnovije verzije aktuelnih programa. Ovo garantuje najnovije verzije programa, ali nosi određeni rizik po stabilnost sistema. Postoje edicije koje imaju striktno zadato vreme izdavanja bez sinhronizacija sa drugim paketima. Oni će izdati svoju ediciju u zadato vreme bez obzira na broj otvorenih programskih grešaka u sistemu i ukupne nedovršenosti sistema. Sa druge strane, imamo distribucije koje nemaju zadat nikakav poseban datum ili period objavljivanja, nego se radi na novoj verziji dok god se ne bude smatrala potpuno spremnom i stabilnom. Ovakav način obezbeđuje pouzdan sistem, ali zbog toga „trpe” inovacije.

Fedora se odlučila za zlatnu sredinu sa određenim periodom izdavanja kao ciljem, ali tek ako je sistem u potpunosti testiran. Zato se Fedora smatra veoma stabilnom distribucijom koja u sebi sadrži najbolje i najnovije iz sveta slobodnog softvera. Takođe, Fedora se planira paralelno sa budućim većim izdanjima programa ili grupama programa kao npr. Gnom (engl. Gnome) i sl. Nakon svega toga, potrebno je reći da se čekanje isplatilo i da Fedora 21 ima potencijal da bude najbolja edicija ove distribucije do sada. Ali, zar samo 21? Gde su ona čudna i interesantna kodna imena?

Fedora tim je odlučio da su kodna imena, koja su dosad bila u upotrebi, potpuno beskorisna. Autor ovog teksta je voleo ta imena i činilo se da operativni sistem nekako ima dušu, odnosno neku šaljivu stranu, ali pitanje „koja verzija Fedore je nosila kodni naziv Bifi Mirakl (engl. Beefy Miracle)” ubedilo ga je da su ona zaista beskorisna. Ne samo da se edicije nisu mogle povezati sa imenima, nego je trebalo iz verzije u verziju ažurirati kako broj tako i kodno ime u datotekama, programima, slikama i ostalom.

Fedora 21 pravi veliki skok sa Gnoma 3.10 iz „dvadesetice” na Gnom 3.14. No, nećemo upoređivati vremenski veoma udaljene verzije Fedore, nego ćemo videti šta to Gnom 3.14 donosi sa sobom. Nove primetne promene animacija za meni i prozore su suptilne ali estetski veoma ugodne. Očekujte da će vas novi Gnom obavestiti ako bežična mreža na koju ste se povezali traži da se ponovo prijavite. Ako ste korisnik Guglovih servisa, bićete prijatno iznenađeni podrškom za slike u aplikaciji Fotografije (engl. Photos). Aplikacija Vreme (engl. Weather) koja prikazuje lokalno vreme, iako sa oskudnim brojem gradova u Srbiji nakon instalacije, veoma je kvalitetna i atraktivna, te se vredi pomučiti i podesiti je i za manja mesta. Naravno, Gnom ne bi bio takav kakav je, da nema poboljšanja i unapređenja u podršci za ekrane osetljive na dodir, multitaktilno osetljive ekrane (engl. multi-touch) i Vejlend (engl. Wayland). Među ostalim novinama su još i izrada navigacionih ruta u aplikaciji Mape (engl. Maps), Gnom softver podrška dodacima za programe i tzv. „GTK+ Inspector” za programere.

Stupila je na snagu tzv. „Fedora.next” inicijativa u kojoj imamo tri različite verzije: Fedora radna stanica, Fedora server i Fedora oblak (engl. Cloud). Fedora radna stanica je namenjena kućnim računarima koji uglavnom služe za rad sa kancelarijskim paketima, razvoj aplikacija, pripremu multimedije, zabavu i slično. Za potrebe kućnih servera, kao i servera koji zahtevaju podršku za najnovije tehnologije - tu imamo Fedoru server. Ova verzija nikako ne pokušava da bude konkurencija CentOS-u ili Red het enterprajz linuksu, nego da popuni mesto servera koji sadrži inovacije. I na kraju, činjenici koliko računari postaju jeftini svedoče i sve pristupačniji sistemi oblaka. U tu svrhu, Fedora je obezbedila Fedoru oblak za pripremanje Doker (engl. Docker¹) instalacionih slika kao i drugih rešenja za računarstvo u oblaku.

Za one koji žele da isprobaju Vejlend, u Fedori 21 će to moći da urade jednostavno i lako sa podrškom za „Gnom na Vejlendu”. Moramo napomenuti da, iako je u planu da Vejlend u Fedorinoj verziji 22 ili kasnijoj bude podrazumevani grafički server, za sada je još uvek u eksperimentalnoj fazi i ne preporučuje se isprobavanje, osim ako niste spremni da zagrebete malo dublje.

DevAssistant je alatka korisna velikom broju programera, a od sada se nalazi kao podrazumevani program u Fedori. Tu je i Logs aplikacija koja ume da bude pomalo zbunjujuća za korisnike terminala, ali je u svakom slučaju dobar dodatak za korisnike koji preferiraju grafičko okruženje.

Ovaj članak se ne bi mogao smatrati kompletnim bez spominjanja kokpita (engl. Cockpit). Kokpit je aplikacija za monitoring i podešavanje servera i računara. Veoma je jednostavan za instalaciju i pokretanje, nakon čega će vas ostaviti bez reči svojim izgledom i mogućnostima. Potrebno je napomenuti da je ovo softver koji je tek u razvoju i kao takav ne bi trebalo da se koristi na sistemima u produkciji.

¹ http://spins-test.fedoraproject.org/sr/docker/

Naravno, kao i svaka verzija Fedore, i 21 donosi mnoge izvedbe (engl. Spins) za korisnike ove distribucije koji traže nešto drugačiji doživljaj. Možda u vidu drugačijeg podrazumevanog okruženja: KDE, IksFCE, Mate, ili u vidu sistema predviđenog za muzičare - Fedora Jam-KDE, za naučnike - Fedora Scientific-KDE, ili za one koji vole da testiraju sigurnost - Fedora Security. Ovo su samo neki od izvedbi koji su dostupni za Fedoru. Preporučujemo da se upoznate sa njima i vidite postoji li nešto „samo za vas” na http://spins.fedoraproject.org .

Želeli bismo da vam skrenemo pažnju na veliku podršku ljudi iza Fedora projekta i na opštu angažovanost. Ako znate engleski, možete potražiti pomoć na svakom koraku. Tu je Fedorin forum, gde retko koje pitanje ostane bez odgovora. Ukoliko želite sistem odgovora i da zagolicate nečiji ranking, na raspolaganju vam je ask.fedoraproject.org. Naravno, nijedan sistem podrške ne može da se meri po brzini sa dobrim, starim IRC-om, gde će vam se ponuditi odgovor u roku od nekoliko minuta na serveru Frinod (engl. Freenode) u sobi Fedora.

Nadamo se da će ovaj kratki članak biti inicijalna kapisla vašeg interesovanja za fantastičnu distribuciju – Fedoru 21.

Korisni linkovi:

[1] http://fedoraproject.org/en/
[2] http://webchat.freenode.net/?channels=#fedora
[3] https://ask.fedoraproject.org/
[4] http://www.fedoraforum.org/

Kako da...?

Uvod u programski jezik C (8. deo)

Autor: Nikola Hardi

U prethodnim brojevima ste imali priliku da čitate o C programskom jeziku. Nadamo se da smo uspeli da predstavimo dovoljan deo ovog programskog jezika da biste mogli da počnete stvarati svoje programe, ili da lakše savladate naprednije stvari. Narednim tekstovima će biti završen serijal i u njemu možete da pročitate neke stvari koje smo primetili da nedostaju u prethodnim tekstovima. Takođe, daćemo i nekoliko smernica za dalje istraživanje, učenje i igranje. Počećemo od funkcija.

U istoriji razvoja programskih jezika postoji jedan trenutak kada su tadašnji programeri primetili da neke delove koda koriste više puta. U to vreme su se programi pisali na bušenim karticama, a „matematička biblioteka” je bio termin koji je označavao skup kartica sa korisnim kodovima za matematiku, uvezanih mašnom. Funkcije, ili potprogrami, kako ih neki još zovu, jesu delovi koda koje je moguće po potrebi pozvati. Nakon izvršenog koda, koji ta funkcija ima, procesor nastavlja da izvršava kod od mesta na kojem je funkcija bila pozvana.

Pre nego što pređemo na detaljan opis kako se deklarišu, definišu i pozivaju funkcije u C-u, biće objašnjeno zašto su one toliko važan mehanizam. Osnovna svrha je da se kod koji se ponavlja izdvoji na jedno mesto i samo poziva. Tako je omogućeno da taj deo koda iskoristite na nekom drugom svojem projektu ili ga podelite sa drugima. Drugi razlog je jednostavnije održavanje projekata. Softver uvek ima greške i to se ne dovodi u pitanje. Naravno, primećujete da je mnogo elegantnije ispraviti grešku na jednom mestu (unutar funkcije) nego na svakom mestu gde bi se taj kod pojavio (kada se pozivaju te funkcije).

Funkcije mogu da obuhvate i kod koji nije doslovno isti. Kod možemo da „parametrizujemo”. To znači da pri svakom pozivu funkcije možemo da podesimo neke delove koda. Naprimer, ako imamo funkciju za ispis imena, možemo da joj postavimo parametar koje ime želimo da bude ispisano. To se postiže putem parametara ili argumenata. U ovom tekstu nećemo praviti razliku između parametara i argumenata iako ona formalno postoji.

Poslednja stvar koju treba da pomenemo kada pričamo o ideji funkcija je da one mogu, a ne moraju, da imaju rezultat. Strogo rečeno, potprogrami koji imaju rezultat su funkcije, a potprogrami koji nemaju rezultat su procedure. Metode su jako slične funkcijama, ali se uglavnom pominju u kontekstu objektno orijentisanog programiranja. Niko vam neće suditi ako funkciju nazovete procedurom ili obrnuto, ali lepo je znati šta je šta. Najčešće ćete ipak čuti za izraz funkcije ili metode, pa ćemo i mi ove termine koristiti većom slobodom.

Kao i kod promenljivih, funkcija mora da bude deklarisana pre nego što je pozovemo. Deklaracija funkcije se naziva još i njenim „potpisom” i sastoji se od tipa povratne vrednosti, imena potprograma i liste parametara, završno sa znakom tačka-zarez. Ukoliko uz deklaraciju funkcije želimo i da je definišemo, to može da bude urađeno tako što se izostavi znak tačka-zarez i u nastavku potpisa se napiše telo potprograma.

Primer procedure bez parametara:

void procedure()
{
puts("Hello world!");
}

Primer funkcije sa dva parametra:

int sum(int a, int b)
{
int c;
c = a + b;
return c;
}

Primećujete da parametri imaju svoj tip i naziv. Ponašaju se slično promenljivim. Unutar funkcije mogu biti deklarisane dodatne promenljive. Rezultat funkcije, koji se još naziva i povratna vrednost, „vraća” se naredbom return. Važno je reći da se izvršavanjem naredbe return prekida izvršavanje cele funkcije, što je ilustrovano sledećim primerom.

Primer prekida izvršavanja funkcije naredbom return:

int min(int a, int b)
{
if(a < b)
return a;
else if(b < a)
return b;
}

Ukoliko je broj a manji od broja b, izvršavanje će se završiti već u drugoj liniji ove funkcije, a do druge provere neće ni doći. Zanimljivo je primetiti i da ova funkcija ima grešku. Šta se događa ukoliko su brojevi jednaki?

Funkcije imaju svrhu samo ako ih koristimo, odnosno „pozivamo”. Funkcije se pozivaju po imenu, a od promenljivih se razlikuju po tome što se u pozivu funkcije piše i par zagrada, unutar kojih su vrednosti parametara kada je to potrebno.

Primer poziva fukcije sum():

int zbir = sum(2, 3);

Poslednja stvar koja je ostala nedorečena je da se parametri u funkciju mogu preneti po vrednosti ili po adresi. Praktična upotreba i detalji o razlikama su ipak možda previše za jedan uvodni kurs o C-u. Najvažnije stvari koje treba imati na umu su da, kada parametre koristite kao u našim primerima funkcija sum() i min(), tada se oni prenose po vrednosti i praktično se kopiraju. To znači da ako dodelimo nove vrednosti parametrima, te vrednosti će važiti samo unutar funkcije, a ne i na mestu gde je funkcija pozvana. Da bi takve dodele bile vidljive i van funkcije, koristi se prenos parametara po adresi. To zapravo znači da se pri navođenju parametara u deklaraciji koriste pokazivači, a pri pozivu funkcije se koriste adrese (pokazivači ili adrese promenljivih).

Primer prenosa parametara po adresi:

void swap(int *a, int *b)
{
int tmp;
tmp = *a;
*a = *b;
*b = tmp;
}

Poziv:

 int a = 5, b = 7;
swap(&a, &b);

Trebalo bi da ovaj tekst pokrije osnovne stvari o rukovanju potprogramima. Ukoliko vam je potrebna inspiracija kako da uvežbate rad sa funkcijama, evo lepog problema:

Pokušajte da napišete funkciju za ispis elemenata niza na standardni izlaz. Zatim napišite funkciju za sortiranje niza u kojoj ćete pozivati funkciju za ispis niza i posmatrajte kako elementi niza menjaju svoja mesta.

Ukoliko vas zanima nešto više, ili nam se potkrala neka greška, molimo vas da nam se javite. Srećno!

Oslobađanje

U potrazi za idealnom distribucijom

Kriterijumi izbora prema primarnoj funkcija računara (5. deo)

Autor: Dejan Maglov

Kod operativnog sistema Vindouz prilagođavanje računara prema njegovoj primarnoj funkciji se svodi samo na pravi izbor potrebnih aplikacija (aplikativnog softvera). Aplikacije za Vindouz su u većini slučajeva dobre, ali vrlo zahtevne po pitanju hardverskih resursa. Ako tome dodamo popriličnu zahtevnost samog operativnog sistema, dolazimo do zaključka da dobra produktivna mašina sa Vindouzom mora da bude prilično „jaka”. Dubljom analizom samih procesa mogli bismo zaključiti da dobar deo hardverske „snage” odlazi na mnogobrojne sporedne funkcije na koje korisnik samo delimično može da utiče ili čak ne može nikako da utiče.

Filozofija GNU/Linuksa po pitanju kreiranja produktivne mašine je drugačija. Zahvaljujući otvorenom kôdu, prilagođavanje računara određenoj funkciji se ne svodi samo na izbor aplikacija, nego je moguće i optimizovati sam operativni sistem (OS) tako da štedi hardverske resurse i maksimalno ih koristi za primarnu funkciju. Nije jednaka optimizacija sistema za primarnu funkciju velikog broja aritmetičkih proračuna, za baratanje velikom količinom podataka korišćenjem Bulove algebre, za obradu slika, zvuka i slično. Svaka od tih funkcija zahteva posebnu optimizaciju sistema.

Iako je moguće od bilo koje GNU/Linuks distribucije napraviti produktivnu mašinu za bilo koju funkciju dodavanjem potrebnih aplikacija, na istom hardveru krajnji rezultat će biti različit po pitanju efikasnosti i produktivnosti. Različita optimizacija samog sistema je prouzrokovala te razlike.

Prijateljski nastrojen sistem kao kriterijum za izbor

Za operativni sistem kažemo da je prijateljski nastrojen (eng. User Friendly) prema korisniku ako korisnik može lako da prilagodi taj sistem svojim potrebama po pitanju izgleda i primarne funkcionalnosti. Vindouz je postavio standard za pojam „prijateljski nastrojeni operativni sistem” i po njemu to je pogled na operativni sistem iz ugla manje iskusnih korisnika računara. Podrazumeva da sistem za korisnika odradi što više podešavanja automatski, a za ostala podešavanja ima grafičke alate tako da korisnik sa nekoliko klikova miša može malo da prilagodi sistem ili njegov izgled svojim potrebama.

U svetu GNU/Linuksa, na taj pojam se može dvojako gledati. Može se gledati iz ugla iskusnog korisnika i iz ugla početnika. U ovom poglavlju ćemo vam pokazati da su to dva potpuno suprotna ugla gledanja.

Objektivno najbolji, najlakši i najprirodniji način da se GNU/Linuks optimizuje i prilagodi korisniku je preko komandne linije. Kroz niz komandi ili čak skriptu komandi korisnik može najbrže da optimizuje i prilagodi svoj GNU/Linuks sistem i sve GNU aplikacije. Dobrom skriptom može čak i da održava veliki broj računara. Iz tog razloga iskusni korisnici GNU/Linuksa za prijateljski nastrojen OS smatraju onaj koji ima najjednostavnije komande i koji ne radi ništa automatski nego korisniku ostavlja na volju da svoj sistem sam optimizuje do najmanjih sitnica.

Sa druge strane, imamo početnike u GNU/Linuksu koji se još prilagođavaju novom OS-u, tek uče filozofiju slobode softvera i ne poznaju rad u komandnoj liniji. Za njih važi Vindouzova definicija za prijateljski nastrojen operativni sistem, iako to nije najprirodniji način optimizacije GNU/Linuksa. Automatika pri optimizaciji Linuksa kao i pomoćni grafički alati za optimizaciju samo nepotrebno opterećuju sistem, a rezultat je retko idealan. Ipak, po želji korisnika projektovane su i takve distribucije namenjene početnicima. Na slici 1 je prikazan dijagram familija GNU/Linuksa od prijateljski nastrojenijih do suviše teških iz ugla GNU/Linuks početnika:

Iz ugla iskusnijih korisnika, ovaj dijagram prijateljski nastrojenih sistema je upravo obrnut. Džentu nudi potpunu optimizaciju operativnog sistema. Ništa se ne instalira automatski, a za svaku optimizaciju postoji izbor za korisnika. Komande su dovoljno jednostavne da taj proces kreiranja idealne distribucije bude udoban za korisnike koji znaju šta hoće na kraju da dobiju. To je za početnike možda naizgled mazohistički pristup izgradnje operativnog sistema, ali za iskusne korisnike je opet mazohistički optimizovati već automatski odrađen Ubuntu sistem. Toliko bi promena trebalo izvršiti u Ubuntuu da se takva operacija ne isplati.

Objektivno savršen GNU/Linuks sistem se nalazi negde na desnoj strani dijagrama. Subjektivno može biti bilo gde na tom dijagramu i to zavisi samo od korisnika.

Primarna funkcija računara kao kriterijum za izbor

Većina korisnika nema ni vremena, ni znanja, ni volje da GNU/Linuks sistem gradi iz sastavnih delova, a ni da svaki deo sistema idealno optimizuje prema sopstvenom hardveru. Lepo je ako je moguće OS idealno podesiti, ali to nije primarni cilj. Najvažnije je da OS bude jednostavan za upotrebu, da ne opterećuje hardver i svog korisnika.

Iz gomile GNU/Linuks distribucija je moguće naći već dovoljno optimizovanu distribuciju za većinu namena. U nastavku ćemo preporučiti neke od njih.

Desktop

Desktop je neopravdano suvereno carstvo Vindouzovog operativnog sistema. Predstavlja sistem namenjen običnom svakodnevnom korišćenju računara koje obuhvata lako povezivanje na internet, pretraživanje interneta, komunikacije (društvene mreže, VoIP, instant poruke), manipulaciju multimedijalnim sadržajem (slike, video, zvučni zapisi), rad sa kancelarijskim paketom programa. Ovaj OS prvenstveno je bio namenjen stacionarnom personalnom računaru, ali sa unapređenjem snage mobilnih računara (laptop i tablet računara) predstavlja osnovni OS i za te mašine.

Kada smo rekli da je ovo neopravdano suvereno carstvo Vindouza, to smo i mislili. Odgovorno tvrdimo da GNU/Linuks ima isto tako kvalitetna rešenja za ovu namenu računara. Ne samo da su GNU/Linuks operativni sistemi jednako kvalitetni kao i Vindouz za ovu namenu računara, već u mnogim segmentima su čak kvalitetniji. Manje opterećuju hardver, lakše se povezuje sa internetom, otporan je na maliciozni softver za Vindouz, nije opterećen antivirusnim softverom, lakše manipuliše velikom količinom multimedijalnog sadržaja, prirodno je predodređen da bude višekorisnički sistem, bolje čuva privatnost korisnika, predinstaliran je sav potreban aplikativni softver odmah po instalaciji sistema na računar, nije potrebno instalirati pokretačke programe (eng. drivers) i tako dalje.

Iako svaka GNU/Linuks distribucija može da zadovolji ove potrebe korisnika, za ovu namenu mi preporučujemo distribucije koje su jednostavne za instalaciju, poseduju grafičke alate za podešavanje sistema i veliku bazu aplikativnog softera u svojoj riznici koja se lako pretražuje i instalira novi softver. Za takve sisteme smo skloni da kažemo da su to distribucije za početnike. Zapravo, ako korisnik nema veće zahteve od operativnog sistema, ove distribucije mogu da budu konačni izbor i za vrlo iskusne korisnike.

Ove kriterijume prvenstveno ispunjavaju Ubuntu i njegovi derivati, Debijan i njegovi derivati, a za nešto iskusnije korisnike GNU/Linuksa preporučujemo, takođe, Arč Linuks i njegove derivate. Konkretno, ako bi preporučivali distribucije za desktop po kriterijumu popularnosti po Distrovoču (eng. Distrowatch), ubedljivo bi na prvom mestu bio Linuks Mint, a zatim Ubuntu i njegovi derivati - Elementeri (elementery) Linuks, Zorin, LXLE, Dipen (Deepin), Bodi (Bodhi) Linuks, zatim Mandžaro (eng. Manjaro - derivat Arča), Debijan, i na kraju Arč Linuks.

Preporuke su poređane po popularnosti i od prijateljski nastrojenih ka komplikovanijim.

Posebna preporuka za početnike je Linuks Mint. Za starije računare preporučujemo: LXLE, Bodi, Elementeri i Dipen. Za iskusnije kojima je potrebna povećana stabilnost preporučujemo Debijan. Za iskusne entuzijaste koji vole sve sami da podese preporučujemo Arč Linuks.

Gejmerske mašine

To je posebna podgrupa desktop mašina koje zahtevaju jak hardver. U principu, GNU/Linuks nije pravljen da bude platforma za igrice, tako da u ovoj oblasti dosta kaska za Vindouzom. U poslednje vreme, prvenstveno zahvaljujući kompaniji Valv (eng. Valve), koja je prirodno portovala igre na GNU/Linuks stanje, u ovom segmentu upotrebe GNU/Linuks se popravlja. Iako je moguće na GNU/Linuksu pokrenuti neke igre za Vindouz preko programa Vajn (eng. Wine), za igračku mašinu ćemo ipak smatrati onu koja nudi dobru podršku za Valv Stim (eng. Valve Steam). Pošto je Valv podršku za GNU/Linuks prilagodio prvenstveno Ubuntuu, naša preporuka za ovu namenu računara su Ubuntu i njegovi derivati.

Audio i video obrada

Ovo je oblast koja je suvereno carstvo Epl Mek (Apple Mac OS X). To ne znači da i u toj oblasti GNU/Linuks nema dobra rešenja. Za ovu namenu postoji veliki broj GNU aplikacija, namenjenih obradi audio i video sadržaja, od kojih su najpoznatije: Lajtvorks (Lightworks), Odesiti (Audacity), Ardur (Ardour), i druge. Ne samo da postoje odgovarajuće aplikacije, za ovu namenu su razvijene i posebne GNU/Linuks distribucije. Ovogputa vam preporučujemo tri takva operativna sistema: Ubuntu studio (eng. Ubuntu Studio), Ka-iks-studio (eng. KXStudio) i Avelinuks (eng. AVLinux). Specifičnost ovih distribucija je da osim što imaju predinstaliran sav potreban softver, one su u potpunosti optimizovane za obradu video i audio materijala. Ovi sistemi štede svoje resurse i upotrebljavaju ih maksimalno za procese audio i video obrade.OS-5

Sistemi za testiranje sigurnosti mreža

Svaka GNU/Linuks distribucija se može koristiti za testiranje sigurnosti mreža ako se instaliraju odgovarajuće aplikacije za testiranje. Međutim, postoji i posebno razvijena distribucija koja je u potpunosti prilagođena za ovu funkciju. Reč je o Kali Linuksu. Kali je baziran na Ubuntuu, poseduje tri stotine predinstaliranih penetracionih alata namenjenih testiranju mreža. Ovo ga čini jednim od najboljih bezbednosno orjentisanih sistema na tržištu. Kali Linuks je namenjen da simulira napad na mreži, što inžinjerima za bezbednost omogućava da uoče nebezbedna mesta i šta je potrebno uraditi da bi se povećala sigurnost važnih podataka na mreži.

Programiranje

Odmah možete pretpostaviti da je operativnom sistemu koji je otvorenog kôda, kakav je GNU/Linuks, programiranje i razvoj softvera jedna od glavnih funkcija. Sve distribucije Linuksa su dobro opremljene alatima za programiranje i razvoj softvera. Ipak, programerima je od velikog značaja da rade na što svežijim alatima za programiranje. Alati se kao i distribucije dopunjavaju vremenom novim funkcijama koje olakšavaju programerima rad. Zbog toga se za programiranje preporučuju distribucije sa cikličnim nadogradnjama (eng. rolling release). Preporučujemo za ovu primarnu funkcionalnost po kriterijumu popularnosti: OpenSUSE, Arč Linuks, Sabajon (Sabayon) Linuks i Džentu.

Serveri za mala preduzeća

Za veća preduzeća i kompanije GNU/Linuks nudi komercijalna rešenja kao što su SUSE Linuks enterprajz i Red het enterprajz Linuks. Ono što se naplaćuje kod tih distribucija jesu podrška, održavanje, obuka i slično. Pored komercijalnih rešenja za manja preduzeća, GNU/Linuks nudi dve besplatne distribucije namenjene preduzećima kojima bi plaćeno održavanje bilo preveliki izdatak. Reč je o Centosu (eng. CentOS), besplatnoj verzija Red het enterprajz Linuksa, bez plaćene profesionalne podrške, kao i Zentajl, Ubuntu baziranom serveru koji predstavlja odličnu zamenu za Vindouzov server.

Rešavanje problema u operativnim sistemima

OS-8Ovo su namenske GNU/Linuks „žive” distribucije sa predinstaliranim dijagnostičkim softverom i namenjene dijagnostici hardvera i spasavanju vrednih podataka sa sistema koji je u problemu. Može da se koristi i na sistemima koji su pod Vindouzom. GNU/Linuks sisteme koji su u problemu ove distribucije mogu da oporave, dok Vindouz sisteme može hardverski da dijagnostikuje, oporavi hardver i spasi vredne podatke. Za ovu svrhu preporučujemo Nopiks (eng. KNOPPIX) „živi” CD (ili USB) sa predinstaliranim velikim brojem dijagnostičkog softvera. Za ozbiljniju dijagnostiku hardvera (od memorije, preko procesora i perifernih uređaja) preporučujemo Ultimejt but CD (eng. Ultimate Boot CD). Ovaj alat je odličan za oporavak i spasavanje podataka sa oštećenih particija tvrdog diska. Vredan pažnje je i Sistem reskju CD (eng. SystemRescueCD) koji poseduje mnogo alata usmerenih na oporavak sistema i podataka.

Obrazovanje

GNU/Linuks ne zapostavlja ni obrazovanje. Postoji mnoštvo slobodnih aplikacija namenjenih obrazovanju dece od predškolskog uzrasta, preko osnovnoškolskog i srednjoškolskog uzrasta, pa sve do studenata. Neke distribucije su se fokusirale upravo na ovaj obraazoni softver.

Ovom prilikom možemo da preporučimo Edubuntu (eng. Edubuntu), Ubuntu verziju namenjenu deci predškolskog i osnovnoškolskog uzrasta. Za nešto starije tu je Uberstudent (Uberstudent) namenjen obrazovanju srednjoškolaca i studenata.

Anonimnost na mreži

Još bismo pomenuli distribuciju koja se maksimalno trudi da zaštiti privatnost svog korisnika. Za ovu upotrebu preporučujemo Debijanov derivat Tejls (eng. Tails). Ova distribucija se trudi da ne ostavlja trag prisustva svog korisnika na internetu. Koristi kriptografiju za šifrovanje svih podataka koji napuštaju sistem i odlaze na mrežu kako bi zaštitio privatnost korisnika i poverljivost njegove komunikacije.

Za kraj

Ovo je samo deo mogućih primarnih funkcija računara za koje GNU/Linuks već ima pripremljena rešenja. Ima još distribucija sa specifičnom namenom kao što je Klonzila (Clonezilla) o kojoj smo već pisali, a koja služi isključivo za pravljenje rezervnih kopija podataka sa tvrdog diska. Retke su funkcije koje nisu pokrivene rešenjima u slobodnom softveru. Neke od njih su precizno crtanje (CAD – dwg format je vlasnički), dobra podrška za štampu (nedostatak podrške za CMYK paletu boja – vlasnički format) i slične. Sve te funkcije su uglavnom uslovljene korišćenjem nekih opšteprihvaćenih formata za određenu oblast korišćenja računara, a koji su zaštićeni vlasničkim licencama.

Slobodni profesionalac

SP-1 ORM (1. deo)

Autor: Dejan Čugalj

Jedan patent, koji je prijavljen još 1884. godine, ostavio je jedinstven pečat i način projektovanja IT aplikacija sadašnjim i budućim naraštajima. Herman Holerit (Herman Holerith) patentirao je način automatske obrade podataka popisa američkog stanovništva, što je bila preteča savremenog upravljanja bazama podataka. To je bio patent za koji u to vreme niko nije mogao ni naslutiti da će tek, skoro sedamdeset pet godina kasnije, doživeti pravi procvat – pojavom prvih računara. Moderne baze podataka su se popularizovale dolaskom modela isplativih računara šezdesetih godina 20. veka, koji su se prvenstveno koristili za skladištenje podataka velikih kompanija i projekata. U samom početku razvoja baza podataka primenjivani su sistemi zasnovani na datotekama.

Sedamdesetih godina 20. veka baze podataka dobijaju komercijalnu vrednost pojavom prvih sistema za upravljanje bazama podataka. Složene strukture podataka velikih kompanija i projekata su nam dale mrežni i hijerarhijski model kao prve sisteme upravljanja bazama podataka. Uvidevši nedostatke postojećih modela baza podataka kao što su: tromost pri izvršavanju određenih zahteva, velika složenost prilikom izmena logičkih celina u organizacijama - naučnim radom objavljenim 1970. godine Edgar Frank „Ted” Kod (Edgar Frank „Ted” Codd) ( http://goo.gl/l2EqFp ) rešenja je zasnovao na matematičkim temeljima, teorijom skupova i predikatskom logikom.

SQL

SP-2Kao osnovna ideja i zamisao naučnog rada E. F. Koda je omogućavanje tehničko neobrazovanim korisnicima smeštanje, pretraživanje i manipulaciju velikim količinama podataka. Naime, Kod je zamislio sistem u kome korisnici pristupaju podacima u bazama podataka korišćenjem komandi sličnim rečima engleskog jezika, dok su sami podaci smešteni u tabelama.

Naravno da gore spomenute „komande” nisu došle same po sebi, već je kompanija IBM počela da razvija sistem za upravljanje bazama podataka, koji su nazvali „System R”. Istraživačka grupa koja je radila na ovom projektu je osmislila SQUEL (eng. Structured Query English Language) koji je kasnije skraćen u SQL (eng. Structured Query Language). Ovaj jezik se pokazao dovoljno moćnim i praktičnim, tako da je 1978/1979. godine počela i njegova prva komercijalna primena kako u knjigovodstvenim organizacijama, tako i u aeronautičkim kompanijama.

Nakon ovih primena jezik iz IBM-a prelazi u ANSI (eng. American National Standards Institution) 1986. godine, koja ga prihvata kao jezik za rad sa relacionim bazama podataka. Polazeći od postojećih implementacija definisan je IBM standardom (X3.135, http://goo.gl/J3S6qQ ) kojim se i određuje kakav bi SQL trebalo da bude. Godine 1987. ga takođe prihvata i Međunardna organizacija za standarde - ISO (eng. International Standards Organization).

Aplikativni pristup povezivanja sa bazama podataka

Ekspanzija razvoja aplikativnog softvera devedesetih godina 20. veka ukazala je potrebu za jednostavnim načinom povezivanja i komuniciranja sa bazama podataka. Nekompatibilnost, neskalabilnost i neinteroperabilnost su dovele do toga da su tu privilegiju komuniciranja sa bazama podataka imali do tada samo najiskusniji programeri, i to uz ogroman uložen trud i vreme. Kako standardizacija na svim poljima doprinosi produktivnosti, tako je i u informacionim tehnologijama standardizacija SQL jezika dovela do pojave jednog od prvih API-ja (eng. Aplication Programming Interface), pod nazivom ODBC (eng. Open DataBase Connectivity), koji je razvio Majkrosoft u saradnji sa „Simba tehnologijom” (eng. Simba Technologies) 1992. godine.

Ovaj programerski interfejs je prvi put omogućio da programeri-klijenti imaju mogućnost upotrebe osnovnih operacija nad podacima unutar baza podataka iz samih aplikacija tako što se postavljaju upiti nad bazama podataka koristeći se sada već standardizovanim SQL jezikom. Mada je ovo omogućilo lakši, brži, pouzdaniji pristup podacima u bazama podataka – ostali su neki od problema koji su se pojavljivali i pre uvođenja ODBC-a, a to su kompatibilnost između različitih sistema, trajnost podataka, nepodudarnost paradigmi itd.

Nepodudarnost paradigmi

Težeći ka boljem objašnjenju problema nepodudarnosti paradigmi, najbolje je da prvo ukratko objasnimo osnovne razlike objektne i relacione paradigme, i na koji način svaka od njih rukovodi i upravlja podacima.

Trajnost podataka

Jedna od osnovnih ideja uvođenja i korišćenja baza podataka je upravo u trajnosti podataka (eng. persistence), i efikasnom pristupu istim. Drugim rečima, podaci jednostavno moraju da nadžive bilo koju aplikaciju koja ih je stvorila. Mnoge složene aplikacije, kao što su informacioni sistemi, bili bi potpuno beskorisni ukoliko podaci ne bi ostali trajni nakon „isteka roka trajanja aplikacije”, ili ukoliko se aplikacija zameni novom verzijom. Sami podaci u aplikacijama nisu trajni, već privremeni (eng. transient). Potreba za očuvanjem podataka na osnovu kojih svaka aplikacija funkcioniše, zahteva i određen sistem koji upravlja istim - i to su, u najvećem broju slučajeva današnjih rešenja, relacioni modeli, tj. relacione baze podataka.

Druga strana „medalje”, koja je zasjala, je uvođenje OOP (eng. Object Oriented Programming) modela programiranja, koji je skoro zamenio strukturne jezike, ali je isto tako dovela programere-klijente u položaj da skoro trećina napisanog koda se upravo odnosi na pristup, upravljanje i ažuriranja podataka u bazama preko SQL-a i DBC-a. Ovi problemi su postali u tolikoj meri izraženi da bi se moglo reći da, ako se sagledaju ovi statistički podaci produktivnosti, OOP paradigma gubi svaki smisao.

Smisao je, takođe, izgubljen i u samoj ideji OOP programiranja, tj. da se svi podaci kojima se manipuliše u aplikacijama predstavljaju preko objekata. Pošto se kao sistem za upravljanje podacima koristi relacioni model, koji samo prima primitivne tipove podataka, upravo to predstavlja najveću nepodudarnost paradigmi.

Relaciona paradigma

Relaciona paradigma je zasnovana na matematičkim principima, teoriji skupova i predikatnoj logici. Relacije imaju moćne operatore srodne prirodnom jeziku, dok se manipulacija podacima zasniva na relacionoj algebri. Težnjom ka što boljim performansama i pravilnijem upisom podataka, tabele se obično normalizuju; programerskim žargonom rečeno - vrši se dekompozicija. Ukratko, ako je nešto zasnovano na matematičkoj osnovi, gotovo sa sigurnošću možemo tvrditi da će on kao takav ostati isti, u bilo kom „vremenskom okviru”, i to je jedan od razloga zašto su se relacioni modeli održali u ovom eksponencijalnom razvitku informacionih tehnologija. Takođe, možemo iz ovog zaključiti da je ovo jedna od paradigmi koja, barem za sada ostaje, i dokazano odlično obavlja posao koji joj je namenjen.

Objektno orijentisana paradigma

U OOP programiranju sve svodi na objekte. Objekti imaju svoje stanje, ponašanje i svojstva. To je ideja koja se iskristalisala i definisala put kojim se odvija planiranje, implementacija i izrada jedne aplikacije. Prema objektnoj paradigmi, dva objekta su ista ako i samo ako su im reference na objekat iste, tj. dva objekta su jednaka ako imaju ista stanja polja kojima su opisani. Primer iz stvarnog sveta bi otprilike bio da, recimo, imamo ovcu i njenog klona. Sa stanovišta DNK analize, to su identični objekti, međutim to su dve različite instance jednog objekta (npr. nemaju isto ponašanje). OOP kao za svoj glavni cilj definiše jednostavnost rukovanja podacima u samoj aplikaciji.

Moguće rešenje nepodudarnosti

Relacioni modeli su zasnovani na matematičkim odnosima i široko su prihvaćeni. Uz sav moguć napredak informacionih tehnologija, one će suštinski raditi isto. Upoređivanjem ovih paradigmi lako se može uvideti da su razlike ogromne i da se razilaze po samim osnovama, ali to je trenutno najbolji model koji imamo, i treba da koegzistira sa ostalim modelima, pa tako i sa OOP paradigmom.

Kako se problem produbljuje, relacioni model je dobar u aplikacijama koje nisu prevelike ni suviše komplikovane. Ako se ovo uzme u obzir, to dovodi do problema neproduktivnosti, trošenja vremena i komercijalne neisplativosti razvijanja aplikacija programera-klijenata u većim projektnim zahtevima. Osim toga, odbojnost ka novim tehologijama još je više izražena ako se odnose na već ustaljena i dobro implementirana rešenja, koja za sobom nose i stručnjake koje su ih savladali (ovde se misli na relacioni model, koji se toliko „odomaćio” da je postao „slepa” vodilja koje se drže postojeći administratori baza podataka i „oštro” odbijaju da se suoče sa nekim, možda „superiornijim”, modelima i rešenjima, koja se po samoj svojoj prirodi nameću).

Trenutno, rešenje koje se nudi je ORM (eng. Object Relation Mapping), koji OOP programere i administratore baza podataka s jedne, i OOP paradigmu i relacionu paradigmu s druge strane, spaja u svojstvu međusloja, te zadovoljava i „ublažava jaz” nepodudarajućih paradigmi.

Nastaviće se.

Internet mreže i komunikacije

Enkriptovana elektronska pošta? (5. deo)

Autor: Petar Simović

Pošto smo sad već anonimni i-mejl hakeri, ne samo da znamo da šifrujemo i potpisujemo poštu koristeći kriptografiju, asimetričnim javnim i tajnim ključevima, već možemo da sakrijemo i identitet pošiljaoca poruke pomoću anonimne mreže rimejlera, slične Toru (Tor). U ovom poslednjem (petom) delu daćemo sigurnosne savete i preći ćemo, recimo, teorijski deo. Uputićemo korisnike u razlike između dobrog i lošeg sigurnosnog softvera, razjasnićemo ključne reči na koje treba obratiti pažnju prilikom odlučivanja za određeno sigurnosno rešenje, bar kad je u pitanju sigurna razmena pošte. Cilj ovog priloga je da se korisnici donekle osposobe da sami donesu ispravnu odluku pri izboru sigurnosnog softvera, kako među onima koji trenutno postoje tako i među nekima koji će se tek pojaviti. Međutim, kako će se uvek naći neki softver koji nije pomenut, korisno je znati kako se najčešće traže i ocenjuju sigurnosne aplikacije bliske temi ovog teksta.

IN-1Počnimo od novih vesti iz Guglove (Google) kuhinje. Ovaj informatički gigant je nedavno započeo rad na aplikaciji zvanoj End-Tu-End (eng. End-To-End), koja nije ništa drugo do još jedan dodatak njegovom veb pretraživaču koji pomaže pri kreiranju, upotrebi i upravljanju asimetričnim (PGP) ključevima. Novo je to da je program sada prebačen na Githab (GitHub) (drugim rečima, open-source, link:http://goo.gl/9tlyVL) sa http://goo.gl/sSsZFc, ali je još uvek u alfa fazi razvoja. Međutim, nikada ne treba verovati kompanijama čiji su osnovni ciljevi ekonomsko-političke prirode, pa tako ni ovoj. Već se u prvim redovima opisa aplikacije na Githabu pominje da je zasnovana na Javaskriptu (java-script), što u bezbednosnom bodovanju nikako ne može biti pozitivno. Kao drugo, sama činjenica da se radi o ekstenziji za pretraživač ne ide u njenu korist, jer bezbednost same aplikacije ne zavisi samo od nje već i od pretraživača na čiji rad se ekstenzija oslanja.

Kao što smo već napomenuli u prethodnim delovima (drugom i trećem), onlajn programi, kao i ekstenzije pretraživača za kreiranje, upotrebu i čuvanje javnih i tajnih ključeva, veoma su loša ideja - jer korisnik nema kontrolu nad njima kada je u pitanju skriveni bekdor (backdoor) koji potajno nekome odaje vaš privatni ključ. Čak i kada su njihovi kodovi dostupni, ovakve aplikacije treba, ukoliko je moguće, izbegavati. Što se ekstenzija tiče, situacija je malo blaža u odnosu na onlajn kreiranje i čuvanje ključeva - jer ako ih treće lice (kompanija) zna, onda oni nisu tajni. Samo neki primeri su već pomenuti: Veb Pe-Ge (WebPG) (ekstenzija), Mejlveloup (Mailvelope) onlajn i sada End-Tu-End.

1. Savet: Izbegavajte poveravanje tajni aplikacijama u „oblaku” i programima koji rade samo iz veb pretraživača.

2. Savet: Uvek koristite aplikacije sa dostupnim izvornim kodom. U ovim aplikacijama je teže da se nađe sigurnosni propust, jer ih može proveriti svako ko poseduje dovoljno znanje, pa ih tako mnogi ljudi iz celog sveta svakodnevno ispituju i popravljaju.

Sada bismo se osvrnuli na „sigurne” i-mejl servise novije generacije, o kojima smo pisali u prvom broju, poput Protonmejla (ProtonMail) i dosad još nespominjanog Skriptmejla (Scryptmail) koji kao glavni adut sigurnosti ističu nečuvanje lozinki korisnika. Oni na ovaj način korisnike štite od svojih zaposlenih, a i sebe i korisnike od nacionalnih bezbednosno-informativnih agencija koje bi želele da lako dobiju šifre korisnika. Servisi ovog tipa ne koriste šifrovanje javnim i tajnim ključem, već korisnik za svaku poruku zadaje nezavisnu šifru, a zatim dobija link do šifrovane poruke koja se nalazi na serverima tog servisa i ne napušta ih. Tada korisnik mora da primaocu poruke pošalje link preko koga može doći do poruke kao i do šifre za otključavanje. Nadamo se da ste već svi uočili jednu manu - osobi kojoj pišete morate da saopštite ključ. Ovde se postavlja pitanje praktične primene ovakvih metoda, koje su u suštini sigurne, ako sem ove mane prenosa tajnog ključa preko mreže zaboravimo i zloslutnu java skriptu koji se obično vrti u pozadini ili ispod haube. Tekst o sigurnosnom propustu kao i demo njegove eksploatacije koja je ubrzo potom zakrpljena, možete naći ovde: http://goo.gl/kBEwn0.

3. Savet: Ovakvi servisi zaista nisu sigurni, jer se zasnivaju na poverenju korisnika prema servisu da se poruka otvorenog teksta (eng. plaintext) ne čuva kod njih negde sa strane. Takođe postoji i problem prenosa i saopštavanja tajnog ključa primaocu poruke. Ovi servisi su tek pioniri u ovakvoj sigurnosnoj tehnici, tako da nije preporučljivo koristiti ih za razmene poverljivih informacija.

Naprednost sigurnosti i-mejl klijenta: Prilikom svakodnevnog rada, promovisanja, edukacije i razgovora sa ljudima o kriptografiji, isplivao je veoma realan problem u vezi sa nedostatkom zaštite privatnosti ličnih podataka korisnika i-mejla na računarima koje deli više osoba, odnosno ukoliko isti delite sa još nekim i oboje imate administratorske privilegije pri zaštititi sadržaja vaših poruka koje ste primili od one druge osobe. Jedno, prividno, rešenje je da napravite i koristite drugi (korisnički nalog), jer vaši podaci i dalje nisu zaštićeni od administratora. Druga opcija, malo teža za sprovođenje, bila bi da napravite šifrovanu particiju u okviru koje će funkcionisati vaš i-mejl nalog. Međutim, postoji i bolje, ali ne i savršeno, rešenje: samom nalogu se pristupa preko šifre. Ovu opciju je moguće uključiti iz Tanderbirda (Thunderbird), ako odete na opciju Edit » Preferences » Advanced » Config Editor… »(I will be carefull) » onda ukucate mail.password_protect_local_cache i dvaput kliknete na ovo podešavanje da mu se vrednost promeni u True, zatim se podesi „master password” iz Edit » Preferences » Security » Passwords » Change master password i unesete željenu šifru. Međutim, ovo rešenje je moguće realizovati samo ako jedan korisnik koristi Tanderbird na višekorisničkom računaru.

4. Savet: Ukoliko želite visok nivo sigurnosti, najbolje bi bilo da koristite samo svoj računar.

U prethodnom prilogu smo pominjali i nym rimejlere koji se praktično oslanjaju na rad rimejlera prve kategorije, Sajberpank rimejleri (Cypherpunk remailers) i druge kategorije kao što je Miksmaster (Mixmaster), ili funkcionišu po principu javne liste šifrovanih poruka. Podsetimo se ukratko kako oni funkcionišu. Prvi tip predstavljaju pseudonimni rimejleri, ili kraće Nym, gde je server, jednostavno rečeno, mejl proksi adresa. Nym jednostavno od pošiljaoca dobijaju njegovu i adresu primaoca poruke, a zatim te podatke brišu iz poruke (kako primalac ne bi saznao stvarnu adresu i identitet pošiljaoca) i zamenjuju stvarnu adresu takozvanom „pseudo-adresom”. Pseudo-adresu korisnik (pošiljalac) sam registruje na nym serveru, kao pri registraciji Dži mejl (Gmail) ili Jahu (Yahoo) mejl adrese, a zatim nym primljenu poruku prosleđuje primaocu, sa vaše nym adrese. Kada primalac odgovori na dobijenu poruku na vašu nym adresu, server je jednostavno prosledi na vašu stvarnu Dži mejl, Jahu ili bilo koju drugu adresu. Drugi tip je već pomenuta lista na Gugl grupi alt.anonymous.messages, gde se ljudi jednostavno dopisuju na jednoj listi šifrovanim i potpisanim porukama, a posmatrač ne može da zna ko piše poruku, kome je ona namenjena, niti koji je sadržaj poruke. Jedini problem je tehničke prirode, a to je da ni korisnici ne znaju koja poruka je namenjena njima, a koja ne, pa svaki put kad žele da provere da li im je neko pisao moraju da skinu sve poruke sa liste i pokušaju da dešifruju jednu po jednu svojim privatnim ključem, a to ume da potraje. Grupa se nalazi na ovoj adresi http://goo.gl/f3eNwA,, a programi za korišćenje ovog vida tajne komunikacije su mnogo brojniji za Vindouz (Windows) nego Gnu Linuks (Gnu/Linux), nažalost.

Napomena: Sam GPG-PGP protokol nije namenjen anonimnosti korisnika već prikrivanju samog sadržaja poruke. Adrese pošiljaoca i primaoca ostaju javne, ukoliko ne koristite rimejlere ili nym servise.

Kao što je naznačeno u napomeni, gpg ne sakriva identitet već samo sadržaj poruke, pa se ne može smatrati softverom za anonimizaciju.

5. Savet: Koristite PFS (eng. Perfect Forward Secrecy) protokol kad god je to moguće.

Iako PFS tehnologija nije podržana u većini programa, moguće je implementirati je, što nije najpraktičnije rešenje - jer bi morali da za svaku poruku pravite nove ključeve.

6. Savet: Koristite mejl unutar anonimnih mreža.

Ovo rešenje je najbolje i po pitanju anonimnosti i po pitanju sigurnosti. Ceo sadržaj je uvek šifrovan, rutira se kroz nekoliko računara i dodatno meša sa ostalim podacima drugih korisnika. Na ovaj način se izbegavaju različite napredne metode napada vremenske i količinske korelacije saobraćaja kako bi se deanonimizovali korisnici. Najpopularnije anonimne mreže su sigurno čuveni Tor (eng. Tor - The Onion Router), sa svojim skrivenim servisima, pa zatim I2P (eng. Invisible Internet Protocol), sa Susimejlom (Susimail), i naravno Frinet (Freenet) sa Frimejl (Freemail) servisom. Ovde namerno nije pomenut nijedan mejl servis na Toru, jer ih ima mnogo i najbolje je da sami potražite onaj koji bi vam odgovarao.

Na Reditu (Reddit) postoji sekcija koju preporučujemo za primenu šifrovanog dopisivanja na ovom servisu u sekciji /r/GPGpractice/.

Iako postoji ozbiljan problem sa javnim serverima javnih ključeva, sve su češći pokušaji pojedinaca da se i ovaj problem reši ili bar zaobiđe. Jedan od njih je, naprimer, inicijativa na sajtu pgpasc.org koja ima zanimljivu ideju da pojedinci čuvaju svoje javne ključeve na svojim serverima, na univerzalnom linku oblika https://url.com/pgp.asc , kako bi se lako mogli zameniti novim ključem kada to bude bilo potrebno, jer javni serveri javnih ključeva ne podržavaju opciju brisanja ključeva. Naravno, ni ovaj projekat nije mnogo bolji, jer korisnici koji žele da šifruju svoje poruke ne moraju obavezno da imaju i svoje domene i servere da bi šifrovali poruke. Ali, pozitivno je to što ljudi razmišljaju o tome kako da reše postojeći problem. Možda je budućnost PGP-a u decentralizaciji ili u primeni tzv. Blokčejn (Blockchain) tehnologije, na kojoj su zasnovane digitalne valute poput poznatog Bitkoina (Bitcoin).

GPG je, takođe, nedavno objavio novu verziju (od verzije 2.0 pa nadalje) sa podrškom za ECC (Eliptic Curve Criptography), koja bi trebalo da pruža veći stepen sigurnosti ključeva iste dužine, nego što bi inače, bez nje.

Ne možemo nikako reći da je budućnost šifrovanja elektronske pošte mračna, a i svest o sigurnosti je svakako podignuta od kako je Snouden izneo informacije o intenzivnom špijuniranju bezbednosnih agencija - američke NSA-e i britanske GCHQ-a. Ovde se završava saga o šifrovanju elektronske pošte, ali već u sledećem broju počinjemo sa prilozima o instant mesedžing (eng. instant messaging) šifrovanju.

Sam svoj majstor

LaTeX prezentacija – Beamer (3. deo)

Autor: Nikola Hardi

U prethodnim brojevima ste mogli da pročitate više o tome zašto volimo Bimer (eng. Beamer) i zašto ćete ga verovatno i vi voleti i rado koristiti. U prethodnom broju su već predstavljeni frejmovi, odnosno slajdovi. Pored kreiranja slajdova, opisan je i rad sa matematičkim izrazima, ono u čemu je LaTeX (Lateh)¹ najbolji. U ovom broju će biti nastavljeno predstavljanje osnovnih funkcionalnosti Bimera. Najpre ćemo se podsetiti upotrebe „domaćih” slova, a potom će biti opisano dodavanje naslovne strane, rukovanje odeljcima i sadržajem, dodavanje ilustracija i prikaz kôda.

¹ LaTeX se izgovara Lateh (/ˈlɑːtɛx/). To je skraćenica od Lamport (Lesli Lamport, američki doktor računarskih nauka) i Teh (TeX - sistem za obradu i prelom teksta na računaru).

LaTeX i UTF

Pri radu na bilo kojem sadržaju na našem jeziku susrećemo se sa znakovima koji nisu obuhvaćeni ASCII standardom i zbog toga s vremena na vreme moramo da se zamislimo. U serijalu tekstova o LaTeXu je ponuđeno jedno rešenje (pogledajte LiBRE! 18). Ovo je pravi trenutak da predstavimo još jedan, možda i elegantniji način.

Sve što je potrebno jeste da se na početak dokumenta doda sledeći kod:

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

Nakon ovoga bi trebalo sve magično da proradi. Sledi kreiranje pravog slajda u obliku naslovne strane.

Naslovna strana

Jedan LaTeX dokument može da ima svoje atribute kao što su naslov, autor, ustanova ili institut i drugo. Na osnovu ovih podataka se popunjava sadržaj zaglavlja na svakom slajdu i može da se kreira naslovna stranica. Sledi primer.

Kreiranje naslovne stranice:

\title{Ovo je naslov}
\subtitle{Ovo je podnaslov \newline u dva reda}
\author[Nikola Hardi]{Twitter: @Atlantic777}
\institute{FTN - Fakultet Tehničkih Nauka - Novi Sad}

\begin{document}
  \begin{frame}
    \titlepage
  \end{frame}
\end{document}

Odeljci i sadržaj

Prezentacije su često podeljene na odeljke. Kada nisu podeljene, treba ih podeliti (prim. autora). Kada želimo da označimo početak novog odeljka, za to možemo da koristimo oznake section, subsection i subsubsection, isto kao u redovnim LaTeX dokumentima. To izgleda ovako:

\section{Početak novog odeljka}
\begin{frame}
  \frametitle{Naslov slajda}
\end{frame}

Za generisanje sadržaja prezentacije unutar slajda se koristi naredba \tableofcontents.

Ilustracije

Ilustracije je moguće uključiti u sadržaj slajda na više načina. To je moguće uraditi kao u redovnom LaTeX dokumentu pomoću naredbe \includegraphics ili pomoću dodatnih paketa, kao što je PGF. Sledi primer dodavanja ilustracije pomoću naredbe \includegraphics:

\begin{frame}
  \frametitle{Ilustracija}
  \includegraphics[height=\paperheight]{images/naziv_slike.png}
\end{frame}

Kôd

Vrlo često postoji potreba za prikazivanjem kôda ili posebno formatiranog teksta. U tome mogu da pomognu okruženja verbatim i lstlisting. Ovde postoje određene značajnije razlike u odnosu na uobičajene LaTeX dokumente.

Kada se kôd dodaje pomoću okruženja lstlisting, potrebno je uključiti paket listings i kôd definisati naredbom defverbatim pre upotrebe. Potom je taj kôd moguće dodati na slajd. Ovo je najjednostavnije ilustrovati primerom.

\usepackage{listings}

\defverbatim[colored]\nazivkoda{
  \begin{lstlisting}
    int a = 5;
  \end{lstlisting}
}
\begin{frame}
  \nazivkoda
\end{frame}

Kada se koristi okruženje verbatim, neophodno je to naglasiti i pri kreiranju tog slajda dodavanjem opcije containtsverbatim.

\begin{frame}[containsverbatim]
  \begin{verbatim}
    Ovaj
      tekst je
        strogo formatiran.
  \end{verbatim}
\end{frame}

Teme

Iako je pravljenje novih tema za Bimer prezentacije vrlo složeno čak i za napredne korisnike, teme se često koriste i važno je znati da ih ima mnogo i da se lako biraju. Sve što je potrebno je na početku dokumenta izabrati temu naredbom usetheme. Zanimljivo je spomenuti da su teme dobijale nazive po gradovima u kojima su održavana prezentacije pa su tako neke od najpoznatijih tema nazvane Berlin (eng. Berlin) i Varšava (eng. Warsaw).

\usetheme{Berlin}
\usecolortheme{beaver}

Osim izbora teme, možemo da izaberemo i šemu boja pomoću naredbe usecolortheme. Moguće je izmeniti i boje pojedinačnih elemenata. Za više detalja pogledajte zvanično Bimerovo uputstvo ili neki od brojnih tutorijala.

Vrlo koristan sajt za pregled tema za Bimer i šema boja je: http://www.hartwork.org/beamer-theme-matrix/

Za kraj epizode

Za kraj ove epizode dajemo vam kompletan primer sastavljen od elemenata koje smo predstavili u ovom broju:

\documentclass{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{listings}
\usetheme{Berlin}
\usecolortheme{beaver}

\title{Ovo je naslov}
\subtitle{Ovo je podnaslov \newline u dva reda}
\author[Nikola Hardi]{Twitter:@Atlantic777}
\institute{FTN - Fakultet Tehničkih Nauka - Novi Sad}

\begin{document}
\begin{frame}
  \titlepage
\end{frame}

\begin{frame}
  \tableofcontents
\end{frame}

\section{Početak 1. odeljka}
\begin{frame}
  \frametitle{Naslov slajda 1}
  \includegraphics[height=180px]{images/naziv_slike.png}
\end{frame}

\defverbatim[colored]\nazivkoda{
\begin{lstlisting}
  int a = 5;
\end{lstlisting}
}

\section{Početak 2. odeljka}
\begin{frame}
  \frametitle{Naslov slajda 2}
  \nazivkoda
\end{frame}

\section{Početak 3. odeljka}
\begin{frame}[containsverbatim]
\frametitle{Naslov slajda 3}
 \begin{verbatim}
   Ovaj
     tekst je
       strogo formatiran.
 \end{verbatim}
\end{frame}
\end{document}

Ovaj kod će dati sledeći izgled prezentaciji:

U sledećem broju ćemo predstaviti naprednije elemente na slajdovima (tabele, nabrajanja i teoreme), raspoređivanje elemenata na slajdu (rad sa više kolona), animacije i prelaze.

Hardver

BeagleBone Black Rev C

Vodič od prvog dana (3. deo) – 
podešavanje IP adrese

Autor: Nenad Marjanović

HD-1Da bi podesili fiksnu IP (aj-pi) adresu potrebno je poznavanje osnova na polju umrežavanja računara. Kako bismo pojednostavili proces, počnimo od termina „zida” (eng. wall). Ako nam je profesor informatike u školi bio dovoljno dobar, sigurno je objasnio da pri konstrukciji mreže u našim stambenim objektima uvek treba krenuti od utičnice preko koje imamo pristup internetu. Odatle i potiče metod „zid”. Ovo u praksi znači sledeće:

Poznavanje naše javne IP adrese (npr. 95.123.125.0)

Poznavanje naše lokalne IP adrese (npr. 192.168.0.1)

U Evropi većina korisnika za lokalnu IP adresu koriste 192.168.0.1, takozvani lokalhoust (eng. localhost). Ova adresa zapravo predstavlja adresu vašeg rutera, odnosno modema preko kojeg se obavalja razmena informacija sa uređajima u našim domovima. Adresa zavisi od samog internet provajdera i opreme. U pojedinim slučajevima ova vrednost može biti promenjena od strane korisnika. Svakom uređaju koji se poveže sa ruterom, integrisani IP - DHCP klijent daje na korišćenje jednu lokalnu IP adresu. Bez obzira na podešavanja, taj uređaj nikad ne može koristiti adresu koja je već u upotrebi. Ako u ovom slučaju priključimo BBB Rev C sa našim ruterom, u administracionom panelu rutera možemo videti da je i njemu dodelio jednu lokalnu IP adresu, recimo 192.168.0.10. Za pristup ruteru koristimo lokalnu IP adresu i korisničke podatke koje smo dobili od provajdera. Vreme je da se pozabavimo konfiguracijom. Ako smo već uključili ruter i BBB Rev C i zapisali adresu koju koristi naš uređaj potrebno je izvršiti podešavanje Debijan (eng. Debian) operativnog sistema. Za ovaj vodič koristićemo nekoliko Linuks komandi, kao što su ifconfig, ifup, nano, grep, cp. Kucanjem komande ifconfig dobićemo rezultate slične sledećim:

root@beaglebone:/# ifconfig

eth0 Link encap:Ethernet HWaddr C8:A0:30:AB:32:3A
inet addr:192.168.0.100 Bcast:192.168.0.255 Mask:255.255.255.0

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host

usb0 Link encap:Ethernet HWaddr A2:CB:A9:A8:0B:F4
inet addr:192.168.7.2 Bcast:192.168.7.3 Mask:255.255.255.252

Sva tri interfejsa eth0, lo i usb0 imaju određenu namenu, ali mi ćemo se pozabaviti parametrima eth0 interfejsa. Za ovaj korak potrebno je pristupiti izmeni /etc/network/interfaces fajla. Koristimo Nano (eng. nano) editor, ali vi možete koristiti i Vi (Vi-aj) editor ukoliko ste naviknuti na njega.

Zlatno Linuks pravilo je čuvanje kopije fajla čiji sadržaj menjamo:

cp /etc/network/interfaces /etc/network/interfaces.bak

Zatim pristupamo izmeni fajla korišćenjem nano komande:

nano /etc/network/interfaces

U ovom fajlu možemo videti različita podešavanja, ali mi ćemo obratiti pažnju na IP i MAC (em-ei-si) adrese našeg uređaja.

# The primary network interface
auto eth0
iface eth0 inet dhcp
# Example to keep MAC address between reboots
#hwaddress ether DE:AD:BE:EF:CA:FE

Prvo ćemo umetnuti simbol # ispred dve linije koje nećemo više koristiti, a onda na kraju interfaces fajla dodajemo:

auto eth0
iface eth0 inet static
address 192.168.0.10
netmask 255.255.255.0
network 192.168.0.255
gateway 192.168.0.1

Ukoliko niste sigurni koja je IP adresa i MAC adresa eth0 interfejsa, koristite sledeću komandu:

ifconfig | grep -w 'HWaddr\|inet addr'

eth0 Link encap:Ethernet HWaddr d0:39:72:3b:f1:44
inet addr:192.168.0.10 Bcast:192.168.0.255 Mask:255.255.255.0
inet addr:127.0.0.1 Mask:255.0.0.0

usb0 Link encap:Ethernet HWaddr 96:6f:36:10:10:45
inet addr:192.168.7.2 Bcast:192.168.7.3 Mask:255.255.255.252

Ostaje nam da dodamo BBB Rev C MAC adresu u interfaces fajl:

hwaddress ether d0:39:72:3b:f1:44

Sačuvajte fajl i unesite komandu za pokretanje eth0 interfejsa:

ifup eth0

Ovim smo zaokružili proces podešavanja BBB Rev C uređaja i ostaje nam povezivanje odnosno prenos parametara na ruter. Ova procedura se razlikuje od proizvođača do proizvođača, tako da ukoliko imate problema sa modelom sa kojim raspolažete, pošaljite pitanje redakciji LiBRE! časopisa ili izvršite konsultaciju dokumentacije koju ste dobili pri kupovini rutera. Takođe možete pronaći većinu objašnjenja za ovaj tip proizvoda na internetu.

Primer podešavanja:

Za sam kraj možemo napomenuti da su ova podešavanja od velikog značaja ukoliko želite da koristite BeagleBone Black Rev C kao veb server, dns (di-en-es) server, Tor relej (eng. Tor relay), za pristup i kontrolu uređaja sa udaljenog računara i još mnogo toga.

U sledećem broju LiBRE! časopisa pisaćemo o podešavanju Tor relej servera. Cilj ovog članka je upoznavanje sa Tor mrežom i značaj svakog korisnika i administratora Tor sistema.