Idėja: Namų gamybos lazerinis graviravimo įrenginys

lexmark-printer

Nuo tada kai į mano rankas papuolė Arduino MEGA, galvoje ėmė kilti mintys, kurias jau senai norėjau įgyvendinti. Tuo pačiu pasikeitė ir požiūris į seną techniką: reik viską temptis namo, o mažu ką nors ištrauksiu iš jos ką galėsiu panaudoti eksperimentams? Prieš kelias dienas kaip tik prisiminiau, kad nuomojamo namo palėpėje mačiau prieš mane gyvenusių nuomininkų paliktą seną rašalinį spausdintuvą. Šiaip jis bevertis, nes tikriausiai jau be šansų surasti jam pildymo kasečių, o be to jungiamas per atgyvenusią LTP jungtį. :) Ką gi, viskas ką beliko padaryti, tai jį išardyti ir pasižiūrėti kas gero yra jo viduj. Skaityti toliau

Arduino MEGA ir LCD ekranas

arduino-lcd-test

Kuo toliau eksperimentuoju su savo Arduino MEGA, tuo man jis labiau patinka. Aš visada galvojau, kad mikroprocesoriai, jų programavimas ir apskritai pritaikymas yra iš kosmoso srities ir man iki jo toli toli, bet su Arduino viskas per daug paprasta. Iš tiesų, eksperimentuoti taip paprasta, kad dabar net gailiuosi, jog to nedariau iki šiol. Anglijoj elektroninių komponentų pasirinkimas internetinės parduotuvėse yra didžiulis. Ypač pamėgau Rapid dėl nepaprastai didelio įvairiausių komponentų kiekio ir Oomlout už puikų atviros hardware idėjos palaikymą.

Iš pastarųjų kaip tik ir noriu pademonstruoti įsigytą LCD ekraną už vos £6 (!!!).

YouTube Preview Image

Surinkti buvo labai paprasta, nes Oomlout atsiuntė išsamią pajungimo schemą, o be to visa informacija apie kiekvieną jų produktą yra laisvai pasiekiama internete. Skaityti toliau

LANVA patys yra piratai

torrent-protokolo-veikimas

Atrodo, kad LANVA nusitaikė šiek tiek pagąsdinti piratus, manau daug kam yra įdomu kaip jie tai padarė. Pradžiai trumpai išsiaiškinkim Torrent protokolo esminius veikimo principus.

Torrent trackeriai atlieka centrinio serverio darbą. Jie kaupia informaciją apie kiekvieną torrentą ir vartotojus turinčius visą failą arba jo dalį, bet pačių torrentų turinio pas save nelaiko. Kiekvienas didelis failas yra suskaidomas į mažas dalis ir vartotojai, turintys tuos gabaliukus siunčia tiems, kurie tų dalių neturi. Kiekvienas vartotojas pasako torrent trackeriui kiek turi ir kokių dalių jam dar trūksta iki viso torrento parsisiuntimo. Tuomet torrent trackeris pasako maždaug taip: „Vartotojau 1, tą dalį kurios tu sakei, kad tau trūksta pasiimk iš Vartotojo 2, nes jis ją turi“. Vartotojas 1 gauna vartotojo 2 IP adresą, bendravimas su trackeriu tam laiko tarpui baigiasi ir vartotojų programos toliau tiesiogiai „tariasi“ dėl konkrečios failo dalies parsisiuntimo. Kai užsimezga ryšys tarp Vartotojo 1 ir Vartotojo 2, abu jie sužino vienas kito IP ir MAC adresus (tinklo plokštės unikalus numeris), kad galėtų atlikti duomenų siuntimą. Skaityti toliau

Arduino MEGA

arduino-mega

Elektronika kaip hobiu domėjausi nuo 5 klasės, tik dėl visiškai kitokio darbo pobūdžio prie elektroninių komponentų nebuvau rimčiau prisėdęs jau daugiau nei 7 metai. Įsivaizduokit koks džiaugsmas mane apėmė, kai sužinojau, kad mano OggCamp 2009 laimėta Arduino MEGA yra miniatiūrinė elektroninių prototipų kūrimo platforma! Viskas būtų gerai, jei tik prieš pradėdamas eksperimentuoti su šituo gėriu būčiau žinojęs, kad viskas nebus taip paprasta kaip atrodė iš pirmo žvilgsnio, bet apie viską iš pradžių. :)

Kas yra Arduino MEGA?

Tai yra ATMega mirkroprocesorium (didelis juodas blynas plokštės viduryje) paremta pigi prototipinių elektroninių įrenginių kūrimo plokštė, žmonėms, kurie mažai nusimano apie elektroniką. Įdomu yra tai, kad Arduino – atviro programinio kodo ir harware platforma. Visi brėžiniai, techniniai duomenis ir programavimo informacija yra prieinama viešai ir bet kas pagal pateiktą informaciją gali susirinkti plokštę pats arba užsisakyti jau surinktą. Arduino platformų yra įvairių, mano turima MEGA turi daugiausia įėjimų/išėjimų tarp kurių 32 skaitmeniniai, 16 analoginių ir 4 grupės skirtų bendravimui tarpusavyje tarp pačių plokščiu arba kitais įrenginiais nuosekliu protokolu. Skaityti toliau

OggCamp 2009

oggcamp-logo

Sekmadienį kartu su Karoliu sudalyvavom OggCamp nekonferencijoje. Tiek daug gykų su Android telefonais ir netbukais vienoje vietoje dar nebuvau matęs. :) Pranešimai buvo pusėtini:

  • Išklausiau pasakojimą kaip paslėpti save internete naudojant Tor tinklą ir kitus metodus. Šiaip čia aktualiausia buvo tiems, kurie vykstą į kokią Kiniją, kur pati valstybė blokuoja prisijungimus prie tam tikrų svetainių. Beje, jei kada būsit Pakistane, tai nerekomenduoju naudotis interneto ryšio kriptografijos priemonėmis: Pakistano interneto policija aptikus naudojant bet kokius kriptografijos pėdsakus suras, pakabins aukštyn kojom ir daužydami per padus išsiaiškins visus vartotojo vardus ir slaptažodžius nesvarbu net jei slėpėtės blogais ar gerais tikslais. :)
  • Kitas šiek tiek įdomesnis pranešimas buvo apie PS2 Front Mission žaidimo fanų bendruomenės bandymą ne visai legaliai išversti Front Mission 5 žaidimą iš japonų į anglų kalbą. Vertimo procesą sudaro knaisiojimasis po PS2 diskų formatą, japoniško teksto suradimą ir išvertimą į anglų kalbą. 20 žmonių komandą žaidimą vertė 2 metus ir, atrodo, jau baigė. Būna gi entuziastų. :)
  • Išklausiau dar apsirūkiūsių ir pasigėrusių vaikinukų sugalvotą projektą PokeBook. Maža to, kad visus galima surasti Feisbuke, Twiteryje ir kituose socialiniuose tinkluose, tai dabar dar galima bus pokinti (suprask virtualiai baksnoti pirštu) per PokeBook. Projekto prasmės ir misijos neturi ir patys jo kūrėjai tik iki raudon-mėlynavimo gyrėsi kokie jie krūti ir kokį nerealų projektą padarė. :)

Paskutinis pranešimas, kurį aplankiau buvo tiesioginė podkęsto transliacija, kurioje Linux gykai skundėsi, kad per mažai Linux’e kokybiškų programų kurti muzikai ir  sprendė ar yra gerai, kad turim tiek daug distribucijų. Pastarojoj diskusijoj taip ir nepriėjo vieningos nuomonės. Aš asmeniškai manau, kad man visiškai nesvarbu kiek yra tų distribucijų, nes visos jos praktiškai vienodos: visada rasi tą patį OpenOffice, GIMP, Firefox ar Evolution tik naujesnes ar senesnes versijas. Man asmeniškai reikia veikiančios Linux distribucijos, kuri tiesiog veiktų: paprastai instaliuotųsi, iš karto veiktų garsas, turėtų visas vaizdo tvarkykles, galėčiau žiūrėti filmus ir klausytis muzikos be jokio knaisiojimosi po forumus kaip įsidiegti trūkstamas tvarkykles ar modulius. Galbūt taip kada nors ir bus, kai atskirų distribucijų kūrėjai supras ko nori paprastas vartotojas. :)

Pati nekonferencija buvo tokia labai so so, bet ne dėl jos važiavau. Įdomiausia buvo susitikti su Karoliu ir paplepėti apie viską ir apie nieką. :) Keista vienok pažįstant kažką tiek laiko vien internetu pagaliau susitikti gyvai.

Dar vienas malonus siurprizas buvo visai netikėtai laimėta Ardruino MEGA plokštė.

ArduinoMega

Čia yra dar kiečiau nei mano išsvajotas Lego Mindstorms NTX! Jos pagalba galima kurti robotus, ar kitus įdomius programuojamus interaktyvius įrenginius. Sweet! :) Penkios valandos trinant užpakalį prie automobilio vairo visgi nenuėjo veltui! Dabar belieka nusipirkti dev boardą, laidelių, varikliukų ir eiti lipdyti savo seną svajonę: sukurti savaeigį robotą. :) Kaip seksis būtinai papasakosiu čia.

Papildymas: Apie įspūdžius iš OggCamp taip pat parašė ir Karolis.

Muzikinis eksperimentas TrixPlayer

TrixPlayer 0.1

Kai man atsibosta kurti duomenų bazes ir web puslapius, susigalvoju sau kokį eksperimentą. Taip gimė programa TrixPlayer – 16×16 sequencer’is. Daug nepasakojant galite pasižiūrėti kaip jis veikia:

YouTube Preview Image

Parsisiuntimas

Linux vartotojams reikia prieš paleidžiant TrixPlayer.exe paleisti tokią komandą konsolėje (Ubuntu distribucijai):

sudo apt-get install gtk-sharp gtk-sharp2 libgdiplus libsdl1.2debian libsdl1.2debian-all libsdl-mixer1.2 libsdl-image1.2 libsdl-ttf2.0-0 libsdl-gfx1.2-4 libsmpeg0 timidity

Bandydamas Ubuntu 9.04 OS pastebėjau, kad garsas vėluoja, bet gal čia dėl to, kad leidau VirtualBox’e. Jokių šimtaprocentinių garantijų, kad pas jus veiks. :)

Veikimo principas

Kol kas nekreipkit dėmesio į dešinėje pusėje esančius L1-L5 mygtukus. Jie ten tik laikinai, ir bus pervadinti į F1-F5.

Muziką galite kurti su penkiais sluoksniais (layers), kurie yra pavadinti L1-L5 ir valdomi kairėje pusėje esančiais tap pat pavadintais mygtukais. Kiekvienam sluoksniui priskirtas vienas instrumentas. O kiekvienas instrumentas turi po 16 „natų“ išsidėsčiusių juostomis horizontaliai.  Kiekvienas sluoksnis turi po 16 patternų, kuriuos galite pasirinkti nuspaudę ir laikydami klaviatūros mygtukus 1-5 atitinkamai pasirinktam sluoksniui ir pasirinkę vieną iš horizontalių juostų su kairiuoju pelės klavišu. Su dešiniuoju pelės klavišu paspaudimu pasirinktas patternas nukopijuojamas į naująjį (maždaug ties video 1:06 galite pamatyti kaip aš tai darau).

Valdymas

  • Kairysis pelės klavišas – įjungia arba išjungia natos grojimą;
  • Klaviatūros mygtukai 1, 2, 3, 4, 5 – keičia sluoksnius
  • Laikant nuspaustą 1, 2, 3, 4, 5 + kairysis pelės klavišas keičia patterną;
  • Laikant nuspaustą 1, 2, 3, 4, 5 + dešinysis pelės klavišas kopijuoja paskutinį pasirinktą patterną į naują.
  • Space – išvalo patterną;
  • Laikant nuspaustą F1 + kairiuoju pelės klavišu galima keisti sluoksnio garsumo lygį.

Planai ir mintys

Jeigu bus noro ir laiko dar padarysiu

  1. Įrašyti normalius instrumentus ir padaryti jų pasirinkimą. Dabartiniai sucks, bet tai geriausia ką radau nemokamai internete.
  2. Padaryti software sintezatorių vietoj samplų grojimo;
  3. Išsaugoti/atidaryti muzikinį kūrinį;
  4. Keisti grojimo tempą
  5. Keisti sluoksnio grojimo tempą
  6. ir t.t.

Have fun! Pasiūlymai, paskatinimai ir idėjos visada laukiami. Prie progos paskelbsiu source ir kaip susikompiliuoti pačiam.

Techniniai duomenys kam įdomu

  • Sukurta su: Microsoft Visual Studio 2008/Mono Develop 2.1 beta
  • Programavimo kalba: C#
  • Platforma: Mono 2.0 arba Microsoft.NET 2.0
  • Grafikos/garso variklis: SDL.NET
  • OS: Windows ir Linux. Teoriškai turėtų veikti ir po Mac OSX, bet neturiu obuolio kompiuterio, todėl negaliu pratestuoti ir sukompiliuoti.

Lego Mindstorms NTX

Lego Mindstorms NXT Robot

Nuotrauka iš Wikipedijos.

Atradau naują must have gadžetą – Lego Mindstorms NTX. :) Tai yra Lego kaladėlės su programuojamais komponentais, kurių pagalba galima kurti robotus. Dabar biškį gailiuosi, kad buvau suradęs maišą šitų detalių su veikiančiu mikroprocesorium vos už £30 vietiniam blusų turguj ir nenusipirkau, kai naujas kit’as kainuoją apie £300. Gerai, kad turiu sūnų, kuris dar po kelių metų bus „rimtas“ argumentas mums abiem nusipirkti šitą gėrį. :)

Dabar pažiūrėkite ką Andrius Šutas pagamino iš tokių Lego detalių:

YouTube Preview Image

Rubiko kubą sprendžiantis robotas

YouTube Preview Image

Sudoku sprendžiantis robotas

Gerai yra sakoma: berniukai niekada nesuauga, su amžiumi jų žaislais tik darosi brangesni. :)

Paskutinė WordPress saugumo spraga – programuotojų žioplumas

wordpress-vulnerability

Paskutinė didelė WordPress saugumo spraga, dėl kurios nukentėjo daug įžymių svetainių, yra rimtas programuotojų neapsižiūrėjimas: WordPress kūrėjai pamiršo patikrinti varototojų teises kai kuriuose administravimo puslapiuose. Jei senos versijos WordPress tinklaraštis yra atviras registracijoms, paprastas varototojas galėjo atlikti tinklaraščio administravimo veiksmus: keisti diskusijų, standartinius, pastoviųjų nuorodų, paveiksliukų, privatumo, skaitymo, rašymo nustatymus, temų šablonus ir jų failus, vartotojus ir tuo pačiu savo kaip vartotojo teises. Su tokiom įsilaužimo galimybėm nenuostabu, kad daug įžymių tinklaraščių buvo smarkiai išdarkyti. Jei neklystu pažiūrėjęs į kodą, tinklaraščiai, kurie neturi viešos registracijos nuo šios problemos yra apsaugoti.

Keista tik kaip tokia saugumo spraga buvo nepastebėta tokį ilgą laiko tarpą: visuose WordPress versijose iki 2.8.4! O WordPress kuo toliau tuo labiau pučias ir pučias funkcionalumo, atminties naudojimo ir tuo pačių dar neatrastų klaidų prasme. Ar nebus taip, kad galų gale paprasti vartotojai naudos vos 2% visų WordPress galimybių, kaip dabar yra su Microsoft Office? Man anksčiau labiau patiko, kai WordPress tebuvo tinklarašių rašymo karkasas, o visą reikalingą funkcionalumą parsiplėsdavai įskiepių pagalba.

Žiūriu dabar į tą WordPress PHP kodo košę ir džiaugiuosi, kad perėjau prie Ruby on Rails: paprasto, gražaus, elegantiško, lengvai suprantamo ir plečiamo framework.

Kodėl Linux niekada neišstums Windows

Linux ir Windows

Nuotrauka iš walpaperpimper.com

Perskaičiau šiandien Linuxoido straipsnį apie tai kodėl linuxai nepajėgia išstumti Windows ir noriu paprieštarauti ten išsakytai nuomonei. Windows vartotojų nenorą pereiti prie Linux lemia dvi pagrindinės priežastys: per didelis prisirišimas prie daugiau nei dešimtmetį naudojamų Windows technologijų ir nesugebėjimas išmokti operacinės sistemos, kurioje viskas yra šiek tiek kitaip nei jau įprastuose Windows. Linuxoido išvardinti rinkos segmentai tėra viena iš mano išvardintų problemų pasekmių. Skaityti toliau

Google laukia tokia pati ateitis kaip ir Microsoft, netikite?

Googe = Microsoft

Be Google kiekvienas interneto vartotojas negalėtų išgyventi nei dienos: paieška, el. paštas, RSS skaityklė, Android OS, online dokumentai ir visas kitas gėris, kurį sukūrė ši korporacija tapo neatsiejama mūsų kasdienio interneto naudojimo dalimi. Per gana trumpą laiką firma užsitarnavo gerą vardą dėl sugebėjimo kurti nemokamus online produktus, tačiau atrodo laikai keičiasi. Anksčiau reaguodavusi į vartotojų poreikius dabar Google ima atrodyti kaip labai sunkus sunkvežimis, kurį pasukti reikiama linkme darosi vis sunkiau. Mes tam sunkvežimyje kaip tik ir sėdime. Skaityti toliau