9. Sep 2021 |

IDEA shortcuts

ctrl+shift+F10 – execute current file
ctrl + alt + M – extracts code to method
ctrl + alt + V – introduce variable
ctrl + B – move into method and back
alt+F7 – who is using variable
ctrl+alt+T – surround…

Debugger F8 – step over
Debugger F9 – resume program

Useful

Breakpoint → add condition

6. Sep 2021 |

URL shortener (free) using only PHP8 and SQLite3

I wrote a small, easy to deploy URL shortener. As it is written in PHP and uses SQLite3 as a data storage then no installation is needed. Just drag and drop the files through FTP to your host, configure the .htaccess file and you are ready to go.

Files are available on github – github.com/robineero/php-url-shortener. There is also database already prepared and SQL script available. Feel free to modify everything according to your needs.

2. Sep 2021 |

VPS price comparison – student in search of the cheapest

My main use of VPS is that i need to keep my dev MS SQL, PostgreSQL and MariaDB servers somewhere. The cheapest Hetzner VPS has done the job though for simple CRUD tasks. But bigger appliations (like WooCommerce) the Digital Ocean’s smallest droplet tends to become slow. Therefore I would not recommend anything below Hetzner’s CPX11 2 vCPU and 4GB of RAM.

The cheapest end of VPS

Minimum requirements: 1vCPU and 2GB memory. Looking only for Linux machines.

AWS, Google Cloud, Azure and Alibaba Cloud are much more expensive and more difficult to use for this simple purpose of just hosting few Docker containers with capped (end therefore predictable) pricing.

If you need 2 vCPU then starting price at the moment is shown in the table below.

Digital Ocean $15
Hetzner CPX11 € 4.75
22. Aug 2021 |

Tervisesport ja Brasiilia jiu-jitsu

TL;DR: Tulge kĂ”ik trenni 🙂 KRVA/Brazilian Top Team (Kristiines, kus minagi kĂ€in) vĂ”i Estum jiu-jitsu (Tondil). Liituge algajate grupiga ja midagi kaotada ei ole.

Kuna ma veedan terved pÀevad arvutiga töötades, siis tundsin, et mingit liikumist on kehale juurde vaja. Praegu olen jÀÀnud pidama Brasiilia jiu-jitsu juures (tulge trenni!).

Brazilian Top Team Estonia treeningutega saab liituda kogu aeg ja grupid on avatud kĂ”ikidele tasemetele alates pĂ€ris algajatest. Vaata ajakava kodulehel. PĂ€ris algajad on BASIC COURSE (gi’d ei ole) ja natuke edasijĂ”udnud on BEGINNERS & FUNDAMENTALS (gi seljas).

Vaade Instagrami hashtag’ist #bttestonia

Esimene kord alustasin tĂ€pselt aasta tagasi (2020 augusti lĂ”pus 3D treeningus) aga see jĂ€i kooli ja koroona tĂ”ttu katki. NĂŒĂŒd suve alguses (juuni 2021) alustasin uuesti KRVAs (mis on mu elukoha lĂ€hedal). Ala meeldib ja sobib mulle jĂ€rgmistel pĂ”hjustel:

  • Vigastuste oht on ĂŒsna vĂ€ike. Enamus tegevust toimub matil pikali olles (seega kuskilt pahasti kukkuda ei saa), lööke ei ole ja heiteid ei ole.
  • “MassaaĆŸ” ja “venitused” ehk siis keegi sisuliselt masseerib oma Ă”la, puusaga, pĂ”lvega, kannaga, rindgerega, randmega vms kogu keha ja trenni kĂ€igus saab ka keha ilusti lahti venitatud 😀 Kontoritöötajale ideaalne.
  • Trenn on lĂ”bus, saab tugevamaks ja paremasse vormi.

Minu jaoks on see bjj treening tervisesport, mitte nĂ€iteks vĂ”istlussport. See on miski, millega pean arvestama nii enda arengut hinnates kui ka trennis kĂ€itudes. Et ei vĂ”rdleks enda arengut mĂ”ne noore competitive fighter’iga (vĂ”ib mĂ”juda demoraliseerivalt, kui areng ei ole sama kiire) vĂ”i ei lĂ€heks nende tempoga/koormusega kaasa (et vĂ€ltida vigastusi).

Mida pean meeles pidama

Kuula keha

Kuna ma olen juba vanem inimene (~35), siis pean keha kuulama ja ei saa pĂ€ris noortega sama hullult rapsida. Kui saan vigastada, siis see paraneks ilmselt kauem. Samuti vĂ”tab (arvatavasti) kauem treeningute vaheline taastumine – eriti, kui on mĂ”ni raskem tund.

Kuigi matil saaks olla rohkem kui 2x nĂ€dalas ning iga kord oleks vĂ”imalik pingutada ka kĂ”vasti rohkem, siis pean endale ise ĂŒtlema, et peaksin piiri. Taastumise aeg vĂ”ib olla vabalt pikem ja trennipĂ€evade vahel ei pea veel ise avatud matil iga hinna eest peale tegema.

ÜhekĂŒlgne sport

“ÜhekĂŒlge sport” on bit ajast, kui rulaga sĂ”itsin ja pĂ”lv pidevalt valutas. Siis arst ĂŒtles, et see on “ĂŒhekĂŒlgne sport”.

TagantjĂ€rgi see tundub loogiline ja pĂŒĂŒan nĂŒĂŒd ka bjj-le midagi “ĂŒldisemat” juurde teha. Mingisugune ÜKT (ĂŒldkehaline treening) oleks tore aga kuna Kristiines ma ei midagi sellist leidnud nagu Tallinna Spordihalli ÜKTd, siis olen viimasel ajal pĂŒhapĂ€eviti ĂŒhe ĂŒldkehalist liikuvust arendava rĂŒhmatrenni nĂ€dalas veel juurde lisanud. Natuke saab jĂ”udu, tasakaalu ja ĂŒldist lihastoonust.

Brazilian Top Team Estonia treeningutega saab liituda kogu aeg ja grupid on avatud kÔikidele tasemetele alates pÀris algajatest. Vaata ajakava kodulehel ja ilmu lihtsalt kohale.

SĂŒgiseks on algkursustele registreerumine juba avatud. Arvan, et tuleb see 3 kuu pakett vĂ”tta ja ega siit enam pÀÀsu ei ole. Treener rÀÀkis viimases trennis, et varsti hakkame gi‘ga treenima, nii et ees on muutuste aega ja tuleb see ka endale hankida.

Kuidas see spordiala vÀlja nÀeb

Kui gi on seljas, siis Brasiilia jiu-jitsu vĂ”ib trennis vĂ€lja nĂ€ha umbes selline lĂ”bus mĂŒramine.

Naiste roll ilma gi-ta vÔib olla nÀiteks selline. Gezary Matuda on BJJ blackbelt, 5x maailmameister.

Kui tahad veel rohkem vaadata, siis nĂ€iteks Youtube’i kanalid Pedigo Submission Fighting, Polaris Professional Jiu Jitsu Invitational, FloGrappling, Eddie Bravo 10th Planet Jiu-Jitsu on lahedad.

26. Jul 2021 |

How to declare jQuery variables

var $allParas = $("p"); – When a variable starts with a $ sign, like in the following line of code, it’s a convention that developers use to indicate when a variable is storing a jQuery collection. Which means that you don’t have to do it, but you can if you’d like.

Many developers like to prefix the names of variables that store jQuery collection objects with a $, because it makes it obvious that they can call jQuery methods on them. It’s particularly useful if your code has a mix of variables that store jQuery collections and variables that store DOM elements.

Also acceptable to use var pic = $("#picture"); variable which stores a jQuery collection object. That collection does indeed contain a reference to the selected DOM element object, but it also contains many other properties and methods.

Source: Khan Academy

29. Jun 2021 |

10. tööpÀev praktikal ja muidu elust

Kuidagi peab selle enda jaoks meeldejÀÀvaks tegema. TÀna juhtus nii palju, et praktikal esimene task enamvÀhem lÔpetatud, esimene pull request, sain esimesed kommentaarid enda koodile ja jÔudsin teha esimesed parandused.

Natuke sisseelamise aega on veel vaja, et paremini aru saada sellest tiimi vibe’ist ja kui tĂ”siselt tĂ€pselt peaks töösse suhtuma. Vahepeal mulle tundub, et ma vĂ”tan kĂ”ike liiga tĂ”siselt ikka.

Üle nĂ€dala jĂ”udsin sel olulisel puhul bjj trenni ka. Varasemate jalakrampide pĂ”hjuseks vist kompressioonsukad (mida peamiselt hĂŒgieeni pĂ”hjustel olen kasutanud). Soojenduse ajal lĂ€ks sÀÀrelihas juba krampi (kuigi mul eales pole mingit sellist probleemi olnud). VĂ”tsin sukad Ă€ra ja kuni lĂ”puni null probleemi. MĂ”nus trenn oli, kui krampe ei ole ja iiveldama ka ei hakanud 🙂 VĂ”hma natuke juba tuleb aga jĂ”udu ei ole piisavalt.

Muus osas sellist kodus passimist vĂ€ga pĂ€eva lĂ”ppu ei jÀÀ. Kuna sĂŒgisel tuleb C# uuesti teha, siis olen KĂ€veri slaide Sphinxi ĂŒmber teinud, et sellest midagi pydoci laadset tekiks. Selline teistele materjali kokku tĂ”stmine (ja tĂ€iendamine) paneb ennast ka rohkem materjali lĂ€bi töötama.

16. Jun 2021 |

3. pĂ€ev IT-arenduse praktikal – miks sa seda teed

Kuigi praktikaga kĂ”ige vahetumalt seotud ained said lĂ€bitud vahetult enne praktikat (ehk siis teadmised peaksid olema maksimaalselt vĂ€rsked ja ajastus tĂ€pselt Ă”ige), siis tĂ¶Ă¶ĂŒlesannete ja teadmiste vahel on ikka korralik tĂŒhimik 🙂 Kogu asjale ei aita eriti kaasa, et ma olen iseloomult suur muretseja.

Miks ma seda teen

Selleks, et ma pÀris kurvaks ei muutuks pean endale aegajalt meelde tuletama kaht asja:

  • Ma ei tee seda raha pĂ€rast. Ma oleksin olnud nĂ”us praktikal ka tasuta osalema ja raha tĂ”esti ei ole minu jaoks mitte mingi motivaator. Ma olen praktikal ainult selleks, et saada neid teadmisi ja oskusi, mida ma tahan saada ja mulle tundub, et ma mulle antakse neid lahkelt 110% ja rohkemgi veel 😀
    Asjaolu, et praktika on tasustatud, pigem isegi natuke segab, kui ma mĂ”tlen, et mu tunnil on hind (mis billitakse kellelegi ilma et ma oleks vĂ”imeline oluliselt kasulik olema) ja lisaks kulutan ma oma juhendajate töötunde. Ehk siis praktikandina ma olen pĂ€ris kallis pidada. 😞
  • Ma ei pea kellelegi muljet avaldama. Ehk siis mu oskused on need mis nad on, ma ei oska paljusid asju, paljudest ma pole kunagi kuulnud ja paljusid ma pole kunagi nĂ€inud/teinud.

Kolme praktikapÀeva peamine Ôppetund vÔiks olla see, et tehniliselt on protsessid palju keerukamad kui ma arvasin (kus on server, missugune on repo, kus deploy, kuidas projekti setup ja sÔltuvused vÀlja nÀevad jne) ja igapÀevaselt kliendile lahendatavad pÀriselu probleemid on olemuselt oma vÀga keerukad.

Update 4. pĂ€eva lĂ”pust: Edutunde tundmine on ka vĂ€ga oluline. TĂ€na sain ĂŒhe vĂ€ga pisikese tĂŒki tööle ja ma arvan, et sellised pisikesed edulood on vĂ€ga olulised. Selle esimese tulekut andis kĂŒll oodata aga asi areneb.