CoffeScript ili čisti JavaScript: Kako hakirati aparat za kavu
Shift

CoffeScript ili čisti JavaScript: Kako hakirati aparat za kavu

U Splitu se na konferenciji Shift ove godine za svakog se našla poneka tema vrijedna pažnje, predstavljena od strane vodećih stručnjaka u svojim područjima djelovanja. No, jedno je predavanje bilo posebno - o tome kako hakirati aparat za kavu pričao je (i demonstrirao) Dominik Kundel iz tvrtke Twilio.

Shift

CoffeScript ili čisti JavaScript? Ako želiš hakirati aparat za kavu, koji jezik koristiti za tu namjenu? Mnogi bi se kladili da je riječ o CoffeScriptu kao korištenom jeziku. Što biste vi koristili?

Upravo je to bilo pitanje koje je zanimalo mnoge. Predavanje koje je dalo odgovor na njega i koje nijednog sudionika nije ostavilo ravnodušnim bilo je “Coffee.js? How I hacked my coffee machine using JavaScript Dominika Kundela iz tvrtke Twilio – ono je opravdalo sva očekivanja i ponijelo epitet najzanimljivijeg. Tako to obično biva kada je riječ o praktičnoj primjeni tehnologije vidljivoj na licu mjestu. Spoj sklopovlja i programske podrške te njegov produkt – kava – zaintrigirao je mnoge.  

Internet objekata (eng. Internet of Things) pojam je koji se koristi s poštovanjem u IT krugovima. Riječ je o ideji generalnog umrežavanja gadgeta i pravljenja gadgeta od stvari koje to po svom opisu nisu na opću radost čovječanstva. Svakako, kreiranje nečeg takvog zahtijeva solidna znanja iz područja softvera, ali i hardvera. Zajedno s kolegama, Dominik je jednog petka navečer odlučio IoT svijetu pridružiti novi uređaj – aparat za kavu.

Pokidati nešto ne mora uvijek biti loša stvar

Ako bi se provela detaljna studija na dovoljnom uzorku programera, vjerojatno bismo došli do zaključka da su isti bili dosta kažnjavani tijekom djetinjstava. Razlog je jasan, a uključuje popriličan broj rastavljenih elektroničkih uređaja. 🙂

Glavna misao na koju je Dominik aludirao bila je – znatiželja. Naime, velik broj ljudi u IT sektoru krasi upravo ova osobina i urođena želja za znanjem kako to stvari funkcioniraju. Problem koji je Dominik istaknuo je sve rjeđa mogućnost pogledati “ispod haube”“ raznih elektroničkih uređaja zbog njihovog sve boljeg dizajna, poput Mac računala. Ovu bismo pojavu svakako ocijenili kao manu našeg doba jer ljudi koji kreiraju morali bi biti u stanju povremeno pogledati sastav i funkcioniranje stvari kojima se bave, kao stvari koje im općenito plijene pažnju. Koliko god da je bitno posjedovati žicu za inovacije, s vremena na vrijeme nužno je promijeniti pristup i potražiti inspiraciju. Jer, zanimljivo je!

Anatomija aparata za kavu

Ne srameći se znatiželje, Dominik je uz nekolicinu kolega s posla krenuo otkrivati tajne aparata za kavu. Odabrali su petak navečer i započeli projekt učenja i manipulacije aparatom za kavu radi vlastitog zadovoljstva i potrebe. Kako su vrsni poznavatelji JavaScripta, odlučili su stečeno znanje iskoristiti za ovaj vlastiti projekt. Na žalost ljudi s izraženom semantikom, nisu koristili CoffeScript. Bio je dovoljan čisti JavaScript.

Tko god je imao dodira sa sklopovljem vjerojatno je koristio platformu Arduino uz Arudino razvojno okruženje s C/C++ jezicima jer je to kombinacija koja je uvriježena u glavama mnogih. Na opće veselje JavaScript programera, koji se kunu u blistavu budućnost ovog jezika (koja takva i je), polje elektronike, robotike i IoT nije rezervirano samo za gore spomenutu kombinaciju, već je moguće koristiti i neprikosnoveni jezik weba!

To je za mnoge bila odlična vijest i saznanje. Također, to je bio vjetar u jedra i Dominku s obzirom na to da je zadnji put kada se susreo s dva navedena programska jezika (C/C++) bio –  fakultet. To je bio okidač za kratkotrajno razmišljanje o kurikularnoj reformi, ali hakirani aparat za kavu bio je “slon u prostoriji”.

Sljedeća dilema, koja je bila vidljiva na licima publike, bilo je sklopovlje koje omogućuje svestranost JavaScripta. Riječ je o Tessel 2, IoT i robotsko-razvojnoj platformi. Tesel 2 je u mogućnosti koristiti Node.JS biblioteke za opće svrhe kreiranju uređaja. Koristi JavaScript i podržava NPM (Node Package Manager).

Alternativa standardnom Arudino studiju u ovoj kombinaciji je Johnny-Five platforma, kreirana od stane Bocoupa 2012. godine. Johhny-Five podržava rad s Arduinom kao i s mnogim ne-Arduino projektima koristeći razne IO dodatke, što je bilo nužno za potrebe ovakvog projekta.

Naklonjenost demo bogova

Shift

Cilj projekta je skuhati kavu. I to online glasovanjem, ne zaboravimo da se radi o IoT-u. Izabiranjem između cappuccina i macchiata odabirete kavu koju će aparat pripremiti. Nakon definiranog vremenskog intervala, sprema se kava koja je pobijedila u natjecanju.

Kod je kratko predstavljen ukazivanjem na najbitnije dijelove. Uz razvojno okruženje objašnjen je i hardver samog aparata za kavu, čije istraživanje je bilo i najradikalniji dio čitavog procesa. Malo ljudi spremno je uhvatiti se u koštac s hardverom u potpuno nepoznatom i kaotičnom sustavu, sustavu u kojem CTRL/Z ne znači puno. Svaka pogreška znači odlazak do trgovine elektronikom i zamjenu pregorenih dijelova. Vrlo je slično operaciji kirurga – i to je ono što daje posebnu draž ovoj kratkoj radionici.

Ovoga je puta demo bio uspješan – na opće oduševljenje prisutnih, kava je pripremljena na pozornici.

Sukladno članku 94. Zakona o elektroničkim medijima, komentiranje članaka na Netokraciji dopušteno je samo korisnicima koji ostave svoje ime i prezime te mail adresu i prihvate pravila ponašanja.

Pravila ponašanja

Na Netokraciji za vas stvaramo kvalitetan, autorski potpisan sadržaj i zaista se veselimo vašim kvalitetnim, kontruktivnim komentarima. Poštujmo stoga jedni druge prilikom komentiranja, kao i Zakon, držeći se sljedećih pravila ponašanja:

  • Ne budite 💩: Nema vrijeđanja, diskriminiranja, ni psovanja (osim ako nije osobni izričaj, ali onda neka psovka bude općenita, a ne usmjerena prema nekome). Također, upoznajte se sa stavkom 2. članka 94. Zakona o elektroničkim medijima prije no što ostavite komentar.
  • Samo kvalitetna rasprava, manje trolanja: Ne morate se ni sa kim slagati, ali budite konstruktivni i doprinesite raspravi! Svako trolanje, flameanje, koliko god "plesalo" na granici, leti van.
  • Imenom i prezimenom, nismo Anonymous 👤: Autor sadržaja stoji iza svog sadržaja, stoga stojite i vi iza svog komentara. Koristimo ime i prezime te pravu email adresu.

Kako koristimo podatke koje ostavljate? Bacite oko na našu izjavu o privatnosti.

Sve ostale komentare ćemo s guštom spaliti, jer ne zaslužuju svoje mjesto na internetu.

Komentari

Odgovori

Tvoja e-mail adresa neće biti objavljena.

Popularno

eUsluge

Grad Zagreb omogućio potpun uvid u proračun kroz aplikaciju iTransparentnost

Nova aplikacija omogućuje svakom građaninu da detaljno prouči gradski porarčun po različitim parametrima.

Startupi

Što je to R&D potencijal – i kakve veze ima s razvojem startupa?

Je li startup nacija u kojoj su nastali tech giganti kao Skype, Wise, Bolt i Pipedrive to postala slučajno, otkrijte sa mnom na putu u Estoniju.

Nesortirano

Što je Akt o čipovima – i kako će doprinjeti tehnološkom razvitku Hrvatske

Jačanje konkurentnosti Europske unije u industriji poluvodiča prilika je i za Hrvatsku koja u sklopu 43 milijarde eura vrijedne incijative priprema otvaranje edukacijskih centara.

Što ste propustili

Startupi

Novi GapMinder Fond II s 80 milijuna eura cilja i na hrvatske startupe

GapMinder Ventures, VC fond koji je dosad primarno ulagao u tehnološke tvrtke iz Rumunjske, pokreće GapMinder Fond II, investicijski paket od 80 milijuna eura koji će biti alociran i na širu istočnoeuropsku regiju, pa tako i Hrvatsku i Srbiju.

Analiza

Raj za dezinformacije: Pola svjetske populacije ove godine bira novo vodstvo!

Stanje povjerenja na internetu trenutno nije najbolje. Borimo se s lažnim vijestima i deepfakeovima koje ćemo viđati sve češće kako nam se približavaju nacionalni i europski izbori - kakvo je stanje, donosimo direktno iz Bruxellesa.

Startupi

U Hrvatsku stiže Choice, češki CRM za restorane

Foodtech startup Choice s novih 2,5 milijuna američkih dolara investicije ulazi na hrvatsko tržište.

Startupi

AI4Health.Cro predstavio 28 timova koji će razvijati AI rješenja za problem rane rehospitalizacije

Cilj ovog natjecanja je razviti rješenja za problem ranog ponovnog prijema pacijenata u bolnice, primjenom računarstva i AI tehnologije.

Intervju

Croteam retrospektiva s Admirom Elezovićem: Kako su se prilagođavali igračima i industriji proteklih 30 godina?

Nakon 30 godina, Croteam žari i pali gaming industrijom, ali na svoj način... skromno i s onom starom "pamet u glavu".

Novost

Marko Elezović novi je Head of Engineering u Lemaxu

S 15 godina iskustva u developmentu i vođenju developerskih timova u različitim startupima i scaleupima, Marko Elezović otvara novu (Saa)stranicu u svojoj karijeri.