Live data from Hacker News

In the Beginning Was the Command Line (1999)

web.stanford.edu

81–90 of 271 posts

Re: In the Beginning Was the Command Line (1999)

#81
post #48

Earlier quoted context omitted.

Not even that. Newborns have to learn how to suckle, and their mother has to learn how to hold everything in the right positions so it can work. It’s a tricky skill and many aren’t successful even if they want to breastfeed.

Newborns don't have to learn how to suckle. It's a reflex, called a suckling reflex. Lacking a suckling reflex is an indicator of disease. Basically a newborn suckles everything that goes into the mouth, nipple or not.

Are you a woman? Have you had children? Have you partnered a woman as your child and her cried through the night, both trying to make this “breastfeeding” thing work; both failing. “How can something so intrinsic to basic survival, be so hard!”. And yet it is.

Talk confidently when you have experience.

Re: In the Beginning Was the Command Line (1999)

#82
post #3

My favourite part explaining how unix/linux users feel regarding windows: 'THE HOLE HAWG OF OPERATING SYSTEMS'. This essay should be a mandatory reading for all CS students and anyone wanting to call himself hacker.

I teach data analytics and it’s required reading on the first week. It doesn’t soften the blow of throwing people in the CLI but provides perspective to why I am.

Re: In the Beginning Was the Command Line (1999)

#83
post #13

The command line is still king. Whenever I see new coders struggle, it usually is because they: - Don't know the context of what they are executing - Don't know about the concept of input and output On the command line, the context is obvious. You are in the context. The working dir, the environment, everything is the same for you as it is for the thing you execute via ./mything.py. Input and output are also obvious.…

The command line is king, but sometimes the king is mad. Which is to say, it can be difficult to work with the monarchy when the syntax is shit . And there's a lot of bad syntax out there: overly cute, so terse as to be cryptographic, the straight-up baffling ... Outside of the syntax (which seems to live forever), you have things like non-sane defaults, obscurantist man pages ... the list goes on.

> the syntax is shit

When you’re typing a lot, you really don’t want to do a lot of typing for each step. And the shell scripts were for automating some process, not solving a particular problem (you use a programming language for that). The workflow is to have the references ready in case you forgot something.

That brings up the man pages, which can varies in quality, but, for most software I’ve used, tend to be comprehensive. But they assume that you’re knowledgeable. If you’re not, take some time to read a book about system administration (users, processes, files permissions,…).

Re: In the Beginning Was the Command Line (1999)

#84

Earlier quoted context omitted.

I agree with you, but I think there's a caveat. The command line is king in Linux, BSD, MacOS, AIX, and to a lesser extent Windows. These operating systems were crafted from the bottom up with the commandline as a foundational layer. The idea of the context, of the "working directory", the "environment", were concepts that were lifted from that commandline centric world, into what we run now. I think Windows very muc…

> The command line is king in Linux, BSD, MacOS, AIX, and to a lesser extent Windows. These operating systems were crafted from the bottom up with the commandline as a foundational layer. This is definitively not true for macOS.

MacOS is a very complete, very well funded desktop environment targeted towards the general user. You want anything extras and you land in applications using private apis and the command line.

Re: In the Beginning Was the Command Line (1999)

#85
post #2

This essay by Neal Stephenson was first published in 1999. https://en.m.wikipedia.org/wiki/In_the_Beginning..._Was_the_... The analogy of OS as cars (Windows is a station wagon, Linux is a tank) is brought up in the recent Acquired episode on Microsoft, where Vista was a Dodge Viper but Windows 7 was a Toyota Camry, which is what users actually wanted.

And Neal Stephenson acknowledged it was obsolete in 2004: " I embraced OS X as soon as it was available and have never looked back. So a lot of 'In the beginning was the command line' is now obsolete. I keep meaning to update it, but if I'm honest with myself, I have to say this is unlikely. " https://slashdot.org/story/04/10/20/1518217/neal-stephenson-... But people still dredge this quarter century old apocrypha up…

"Obsolete" is too strong a word, I think. OSX isn't an evolution of the Macintosh's operating system; That'd be Pink, which was even mentioned, and it crashed and burned. OSX was far closer to a Linux box and a Mac box on the same desk, therefore the only change really needed is to replace mentions of Unix or specifically Linux with Linux/OSX as far as the points of the piece are concerned. If Jobs had paid Torvalds to call OSX "Apple Linux" (Or maybe just called it Apple Berkeley Unix) for some reason this would be moot.

I also primarily use Windows and don't have a dog in the fight you mentioned. I might actually dislike Linux more than OSX, though it has been quite a while since I've seriously used the one-button OS.

Re: In the Beginning Was the Command Line (1999)

#86
post #13

The command line is still king. Whenever I see new coders struggle, it usually is because they: - Don't know the context of what they are executing - Don't know about the concept of input and output On the command line, the context is obvious. You are in the context. The working dir, the environment, everything is the same for you as it is for the thing you execute via ./mything.py. Input and output are also obvious.…

I agree with you, but I think there's a caveat. The command line is king in Linux, BSD, MacOS, AIX, and to a lesser extent Windows. These operating systems were crafted from the bottom up with the commandline as a foundational layer. The idea of the context, of the "working directory", the "environment", were concepts that were lifted from that commandline centric world, into what we run now. I think Windows very muc…

Not every version of MacOS. Classic MacOS, System 1-7 and MacOS 8-9, were definitely not crafted with the command line environment as a foundational layer. Using it was like being wrapped in several layers of bubble wrap. You were trapped in the GUI and if you wanted to do something the GUI didn't allow for, you were "using it wrong".

Re: In the Beginning Was the Command Line (1999)

#87
post #13

The command line is still king. Whenever I see new coders struggle, it usually is because they: - Don't know the context of what they are executing - Don't know about the concept of input and output On the command line, the context is obvious. You are in the context. The working dir, the environment, everything is the same for you as it is for the thing you execute via ./mything.py. Input and output are also obvious.…

Reductio ad absurdum: we should all just use an interactive assembler. Then you really are "in the context". There is a level of abstraction that makes sense. What level that is is dependent on your objectives.

DDT, the shell for the ITS operating system, was also an assembly-level debugger.

Re: In the Beginning Was the Command Line (1999)

#88

Earlier quoted context omitted.

> The command line is king in Linux, BSD, MacOS, AIX, and to a lesser extent Windows. These operating systems were crafted from the bottom up with the commandline as a foundational layer. This is definitively not true for macOS.

MacOS is a very complete, very well funded desktop environment targeted towards the general user. You want anything extras and you land in applications using private apis and the command line.

The command line is not a "foundational layer" in macOS, that was my point. It exists on the same layer as the GUI does.

Re: In the Beginning Was the Command Line (1999)

#89
post #16
post #13

The command line is still king. Whenever I see new coders struggle, it usually is because they: - Don't know the context of what they are executing - Don't know about the concept of input and output On the command line, the context is obvious. You are in the context. The working dir, the environment, everything is the same for you as it is for the thing you execute via ./mything.py. Input and output are also obvious.…

The more experience I accumulate, the more I rely on GUIs. Explanation: when I was younger I used exclusively the CLI and underestimated GUIs. Now I tend to appreciate GUIs and use them more.

Can you give some examples? Which GUIs are you using?

Re: In the Beginning Was the Command Line (1999)

#90

Earlier quoted context omitted.

The command line is king, but sometimes the king is mad. Which is to say, it can be difficult to work with the monarchy when the syntax is shit . And there's a lot of bad syntax out there: overly cute, so terse as to be cryptographic, the straight-up baffling ... Outside of the syntax (which seems to live forever), you have things like non-sane defaults, obscurantist man pages ... the list goes on.

> the syntax is shit When you’re typing a lot, you really don’t want to do a lot of typing for each step. And the shell scripts were for automating some process, not solving a particular problem (you use a programming language for that). The workflow is to have the references ready in case you forgot something. That brings up the man pages, which can varies in quality, but, for most software I’ve used, tend to be com…

I'm not sure if I have O'Reilly's System Administration book. I used to get pre-prints back in the early nineties when they were still quite new. In any case, yes, I have read and I have Been Around.

And I still think that we can improve. More over, we ought to improve.

Post reply on HN