Live data from Hacker News

What happens when you open a terminal and enter `ls’

warp.dev

51–60 of 60 posts

Re: What happens when you open a terminal and enter `ls’

#51
post #31

I want to use Warp but it has forced telemetry. Any roadmap for making this more private? Would happily give you my money

I just found out about warp, installed it and having a similar issue.

Terms are really weird for something I thought was a terminal app, and their commong questions are talking about "cloud-oriented features" which I really don't know and probably don't want.

I'd be happy to pay (even per month) for a version of this that asks you "do you want to use our cloud features or just the local version" and has different pricing and definetely no login.

Note: I didn't end up actually trying this as I really didn't like the sound of not knowing what my terminal is sending out. They do list what they send for telemetry, but not sure what is considered "cloud-features"

Re: What happens when you open a terminal and enter `ls’

#52
post #5

Google asked me this in an interview.

I had the same for SRE @ Google - really simple question that probes the entire free-form depth of your systems understanding.

I guess you could leave out all the hardware aspects of it - that's why I think it's not a great question myself, just too wide.

Re: What happens when you open a terminal and enter `ls’

#53
post #3

Hey HN! I'm Suraj, one of the authors of this blog post. Andy (@acarl005) and I came up with the idea to write this post when we realized there weren't many existing resources on how a terminal works under the hood, end-to-end. If folks find this useful, we'd be happy to turn this into a series and dive deeper into sub-topics. Let us know what you think :)

Thank you for your article and I would be grateful for a deep dive series on how a terminal works would be great.

Re: What happens when you open a terminal and enter `ls’

#54
post #17

One thing that is missing is the termcap/terminfo system. For funsies, you can try to run your session with TERM=dumb to get a retro experience :)

terminfo would be a good topic for a couple blogposts for sure. Back when I was first learning all this stuff I never felt like I truly understood all the intricacies of this system. I tried to understand back when alacritty made it's own entry, but a lot of things still feel somewhat arcane. Basically, it's a capability list though, IIUC.

Yeah I like to think of it as a capability list as well. There was a brief footnote [12] about $TERM in the post, but terminfo could certainly be dissected further.

[12](https://www.warp.dev/blog/what-happens-when-you-open-a-termi...)

Re: What happens when you open a terminal and enter `ls’

#55
post #51
post #31

I want to use Warp but it has forced telemetry. Any roadmap for making this more private? Would happily give you my money

I just found out about warp, installed it and having a similar issue. Terms are really weird for something I thought was a terminal app, and their commong questions are talking about "cloud-oriented features" which I really don't know and probably don't want. I'd be happy to pay (even per month) for a version of this that asks you "do you want to use our cloud features or just the local version" and has different pri…

Thanks for the comment. I definitely feel your concerns.

To clarify, all cloud-oriented features are fully opt-in. For example, you have to explicitly share a block for us to store it in the cloud.

You can also opt-out of telemetry (which we use to determine feature usage and plan our roadmap FWIW). We even have a network log so you can see every network call we make. More details here: https://www.warp.dev/blog/telemetry-now-optional-in-warp

Re: What happens when you open a terminal and enter `ls’

#56
post #21

That article starts with too many inaccuracies to recommend it to anybody: - Teletypes were designed about a century before the era of mainframes. - Mechanical teletype did not have an "I/O driver" in it. - OS on Mainframe computers did not have a "Kernel", and neither "I/O driver", "Line discipline" or "TTY driver". This model was introduced with UNIX, the OS that ran on minicomputers. - Was ChatGPT used to write th…

I’ve seen many times descriptions of how original teletypes work and how that influences modern terminals. However, something that I have not seen yet and I’d love to check is an attempt to redesign the terminal from scratch separating historical baggage from the parts that still make sense nowadays. How would a designer create this tool without the historical precedence? Is tradition holding us back? What new standa…

I love this sentiment. Your questions would make for a very interesting post.

While we haven't rebuilt from absolute ground zero, Warp is definitely trying to extend the capabilities of a terminal (emulator) from what's historically been possible. For example, we introduced a dedicated input editor so you can have an IDE-like experience in the terminal. It's fundamentally different from how input is entered in a traditional terminal. But with this innovation, we've had to be careful to ensure that all the input features you expect in a normal terminal (even obscure ones like `alt-.`) work how you'd expect, _and then some_.

Overall though, starting from scratch is hard because we need to stay backwards-compatible with all the CLIs we use everyday.

Re: What happens when you open a terminal and enter `ls’

#58

Earlier quoted context omitted.

I assumed so, but then I got curious what would happen in a DOS window.

Thankfully it works in Powershell on Windows. I lost any muscle memory for `dir` a long long time ago.

Until you hit something like "Get-ChildItem : A parameter cannot be found that matches parameter name 'lh'" and are jarringly reminded that this is not your old friend `ls` after all.

Re: What happens when you open a terminal and enter `ls’

#59

Earlier quoted context omitted.

Thankfully it works in Powershell on Windows. I lost any muscle memory for `dir` a long long time ago.

Until you hit something like "Get-ChildItem : A parameter cannot be found that matches parameter name 'lh'" and are jarringly reminded that this is not your old friend `ls` after all.

This is why, if I use a shorthand in PowerShell at all, I avoid using "dir", "ls", and the like. "gci" is at least not like any common Unix/BSD/PC-DOS/Windows/OS/2 command.

Re: What happens when you open a terminal and enter `ls’

#60
post #21

That article starts with too many inaccuracies to recommend it to anybody: - Teletypes were designed about a century before the era of mainframes. - Mechanical teletype did not have an "I/O driver" in it. - OS on Mainframe computers did not have a "Kernel", and neither "I/O driver", "Line discipline" or "TTY driver". This model was introduced with UNIX, the OS that ran on minicomputers. - Was ChatGPT used to write th…

I’ve seen many times descriptions of how original teletypes work and how that influences modern terminals. However, something that I have not seen yet and I’d love to check is an attempt to redesign the terminal from scratch separating historical baggage from the parts that still make sense nowadays. How would a designer create this tool without the historical precedence? Is tradition holding us back? What new standa…

That was already done in the 1980s and early 1990s. Microsoft/IBM operating systems evolved the notion of consoles, still-handle-based I/O devices that responded to additional first-class I/O system calls (beyond the read/write/ioctl model) for 2-D addressing, direct output buffer manipulation (including reading of the output buffer), keyboard input that did not hide the decoding of key chords into characters, and mouse input.
Post reply on HN