Kažkokią įrankių dėžę turime mes visi. Merginoms tai rankinukas su kalnu smulkmenų be kurių jos gyventi negali, vaikinams gal būt normalus įrankių komplektas kuris padeda remontuojant dviratį ar automobilį. O programuotojams tai yra rinkinys programinių įrankių (softo) kuris leidžia padaryti tai ką reikia.
Kaip rimtai žiūrite į savo darbo įrankius? Ar galvojate, kad tai su kuo dirbate gali įtakoti darbo rezultatą? Kaip apskritai žmonės renkasi įrankius?
Taigi atėjo laikas dar vienam įrašui ir šį kartą pagalvojau, kad visai neblogai būtų parašyti apie tai kokius įrankius naudoju šiuo metu arba kokių jau nebenaudoju ir kaip jie atsirado mano gyvenime.
Tai apie kuriuos įrankius čia kalbame?
Na apie eilinius įrankius manau galite daugiau sužinoti kokioje nors įrankių parduotuvėje. O kažkokio programuotojo rašomame dienoraštyje turbūt nesitikėtumėte rasti nieko apie kokias gudrias reples ar dar kažką tokio. Tai esate teisūs – aš kalbėsiu daugiau apie programuotojo įrankius.
Kaip viskas prasideda?
Problema – yra toks daiktas, kuris priverčia Pasaulį suktis. Kaip tik prisiminiau vieną filmą apie karą. Įsivaizduokite problemą – vyksta karas ir paštu ar telegrafu keliauja užkoduotos žvalgybos žinutės. Na turi tu tą žinutę, bet perskaitęs nieko nesupranti. Tai problema. Ir tam kad ją išspręstų žmonės sugalvojo kad tam galima pritaikyti kompiuterį. Na taip, seni laikai tai ir kompiuteris atitinkamai senas, vienas iš seniausių. Bet esmė – problema išspręsta įrankio pagalba.
O šiandien mes esame apsiginklavę kalnu įrankių kurie padeda išspręsti visokias mažesnes ar didesnes problemas. Programavimo įgūdžiai yra toks dėkingas dalykas, leidžiantis pačiam pasigaminti savo įrankį. O kartais taip nutinka, kad tie įrankiai tampa naudingi ne tik vienam žmogui, bet tūkstančiams. Taip gimsta IT verslas. Atrodo elementaru – moku programuoti, pagalvoju ir padarau įrankį kokį, kuris būtų labai geras ir patrauklus kitiems ir jau esu turtingas. Bet…
O kur problema?
Įrankis kaip ir nereikalingas jei jis neišsprendžia problemos. Tai pradėti reikia nuo to kokią problemą mes norime išspręsti. Bet ir tai, kad išspręsime kažkokią problemą dar negarantuoja, kad jau būsime turtingi. Beklausydamas podcastų girdėjau, kad ne visas problemas apsimoka spręsti.
Tai kaip žinoti ar šita problema verta dėmesio?
Yra keli kriterijai kurie padeda šioje vietoje:
- problema turi būti paplitusi (aktuali tikrai ne vienam, kuo daugiau tuo geriau)
- problema turi būti skaudi – paprastas būdas kaip patikrinti ar tai skaudi problema paklauskite ko nors kiek sumokėtų arba sutaupytų jei to daryti nebereikėtų?
Yra ir kitų kriterijų, bet jei jau šituos du atitinka ta problema apie kurios išsprendimą galvojate jau verta pagalvoti. Toliau reikia žiūrėti kiek bandymų išspręsti tą problemą jau buvo ir kaip jiems sekėsi – gal jau yra pakankamai neblogas sprendimas. Bet net ir egzistuojantis sprendimas dar neturėtų atbaidyti nuo bandymo padaryti dar vieną sprendimą – gal būt galutinė sprendimo kaina žmogui gausis per pus mažesnė ar dar geriau darys tai ką turėtų daryti…
Tai apie įrankius gal jau
Aš visada stengiuosi rašyti daug nesiruošdamas ir būna, kad mintys nuneša mane į šoną nuo esminės temos… ir aš daug negalvodamas pasileidžiu pakeliui – kartais tokie pamąstymai duoda naudos man pačiam daugiau nei pašnekovui ar skaitytojui. Tai šiuo atveju pabandžiau pagalvoti kaip tie įrankiai gimsta ir kaip pačiam galima būtų iškepti kokį vieną kartu užsidirbant vieną kitą monetą.
Mano kasdieniai įrankiai (tik tie, kuriuos naudoju dabar):
- Mac/Linux/Windows, Apache/Nginx, MySQL, PHP, Laravel, Lumen, Yii
- JavaScript – Vue.js, TypeScript, Node
- CSS – Bootstrap, Tailwind, SASS
- Kita: Vagrant, VirtualBox, Proxmox, GitLab, Webpack, vue-cli, GitUp, VSCode su daugybe papildinių…
Na reikėtų gal dar šiek tiek laiko skirti ir surinkti visus girdėtų/naudotų įrankių logotipus į vieną krūvą ir reikėtų dar padaryti reviziją kartas nuo karto šitam įrašui ir pažiūrėti kaip mano įrankių dėžė plečiasi. Jei nenustosiu rašyti šio blogo būtinai papildysiu ir parašysiu pratęsimą po to kai bus ką naujo papasakoti.
Vieta reklamai – pasidalink kokius įrankius naudoji tu.