Eines bàsiques si ets DEVeloper

Sovint penso i busco en quines eines de desenvolupador em poden ajudar a fer la meva vida més fàcil, senzilla i a fer la feina més ràpidament. De vegades no trobo la resposta, i no trobar-la també es una resposta valida.

Que necessites si vols ser DEVeloper?

En realitat no necessites de cap eina complexe per ser programador/a. Després de donar-hi voltes per escriure l'article i aportar software de qualitat m'he adonat que tot es redueix a dos simples eines:

  • Un terminal
  • Un IDE (Integrated Development Environment o Entorn de Desenvolupament Integrat (Un editor de text de tota la vida 📝 ))

Només amb aquestes dues eines, per rudimentàries que ens semblin, són les eines que més toco al meu día a día com a desenvolupador professional. De fet hi ha dies en que sols toco una de les dues.

Amb el temps me n'he adonat que no es tant important aquelles eines que ens puguin ajudar, sino el coneixement que tenim i com l'apliquem en aquelles eines que ja tenim. Evidentment, que després algun software ens treurà castanyes del foc, o ens facilitará la vida... però sempre em veig casi obligat a tornar als bàsics. I quin son aquests bàsics? Els que he comentat.

Els bàsics

Com deia abans, els dos bàsics, terminal i un bon IDE que ens ajudi i assisteixi a desenvolupar.

Dins d'aquests dos bàsics, podem pensar en el mateix, agafar un terminal "pelat" i ja podem fer coses, i un "bloc de notes" i programar les nostres línies de codi, no necessitem floritures. Ok... però just en aquest punt, es on necessitem de totes les eines que tinguem a l'abast per poder treballar-hi no només més i millor, sino còmodament.

Es en aquest punt on me'n adono que posar tota la llenya m'ha ajudar enormement a les meves tasques diàries. I remarco, en el MEU cas. Potser altres perfils de programadors no es igual.

Ok Oriol... i qué tens al terminal i al teuu IDE que molin tant?

El meu terminal

Faig servir el iTerm2, es un emulador de Terminal per a MacOS, si voleu algun de similar per a Linux, teniu Hyper o Terminator. De fet, no fa gaire vaig publicar com tinc personalitzat el meu iTerm.

Per què aquest terminal i no el natiu de macOS? Per que m'ajuda en infinitat de coses...

  • Podem dividir el terminal en tantes parts com volguem
  • Personalitzar de forma molt profunda l'aspecte visual fins que ens sentim tant agust que volguem mirar-lo sempre.
  • Una gran comunitat, que es tradueix en no només asistència en cas de necessitar-la, sinó plugins.
  • Diferents perfils configurables segons el que fem, i automatismes que permeten el canvi entre ells.
  • Configurar l'hitòric que desará o la quantitat de linies executades que ens deixarà veure
  • ... i infinitat d'altres detalls que no mencionaré per no aburrir-vos.

El meu IDE

Com el terminal, que ens ajudará a navegar pels directoris, executar comandes i proporcionar informació... l'IDE ens ajudará a desenvolupar tot el que volguem fer funcionar. En el meu cas el meu IDE principal es PHPStorm.

Abans d'aquest he passat per molts d'altres cronològicament: Eclipse, NetBeans, SublimeText i fins ara PHPStorm.

Aquests pels que he passat, avui dia no són el que eren... han evolucionat fantàsticament i son grans IDEs, però pel meu stack o el lenguatge que toco normalment, que es PHP 🐘, el de Intellij es amb diferència el millor IDE que he tocat mai.

Molt estable, ben desenvolupat i porta totes les eines necessàries per a desenvolupar amb PHP. De fet ni tansols ens caldría un emulador de terminal... PHPStorm ja en porta un. Inclou una eina per gestionar bades de dades. Podem manegar els nostres Dockers en el cas que en tinguem. I si alguna cosa ens falta, tenim una biblioteca de plugins enorme que ens vitaminarà el nostre entorn fins on volguem.

Abans pensava "menos es más", però en aquest cas he procurat buscar un equilibri es eines que em donin suport, sense sobrecarregar visualment i/o procedimentalment el meu programari.

Software addicional

La veritat es que es molt poc el software addicional que tinc instal·lat. O considero que es poc, si miro enrere... En el passat depenía molt més de software per salvar algunes carències de coneixement, que ara amb un terminal i una mica de memòria puc tirar endavant.

  • Gestor de Base de Dades: Sequel Ace (Un fork de SequelPro)
  • Gestor documental: Notion (és brutal el que permet fer)
  • Plataforma de test d'APIs: Postman

Extra

I no tinc res més instal·lat... bé si, recentment estic probant Lens un software per gestionar els clusters de Kubernettes, podent accedir i gestionar de forma ràpida tots aquells serveis que tenim en marxa. Però com dic... la tinc per donar-me suport en moments puntuals. De forma habitual faig servir comandes de consola per gestionar-los. Es la forma d'aprendre i de saber com funcionen les coses. Però sol ser també la millor manera d'introduir-se quan no es coneix o no se'n sap.

I vosaltres, quin software feu servir per a desenvolupar? 🧑‍💻