foxtrottwist

foxtrottwist

Warp—The blazingly fast, Rust-based terminal

A few weeks ago I started using Warp a terminal written in rust. Though in it’s current state of development there are a few caveats (tabs can’t be reordered, I am unable to use my beloved starship prompt, etc…) I absolutely love Warp’s out of box features. Among them nice text editing features, completions and a cmd palette.

Most Liked

Maartz

Maartz

Seems to be an all-in solution compared to Launching Fig - #18 by Maartz
@OvermindDL1 still not OSS.
What’s the thing behind these “new and disruptive” terminal tools?

AstonJ

AstonJ

We should do a book-hands-on-rust book club at some point? I got the book already :lol: (Can get you a copy if you like :023:)

Thanks for the early access code! :orange_heart:

For anyone interested here’s the current set of features:

It does look really nice, but my only issue is (as it is with other apps like VSCode) is that they want to connect to their servers:

Apps really only should connect when you specifically ask them to imo. In TextMate for example will only connect if you have set it to check for daily updates or when you specifically click on ‘check for update’.

I think I have trust issues :lol:

OvermindDL1

OvermindDL1

Those are controlled by the shell, not the terminal, if a terminal were to override those then it would break a lot of other inputs. Almost every shell let’s you change those for note, so if you want to, then change it in your shell. ^.^


Warp is… such a very poor name to pick though, there’s already a warp library in rust that is a web server framework. They really should have looked at used names before picking that one…

o.O What the ever-living… Why would a terminal ever need to access sites like that?!?

If I saw that in my logs I’d immediately wonder if it was infected or something!


And yeah, there is no reason, whatsoever, ever, for a terminal not to be open source. Even Microsoft of all places has open sourced their terminal. Terminal’s are such security troublesome points that you really really need to make certain that it’s not something that’s going to be sending what you type to random servers, or really even making network connections on its own at all (that’s the job of the shells or whatever you’re running in it, a terminal is just a renderer and IO pipe)…

And their site forcing some links to open in new windows is extremely user-hostile, why would they do that?!? >.<


Speaking of, their ‘benchmark’ graph has a couple of massive outliers of terminals called hyper and iterm (neither of which I’ve ever heard of? Why were such poor ones picked?), which massively skewed the rest of the results way way down to the bottom so you can’t actually compare it with the one other that I’ve ever heard of, out of the multiple dozens of terminals I use per month that one other that I’d heard of looks like it’s much much faster than warp but hard to tell since they are all squished into such tiny lines because of hyper/iterm. The massively mis-scaled chart makes it look so questionable (like at the very least they should have made it logarithmic if they wanted those massive outliers in, really makes it look like they are trying to hide something)…

Also, there is already a GPU accelerated terminal (in their benchmark even, the only one in it that I’d heard of, and happened to be the one that looked like it was beating it by a healthy percentage), so why didn’t they just base it on that one (especially since its faster), or did they not because then they would be forced to make it open source, lol.

Let’s see, it used the vtebench benchmark, well, just the scrolling one inside of it, none of the other (usually far more performance hitting) ones, wonder why they picked the easiest/cheapest one… Well let’s grab it as I don’t have it on this (very not up to date) system, aaand let’s runs it (I was also compiling a C++ application for the past half hour on the same machine so this probably slowed it down a bit, but even still):
So trying it with konsole and alacritty (alacritty as a base example as they used it as well in their benchmark):


And for comparison, here was their image:

So alacritty here is obviously slower than on their machine, which makes sense because this is not at all a modern machine (quite frankly ancient in many aspects), and in comparison even my most used (lots of features) Konsole terminal is not that much slower, and in their benchmark warp seems to be much much slower than alacritty by a much larger amount. Even in just raw values (not taking into account how much slower this machine very likely is) even Konsole, which is not built for speed but rather features, is substantially faster that most of their tests… o.O And again, why just the scrolling test considering how utterly trivial it is?!?

Still though, the closed source’ness of it with such a hugely hugely security conscious interface makes me quite frankly very itchy… (do you really want a terminal potentially broadcasting what you type out or what is displayed back, whether messages, proprietary code, passwords, PGP keys, etc… etc…, because how do you verify it doesn’t? Why does a terminal emulator even have network functionality at all?!?)

Where Next?

Popular General Dev topics Top

AstonJ
What do you think needs fixing in the digital / computer science sphere?
New
jaywengrow
Hello! It’s Jay Wengrow, author of A Common-Sense Guide to Data Structures and Algorithms. My book now has a supplemental website, where ...
New
AstonJ
Curious to know which languages and frameworks you’re all thinking about learning next :upside_down_face: Perhaps if there’s enough peop...
New
New
DevotionGeo
As the title suggests, this thread will contain some real wisdom came from experience. Please add something meaningful than fancy looking...
New
OvermindDL1
What shell(s) do you use, why do you use them, and how do you have them configured? Note, this is about shell’s, not terminals, terminal...
New
Margaret
Hello everyone! This thread is to tell you about what authors from The Pragmatic Bookshelf are writing on Medium.
1147 29994 760
New
Exadra37
Kubernetes is everywhere. Transactional apps, video streaming services and machine learning workloads are finding a home on this ever-gro...
New
Maartz
Hi folks, I don’t know if I saw this here but, here’s a new programming language, called Roc Reminds me a bit of Elm and thus Haskell. ...
New
jaeyson
Hi!, hope everyone’s ok. Sorry if this question is ambiguous (i’ll remove this if i break some rules here). This is more like a self-ques...
New

Other popular topics Top

PragmaticBookshelf
Brace yourself for a fun challenge: build a photorealistic 3D renderer from scratch! In just a couple of weeks, build a ray tracer that r...
New
ohm
Which, if any, games do you play? On what platform? I just bought (and completed) Minecraft Dungeons for my Nintendo Switch. Other than ...
New
DevotionGeo
I know that -t flag is used along with -i flag for getting an interactive shell. But I cannot digest what the man page for docker run com...
New
AstonJ
We have a thread about the keyboards we have, but what about nice keyboards we come across that we want? If you have seen any that look n...
New
Margaret
Hello everyone! This thread is to tell you about what authors from The Pragmatic Bookshelf are writing on Medium.
1147 29994 760
New
AstonJ
Was just curious to see if any were around, found this one: I got 51/100: Not sure if it was meant to buy I am sure at times the b...
New
AstonJ
If you’re getting errors like this: psql: error: connection to server on socket “/tmp/.s.PGSQL.5432” failed: No such file or directory ...
New
AstonJ
This is a very quick guide, you just need to: Download LM Studio: https://lmstudio.ai/ Click on search Type DeepSeek, then select the o...
New
Fl4m3Ph03n1x
Background Lately I am in a quest to find a good quality TTS ai generation tool to run locally in order to create audio for some videos I...
New
PragmaticBookshelf
Use advanced functional programming principles, practical Domain-Driven Design techniques, and production-ready Elixir code to build scal...
New