más példa, de pl. rendszeres UI redesignok, ikonok cserélgetése és átszínezése is lelassítja a munkát
Ezt speciel sosem tapasztaltam. Mondjuk én mindig MVC-t implementáltam, így a megjelenítés átvariálásához csak egy sablont kell pofozgatni, programozni egyáltalán nem is kell. (Azzal egyetértek, hogy tényleg idegesítő, amikor folyton átvariálják az UI-t és hogy mennyire gyakori probléma ez, pont ezért is használtam mindig is sablon alapú megjelenítést, hogy ezzel ne szivassam meg magam.)
A fiatalok meg úgyis a VS Code-ban nyomkodnak, talán az elvesz a bonyolultságból, meg ott az AI is, ami ebben jó.
Hát igen, a mai fiatalok már semmit sem értenek a dolgok működéséből sajnos, csak kopipészt huszárok, a többit meg oldja meg nekik valami tool. Ez egy darabig megy, amíg magával a tool-al nincs probléma.
Nem különítem el a célt és az eszközt, mert nem válogathatom meg az eszközt.
Bizonyára ismered azt a mondást, ha valakinek kalapácsa van, az mindent szögnek néz. Még a csavart is.
Ha egy projekt gitben van és én azon dolgozom
Ez azért sántít picit, mert mára gyakorlatilag minden git-ben van, minden más scm megoldás kihalt. (És jó okkal, a git belseje remekül van kitalálva, technikai értelemben kenterbever minden más megoldást, ez nem vitás.) Szóval ha akarná az ember, akkor sem választhat verziókezelőt, mert nincs már más alternatíva.
Szerintem egy elosztott verziókezelőt nem lehet olyan egyszerűen megvalósítani, hogy kalapácshoz hasonlóan egyszerű legyen használni.
Biztos vagyok benne, hogy lehetne. A git a motorháztető alatt zseniálisan van megírva, az egyetlen baj vele, hogy direktben vezették ki a belső lelkivilágát a kapcsolókra, ahelyett, hogy a felhasználás szempontjából fontos kapcsolók lennének, amiket a git programnak kellene lefordítania libgit hívásokká, figyelembe véve a repó aktuális állapotát.
Jelenleg a git olyan, mintha UNIX parancsok helyett lenne egyetlen shell-ből hívható "syscall" program, aminek hexában kellene átadni a paramétereket. Mivel direktben van a belső világa a kapcsolókra leképezve, ezért egy nagyon fontos absztrakciós szint teljesen hiányzik belőle, erre értem, hogy ez a program hibája.
Megpróbálom egy hasonlattal érthetőbbé tenni, mire gondolok: ott az apt. Az "apt update" frissíti a listát (függetlenül attól, hogy mi van a motorháztető alatt, lokális CD repó vagy hálózat, ftp vagy https), az "apt install" pedig telepít (függetlenül attól, hogy meta csomag-e, konkrét csomag-e, mennyire kacifántos a dependency, stb.). A lényeg az, hogy a felhasználás szempontjából közelítve tervezték meg a kapcsolóit (ezért azokat tényleg bárki 10 másodperc alatt képes megjegyezni), és azok nem is változnak attól, hogy mi az épp aktuális konfig vagy állapot, na ezt a git-tel is simán meg lehetne tenni.
Konkrét példával: állítsuk be azt, hogy a "git push" csak jelszót kérjen, felhasználónevet ne! Ezt ssh kapcsolat esetén egyáltalán nem sikerült megoldanom. Https esetén az url-be rakható felhasználónév a szervernév elé, de ez csak akkor működik, ha az url egyébként ".git"-re végződik (legalábbis github-on és gitlab-on). Biztos megvan a belső lelkivilágából eredő oka ennek, na de ezt a git parancssornak el kellene fednie, ugyanis rohadtul nem intuitív, hogy az url felhasználónév részét kiterjesztéstől függően parszolja csak.
git clone https://user@gitlab.com/user/repo - be fogja kérni a git push a felhasználót git clone https://user@gitlab.com/user/repo.git - csak jelszót kér majd a git push
Arra én is láttam példát a környezetemben, hogy mint fentebb, valaki aliasokkal számára logikusabbá teszi a parancsokat, az is egy jó módszer.
Sajnos nem ilyen egyszerű, mert a git-nél ismerned kell a repó állapotát, és attól függően kell különböző parancsokat kiadni (konkrét példa, a legelső "git push"-nak több kapcsolót kell megadni, mint egyébként, azaz a program helyett a fejlesztőnek kell odafigyelnie a repó belső állapotára, és attól függően más-más kapcsolókat használnia).
Ettől függetlenül tényleg nem lenne hülyeség ezeket a git cheat sheet-eket egy alias dotfájlba összegyűjteni, amit csak source-olni kell a bash profile-ból. Régen sok aliast használtam, de aztán valamiért leszoktam róluk. Igazából nem tudnám megmondani, miért, pedig ha mindent nem is lehet megoldani velük, tényleg elég sok esetet lefedésére alkalmasak. Lehet össze is dobok egy alias dotfájlt.