I turn to coffee when I’m tired and still have some time left in the day to work. But when I brew or order that cup of coffee in a situation like that, I know I’m drinking for utility, not enjoyment.
“But you can enjoy a cup of coffee and get the caffeine kick from it”, I hear you say. And I fully agree with that. But I’m always able to recognise the trigger for wanting coffee, and the trigger for me to drink coffee these days is almost always sleepiness or fatigue. On days like these, coffee is just a tasty drug for boosting my energy levels (to be paidback later).
Welcome to the second part of How to start using the command line. You can read part 1 here if you haven’t already – I cover the most basic commands there to get you started.
In this second part, I’ll go through a few more basic commands and introduce the concept of a flag that you can use to modify certain commands. A flag can, for example, be used to modify the command rm to act on a directory instead of a file.
Let’s say you have a routine task (it doesn’t have to be a programming task, but that’s what your mind is almost always on, right?). We can call it Task A.
If optimising Task A takes a full day to complete, and it can purportedly shave one minute off the normal amount of time you need to do it, how often must you do this task for it to be worth the time optimising?
I recently had a few conversations with people who are not software engineers and a surprising number of these conversations veered towards my journey into programming. Many of them remarked that what I did is amazing (I don’t agree), and almost all of them mentioned one thing:
Some days at work as a programmer, I feel like a doctor trying to resuscitate software.
Drawing from a recent example at work, we realised that our machine learning algorithm was taking up quite a bit of memory.
In fact, it was taking so much memory that there wasn’t enough for the process to complete when there was a huge store using Metisa. That sometimes made our server crash and auto-restart without finishing running the algorithm.