Live data from Hacker News

Hyper 2, Electron based terminal

zeit.co

91–100 of 231 posts

Re: Hyper 2, Electron based terminal

#91
post #36

Earlier quoted context omitted.

- Easier to make a multiplatform application, compared to alternatives. - Makes it possible for people who don't know (and/or don't want to know) anything beyond the web stack to build "desktop" applications. - Easy to make it look nice by default, because you can reuse all the work that went into building the browser as a runtime, + you have a ton of eyecandy JS libraries to choose from.

Also you can have interesting rendering possibilities like in-line display of images, charts, tables. Longer-term: new generation of command-line tools with different ux paradigms for interactive use? Like, Funny that people "get" jupityr notebooks but not this.

Those possibilities are the reason why I started my terminal project, Extraterm. You can get an idea of its unique features here: http://extraterm.org/features.html. The advantage that Electron has over the alternatives is access to a massive ecosystem of libraries and components which can be reused. For example, if I want to add support for showing tabular data directly, I can grab an existing JS component, maybe a spreadsheet component even, and integrate it.

I've done a little bit of experimenting with "alternate UX and display paradigms" shall we say, and that is a long term goal of the project too. Right now the current implementation focus is on filling out the list of standard boring terminal features which everyone needs and expects, plus some more performance work.

The comparison with jupityr notebooks is a good one and it would be nice to support a richer experience while still being keyboard and command line focused.

Re: Hyper 2, Electron based terminal

#92

Earlier quoted context omitted.

The problem is that your language choice is very limited. You can choose C++, no thanks, or Python which is very slow. There are no good options for languages or VMs on Qt in the Java/C#/VM/Jit range of the language performance spectrum.

Python and js apps have the same order of magnitude of speed. But pyqt apps are way faster than electron

No they don't. JS running on a modern engine like V8 are easily 10x faster than CPython which PyQt uses.

If you think Python and JS are about the same speed then it is because of Qt itself, but certainly not because of CPython.

Re: Hyper 2, Electron based terminal

#93

Earlier quoted context omitted.

hey, how else can I change the transparency of my shell with css ?

Why do you need to use CSS specifically? macOS built-in Terminal.app has had transparency (even varying transparency for focused vs background windows) for years. Edit: oh, maybe you were being sarcastic? It's been a long day.

yeah, I was.

I understand the appeal of having html/css hyperdynamism everywhere.

And at the same time I don't want to pay the price to the point that I prefer living in lotech linux land. I value frugal over potential flexibility these days.

I told that often, but the other day I booted win9x (on a pentium 3 or less, some MB of ram, maybe 64) and ran an old copy of turbo pascal 7 (dos). That thing was flying. It had 80% of what I wanted (including, hear this, ascii shadowed floating editing windows.. talk about overfancy) and used zero resources.

Today to have that kind of interactions you'd need a somehow recent quad core and 4GB+ of ram. All that mostly for a bit of eye candy (css may be of some use to decorate tokens/entities to give additional info, but I rarely see that).

Re: Hyper 2, Electron based terminal

#94

Earlier quoted context omitted.

hey, how else can I change the transparency of my shell with css ?

you're kidding, but that's really it: people love to hate on electron, but nobody has a better solution. it's about "I can reuse my web-based UI on all desktops, mobile and web", not about css

Well web based uis are subpar IMO, especially accounting for resource cost.

/me goes back to emacs

Re: Hyper 2, Electron based terminal

#95
post #76

Earlier quoted context omitted.

I'd have to use bad old C++ with it, so how about no.

Come on, what is bad and old on c++? :)

I like to Keep it simple - and it's very painfull to do that in C++. Yes, you can write simple code, but it's lot easier to do it in other languages.

Re: Hyper 2, Electron based terminal

#96
post #49

Like I've said a million times, https://medium.com/p/electron-is-cancer-b066108e6c32 Why would you use a full web stack terminal emulator, over.. well a normal native and actually reasonably fast terminal emulator? The trend is catching on, so maybe one day we can't even reach for a native email client because it will be unmaintained in favour of the hackable html webstack email client. Congratulations on reaching v2…

Look several years into the future and what you could have there is electron being faster/lighter. Being web-based gives you a standard way for fetching and displaying content. It's just a matter of time that the performance improves. Especially when many people are experimenting with it. > maybe one day we can't even reach for a native email client because it will be unmaintained in favour of the hackable html webst…

That's what has been said for a while about Electron: it'll be optimized and less heavy. Most applications use Electron are just as heavy as they always has been, and where there are exceptions, it's more due to moving away from the Electron-stack and putting functionality in lower-level languages, or things like this where it uses only a few elements and defers to other rendering techniques.

Re: Hyper 2, Electron based terminal

#97
post #74

Earlier quoted context omitted.

The average end-user has less than 4GB of RAM and would struggle to run electron apps at all. They would get frustrated with the computer being slow but would not know who to blame. Aside from that, electron apps do not look, act or feel native.

Does the average developer though? I wouldn't want to work on a developer machine without at least 8gb.

I can work productively on my 6yo notebook with 4 GB RAM, because a terminal, CLI tools, vim and a browser covers my needs. If I had to use Electron apps, I'd probably have to look into buying a new notebook, which is quite wasteful both on the money side and on the material resources side of things.

Some developers will probably need more than that because of the resource demands of their specific fields, but other than that, 640 KB ^W^W 4 GB should be enough for everyone.

Re: Hyper 2, Electron based terminal

#98
post #20
post #2

Hyper is the only proper terminal emulator on Windows. Time to upgrade.

Maybe not for long: https://github.com/Microsoft/vscode/issues/34442

Also the default Windows terminal is getting tabs: https://github.com/Microsoft/console/issues/49

This is also fascinating: https://github.com/Microsoft/console/issues/57 - a proper PTY for Windows, implemented by Microsoft, with the ConEmu guy giving it a thumbs up.

Re: Hyper 2, Electron based terminal

#99
post #69
post #51

Earlier quoted context omitted.

Good read. Thanks. And I agree: Electron is horrible to deal with as an end-user. I've been using Vim for some time and then decided to use VS Code. The integrations, plugins, and everything else were awesome, but man the 3-4GB of RAM was just crazy. Despite the fact my machine has 16GB of RAM, I'm dealing with quite a few VMs and Docker containers locally, so actually 16GB isn't a lot.

"Electron is horrible to deal with as an end-user" - this is not reflective of your average user at all. Most people are just happy to have an app that looks, acts and feels native.

Electron apps don't look/act/feel native.

Re: Hyper 2, Electron based terminal

#100

Earlier quoted context omitted.

Python and js apps have the same order of magnitude of speed. But pyqt apps are way faster than electron

No they don't. JS running on a modern engine like V8 are easily 10x faster than CPython which PyQt uses. If you think Python and JS are about the same speed then it is because of Qt itself, but certainly not because of CPython.

> JS running on a modern engine like V8 are easily 10x faster than CPython which PyQt uses.

Citation needed. As I've said numerous times before, saying one language is faster than another is pointless. You have to give a full context around it. What particular scenario is CPython slower than V8?

While it's true that a pure CPython tight loop will be slower than one in V8, I have a hard time imagining that being the bottleneck of desktop applications.

Post reply on HN