Bene e benvenuti su GITBAR, sorpresa, sorpresa, sorpresa, una puntata speciale, perché, indovinate un po', in un modo o nell'altro ci siamo tutti, ammutinati e host.Oggi parleremo dei nostri setup di sviluppo, dell'hardware che usiamo e del software di cui non possiamo fare a meno per il nostro lavoro quotidiano.Scoprirete i più intimi segreti della scheda madre di Dr.Blaster e cosa nascondono gli di Andrea, Carmine, Leonardo, Mattia, i miei e ovviamente quelli del nostro Brain Repo.A proposito, lo so che vi state chiedendo perché sta parlando un ammutinato e non il nostro Brain Repo.Beh, questo ve lo spiega direttamente lui, dopo la sigla.Benvenuti su GitBar, il podcast dedicato al mondo dei fullstack developer.I mezzo artigiani, i mezzo artisti, che ogni giorno infilano le mani nel fango per creare, nel modo più efficiente possibile, quei prodotti digitali che quotidianamente usiamo.Eccoci qua, eccoci qua.Io vi chiedo scusa per l'audio, ma mi trovo in una situazione un po' particolare.sono in vacanza e registrare un episodio di Geekbar mi sembrava impossibile quindi è tutto sulle mani degli ammutinati però volevo dare anche il mio piccolo contributo insomma a quello che è l'episodio e volevo un po' raccontarvi quello che è il mio setup volevo iniziare a dire che utilizzo Brave so che è abbastanza controversa la storia dell'autore del proprietario di Brave ma comunque è uno di quei browser che mi fa molto comodo specie per le sessioni anonime e la funzione di sessione anonima con Tor out of the box che devo dire che è molto comoda con Notion cos'altro utilizzo? ha una funzionalità importante che utilizzo con Brave sono i gruppi di tab quando lavoro solitamente tendo a dare il nome del gruppo di tab a un task di gira, a un ticket di gira e dentro a quel gruppo ci inserisco tutto ciò che riguarda quel ticket solitamente lavoro contemporaneamente due o tre ticket per cui ho sempre quei due o tre gruppi tra le finestre del browser, belli organizzati e quindi è tutto super super ordinato.Un altro tool che utilizzo molto spesso è Grammarly che mi è molto comodo per scrivere dei messaggi in inglese senza fare grosse fesserie.In realtà mi da una mano nelle correzioni e non nascondo che particolarmente utile tra i plugin del mio browser c'ho una cosa che è la cosa più interessante che è Noticon che è un plugin per Chrome sviluppato dal buon Luca e che mette semplicemente un un numeretto accanto all'icona della mail che mi dice insomma in qualche modo le mail che devo ancora leggere altri tool che utilizzo senza dubbio devo insomma parlare di Yabai, Yabai è un window manager che ho scoperto troppo tardi ahimè ma credo che sia la cosa più bella che esista per Mac perché io sono sempre stato abbastanza incasinato con le finestre su Mac e ricordo che quando migrai tantissimi anni fa a Apple uno dei problemi che ebbe fu proprio questo suo gestire le finestre in modo molto libero però ho sempre avuto problemi di spazio facendo così e problemi di spazio che mi hanno portato poi all'acquisto di due monitor 28 pollici da utilizzare in contemporanea e non erano mai sufficienti pur riducendo aumentando la risoluzione per fare le cose sempre più piccole con Yabai ho trovato un modo ordinato per gestire le finestre e soprattutto un modo rapido per saltare da una finestra all'altra.Questa cosa è fantastica infatti ho configurato Keyboard Maestro per permettermi di giampare tra una finestra e l'altra con una combinazione di tasti, quindi riesco a passare dal mio editor di codice, in questo caso Visual Studio Code, al mio browser e tornare indietro in modo molto rapido senza sollevare le mani dalla tastiera e questa cosa devo dire che mi ha senza dubbio ridotto i tempi di sviluppo un altro tool che utilizzo con Yabai che di per sé devo dire che ha già il suo sistema di gestione di shortcut si chiama SKHD ma io ormai avevo Keyboard Maestro installato diciamo che è pesante, impegnativo creare una shortcut con Keyboard Maestro, ormai ce l'avevo installato perché installare un altro tool quindi ho configurato quello un altro tool che utilizzo è Ubersig più facile da usarsi che da pronunciarsi è diciamo un tool che permette di scrivere in javascript, html, css dei widget da utilizzare sul vostro desktop io lo uso perché con quello ho un elemento che si chiama polybar che mi crea una barra nella parte alta del mio desktop, in quella barra io ci ho messo praticamente tutto dai vari orari compresi gli orari dei miei colleghi nelle time zone differenti alla batteria residua, alla finestra o per meglio dire alla schermata, al desktop virtuale che ho quindi che ne so la schermata sviluppo piuttosto che la schermata team communication ed è molto fico provatelo si chiama ubersi esict e il plugin che utilizzo si chiama polybar che mi crea una barra in alto che poi ho customizzato con i miei script in javascript attenzione che però per Yabai ho dovuto fare un po' di trick per permettere di mettere il bordo della schermata, della finestra attiva in quel momento in realtà ci sono due modi per farlo uno installare un programma un altro tirare giù il sistema Integrity Protection di Mac quindi se avete bisogno di questo potete pur contattarmi nel gruppo Telegram e vi potrò in qualche modo dare una mano.Un altro tool che utilizzo tutti i giorni è iTerm con ZSH fighissimo un terminale così è assolutamente utile tra l'altro ho customizzato ZSH per mostrarmi nel prompt quando entro il branch nel quale sto sto lavorando e che ne so se ci sono delle modifiche da stagiare su git questa cosa mi è molto comoda perché a colpo d'occhio io so se devo fare una git add e una git commit su quella cartella cos'altro aggiungere? e beh questo è diciamo il mio setup principale quando lavoro e null'altro allora vi lascio nelle curiosità, nelle parole dei miei colleghi di avventura Allora, anzitutto vi parlo con questa voce suadente e sexy perché mio figlio dorme nella stanza di fianco e non ho nessuna intenzione di svegliarlo.Detto questo, in realtà, il mio setup è probabilmente il più noioso di tutti quelli della redazione di Gitbar, nel senso che io lavoro su un MacBook Pro Late 2013 quindi l'ultimo modello prima della Touch Bar che ho appunto dal 2014 più o meno quindi comincio a mostrare i segni dell'età e come dico spesso sul gruppo Telegram non vedo l'ora che annunci no il 16 pollici M1 per fare finalmente un upgrade Però al di là di questo il mio setup è estremamente vanilla, nel senso che ovviamente lavorando in Kotlin uso Intel DJI ma senza nessun plugin particolare, ho giusto forse, vabbè ovviamente il plugin di Kotlin, ma a parte quello ho forse giusto il plugin di Kotest, che è l'equivalente kotlin idiomatico DJ unit, però non ho nessun quirk strano dell'IDE, ho ovviamente il dark mode sopra ogni cosa e faccio uso intensivo con il resto del mio team che è remoto di codewithme che è il tool di intel dj per fare per programming remoto.Oltre a questo però uso cose assolutamente standard, nel senso che uso iterm come terminale e zsh come shell assolutamente nella versione più basic possibile, nel senso che non mi sono neanche mai sbattuto a configurare il prompt.Uso sublime text ancora come editor dei file basic perché ci sono affezionato perché ho pagato la licenza tempori busillis perché lo usavo tanto e ci sono affezionato ho avuto un breve flirt con atom tempo fa ma non ci siamo capiti e sono tornato subito su blind text uso visual studio code poco perché facciamo un pochino di typescript per la parte di front-end ma anche lì vanillissimo, non ho nessun plugin esoterico installato e uso tantissimo Chrome ovviamente.Se dovessi dire in realtà lo strumento software a cui sono più affezionato tra quelli che uso nella mia vita lavorativa quotidiana probabilmente è Datadog, che non è una cosa che sta sulla mia macchina però è una cosa che mi risparmia una quantità di tempo spropositata in decine di cose diverse tipo ad esempio sapere come vanno le nostre applicazioni, sapere al volo cosa sta succedendo quando esce un allarme su slack, avere diverse dashboard che mi dicono appunto in che stato è il nostro ecosistema e se c'è qualcosa che non va e devo rendermene conto al volo quindi quello probabilmente è uno dei software tolti appunto lì della shell e il browser in cui passo più tempo e vabbè poi ovviamente ho le cose che hanno tutti quindi telegram whatsapp e quant'altro e fondamentalmente basta non faccio altro sul mio mac la mia vita è abbastanza abbastanza a basic in questo senso la mia vita da sviluppatore allora il mio setup il mio setup è qualcosa che ho costruito con gli anni ed è frutto di tantissime iterazioni e tantissimo diciamo sperimentare cose nuove, romperne altre ed è qualcosa che comunque mi piace variare.Sono una persona che tende a non essere, a non essere e a non voler diventare particolarmente addicted di uno strumento in particolare mi piace comunque rimanere abbastanza fluido con i vari strumenti un po' perché mi è già capitato di diventare dipendente da alcuni strumenti e quando non ce l'ho più avuto insomma è stato abbastanza un dramma quindi tendo a variarli quanto più possibile.Diciamo che i miei punti fissi sono sostanzialmente che lavoro con Linux e uso principalmente Arch e Ubuntu con il particolare Xubuntu che è sostanzialmente la diciamo una distro con xfce come desktop environment di default.Diciamo anche con Arch uso xfce, mi ci trovo abbastanza bene ed è soprattutto molto molto molto leggero.Poi come magari avete avuto modo di capire dalle scorse puntate, un po' dal gruppo Gitbar che mi invito comunque a a seguire.Io sono un po' un amante di queste interfacce grafiche un po' retro, minimali e quindi con XFCE mi ci trovo tanto.Dal punto di vista grafico uso questo tema che si chiama Chicago 95 che è sostanzialmente un pack per trasformare XFCE per trasformare il tema di XFCE in un tema che sia quanto più possibile al vecchio Windows 95 quindi con le varie barre con le applicazioni con i temi dedicati come il file manager oppure il menu il terminale insomma è una cosa abbastanza carina è un po strano da utilizzare specialmente quando si fa un po screensharing però è una cosa che mi piace abbastanza mi fa sentire a casa e lo e lo uso anche spesso con i3 quindi la coppiata xfce3 questa è una cosa che spesso si sottovaluta nel senso che ci sono molte persone che non vogliono usare i3 stand alone perché ha comunque bisogno di una certa configurazione perché magari è un po' troppo minimale.i3 è un window manager quindi lo potete utilizzare in concomitanza con quasi tutti i desktop environment.io sono uscito ad utilizzare sia con sia con grom sia con xfce e sia con kdi plasma quindi senso potete integrarlo in quasi tutti i desktop environment se vi piace il flavor tiling poi ma questo era solo un piccolo cappello diciamo dal punto di vista operativo i software che uso spesso sono ovviamente il terminale.Nello specifico utilizzo Terminator che è sostanzialmente un terminale con cui mi ci trovo bene, ha molti interessanti shortcut e diciamo rispetto anche ai vari terminale multiplexer che ci sono in giro è quello con cui mi ci trovo di più ed è quello che riesco anche a customizzare meglio a livello di temi, trasparenze e cose così.Diciamo è più per un fatto di affezione che sia perché effettivamente è meglio di un altro terminale.Poi per quanto riguarda gli editor utilizzo o Visual Studio Code, sviluppo principalmente con Go ed il tooling di Go per Visual Studio Code è fatto veramente bene quindi principalmente uso quello e per le front-end insomma anche Visual Studio Code con le varie estensioni canoniche, Prettier, e se l'int e qualche estensione per avere qualche snippet con react o view diciamo che tendo ad essere abbastanza minimale con le estensioni viso a studio code è uno strumento che può fare veramente tanto ok quindi avete effettivamente anche l'estensione che vi può fare il caffè c'è l'estensione che vi aiuta a gestire un cluster kubernetes c'è l'estensione che vi aiuta a gestire i container docker io tendo a fare con l'hacker solo ciò che fa l'hacker quindi effettivamente editare un file, aprire magari il tooling per fare l'autocomplete, il linting ed il formatting ma tutte le altre operazioni preferisco farle con il terminale e non con il terminale di visual studio code perché onestamente ci trovo abbastanza male poi per il browser utilizzo firefox, utilizzo firefox da tantissimi anni apprezzo molto il fatto che sia multi profile quindi potete fare diversi profili di firefox e sono sostanzialmente delle istanze separate con i loro dati con la loro cache con la loro con la loro history, con il loro password, insomma, sono effettivamente, diciamo, come se fossero dei browser separati.Questa cosa qui vi permette di avere sostanzialmente un'istanza di Firefox per il vostro lavoro, dove magari siete loggate con il vostro account dell'azienda, sulla posta elettronica della azienda, su qualche gestionale, su gira, insomma, redmine, un po' quello che vi pare e avere invece un account, un profilo scusate, che è destinato alla vostra navigazione personale, quindi dove non ci sono account di lavoro, dove non viene condivisa la cronologia, dove insomma potete tener separati questi due mondi e tener separati questi due mondi è una cosa che mi piace tanto anche perché spesso mi trovo con autorizzare il compito personale o il computer di lavoro per lavorare o fare cose personali insomma quindi diciamo tendo comunque ad avere una separazione netta tra questi due mondi sullo stesso computer per quanto sia possibile.Poi una cosa che mi piaceva menzionarvi è Franz oppure il suo fork Ferdi che sono sostanzialmente degli aggregatori di client web di messaggistia quindi in un solo programma potete avere Whatsapp web, Telegram web, Slack, insomma un po' quello che vi pare o potete anche avere diciamo il vostro sito preferito accessibile in una sola schermata.Ovviamente stiamo parlando di un tool che è abbastanza vorace di RAM e cpu quindi diciamo se avete magari un computer più vecchio 8 può essere diciamo la scelta non proprio ottimale per tenere più servizi insieme ovviamente se stiamo paragonando ad esempio la sessione di telegram con telegram web all'interno di ferdi oppure france e l'applicazione nativa insomma di desktop di telegram web ovviamente stiamo veramente parlando di di mondi totalmente diversi a livello di risorse molto più leggera l'applicazione nativa ma se avete comunque diversi account e volete gestirli insieme può essere un modo per non impazzire ricordando comunque che una volta quando pidgin era un po più in voga si poteva anche fare con un peaking in maniera abbastanza smooth.Per quanto riguarda gli IDE veri e propri io tendo a non utilizzare nessun IDE un po' perché non mi serve.Ho provato ad utilizzare GoLand che è sostanzialmente l'IDE per Go della JetBrains super comodo molto molto potente ma lo vedo comunque super bloated per quello che ci devo fare e quindi tendo a non utilizzarlo.Un'ultima chicca per quanto riguarda G-Editor in passato l'utilizzavo molto molto di più specialmente quando facevo tanto Ruby ed è Space Emacs che è sostanzialmente Emacs o Space Emacs insomma vede un po voi la pronuncia più corretta che è sostanzialmente Emacs ma con i binding di Vim ed altre piccole chicche.Può sembrare un po' una bestemmia per i puristi sia di Vim sia di Emacs ma onestamente mi ci sono trovato bene, è una bella community e ci sono davvero tanti tanti tanti plugin anche diciamo per i linguaggi più un bel stream come può essere già TypeScript, Go e Ruby.Un'ultima cosa per quanto riguarda le note recuperando il filone che comunque insomma sono abbastanza un amante di queste UI un po' più retro, utilizzo Zim Desktop Wiki che è sostanzialmente una desktop wiki, un'applicazione molto molto leggera, appiazione molto molto minimale, non è sicuramente fancy come Notion, come Bear Notes su Mac oppure come Boost Notes, ma è qualcosa che fa quello che deve fare, ci trovo molto bene ed è sostanzialmente plain text, quindi potete versionarlo, potete metterlo su dropbox insomma un po' quello che vi pare.Un'ultima cosa che forse può essere utile a qualcuno è un'applicazione che sostanzialmente vi permette di...non so nemmeno come spiegarlo in realtà perché non vorrei dire è il clone di postman perché comunque hanno sono molto simili ma hanno anche filosofie abbastanza diverse ed è insomniare client che non so se ha già consigliato qualcuno dei miei colleghi ammutinati ma probabilmente sì ed è sostanzialmente un client per fare insomma chiamate HTTP, ha una divisione interessante in workspace, in collection che è simile a quella che abbiamo su Postman e permette comunque di fare un export di tutti i dati in JSON, se non sbaglio, o comunque in un formato machine readable che si può ripassare per S, diciamo per spostare quella con quella configurazione con quelle richieste con quegli environment anche su un altro computer.Io vi saluto e spero che questi pochi consigli che vi ho saputo dare un po' vi ho raccontato un po' qual è il mio workflow vi possano essere d'aiuto.Ciao! La mia configurazione è abbastanza bovina, parlo per quello che riguarda le ore del mio sviluppo libero nei progetti personali, i famosi pet projects.Le premesse sono queste, ho un fisso con windows per motivi familiari e per lo stesso motivo non voglio fare dual boot, sì motivi familiari sembra la giustificazione della scuola ma è così.Generalmente faccio progetti personali a cui mi dedico esclusivamente per un periodo limitato di tempo e quindi non lavoro su più cose contemporaneamente.Ho pochissimo tempo libero, sempre per motivi familiari, sempre con la giustificazione, e in quel tempo preferisco dedicarmi alla programmazione piuttosto che provare decine di tools che alla fine non mi piacciono.Per cui, datami un monitor e una tastiera, del mouse sto imparando a farne a meno ma ancora non del tutto e sono contento quindi con queste premesse la soluzione naturale è quella di utilizzare le macchine virtuali con la coppiata Vagrant e VirtualBox addio, Vagrant lo uso più perché mi è comodo avere un Vagrant file testuale dove commentare eventuali configurazioni o specifiche che poi mi perdo e magari scaricarmi un Vagrant file che poi fa tutto lui con una macchina già bella, pronta e configurata, pronta all'uso con i vari tunnel appunto bugnate lo utilizzo per questo, non faccio massiccio uso di provisioning quelli seri alla fine li tratto come una macchina virtuale a tutti gli effetti non faccio mapping dei folders perchè con phpStorm e IntelliJ DIA configuro l'auto deploy sulla macchina virtuale e vivo felice senza problemi di incompatibilità di Windows, Linux, Linux simbolici e permessi sulla macchina virtuale faccio anche girare i vari webpack, gulp, quello che serve per fare meccanismi di build in modo da non trovarmi nella mia macchina locale dove effettivamente programmo file minificati o compilati che poi devo escludere dalla sconsola dell'IDA Con questa configurazione che porto avanti da tanti anni, devo dire che mi trovo da dio.Certo, avviare una macchina virtuale non è la cosa più leggera del mondo, però come ho detto, me ne serve una, sostanzialmente, una per periodo e vivo felice.Ma avessi altre necessità, probabilmente, proverei qualche altra cosa.altri software, Mauro ha citato la mia estensione Notificon e per questo lo ringrazio e lo potete trovare open source su Github oltre che sul Chrome Store utilizzo Sublime Text 3 per prendere appunti veloci o visionare files di qualche tipo perché è comodo, perché non sono costretto a salvarli esplicitamente se li tiene lì in memoria, lui da qualche parte, meglio li trovo sempre là quindi è comodo, è veloce, si apre con un click ed è molto comodo come detto ho già citato il phpStorm e di recente ho installato vscode per programmare in Go un plugin carino che utilizzo su phpStorm è il plant2ml per creare i grafici dalla sintassi, appunto, plant2ml questo lo sto usando da qualche mese ed è abbastanza figo come Mauro anche utilizzo Brave ogni tanto, non come predefinito però ce l'ho lì, a seconda di come mi gira utilizzo o Brave o Firefox o Chrome o Opera o quello che trovo questo per quanto riguarda le mie cose personali.In ufficio è tutta un'altra storia, le esigenze sono molto particolari inutile che entro nel dettaglio, basta sapere che tra le varie cose gestiamo anche un canale televisivo locale in digitale terrestre quindi potete immaginare che cosa abbiamo comunque ci giostriamo anche lì macchine con i linux containers direttamente basta tutto qui allora il mio setup si basa fondamentalmente su due editor principali il primo è phpStorm preferisco usare PHPStorm nei progetti Laravel, fondamentalmente, quindi spesso sono i miei pet project non ho installato particolari estensioni o plugin, quindi lo uso abbastanza vaniglia quello che mi piace è l'integrazione con il framework, quindi poter andare velocemente a cercare le parti del codice del framework per capire cosa fanno, la suddivisione tra directory che sono parte dell'applicazione, directory invece sono parti del codice vendor che quindi spesso vengono esclusi dalla ricerca a meno di non specificarlo.Comunque sono molto abituato anche all'escorciatore da tastiera di default che è sicuramente più pesante dell'altro editor che uso, però è un prezzo da pagare per avere questo environment più adatto per il PHP e per l'Arable a mia modesta opinione.L'altro editor è quello diciamo penso sia standard per tutti forse tranne per Alessio, Visual Studio Code.Visual Studio Code lo uso per tutto il resto del codice quindi da dal lavoro di DevOps, Terraform, Kubernetes eccetera, Node.js Insomma tutto il resto, anche gli appunti che mi faccio, velocemente la scaletta delle cose che sto dicendo in Visual Studio Code, perché mi piace molto la velocità e l'immediatezza, nonostante sia fatto in Electron.Due estensioni che suggerisco sono una, l'ho già usata come balocco, che è Peacock, che permette di colorare i bordi della finestra di un colore anche a caso.e questo aiuta quando uno ha molte finestre di Visual Studio Code a riconoscere in quale sta editando o che codice sta vedendo.L'altra è Advanced New File che permette di creare un nuovo file però nel momento in cui si crea un nuovo file viene chiesto in quale percorso metterlo e c'è un autocomplete, quindi se dobbiamo mettere un file all'interno di source/app/frontend/whatever si può inserire parte del percorso, selezionarlo dal menu a tendina e poi il file verrà creato quindi tutto questo da tastiera senza usare il mouse vediamo cos'altro uso, allora uso un programma per collegarmi a database sia in locale che in remote, in cloud uso questo software che si chiama TablePlus è un software a pagamento, la licenza Lifetime costa 59$ Io uso ancora la versione free perchè per il mio utilizzo va bene, posso tenere aperto massimo due tab ma generalmente non è un limite per me.Mi piace molto perchè l'interfaccia è molto macOS style.Ah, non ho detto che utilizzo macOS come sistema operativo, ho un MacBook Pro 15 pollici, quindi sono di quella fazione lì.Dicevo di TablePlus Mi piace molto l'interfaccia, mi piace che supporta diversi tipi di database da MySQL e vari daletti di MySQL, MariaDB appunto, ma anche DynamoDB, MongoDB, quindi NoSQL L'interfaccia è elaborata ma comunque rimane molto molto semplice anche per poter scrivere query, guardare i risultati, editare molto comoda.Da quando l'ho scoperto utilizzo quello e nel momento in cui il limite delle due tab mi comincerà a stare stretto sicuramente acquisterò la licenza come emulatori terminale uso iTerm è quello più versatile che ho trovato, fin troppo perché volendo andare dentro le impostazioni è super customizzabile.Io non ci ho perso troppo tempo se non alcune Alcune cose sulle shortcut tastiera, per esempio usando command e sinistra-destra, di default viene mandato un carattere escape che non viene riconosciuto, quindi non ci si sposta il cursore tra una parola e l'altra, come uno si aspetta.No, forse option e freccia sinistra e freccia destra.È tutto documentato, volendo con 5 minuti di ricerca si risolve.però ecco, di default esce con questo con questo problema qua.Un altro software che uso è Magnet che permette di disporre le finestre sullo schermo attraverso il corciatore e la tastiera.Non è molto customizzabile, anzi non è per nulla customizzabile.Ci sono alcuni template, per esempio si può ridurre la finestra di un terzo dello schermo a sinistro a destra oppure due terzi, metterli negli angoli, mette la centrata, però per me è abbastanza comodo perché generalmente non ho più di due finestre davanti, ho un doppio monitor su cui magnet, le scorciatole funzionano su ogni singolo monitor quindi è comodo.So che ci sono anche altre soluzioni basate su Better Touch Tool per esempio o anche solo script che permettono di essere molto più configurabili.A me va bene questa semplicità credo l'ho preso in un'offerta 99 centesimi qualche anno fa fa il suo dovere ed è molto semplice.Inoltre utilizzo Alfred che è un software diciamo difficile da incitare, una specie di launcher di programmi ma che può anche essere programmato attraverso questi workflow quindi possiamo mettere una scorciatoia per eseguire alcune operazioni che possono e non essere ripetitive.Nel mio caso ve ne segnalo tre.Una, l'ho chiamata "New Finder", che scrivendo "nf" mi apre una nuova finestra del Finder.Sembra una bischerata, ma in realtà questo aiuta perché quando si apre una finestra del Finder col Mac, di default, se ce n'è già una aperta in un altro desktop, ti sposta al desktop e quindi non rimane sul tuo.Invece, utilizzando un Apple Script, ti apre una nuova finestra del Finder nello schermo dove sei.Quindi questo è comodo.Alla stessa maniera ho fatto un NC, New Chrome.Mi apre una nuova finestra di Chrome perché se io lancio Chrome e ce l'ho già aperto in un altro desktop vengo portato in quel desktop invece di aprire una nuova finestra.Questo mi permette di non dovermi spostare mai col mouse quando devo fare queste operazioni.L'altra cosa che mi è utile diciamo più durante la comunicazione è quando faccio uno screenshot.Di default mac salva gli screenshot sul desktop e spesso ci si può trovare avere un desktop pieno di screenshot, di file chiamati screenshot con la data.Io ho modificato la location di default degli screenshot in una directory, dentro la mia user directory e ho fatto un workflow per aprirmi quella directory, per cui per aprirmi quella directory nel finder, per cui quando apro la finestra sono già ordinati per data, quindi in cima mi trovo lo screenshot che ho appena fatto e quindi ce l'ho subito a disposizione per mandarlo su Slack eccetera.La cosa buona di questo è che io tendo a non cancellare gli screenshot perché almeno mi tengo una specie di storico di tutto quello che è successo sul mio computer che gli screenshot possono essere tra roba di lavoro o pezzi di chat trovati da qualche parte, quindi è interessante ogni tanto aprirlo e andarsi a vedere tutta la storia.Questo era quello che mi premeva di segnalare del mio workflow.Metterò il link ai workflow di Alfred nelle note della puntata e chiedetemi sul canale Telegram quello che volete.Ciao! Allora, complesso, veramente una domanda a cui non ero preparato, quindi ho cercato di annotarmi un po' di roba su quello che è il mio setup.In realtà io mantengo un setup abbastanza minimale per lo sviluppo software, c'è veramente il terminale e pochissima altra roba.E allora il sistema operativo che uso io come setup è Arch Linux.Io uso Linux da un sacco di tempo e Arch Linux è ancora la mia distribuzione preferita.il window manager che uso è i3, all'inizio ho usato GNOME per tantissimo tempo, poi KDE per tanto tempo, ma adesso ho switchato direttamente a i3 e andando direttamente alla ciccia, il terminale che uso io, che è la cosa più importante, l'emulatore di terminale, è KITTI e in realtà consiglio se non siete pronti a usare KITTI perché è effettivamente un po' esoso in termini di personalizzazione e richieste per renderlo effettivamente produttivo per l'uso personale come alternativa suggerisco Tilex che è un buonissimo emulatore determinare per Linux sicuramente sotto ambiente GNOME è il mio preferito e qua arriviamo poi alla nota dolente perché il mio editor di riferimento l'editor che io uso per fare qualsiasi cosa è Vim e ho provato i Max ma non sono riuscito ad abituarmi a tutta una serie di cose quindi nonostante pure la Vim emulation quindi io uso Vim non-NeoVim, non-VI, Vim 8.x, proprio dal mail repo Visual Studio Code per tutto quello che richiede il loading di un file alcune funzionalità di ricerca molto particolari che non mi va di fare diciamo, usando le macro di Vim, le funzionalità più potenti, però anche più complicate di Vim.Per tutto il resto uso Vim e questo ci porta anche a una delle cose più particolari, perché credo di essere tra lo staff, tra virgolette, del podcast e tra gli ammutinati, la persona che usa l'editor di testo nella maniera più particolare possibile.io non uso praticamente autocompletamento quando programmo.L'unico autocompletamento, tendenzialmente, che utilizzo è una roba che praticamente fa la tokenization dei file, a parte il syntax highlight, quello che è imprescindibile e su Vim chiaramente è possibile installare il plugin per il proprio linguaggio di riferimento.Dopodiché, per quanto riguarda l'autocompletamento, l'unica cosa che uso in maniera massiccia è un plugin di Vim che si chiama Deoplit, che praticamente fa la tokenization dei file aperti, delle keyword dei file aperti, e semplicemente suggerisce con una specie di menù a tendina le parole dopo un tot dei caratteri che hai digitato.È abbastanza utile far risparmiare tempo, specie se devi riscrivere delle cose molto lunghe, tipo in linguaggi molto verbosi, qualche nome di funzione molto lungo.Per il resto, in alcuni linguaggi in particolare, siccome da noi in azienda utilizziamo anche ELM, che è un framework, un'architettura e un linguaggio per lo sviluppo di Single Page Application Frontend.E' molto utile effettivamente utilizzare alcune cose del language server di Elm, siccome Vim ha il supporto al language server, quindi io uso il language server di Elixir, il language server di Elm, mi sembra di aver installato il language server di JavaScript e TypeScript, ma poi mi pare che l'ho disabilitato, non faccio JavaScript da un pochino di tempo.Per il resto, la cosa che consiglio sia a livello di editor, sia a livello di terminale è il tema di colori Base 16 in qualsiasi variante in particolare a me piace molto la variante Base 16 Tomorrow Dark che mi riposa un sacco gli occhi quando programmo e mi consente di non stare sempre a 3000 con le cervella per il resto non uso nient'altro e non mi viene in mente a livello di software qualcosa di più imprescindibile chiaramente non arrivando a menzionare quella che secondo me è scontata che è la suite dei programmi IONIX quindi i vari GREP, LESS e cose qua insomma in particolare sono state partorite recentemente delle alternative ai comandi Unix classici che sono molto potenti, sono scritte in linguaggi nuovi, sono un po' più potenti del per esempio Rip-Grep, è molto più potente del classico Grep, è anche un corrente particolare e quindi insomma vi consiglio, sicuramente vi metteremo nelle note dell'episodio anche i modern Unix tools Vi rubo giusto un secondo per raggiungere un'altra cosa, sentendo il contributo di Alessio mi è venuto in mente Io ho installato North, come palette di colori dappertutto, North Theme ce l'ho su visual studio code, ce l'ho su vim, ce l'ho sul terminale, su iterm, ce l'ho dappertutto in realtà con un plugin ci ho fatto anche github e google con quella palette e devo dire che avere una palette di colori omogenea dappertutto quando si lavora è una cosa fighissima non ho ancora trovate il modo per rendere gira su quella palette di colori ma se non dovessi riuscirci se non dovessi trovare niente di pronto penso che mi metterò a fare un plug in perché in realtà la palette di colori sembra una fesseria ma per chi come me ha una certa fissa sul senso estetico è importante tra l'altro c'è la polybar, la barra di sopra di cui vi parlavo, anche quella utilizza la palette Nord theme, quindi tutto omogeneo.Niente, vi ho rubato un minuto e mezzo solo per dire questa cosa.Ok, yo, Andrea Giannantonio e che gli hai i geli belli sul posto per raccontarvi il proprio setup per lo sviluppo.Dovete sapere che mi ritengo un vero Apple fanboy, se non ci credete vi consiglio di andarvi ad ascoltare l'episodio numero 55, il Geet Fighter in onore del primo compleanno di GeetBar, ne sentirete delle belle.Quindi capite bene che non vi parlerò di Windows e nemmeno di Linux ma di Mac, quindi parliamo di un MacBook Pro da 13 pollici e 5 quad core, 16 giga di RAM, e 500 giga di hard disk ssd con bixur os installato piccolo potente e leggero da portarsi dietro per lavorare per poche ore in mobilità ma l'utilizzo di un secondo monitor e tassativo per le classiche 8 ore di lavoro alla scrivania tastiera esterna americana oppure quella integrata al mac con configurazione americana ma più tastiera italiana la posizione per l'utilizzo di molti caratteri come il minore, il maggiore, apici, due punti, punte virgola eccetera eccetera a mio avviso sono troppo ergonomicamente più facili e comodi per lo sviluppo del coding.Invece lato software ho sediviso la descrizione del mio setup in quattro macro categorie core, IDE, client ed utility.Partiamo da core quindi le fondamentali cioè la prima cosa che vi viene messo in mano per la prima volta un Mac la prima cosa da installare è sicuramente Brew.È un software che ti permette di gestire un package manager per installare qualsiasi cosa sul proprio Mac, quindi che ne so, hai bisogno di installare un'estensione, una certa derivata liberia, un software, una dipendenza, voler switchare tra una versione di PHP sul proprio sistema al volo in modo da poter utilizzare anche più versioni in maniera facile e veloce, Brew fa per voi.Terminale, iTerm2, impossibile farne a meno.Ha un'ottima gestione dei profili per la gestione degli accessi alle macchine di produzione, poter splittare le finestre con delle shortcut opportune e applicare comandi anche contemporaneamente su più finestre che si stanno visualizzando.In accoppiata, a mio avviso "homa ZSH indispensabile" e ovviamente va a sostituire la vostra shell di default in quella ZSH che i luxiani conosceranno molto bene e va a decorare tramite un file di configurazione con l'abilitazione di diversi plugin la possibilità di aggiungere ad esempio un template di configurazione di cose da vedere sul proprio terminale fighettate inerenti ad es lo stato del nostro repo git che non so, quella da branch, se ci sono dei file addati oppure unstaged eccetera eccetera, fino ad arrivare a permetterti l'autocomplettamento di comandi per diversi tipologi di linguaggi o software sempre tramite opportuna configurazione di OMZSH.Passiamo subito invece a Docker for Mac, purtroppo ci dobbiamo accontentare, sappiamo tutti i limiti che ha questo software sul Mac, però non possiamo farne a meno oggi come oggi per lo sviluppo in locale, principalmente è uno dei strumenti più utilizzati, dobbiamo usarlo, consiglio di utilizzarlo e ci dobbiamo accontentare delle performance che abbiamo.Ci sono stati grandi miglioramenti ma purtroppo ancora non siamo felici i mecchisti a utilizzarlo serenamente.Altro software molto utile e importante a mio abiso a livello core è Rambox, che è un'app comodissima realizzata in electron che permette di organizzare il proprio workspace e differenziando con diversi slack che seguiamo, Mattermos, Whatsapp, Telegram eccetera eccetera, tutto in un'unica app, quindi una sola app, hai tutto il centro di messaggistica che vuoi configurare con i propri account e centralizzati senza fare switch tra tab, applicazioni eccetera eccetera tutto in un solo posto.Un altro software che mi sento sicuramente di consigliare è Proximan, utilizzato principalmente quando stiamo lavorando in sviluppo su un software che è soltanto sulla nostra workstation, quindi che è in modalità dockerizzata e può girare soltanto i localhost, ma vogliamo vedere come si comporta il nostro software web ad esempio su un device fisico, quindi grazie a Proximan possiamo proxare la nostra rete del Mac all'interno della rete casalinga in modo che tramite il telefono andiamo a riuscire a risolvere la urla e poter vedere il nostro sito durante lo sviluppo e poter testare e fixare eventuali bug della modalità responsive.Infine nella categoria dei core ho voluto aggiungere anche zoom perché ovviamente i i sistemi di videoconferenza, le applicazioni di videoconferenza sono all'ordine del giorno ormai da chi lavora in remoto, pandemia, non pandemia, sicuramente continuerà a vivere nelle nostre vite e l'ho aggiunto perché soltanto per dire che odio Meet e preferisco Zoom, qui lo dico e non lo nego e quindi ho voluto aggiungerlo.E con Zoom chiudiamo, diciamo, la categoria dei core per andare subito a quella successiva che è quella degli IDE dove mi sento consigliare prima di tutto Texmate che è un editor di testo leggerissimo, veloce per appuntarsi cose e se chiudiamo l'applicazione, la riapriamo e ci ritroviamo i nostri file anche se non li abbiamo salvati, pronti lì come li avevamo lasciati, è possibile invocarlo anche tramite click da terminale con il comando "mate" per aprire file o per crearne dei nuovi, è uno strumento molto facile e leggero che consiglio.Per poi passare diciamo al vero, al signor editor a mio avviso, che per me è phpStorm.Lo uso per tutto il coding più variegato, non soltanto php e javascript, che sono completamente a suo fatto, lo uso per scrivere anche le rule di ansible o fare di configurazione qualsiasi cosa.Per me PHPStorm ha tutto ciò che mi serve e mi da tutte le utilità di cui ho bisogno e non lo cambierei con nulla al mondo.Con PHPStorm chiudiamo il capitolo degli IDE per passare a quello dei client.Il primo client che vorrei consigliare è SQLACE, che è un fork open source abbandonato da diverso tempo SQL Pro, che è appunto un ottimo client per MySQL per visualizzare in maniera semplice e veloce la struttura del tabellino del nostro database, eseguire query, visualizzare gli indici, fare explain eccetera eccetera in accoppiata con SQLIS utilizzo Redis Insight che ovviamente è l'alter ego per Redis come client anche qui strumento molto, diciamo, consolidato e fa il suo, per poi passare a Insomnia.Insomnia è il mio client per API REST preferito, supporta gli environment, l'interpolazione di variabili, il formato, supporta il formato OpenAPI e tante altre cose.Davvero provatelo, ve ne innamorerete anche voi.Infine, volevo citare un altro client che è Spark, che dopo anni di bestemmie con mail qualche anno fa scoprì Spark e da allora non ne posso fare più a meno, sia a livello, diciamo, Macbook che sull'iPhone.Chiudiamo con Spark il capitolo client per andare nel capitolo delle utility.La prima utility che vorrei consigliare è Clippy, non è altro che uno storico dei testi copiati, quindi mantiene una cronologia fino a 30 copi, cioè ogni volta fate ctrl+c, ctrl+c, ctrl+c, ctrl+c, lui mantiene in memoria una cronologia di 30 e grazie alla combinazione di tasti poi ctrl+alt+v è possibile incollare, diciamo, dalla cronologia il testo copiato precedentemente, molto comodo e utile.Altra utility pop clip banalmente basta fare una volta installato, doppio clic su una qualsiasi parola testo sulla nostra porzione di quello che vediamo sul mac o anche selezionare più parole e nel momento in cui rilasciamo la selezione oppure finiamo il doppio clic, esce un piccolo pop-up che ci dà dei piccoli strumenti come "cerca questa parola su google" oppure "vai direttamente a questo link, traduci questa parola, copiala" e altre fighettate che potete impostare all'interno di questo software.Dopo pop-up, un'altra utility consigliata sicuramente è Alfred, non è altro che un'estensione dello spotlight dato il default dal Mac.Il nostro assistente basta utilizzare la shortcut Alt + Space e è a disposizione, una ricerca libera sul proprio Mac per lanciare qualsiasi cosa, applicazioni, cercare contatti, visualizzare cose, file e tutto altro, tutto in maniera indicizzata, è davvero molto comodo per fare operazioni di questo tipo.L'ultima utility che volevo segnalare è iStatsMenu, che è un software che mette in mostra nella toolbar lo stato della propria macchina, quindi la cpu, la memoria, il traffico di rete, tutte le risorse utilizzate, e molto altro.Ovviamente grazie a lui capisco quando docker mi sta ammazzando al mac, e quindi forse bisogna andare a spegnere qualche container, lui che me ne dà conferma.Con questo è tutto, ho chiuso le mie quattro categorie, spero di essere stato breve e abbastanza chiaro.Questo è quanto, per domande, curiosità e critiche vi aspetto nel canale Telegram di GitBar, Passo e chiudo, è io.L'episodio di oggi è stato un po' diverso dal solito e ci siamo divertiti un sacco a farlo.È stato un episodio remoto a sync.La nostra redazione ha registrato i contributi che poi il buon Luca ha montato a dovere, quindi dobbiamo ringraziarlo per l'operato.Prima di lasciarvi a Luca per i saluti io rubo solo un secondo per ricordarvi una cosa.Questo episodio mi piacerebbe non finisse qui ma diciamo attivasse una reazione della nostra community.Quindi se vi fa piacere all'interno del nostro gruppo Telegram potete lasciare un messaggio vocale dove anche voi raccontate il vostro setup.Questi messaggi vocali mi piacerebbe raggrupparli in un nuovo episodio extra quindi finalmente insomma la community farà un episodio, chiamiamolo un episodio in crowdsourcing e questa cosa mi piace tantissimo quindi se raggiungiamo almeno 5-6 contributi messaggi vocali dove raccontate il vostro setup beh la community farà il nuovo episodio di Gitbar.Detto questo io credo di aver aver parlato anche troppo quindi aspetto i vostri messaggi vocali e ciao grazie Mauro per aver lasciato a me gli ultimi saluti e quindi saluto tutti quelli che mi conoscono il mio capo mia moglie la mia fidanzata sì ok ricordo i contatti info@gitbar.it @brainrepo su twitter il sito gitbar.it e soprattutto il nostro canale telegramma dove vengono tutte le discussioni più interessanti d'Italia, troverete la maggior parte dei nostri ospiti, il nostro Brain Repo ovviamente e tutti gli ammutinati.Siete benvenuti! Ciao! Gitbar, il circolo dei fullstack developer.Una volta a settimana ci troviamo davanti a due birre e con Brain Repo parliamo di linguaggi e tecniche di sviluppo web, di metodologie e degli strumenti mancabili nella cassetta delle attrezzi dei fullstack dev.[Musica]