Bij het herzien van andere artikelen kwam ik deze kleine vraag tegen die me veel plezier bezorgde, het is waar dat een van de eerste dingen die gebruikers van andere systemen (behalve FreeBSD) tegenkomen, is dat we de GUI's niet gebruiken. Om de waarheid te zeggen, het leek me ook behoorlijk nieuwsgierig aan het begin van mijn GNU / Linux-reis. Ik moet toegeven dat ik in de loop van de tijd de opdrachtregel nu veel meer gebruik dan enig ander GUI-programma, en vaak geef ik de voorkeur aan opdrachtregelprogramma's boven meer uitgebreide programma's met oogverblindende GUI's.
De mythe
Eigenlijk is dit niets meer dan een stedelijke mythe, want in tegenstelling tot andere systemen waarvan de namen hier niet worden genoemd, is het in GNU / Linux waar je echt vrijheid naar keuze. Ik wou dat er in andere systemen de veelzijdigheid was die hier bestaat. Maar laten we deze kwestie eens nader bekijken, anders zijn veel dingen niet duidelijk:
servers
We hebben allemaal het woord gehoord Server, sommigen geloven dat het die supercomputers zijn die Google of Amazon aandrijven, of die in uw bedrijf. Maar de realiteit is dat a Server reageert op een werkmodel. We gebruiken deze term om te verwijzen naar het feit dat we een programma hebben dat beschikbaar is voor gebruikers (klanten) en geeft ze iets. Een eenvoudig voorbeeld is apache, die wordt gebruikt voor serveren webpagina's op internet. Dit programma levert html aan klanten dat verzoek het.
Afbeelding server
Maar niet alleen een server kan op de supercomputers staan ​​die Google en vele andere bedrijven mogelijk maken, zelfs de 'oudste' laptop kan een server, vooral als we het over afbeeldingen hebben. We hebben allemaal een server van afbeeldingen op onze laptops om een ​​functioneel scherm te hebben, in dit geval de server en klant ze zijn dezelfde persoon. Het meest voorkomende voorbeeld is X (bekend als xorg-server in veel distributies) en zijn nieuwe vervanging Wayland. We gaan geen gedetailleerde uitleg geven over waarom de organisatie, of hoe Wayland werkt, of de filosofieën die achter deze geweldige projecten bestaan, maar we gaan wel duidelijk maken dat het dankzij hen is dat we een webbrowser kunnen hebben zoals Firefox of Chrome, of vele andere programma's.
Vensterbeheerder
Vensterbeheerders werken rechtstreeks met de beeldserver, hun werk is van een "lager" niveau, aangezien zij beheren (vergeef de redundantie) hoe de vensters worden gemaakt, gewijzigd en gesloten. Ze zijn meestal vrij eenvoudig en desktopomgevingen zijn hierop gebouwd. De lijst is groot, maar ik laat hier alleen het idee achter dat ze dat zijn minimalistische software, waarmee u een vrij eenvoudige controle over de beeldserver heeft.
Desktop omgeving
Een meer gespecialiseerde set software die niet alleen de werking van de beeldserver mogelijk maakt, maar ook aanpassingsmogelijkheden biedt. Onder deze zijn de oudste en zwaarste KDE en GNOME, maar we hebben ook lichtere omgevingen zoals LXDE of Mate, Cinnamon, enz.
CLI (opdrachtregelinterface)
Na een korte blik in de wereld van beeldservers, komen we nu weer op ons onderwerp. CLI, impliceert elk programma dat wordt uitgevoerd via de opdrachtregel git, vim, weechat, of nou ja, wat er nog meer in je opkomt. Je kunt zien dat ik het heb over programma's die, hoewel ze op de opdrachtregel worden uitgevoerd, een soort "grafische interface" laten zien, zoals weechat o vim. Voor iedereen die ze niet heeft geprobeerd, raad ik ze aan, het zijn eigenlijk degenen die ik de hele dag gebruik.
Waarom CLI beter is dan GUI
Laten we iets heel eenvoudigs proberen.  Onlangs wilde ik aan een patch werken Portage (Gentoo's pakketbeheerder). Zoals bij elk goed samenwerkingsproject is het aantal regels code meer dan 70. Probeer dat te openen in een IDE zoals NinjaIDE (Portage is geschreven in Python) en je zult snel merken dat wanneer het scherm begint te laden, je machine extreem traag wordt (althans mijn i7 deed het) en dit probeert gewoon open de code en verander naar de standaard kleur van «help».
Probeer nu hetzelfde te doen met vim, het laadde me in een kwestie van milliseconden, en tegelijkertijd plaatste het de "mooie" kleuren en al het andere.
CLI is al lang geleden
Sommigen zullen hier zeggen dat die programma's dat wel zijn Antiguos, Ik bel ze robuust. Als je kon zien hoeveel uren er in bouwen zijn geïnvesteerd emacs, vim, gdb, en honderden andere consoleprogramma's, merkt u misschien dat de hoeveelheid code en functionaliteiten zo groot is dat ze praktisch al alles hebben opgelost wat ze moesten oplossen. Veel GUI voor programma's die al robuust zijn in hun CLI, zullen ze nooit dezelfde hoeveelheid functionaliteit hebben, dit simpelweg omdat als we bijvoorbeeld een tabblad voor elk beschikbaar subcommando hebben gemaakt gitzouden we onszelf verliezen tussen de opties en het zou contraproductief zijn, omdat het het moeilijk zou maken om te werken.
CLI is sneller
De magie begint met de sleutel Tab, dit is niet alleen uw beste vriend wanneer u door de desktops in uw terminal bladert, maar als het correct is geconfigureerd, kunt u lange zinnen inkorten tot 2 letters en een tab, 3 letters en een tab, of zelfs een letter en een Tab.
Maar dit is niet het enige voordeel, degenen onder ons die de tijd hebben genomen om te leren vim o emacs We kunnen wel zeggen dat, hoewel de leercurve tegenwoordig een beetje hoger is dan die van de IDE's, de productiviteitsresultaten uiteindelijk verbluffend zijn. Men kan zich de tijd die verloren kan gaan bij het verplaatsen van een muis niet voorstellen. 90% van de tijd je handen op het toetsenbord hebben, leert niet alleen concentratie, maar het feit dat je zoveel op het toetsenbord typt, maakt je behoorlijk behendig en productief. En nu keren we terug naar het vorige punt, aangezien we al zo lang bij ons zijn, hebben programma's zoals deze al alle functionaliteiten die iemand zou kunnen bedenken, een vrij algemeen gezegde voor degenen onder ons die vim gebruiken:
Als u meer dan 4 sleutels gebruikt, is er wellicht een betere manier.
Eenvoudig maar krachtig, vim stelt je in staat om alles te doen met het grote aantal toetsen en mogelijke combinaties, men stopt nooit met leren, maar het is ook waar dat het niet nodig is om ze allemaal te kennen, om het te kunnen gebruiken, ongeveer 10 of 15 zijn genoeg om te beginnen productiever zijn.
CLI geeft u volledige controle
Wanneer men bewerkingen uitvoert met de muis, of programma's van de beeldserver, zijn alle extra configuraties die worden uitgevoerd op het moment van klikken niet altijd aanwezig, dit gebeurt niet met de terminal, hier heb je de absolute macht van wat het wordt uitgevoerd of niet, met welke optie of in welke mate. Na verloop van tijd realiseer je je dat je minder nodig hebt dan je denkt, en dat helpt je om dingen gerichter te doen.
GUI heeft ook zijn eigen ding
Ik ga niet zeggen dat we allemaal de CLI altijd moeten gebruiken, dat is ook niet ideaal, ik gebruik zelf bijna altijd GUI's, om dit bericht te schrijven gebruik ik mijn Chrome, en om mijn e-mails te zien gebruik ik Evolution (hoewel ik ook gebruik mutt nogal wat de laatste tijd). En ik veronderstel dat dit de grootste mythe van allemaal is... dat mensen denken dat GNU/Linux alleen maar terminals zijn. Ik hou van mijn desktopomgeving, die is behoorlijk minimalistisch, maar zo houd ik er wel van.  En ik heb meestal maar twee of drie actieve programma's, mijn Chrome, mijn Evolution en mijn terminal 
Dit zijn enkele van de redenen waarom ik CLI's zo leuk vind en waarom ik je uitnodig om ze een kans te geven. Misschien zul je later net als ik meer CLI's gebruiken dan GUI's  Groeten