Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Þegar ég var á yngra ári í menntaskóla (frá mars til desember 2016) var ég mjög pirruð yfir ástandinu sem skapaðist á mötuneyti skólans okkar.

Vandamál eitt: bíða of lengi í röð

Hvaða vandamál tók ég eftir? Svona:

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Fjöldi nemenda var samankominn á dreifingarsvæðinu og þurftu þeir að standa lengi (fimm til tíu mínútur). Auðvitað er þetta algengt vandamál og sanngjarnt þjónustukerfi: því seinna sem þú kemur, því seinna verður þér afgreitt. Svo þú gætir skilið hvers vegna þú þurftir að bíða.

Vandamál tvö: Ójöfn skilyrði fyrir þá sem bíða

En það er auðvitað ekki allt, ég þurfti líka að fylgjast með öðru alvarlegri vandamáli. Svo alvarlegt að ég ákvað að lokum að reyna að finna leið út úr stöðunni. Framhaldsskólanemar (þ.e. allir sem læra að minnsta kosti einkunn hærra) og kennarar fóru í úthlutun án þess að bíða í röð. Já, já, og þú, sem grunnskólanemi, gast ekki sagt þeim neitt. Skólinn okkar hafði frekar stranga stefnu varðandi samskipti milli bekkja.

Þess vegna komum við vinkonur mínar, á meðan við vorum nýbyrjar, fyrst á kaffistofuna, vorum að fara að fá mat - og þá birtust framhaldsskólanemar eða kennarar og ýttu okkur einfaldlega til hliðar (sumir, sem voru ljúfari, leyfðu okkur að vera inni. sæti okkar í röðinni). Við þurftum að bíða í fimmtán til tuttugu mínútur í viðbót, þó við komum fyrr en allir aðrir.

Okkur leið sérstaklega illa í hádeginu. Á daginn skunduðu algjörlega allir á kaffistofuna (kennarar, nemendur, starfsfólk), þannig að fyrir okkur sem grunnskólabörn var hádegismatur aldrei gleðiefni.

Algengar lausnir á vandamálinu

En þar sem nýliðarnir áttu ekkert val þá komum við með tvær leiðir til að draga úr hættunni á að kastast aftarlega í línuna. Það fyrsta er að koma mjög snemma í matsalinn (þ.e. bókstaflega áður en maturinn byrjar að bera fram). Annað er að drepa tíma vísvitandi í að spila borðtennis eða körfubolta og mæta mjög seint (um tuttugu mínútum eftir að hádegisverður hefst).

Að einhverju leyti tókst það. En satt best að segja var enginn fús til að flýta sér eins hratt og hann gat í matsalinn bara til að geta borðað eða klára kalda afgangana á eftir hinum, því þeir voru meðal þeirra síðustu. Okkur vantaði lausn sem myndi láta okkur vita þegar mötuneytið var ekki troðfullt.

Það væri frábært ef einhver spákona spáði fyrir okkur framtíðina og segði okkur nákvæmlega hvenær við ættum að fara í matsalinn, svo við þyrftum ekki að bíða lengi. Vandamálið var að á hverjum degi varð allt öðruvísi. Við gátum ekki einfaldlega greint mynstur og greint sæta blettinn. Við höfðum aðeins eina leið til að komast að því hvernig hlutirnir voru í matsalnum - að komast þangað fótgangandi og leiðin gæti verið nokkur hundruð metrar, eftir því hvar þú varst. Þannig að ef þú kemur, lítur á línuna, kemur til baka og heldur áfram í sama anda þar til það verður stutt, þú eyðir miklum tíma. Almennt séð var lífið viðbjóðslegt fyrir grunnskólann og ekkert hægt að gera í því.

Eureka – hugmyndin um að búa til eftirlitskerfi fyrir mötuneyti

Og skyndilega, þegar á næsta námsári (2017), sagði ég við sjálfan mig: "Hvað ef við búum til kerfi sem sýnir lengd biðröðarinnar í rauntíma (þ.e. greina umferðarteppu)?" Ef mér hefði tekist það hefði myndin verið þessi: grunnskólanemendur myndu einfaldlega líta í símann sinn til að fá uppfærð gögn um núverandi vinnuálag og draga ályktanir um hvort skynsamlegt væri fyrir þá að fara núna .

Í meginatriðum jafnaði þetta kerfi út ójöfnuð með aðgangi að upplýsingum. Með hjálp hennar gátu grunnskólabörn valið sjálf hvað þeim hentaði best - farið og staðið í röðinni (ef hún var ekki of löng) eða eytt tímanum betur og síðar valið hentugra augnablik. Ég var mjög spenntur yfir þessari hugsun.

Hönnun mötuneytiseftirlitskerfis

Í september 2017 þurfti ég að skila verkefni fyrir hlutbundið forritunarnámskeið og ég skilaði þessu kerfi sem verkefni.

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Upphafleg kerfisáætlun (september 2017)

Búnaðarval (október 2017)

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Einfaldur áþreifanleg rofi með uppdráttarviðnám. Skipulag með fimm skjöldum í þremur röðum til að þekkja biðröðina eftir þremur línum

Ég pantaði aðeins fimmtíu himnurofa, Wemos D1 mini borð byggt á ESP8266, og nokkrar hringaklemmur sem ég ætlaði að festa emaljeðu vírana við.

Frumgerð og þróun (október 2017)

Ég byrjaði á brauðbretti - setti saman hringrás á það og prófaði það. Ég var takmarkaður í fjölda efna, svo ég takmarkaði mig við kerfi með fimm fótabrettum.

Fyrir hugbúnaðinn sem ég skrifaði í C++ setti ég eftirfarandi markmið:

  1. Vinnu stöðugt og sendu gögn aðeins á tímabilum þegar matur er borinn fram (morgunmatur, hádegismatur, kvöldmatur, síðdegissnarl).
  2. Þekkja biðröð/umferðaraðstæður í mötuneytinu á slíkri tíðni að síðan er hægt að nota gögnin í vélanámslíkönum (t.d. 10 Hz).
  3. Sendu gögn til netþjónsins á skilvirkan hátt (pakkastærð ætti að vera lítil) og með stuttu millibili.

Til að ná þeim þurfti ég að gera eftirfarandi:

  1. Notaðu RTC (rauntímaklukku) eininguna til að fylgjast stöðugt með tímanum og ákvarða hvenær matur er borinn fram í mötuneytinu.
  2. Notaðu gagnaþjöppunaraðferð til að skrá skjöldinn í einum staf. Með því að meðhöndla gögnin sem fimm bita tvöfaldan kóða, kortlagði ég hin ýmsu gildi í ASCII stafi þannig að þau táknuðu gagnaþættina.
  3. Notaðu ThingSpeak (IoT tól fyrir greiningar og kortlagningu á netinu) með því að senda HTTP beiðnir með POST aðferðinni.

Auðvitað voru einhverjar villur. Ég vissi til dæmis ekki að sizeof( ) rekstraraðilinn skilar gildinu 4 fyrir char * hlut, ekki lengd strengsins (vegna þess að það er ekki fylki og þess vegna reiknar þýðandinn ekki lengdina) og var mjög undrandi hvers vegna HTTP beiðnir mínar innihéldu aðeins fjóra stafi af öllum vefslóðum!

Ég setti heldur ekki sviga inn í #define skrefið, sem leiddi til óvæntra niðurstaðna. Jæja segjum:

#define _A    2 * 5 
int a = _A / 3;

Hér mætti ​​búast við að A væri jafnt og 3 (10 / 3 = 3), en í raun var það reiknað öðruvísi: 2 (2 * 5/ 3 = 2).

Að lokum, önnur athyglisverð villa sem ég tók á var endurstilla á varðhundatímamælinum. Ég glímdi við þetta vandamál í mjög langan tíma. Eins og síðar kom í ljós var ég að reyna að fá aðgang að lágstigsskránni á ESP8266 flísinni á rangan hátt (fyrir mistök setti ég inn NULL gildi fyrir bendil á byggingu).

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Fótaskjöldur sem ég hannaði og smíðaði. Þegar myndin var tekin hafði hann þegar lifað af fimm vikna troðning

Vélbúnaður (fótaplötur)

Til að tryggja að skjöldarnir gætu lifað af erfiðar aðstæður mötuneytis setti ég eftirfarandi kröfur til þeirra:

  • Skjöldur verða að vera nógu sterkir til að bera mannsþyngd á hverjum tíma.
  • Skjöldurnar ættu að vera þunnar til að trufla ekki fólk í röð.
  • Það verður að virkja rofann þegar stigið er á hann.
  • Skjöldur verða að vera vatnsheldar. Matsalurinn er alltaf rakur.

Til að uppfylla þessar kröfur settist ég á tveggja laga hönnun - laserskorið akrýl fyrir grunn og topphlíf og kork sem hlífðarlag.

Ég gerði skjöldinn í AutoCAD; mál - 400 x 400 millimetrar.

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Vinstra megin er hönnunin sem fór í framleiðslu. Hægra megin er möguleiki með tengingu af Lego-gerð

Við the vegur, ég hætti að lokum við hægri hönnunina vegna þess að með slíku festingarkerfi kom í ljós að það ætti að vera 40 sentimetrar á milli skjaldanna, sem þýðir að ég gat ekki náð nauðsynlegri fjarlægð (meira en tíu metrar).

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Til að tengja alla rofana notaði ég enamel vír - samtals tóku þeir meira en 70 metra! Ég setti himnurofa í miðju hvers hlífðar. Tvær klemmur stóðu út úr hliðarraufunum - til vinstri og hægra megin við rofann.

Jæja, til vatnsþéttingar notaði ég rafband. Mikið af rafmagnsbandi.

Og allt virkaði!

Tímabil frá fimmta nóvember til tólfta desember

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Mynd af kerfinu - allir fimm skjöldarnir sjást hér. Vinstra megin er rafeindabúnaðurinn (D1-mini / Bluetooth / RTC)

Þann XNUMX. nóvember klukkan átta að morgni (morgunverðartími) hóf kerfið að safna núverandi gögnum um ástandið í matsalnum. Ég trúði ekki mínum eigin augum. Fyrir aðeins tveimur mánuðum síðan var ég að skissa upp almenna áætlunina, sitjandi heima á náttfötunum, og hér erum við, allt kerfið að vinna áfallalaust... eða ekki.

Hugbúnaðarvillur við prófun

Auðvitað var fullt af villum í kerfinu. Hér eru þær sem ég man eftir.

Forritið leitaði ekki að tiltækum Wi-Fi punktum þegar reynt var að tengja biðlarann ​​við ThingSpeak API. Til að laga villuna bætti ég við viðbótarskrefum til að athuga framboð á Wi-Fi.

Í uppsetningaraðgerðinni kallaði ég ítrekað „WiFi.begin“ þar til tenging birtist. Seinna komst ég að því að tengingin er komin á ESP8266 vélbúnaðinn og byrjunaraðgerðin er aðeins notuð þegar Wi-Fi er sett upp. Ég leiðrétti ástandið með því að hringja aðeins einu sinni í aðgerðina við uppsetningu.

Ég uppgötvaði að skipanalínuviðmótið sem ég bjó til (það var ætlað að stilla tímann, breyta netstillingum) virkar ekki í hvíld (þ.e. fyrir utan morgunmat, hádegismat, kvöldmat og síðdegiste). Ég sá líka að þegar engin skráning á sér stað flýtir innri lykkjan óhóflega mikið og raðgögnin eru lesin of hratt. Þess vegna stilli ég seinkun þannig að kerfið bíði eftir að viðbótarskipanir berist þegar þær eru væntanlegar.

Óður til varðhundsins

Ó, og eitt í viðbót um vandamálið með tímamælir varðhundsins - ég leysti það nákvæmlega á prófunarstigi við „akur“ aðstæður. Án ýkja var þetta allt sem ég hugsaði um í fjóra daga. Í hvert hlé (sem stóð í tíu mínútur) hljóp ég á kaffistofuna bara til að prófa nýju útgáfuna af kóðanum. Og þegar dreifingin opnaði sat ég á gólfinu í klukkutíma og reyndi að ná pöddu. Ég hugsaði ekki einu sinni um mat! Takk fyrir allt það góða, ESP8266 Watchdog!

Hvernig ég fann út WDT

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Kóðabútur sem ég var að berjast við

Ég fann forrit, eða réttara sagt viðbót fyrir Arduino, sem greinir gagnaskipulag hugbúnaðarins þegar Wdt-endurstilla á sér stað, og kemst í ELF skrána af samantekna kóðanum (fylgni á milli aðgerða og ábendinga). Þegar þetta var gert kom í ljós að hægt er að útrýma villunni sem hér segir:

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Fjandinn hafi það! Jæja, hver vissi að það væri svo erfitt að laga villur í rauntímakerfi! Hins vegar fjarlægði ég villuna og það reyndist vera heimskulegur galli. Vegna reynsluleysis skrifaði ég stundarlykkju þar sem fylkið fór út fyrir mörkin. Úff! (vísitala++ og ++vísitala eru tveir stórir munar).

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Vélbúnaðarvandamál við prófun

Að sjálfsögðu var búnaðurinn, það er fótahlífarnar, fjarri góðu gamni. Eins og þú gætir búist við er einn af rofunum fastur.

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Þann XNUMX. nóvember, í hádeginu, festist rofinn á þriðja spjaldinu

Hér að ofan hef ég gefið skjáskot af netkorti frá ThingSpeak vefsíðunni. Eins og sjá má gerðist eitthvað um 12:25, eftir það bilaði skjöldur númer þrjú. Fyrir vikið var lengd biðröðarinnar ákvörðuð sem 3 (gildið er 3 * 100), jafnvel þótt hún hafi í raun ekki náð þriðja skjöldinn. Lagfæringin var sú að ég bætti við meiri bólstrun (já, límbandi) til að gefa rofanum meira pláss.

Stundum var kerfið mitt bókstaflega rifið upp með rótum þegar vírinn festist í hurðinni. Kerrur og pakkar voru fluttir í gegnum þessa hurð inn í borðstofuna, þannig að hún bar vírinn með sér, lokaði og dró hann úr innstungunni. Í slíkum tilfellum tók ég eftir óvæntri bilun í gagnaflæði og giskaði á að kerfið væri aftengt aflgjafanum.

Miðlun upplýsinga um kerfið um allan skólann

Eins og áður hefur komið fram notaði ég ThingSpeak API, sem sýnir gögn á síðunni í formi línurita, sem er mjög þægilegt. Almennt séð setti ég bara hlekk á stundaskrána mína í Facebook hóp skólans (ég leitaði að þessari færslu í hálftíma og fann hana ekki - mjög skrítið). En ég fann færslu á Bandinu mínu, skólasamfélagi, dagsett 2017. nóvember XNUMX:

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Viðbrögðin voru villt!

Ég birti þessar færslur til að vekja áhuga á verkefninu mínu. Hins vegar, jafnvel bara að horfa á þá er alveg skemmtilegt í sjálfu sér. Segjum að þú sjáir greinilega hér að fjöldi fólks jókst verulega klukkan 6:02 og nánast niður í núll um 6:10.

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Hér að ofan hef ég hengt við nokkur línurit sem tengjast hádegismat og síðdegistei. Athygli vekur að hámark vinnuálags í hádeginu átti sér nánast alltaf stað klukkan 12:25 (röðin náði fimmta skjöld). Og fyrir síðdegissnarl er almennt óeðlilegt að vera með mikinn mannfjölda (röðin er í mesta lagi eitt borð löng).

Veistu hvað er fyndið? Þetta kerfi er enn á lífi (https://thingspeak.com/channels/346781)! Ég skráði mig inn á reikninginn sem ég notaði áður og sá þetta:

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Á grafinu hér að ofan sá ég að þriðja desember var aðstreymi fólks verulega minna. Og engin furða - það var sunnudagur. Þennan dag fara nánast allir eitthvað, því í flestum tilfellum er bara hægt að fara af skólalóðinni á sunnudögum. Það er ljóst að þú munt ekki sjá lifandi sál á kaffistofunni um helgina.

Hvernig ég fékk fyrstu verðlaun frá kóreska menntamálaráðuneytinu fyrir verkefnið mitt

Eins og þú sérð sjálfur þá vann ég ekki við þetta verkefni vegna þess að ég var að reyna að vinna mér inn einhvers konar verðlaun eða viðurkenningu. Mig langaði bara að nota hæfileika mína til að leysa langvarandi vandamál sem ég stóð frammi fyrir í skólanum.

Hins vegar spurði næringarfræðingurinn okkar í skólanum, Miss O, sem ég varð mjög náin við þegar ég skipulagði og þróaði verkefnið mitt, mig einn daginn hvort ég vissi um samkeppni um kaffistofuhugmyndir. Svo fannst mér það einhver skrítin hugmynd að bera saman hugmyndir fyrir borðstofuna. En ég las upplýsingabæklinginn og komst að því að verkefninu þarf að skila fyrir 24. nóvember! Jæja. Ég kláraði fljótt hugmyndina, gögnin og grafíkina og sendi umsóknina.

Breytingar á upphaflegri hugmynd að keppninni

Við the vegur, kerfið sem ég lagði að lokum til var aðeins frábrugðið því sem þegar var innleitt. Í meginatriðum lagaði ég upprunalegu aðferðina mína (mæla lengd biðraðar í rauntíma) fyrir miklu stærri kóreska skóla. Til samanburðar: í skólanum okkar eru þrjú hundruð nemendur og í sumum öðrum eru svo margir í einum bekk! Ég þurfti að finna út hvernig ætti að skala kerfið.

Þess vegna lagði ég fram hugmynd sem byggðist meira á „handvirkri“ stjórn. Nú á dögum hafa kóreskir skólar þegar kynnt máltíðaráætlun fyrir alla bekki, sem er stranglega fylgt, svo ég byggði upp annan ramma af „merkjasvörun“. Hugmyndin hér var sú að þegar hópurinn sem heimsótti kaffistofuna á undan þér næði ákveðnum mörkum á lengd línunnar (þ.e. röðin varð stutt) myndi hann senda handvirkt merki til þín með því að nota takka eða kveikja á veggnum . Merkið verður sent á sjónvarpsskjáinn eða í gegnum LED perur.

Mig langaði bara virkilega að leysa vandamál sem kom upp í öllum skólum landsins. Ég styrktist enn frekar í ásetningi mínum þegar ég heyrði sögu frá ungfrú O - ég skal segja þér það núna. Í ljós kemur að í sumum stórum skólum nær línan út fyrir kaffistofuna, inn í götuna í tuttugu til þrjátíu metra, jafnvel á veturna, því enginn getur skipulagt ferlið almennilega. Og stundum gerist það að í nokkrar mínútur birtist enginn í borðstofunni - og þetta er líka slæmt. Í skólum með fjölda nemenda hefur starfsfólk varla tíma til að þjóna öllum þótt ekki fari einni mínútu af matartíma til spillis. Þeir sem eru síðastir að koma í úthlutunina (oftast grunnskólanemendur) hafa því einfaldlega ekki nægan tíma til að borða.

Þannig að þrátt fyrir að ég hafi þurft að leggja inn umsóknina mína í flýti, hugsaði ég mjög vel um hvernig ég gæti lagað hana fyrir víðtækari notkun.

Skilaboð um að ég vann fyrstu verðlaun!

Löng saga stutt, mér var boðið að koma og kynna verkefnið mitt fyrir embættismönnum. Svo ég setti alla mína Power Point hæfileika í vinnu og kom og kynnti!

Saga af kóreskum skólastrák sem fékk verðlaun frá ráðuneytinu fyrir biðröðvöktunarkerfi

Upphaf kynningar (lengst til vinstri - ráðherra)

Þetta var áhugaverð reynsla - ég kom bara með eitthvað fyrir kaffistofuvandann og endaði einhvern veginn meðal sigurvegara keppninnar. Jafnvel þegar ég stóð á sviðinu hélt ég áfram að hugsa: "Hmm, hvað er ég eiginlega að gera hérna?" En almennt séð færði þetta verkefni mér mikinn ávinning - ég lærði mikið um þróun innbyggðra kerfa og innleiðingu verkefna í raunveruleikanum. Jæja, ég fékk auðvitað verðlaun.

Ályktun

Það er einhver kaldhæðni hérna: það var sama hversu mikið ég tók þátt í alls kyns keppnum og vísindasýningum sem ég skráði mig markvisst í, ekkert gott varð úr því. Og þá fann tækifærið mig bara og gaf mér góðan árangur.

Þetta fékk mig til að hugsa um ástæðurnar sem hvetja mig til að takast á við verkefni. Af hverju byrja ég að vinna - til að „vinna“ eða leysa raunverulegt vandamál í heiminum í kringum mig? Ef önnur hvötin er að verki í þínu tilviki, hvet ég þig eindregið til að hætta við verkefnið. Með þessari nálgun í viðskiptum geturðu mætt óvæntum tækifærum á leiðinni og munt ekki finna fyrir þrýstingi frá þörfinni til að vinna - aðalhvatinn þinn verður ástríðu fyrir fyrirtækinu þínu.

Og síðast en ekki síst: ef þér tekst að innleiða almennilega lausn geturðu strax prófað hana í hinum raunverulega heimi. Í mínu tilfelli var vettvangurinn skóli, en með tímanum safnast reynsla saman og hver veit - kannski verður umsóknin þín notuð af öllu landinu eða jafnvel öllum heiminum.

Í hvert skipti sem ég hugsa um þessa reynslu er ég svolítið stoltur af sjálfum mér. Ég get ekki útskýrt hvers vegna, en ferlið við að innleiða verkefnið veitti mér einfaldlega mikla ánægju og verðlaunin voru aukabónus. Að auki var ég ánægður með að ég gat leyst fyrir bekkjarfélaga mína vandamál sem eyðilagði líf þeirra á hverjum degi. Einn daginn kom einn af nemendunum til mín og sagði: „Kerfið þitt er mjög þægilegt. Ég var í sjöunda himni!
Ég held að jafnvel án nokkurra verðlauna myndi ég vera stoltur af þróun minni fyrir þetta eitt og sér. Kannski var það að hjálpa öðrum sem veitti mér slíka ánægju... almennt séð elska ég verkefni.

Það sem ég vonaðist til að ná með þessari grein

Ég vona að með því að lesa þessa grein til enda hafiðu fengið innblástur til að gera eitthvað sem gagnast samfélaginu þínu eða jafnvel sjálfum þér. Ég hvet þig til að nota kunnáttu þína (forritun er vissulega ein af þeim, en það eru fleiri) til að breyta veruleikanum í kringum þig til hins betra. Ég get fullvissað þig um að ekki er hægt að bera saman þá reynslu sem þú munt öðlast í ferlinu við neitt annað.

Það getur líka opnað slóðir sem þú bjóst ekki við - það kom fyrir mig. Svo vinsamlegast gerðu það sem þú elskar og settu mark þitt á heiminn! Bergmál einnar röddar getur hrist allan heiminn, svo trúðu á sjálfan þig.

Hér eru nokkrir tenglar sem tengjast verkefninu:

Heimild: www.habr.com

Bæta við athugasemd