6 ms·
This inspired some of our design principles in the CLI Guidelines: https://clig.dev/ https://clig.dev/ The CLI is the opposite of the Mac in a lot of ways -- r
by bfirsh 6y ago
This inspired some of our design principles in the CLI Guidelines: https://clig.dev/ https://clig.dev/
The CLI is the opposite of the Mac in a lot of ways -- reality instead of metaphors, remember and type instead of see and point, make it a conversation, and so on.
- xnyan 6y ago>Because people don’t understand what computing is about, they think they have it in the iPhone, and that illusion is as bad as the illusion that ‘Guitar Hero’ is the same as a real guitar.” For me, this was the signal that this as a "if only people used computers like I personally think they should" pieces. I know lots of people who play guitar hero, lots of people who play real guitars, and some who play both (me for one, mediocrely in both cases). I have met zero people who think guitar hero = guitar. They are different things that serve different needs. I use a cli to compute all day, every day. Can't imagine using computers without one. I have no empirical proof of this, but I would be willing to wager the deed to my house that the vast majority of users, having been explained what a cli is, the benefits of it, and how to use it, would chose to never use a CLI again. It's not what they want, it's what other people want and it's a myopic view of what computing is.
- varenc 6y agoI believe Alan Kay is saying that while people know Guitar Hero isn't real guitar, they don't know that using an iPhone isn't "what computing is about". Here's the full quote from him: If people could understand what computing was about, the iPhone would not be a bad thing. But because people don’t understand what computing is about, they think they have it in the iPhone, and that illusion is as bad as the illusion that Guitar Hero is the same as a real guitar. That’s the simple long and the short of it. What’s interesting is, the computational ability of an iPhone is far beyond what we need to do good computing. What you wind up with is something that has enough stuff on it and is connected to enough stuff, so it seems like the entire thing. https://www.fastcompany.com/40435064/what-alan-kay-thinks-about-the-iphone-and-technology-now https://www.fastcompany.com/40435064/what-alan-kay-thinks-ab...
- musicale 6y agoThis led me to Kay's full quote on ad blocking: "A combination of this 'carry anywhere' device and a global information utility such as the ARPA network or two-way cable TV, will bring the libraries and schools (not to mention stores and billboards) of the world to the home. One can imagine one of the first programs an owner will write is a filter to eliminate advertising!" [Kay72] "A Personal Computer for Children of All Ages"
- Dahoon 6y ago>I have met zero people who think guitar hero = guitar You are agreeing with the quote more than you are disagreeing. It specifically says that thinking guitar hero = guitar is an illusion, just like iPhone = computing.
- jonahx 6y ago> Can't imagine using computers without one. I have no empirical proof of this, but I would be willing to wager the deed to my house that the vast majority of users, having been explained what a cli is, the benefits of it, and how to use it, would chose to never use a CLI again. As stated, I agree. But "ugliness" and unfamiliarity are big confounds here. The fairer experiment would be something like: For tasks where a CLI app is a better fit than a GUI, would a person trained in the CLI and forced to use it for, say, a day (however long it took to become comfortable and see productivity benefits) then decide to keep using it, or go back to a GUI? Imagine an office worker and some cumbersome workflow with excel, microsoft word, and GUI folders.
- 0x445442 6y agoI think your question has been answered to some extent. As I understand it, there is wide spread usage of WeChat apps. Users of WeChat use the platform for many tasks other than text messaging. In, essence, WeChat is just a spruced up CLI.
- core-questions 6y ago> "if only people used computers like I personally think they should" I think that if one could take a sufficiently aggregated superset of that from everyone on HN, one might very well come up with a philosophy of computing that actually is quite powerful. In general I think the idea is that the computer is supposed to be a tool, in addition to a toy; with the awareness that playing with tools is often just as much fun as any toy could be, and conversely that a toy is a powerful way to learn. > "Because people don’t understand what computing is about, they think they have it in the iPhone" I agree this is myopic. I can use my iPhone to do a great many computing-related tasks; and when it is insufficient, it is certainly sufficient to reach out to a bigger, more powerful machine where I can do such things. As long as we retain the powerful (and not yet enshrined) freedom to connect things together over the Internet, your "computer" is not just whatever device you hold in your hands.
- bawolff 6y agoI don't think the cli is any less of a metaphor than the desktop is. Its just a different metaphor. Its not like shell pipelines are really pipes between two processes or a filesystem is the same as a physical system of files.
- PaulDavisThe1st 6y agoA pipe(2) in Unix is actually a piece of memory arranged so that it can be used as a FIFO, written and read to. There really is a physical object corresponding to the pipe, and the "|" refers directly if tersely to that object. A filesystem is fundamentally a way toorganize blocks of data on a storage medium. It consists of an actual physical medium with various attributes, which is used by a rule-driven system ("the filesystem") to decide where to put data (and conversely where to find it). It doesn't actually work in the same way as a paper filing cabinet, but in most operational senses, the two things are far closer together than they are different. The CLI is not a metaphor - it's an abstraction. It removes details that you don't need to know about (mostly), but provides you with a way to operate directly upon the objects (concepts) known to the operating system that you are interacting with. The classic Mac desktop described in TFA does consist of a lot of metaphors. Technically one can see this clearly in the way that the kernel of macOS isn't responsible for most of the way that desktop functions today: this is left to user-space services that create higher level objects for the user to interact with, leaving the kernel to deal with the same sorts of objects you'd describe with the CLI. Or something like that.
- bawolff 6y ago> There really is a physical object corresponding to the pipe If you open up your computer and get out your microscope, you're not going to find the pipe. Computers are metaphors on top of metaphors. There's nothing wrong with that but you have to go way way down the abstraction tree before you are dealing with anything "physical" > The CLI is not a metaphor - it's an abstraction. I'm unconvinced there is a difference (other than abstractions being hardcore)
- Phrodo_00 6y ago
- xixixao 6y agoGood web design and content. This is useful. It's mostly basics but even those can be very helpful to have on a single page. Thanks for the resource!
- eschaton 6y agoI haven’t read your piece yet, but I searched the page and didn’t find any mention of DEC VMS’s DCL, or Symbolics Genera’s Dynamic Listener. If you’re talking about how to design a command line for usability, you really need to become familiar with them, as usability and extensibility were explicit design points and they both work very differently than (and much better than) even modern UNIX. They should have come up in whatever literature search you did prior to writing your piece. At least you can easily investigate both of them via preserved documentation and emulators, if you don’t have access to hardware on which to run them: There’s an x86-64 build of OpenGenera floating around you can run on Linux, and you can run VMS in SIMH. And Kalman Reti did a great demo of Genera on YouTube.
- adamrezich 6y agoI haven't read the piece either and I also don't know what any of those acronyms are all about but how is "I didn't read this but I CTRL+F'd for terms I believe to be important and they weren't there so what are you even doing" a useful comment to make?
- trentdk 6y agoSeemed like a fine comment. I now know there are people who think those mentioned technologies are important enough to require mention in this sort of write-up. I’m now curious, and will look them up.
- rfrey 6y agoThe comment is “these concepts and artifacts are table stakes for any discussion on this matter, and they seem to be missing”, which in my view is a valuable contribution.
- Privacy846 6y agoThat “Cli Guideline” seems to be written by people who are enarmored with terrible shells like Bash.