Monthly Archive for January, 2008

Kai laptope trūksta vietos…

Filmai, muzika (turiu įprotį rinkti diskografijas), dvi operacinės sistemos ir 100 gigabaitų kieto disko darosi mažokai. Stacionariam kompiuteriui užtektų tiesiog nupirkti papildomą kietą diską. Šiais laikais paplitusiuose midi tower korpusuose vietos jam tikrai atsirastų. Tuo tarpu nešiojamuose kompiuteriuose dažniausiai tektų keisti visą kietą diską į didesnį. Nežiūrint į tai, jų kietieji diskai yra mažesni (turiu galvoje ir talpą) ir brangesni. Kitas variantas - nusipirkti stacionaraus kompiuterio HDD ir jam skirtą išorinį stalčių (case), kuris jungiamas prie kompiuterio per USB. Šiomis dienomis kietieji diskai kainuoja nedaug 200-300 Lt už 320-400 Gb, o išorinis dėklas: ~100 Lt. Vakar pasiemiau 320 Gb HDD (400 jau nebebuvo), o prie jo prigriebiau ir Cooler Master XCraft Lite išorinį dėklą.

Cooler Master XCraft Lite (RX-3SB)

Kas įtakojo pasirinkti būtent šį produktą - negaliu tiksliai ir pasakyti. Tiesą sakant, nėra čia ką daug ir svarstyti - ieškojau SATA palaikymo ir dėmesį kreipiau į dizainą. Cooler Master produkcija pasižymi unikaliu dizainu, tad produkai traukia akį. Galima pasirinkti dėklo spalvą: juodą arba sidabrinį. Parsinešęs namo puoliau atlupinėt dėžę.

Cooler Master XCraft Lite

Nustebino gausus priedų rinkinys. Į komplektą įėjo:

  • XCraft Lite USB 2.0 dėklas 3.5” kietąjam diskui.
  • A-Male - B-Male USB 2.0 kabelis. 3 pėdų ilgio, tad kiek trumpokas.
  • eSata kabelis jungimui prie kompiuterio. Taip pat 3 pėdos.
  • SATA - eSATA išėjimo lizdas stacionariam kompiuteriui. Tvirtinamas galinėje sienelėje.
  • Aliumininė prie šono fiksuojama kojelė, norint diską laikyti vertikaliai.
  • Maitinimo kabelis.
  • Dvi fiksavimo plastmasės ploniems HDD.
  • CD su USB tvarkyklėmis (chi chi) ir kažkokia programine įranga.
  • Vartotojo vadovas.

XCraft Lite dėžės turinys

Programinės įrangos nebandžiau, nes ji skirta Windows OS. XCraft’as palaiko iki 500 Gb ir iki 10000 apsukų per minutę kietuosius diskus. Ant dėžutės parašytos palaikomos OS: Windows ir Mac. Įdomu kodėl neparašytas Linux palaikymas? :-) Įrenginio priekinėje sienelėje ir apačioje esančios grotelės leidžia vėsinti kietąjį diską ir apsaugo jį nuo kaitinimo. Tiesa, dėl to girdimi disko triukšmai, nes jis nėra pilnai izoliuotas. Pradžioje norint atidaryti dėklą reikėjo šiek tiek pastangų. Gale yra sidabrinis mygtukas, kurį paspaudus nusiema viršutinė dėklo dalis. Tada į vidų jau galima statyti kietąjį diską. Diskas užmaunamas ant mažų “vinukų” su spiruoklėmis. Uždarius dėklą, spiruoklės prispaudžia diską prie viršutinės dalies, o vinukai neleidžia jam slankioti. Diskas išlieka stabilus vartant patį dėklą. Po viršutiniu dangčiu yra užklijuota kažkokios termomedžiados juosta, kuri taip pat turėtų padėti vėsinti.

Pajungimas

Viską sujugus atėjo metas pirmam bandymui. Įjungiau maitinimą, įkišau USB laidą, laukiu kol Ubuntu automatiškai primountins diską. Nieko nevyksta. Pasileidau disko skirsnių editorių - GParted ir žiūriu ką turiu.

GParted

Nieko nuostabaus, kad nebuvo automatiškai primountintas - pirmiausiai reik jį suformatuot. Jau esu perdaug pripratęs prie flash laikmenų. Sukūrus naują skirsnį, diskas atrandamas be jokių problemų, tačiau yra automatiškai prijungiamas /media/kažkas. Aš savo kompiuteryje diskus prijungiu $HOME direktorijoje esančiuose kataloguose “C”, “D” ir t.t. Taip būna daug patogiau juos pasiekti per terminalą. Todėl būtų labai patogu, kad ir šis būtų jungiamas tarkim prie ~/E katalogo. Tam užtenka sukurti nuorodą. Ant darbastalio atsiradusios disko ikonos spaudžiame dešinį pelės mygtuką, pasirenkame properties. Atsidariusiame lange pažiūrime kur prijungtas diskas, arba nurodome statinį prijungimo tašką:

Mount point

Aš prijungimo tašką esu nurodęs kaip “E”, tad diskas jungiamas /media/E. Man daug patogiau kai diskai vadinami raidėmis. Pakeitimai įsigalios iš naujo prijungus diską. Galų gale telieka sukurti nuorodą iš savo $HOME katalogo į diską:

1
pawka@pawka-laptop:~$ ln -s /media/E E

Štai ir viskas, diskas pasiekiamas iš namų katalogo, kaip ir visi kiti. Ateityje reikės su rsync sinchronizuoti laptope ir diske esančius dokumentus, bei projektus, bet apie tai kitą kartą. Šiuo metu naujasis pirkinys iš interneto gilumų po truputį kaupia visus šešis Ozo sezonus (34 Gb).

UNIX filosofijos galia

UNIX operacinė sistema ir jai skirtos programos (kad ir sort, join ir t.t.) buvo kuriamos remiantis tam tikromis taisyklėmis. Šios taisyklės apibrėžia kaip kurti ne tik švarų ir paprastą programos kodą, tačiau ir programos sąsają, bei išlaikyti kūrinio efektyvumą. Didžiausi UNIX guru, kaip Doug McIlroy, Eric Raymond ar Rob Pike skelbė savuosius taisyklių rinkinius “kaip rašyti patogų kodą”, tačiau jie skiriasi nedaug - pati esmė išlaikoma visuose rinkiniuose. Žemiau pateikiu Mike Gancarz’o suformuluotas devynias pagrindines taisykles, kurios ir yra vadinamos UNIX filosofija:

  • Mažas reiškia gražus.
  • Rašyk kiekvieną programą taip, kad ji gerai atliktų vieną darbą.
  • Susikurk programos prototipą kuo anksčiau.
  • Rinkis mobilumą vietoj efektyvumo.
  • Saugok skaitinius duomenis tekstiniuose failiuose.
  • Naudok pakartotinį kodo panaudojimą (nebūtinai savo :-P).
  • Naudokis shell skriptais veiksmingumui ir mobilumui užtikrinti.
  • Venk sudėtingos vartotojo sąsajos.
  • Kiekvieną programą rašyk kaip filtrą, kad jos išvedamus duomenis galėtų panaudoti kitos programos.

Jei apie šias išvardintas dogmas norisi paskaityti daugiau, tai galite padaryti čia: “The Unix Philosophy”. Žinoma, nereikia visko priimti kaip šventos tiesos ir girežtai pulti laikytis, rašant betkokias programas be išimties. Taip pat nereikia pamiršti, kad pagrindinė UNIX veikimo sąsaja buvo komandinė eilutė, tad nuo tų laikų daug kas pasikeitę. Tačiau ir šiais laikais šiuose žodžiuose galima rasti daug tiesos. Kaikurios taisyklės labiau linksta link inžinerijos ar struktūrinių šablonų, o kitos labiau susijusios su pačiu programavimu. Manau ne vienas jūsų laikotęs panašių principų.

Neseniai pačiam teko susidurti rašant vieną klientinę aplikaciją. Aplikacija parsisiunčia duomenis iš serverio, vykdo tam tikrus veiksmus (atsižvelgiant į duomenis ir atskirai), registruoja informaciją serveryje, yra valdoma per grafinę vartotojo sąsają. Visų pirma visus vykdomus išorinius veikmus (vaizdo grotuvo paleidimas, raportavimas, garso reguliavimas ir t.t.) aprašiau shell skriptais. Tai leidžia nesunkiai ir greitai atlikti pakeitimus ir pritaikyti programą skirtingiems kompiuteriams. Tam netgi nereikia žinoti programos kodo - užtenka žinoti kokie parametrai paduodami konkrečiam skriptui. Nereikia programos perkompiliuoti. Duomenų parsiuntimui ar išsiuntimui paprastai reiktų pasirašyti kokią klasę. Bet kam, jei yra wget arba fetch? Wget programos iškvietimą taip pat įrašiau į skirptą ir nesuku galvos. Duomenų registravimui nutolusiame serveryje irgi panaudojau tą patį wget, nes man tiesiog užtenka kreiptis į URL nurodžius tam tikrus parametrus. Esant reikalui, galima patogiai pasiimti betkokią sistemos informaciją, ją išsifiltruoti ir susirikiuoti prieš paduodant jūsų programai. Vieną iš rikiavimo pavyzdžių buvau pateikęs įraše Jūsų TOP 10 dažniausiai naudojamų konsolės komandų. Čia ir slypi programavimo UNIX aplinkoje galia, palengvinanti darbą mums - programuotojams. Norėdami plačiau apsišviesti galite paskaityti Basics of the Unix Philosophy.

Naujų metų tikslai: 2008

Metai tik prasidėjo, tad reik nusistatyti ko noriu siekti (ir pasiekti) per visus šiuos metus.

  • Pabaigti sesiją, paskui pabaigti kitą sesiją ir tapsiu (turėčiau) diplomuotu bakalauru. Reik šito neapleist ir tuo pačiu dar pastot kur nors į magistratūrą.
  • Jau esu diiidelis, tačiau vis dar neturiu vairavimo licenzijos. Anksčiau nebuvo laiko, paskui nebuvo atliekamų $$$, kad galėčiau sau tai leisti (kam teisės be automobilio?). Galiausiai tiesiog nereikėjo. Tačiau pastaruoju metu pastebėjau, kad per dieną sutaupyčiau ganėtinai nemažai laiko (dabar ~1-2h, iki persikraustymo sugaišdavau dar daugiau), jei valdyčiau automobilį. Ir šiaip patogiau, naudingiau, galėčiau su visais teršti aplinką, keikti mikroautobusų vairuotojus, tukti etc. Žodžiu reik išsilaikyti teises!
  • Vėl pradėt reguliariai sportuoti. Vasarą sėkmingai pakeičiau darbo vietą, be to ketvirtas kursas, tad po vasaros laiko sportavimui taip ir nebeatradau. Fix this! Jei bus tinkamos oro sąlygos, prie viso šito dar reik įvaldyt snowboardą. Pradžioj gal pasipraktikuočiau čia - Lietuvoje, o metų gale vėl į kurortą? Žiūrėsim, bet šito irgi sieksiu. Na o vasarą vėl atgaivinti važinėjimus riedučiais. Šią vasarą net iki skeitparko nebuvau nuvykęs. Gėda!
  • Daugiau daugiau daugiau! Yra pora dalykų ko norėčiau šiek tiek dauigau. Skaityti daugiau knygų ir reguliariai rašyti daugiau įrašų ;-) . Knygų skaitymu pastaruoju metu skųstis negaliu, tačiau norėčiau tam atrasti daugiau laiko, nes būtent šis faktorius mane kartais ir stabdo. Na o kalbant apie įrašus - per 2007-uosius parašiau jų 49. 49 / 12 = 4.08 įrašo per mėnesį. Tai vidutiniškai po įrašą per savaitę. Kartais produktyvumas krisdavo iki vieno įrašo per mėnesį, o tai jau manes netenkina… Žodžiu tobulėti yra kur, o tam paprasčiausiai tereikia tik skirti šiek tiek daugiau laiko. Tarkim 6-7 įrašai per mėnesį būtų visai nieko.
  • Dirbti dirbti dirbti. Čia kalbu ne tik apie darbą. Aikivaizdu, kad įdėdamas daugiau darbo - pasieksi geresnių rezultatų. Taip stengiuosi ir elgtis, tačiau ne visada sėkmingai ;-) Toliau vadovausiuos šiuo principu. Taip pat norėčiau į pasaulį išleisti kokį projektą ar prisijungti prie palaikymo/kūrimo. Idėjų turiu, vėlgi - reikia tik laiko ir darbo.
  • Galiausiai, kaip ir šiemet, poilsiui ir pramogai išvykti paturistauti į užsienį. 1 - 2 kelionės į metus būtų pats tas. Sąraše yra Airija (aplankyti draugus), Paryžius, Barcelona ar Graikija.

Atrodo, turėsiu ką veikti.