Labels

"Igbo Blues" 2006 2008 2010 Acceleration of proceedings Adamosa Osagiede Admissibility of oppositions Africa Musica African Divas African Fiesta Akwé Obiang Amharic Amunataba Dance Band Angèle Revignet Appeals : miscellaneous As I Lay Dying Bella-Bella Benga Bezawork Asfaw Biafra Bikutsi Bob Sir Merenge Bobongo Stars Bring Me The Horizon Bumba Massa Cameroun Canon Star cara mendapatkan uang Central African Republic Centro Mix Chelsea Grin Christy Essien-Igbokwe Claim interpretation Clarity CoC CoC akan Ditutup CoC ditutup Hoax CoC resmi ditutup CoC Tidak jadi ditutup Congo Correction of errors Côte d'Ivoire DDC Mlimani Park Orchestra Deathcore Desolation Of Eden Divisional application Douala Dr. Nico drone Dur Dur Ebenezer Obey Edo Efik Egwu Ekpili Elias Tababbal err errbot Ethiopia Ewi Ezigbo Obiligbo Faadumo Qaasim Fees Framework of appeal Francis Gon Gabon gaming gentoo Ghana golang Hausa Highlife Hilarion Nguema I.K. Dairo Igbo Igbo Traditional Music Info Itsiembu Bi-Mbin Jean-Boniface Asssélé Jerry Hansen Jezu Lokota Jo-Man Anguilet Josky Kiambukuta Juju Julien Nziengui Kenya Kiam Kosmos Moutouari l'ANPAC Presente Lanrewaju Adepoju Lapiro de Mbanga Late filing lego Leonard Dembo Libaaxyada Maaweeliska Banaadir Lingala linux Lipua-Lipua Mack Joss Makossa Mali Marcel Djabioh Marthe Ashagari Mayele Mbalax Mbaye Dieye Faye Melo Divine Metalcore Mike Ejeagha Miriam Makeba Mobanza Ley Musiki Mutuashi Muziki wa Dansi Nigeria Nigerian Female Vocalists Norbert Epandja Novelty Obiang Okane Oral proceedings Orchestra Cavacha Orchestre African Jazz Orchestre Veve Osayomore Joseph Other Blogs Ouaka Stars Partiality Patent Register Patrick Idahosa Personal musings Petit Tchadien Pierre Embony Pierre-Claver Zeng Pop Prior public use python Real Sounds of Africa Reimbursement review Rex Lawson Rigo Star Rock Sahra Dawo Santo Backita Senegal Shona Show Promoter Sierra Leone software development Somalia Soukous South Africa Stay of proceedings Substantial procedural violation Sufficiency of disclosure Suicide Silence Super Stars Swahili Sylvester Odhiambo Talents of Benin Tanzania Technical or not Teshome Asged Tips tmux Togo Toto Guillaume tutorial Verckys Vijana Jazz vim Waaberi Wolof Yoruba Yoruba Percussion Styles Yvon Dawens Z 3.1.01 Z 3.2.04 Z 3.2.07 Z 3.3.02 Z 3.3.03 Z 3.3.10 Z 3.5.01 Zambia Zimbabwe Zokela

Little things I would teach to my younger software engineer self - #4 Life in the console

Looking back at the various stages of my career, I realized I could have learned some basic stuff way earlier than I did.
Even if I missed the original opportunity, all those little skills I acquired late served me tremendously well ever since.


1993-me: What a misery! I am telnetting from HPsUX to a Tru64 and once again my backspace doesn't work!
AGAIN, I'll have to spend hours trying to fix that POS console by trying out random bindings... Enough of this crap ! I give up, I am more efficient with my mouse.

2014-me: Hang on in there! Few years down the road it won't be a misery anymore, Linux is coming! This will put the power of the shell at your fingertips without this pain.

Check out my current favorite combo at the moment:
 zsh + oh-my-zsh + tmux.




Start with a plain zsh to master the basics, browse and take the simple stuff from zshtips for example.

The main goal of all those little commands is composability, this is extremely powerful. A tool that sorts, another one that gives you the n first lines and another one that monitor a command all have a limited purpose but suddenly when you combine them it is magical:

# this will monitor the 50 first
# alphabetical entries from a file

$ watch "sort myfile | head -n 50"

But wait until you have setup oh-my-zsh to start tweaking your .zshrc.

oh-my-zsh is a plugin system that considerably simplify the setup of zsh and gives you some bindings to a lot of integrations like git, docker, python, etc.
For example with git, you'll be able to see the branch on which you are from the prompt, tab autocomplete the names of the branches when you git checkout etc.
Try to have your console emulator work with 256 colors, it will look less aged.

The last thing is tmux. This is a terminal multiplexer. It serves 2 main purposes: 

1. make your sessions persistent (you loose your ssh connection, you reconnect and magically your session is still there)

2. be able to use several shells/programs from the same session.

For example I use vim on top of a "pane" (a kind of textual window) that I run in server mode. On the bottom I use zsh and I can type vim file.txt and my alias will open it straight on the vim on top, it is almost like an IDE / shell hybrid. See the screenshot above.

Any tips you would give to your younger self programmer ? Feel free to comment below !


0 Response to "Little things I would teach to my younger software engineer self - #4 Life in the console "

Post a Comment