We should be getting so much more from our hardware! Let's not settle for software that makes us feel bad.
We should be getting so much more from our hardware! Let's not settle for software that makes us feel bad.
Mind you, the software we had 20 years ago was fully featured, smaller and faster than what we have today (orders of magnitude faster when adjusted for the increase in hardware speed).
Suckless, on the other hand, is impractical esthetic minimalism that removes "bloat" by removing the program. I'd rather run real software than an art project.
If you want more from your hardware, the answer is neither the usual bloatware, nor Suckless crippleware.
"Worst" for me is stuff that grabs keys it shouldn't, scrolling that doesn't work right with `screen` and/or `tmux`, etc.
I love exploring low-latency code but rather than trying to create small, sharp tools the suckless way, I like to create low latency experiences end-to-end. Thinking about rendering latency, GUI concurrency, interrupt handling, etc. Suckless tools prioritize the functionality and the simplicity of code over the actual experience of using the tool. One of my favorite things to do is create offline-first views (which store things in browser Local Storage) of sites like HN that paper over issues with network latency or constrained bandwidth leading to retries.
I find suckless and permacomputing to be the siren song of a type of programmer, the type of programmer who shows up to give a presentation and then has to spend 10 minutes getting their lean Linux distro to render a window onto an external screen at the correct DPI, or even to connect to the wifi using some wpa_supplicant incantations.
There's a significant opportunity cost for zealotry.
No WPA incantations, the OS handles multiple connections seamlessly.
With that, magicpoint/sent and xrandr you just don't care, it works.
(Though in my experience modern Linux kernels have much better networking throughput than BSD kernels. It confounds the overall performance argument of this thread chain, but the overall OpenBSD experience leads to on average a more speedy experience.)
WTF happened to all the THOUSANDS AND THOUSANDS of machines I deployed to datacenters over the decades? Where are the F5 load balancers I spent $40,000 on per box in 1999?
I know that when we did Lucas' presidio migration, tens of million$ of SGI boxes went to the ripper. That sucks.
edit:
All these machines could be used to house a 'slow internet' or 'limited interenet'
Imagine when we graduate our wealth gap to include the information gap - where the poor only have access to an internet indexed to September 2021 - oh wait...
But really - that is WHAT AI will bring: an information gap: only the wealthy companies will have real-time access to information on the internet - and all the poor will have outdated information that will have already have been mined for its value.
think of how HFT network cards with insane packet buffers, and private fiber lines gave hedgies the microsecond advantages on trading stocks...
Thats basically what AI will power - the hyper-accelerated exploitation of information on the web via AI - but the common man, will be releagated to obsolete AI, while the @sama people of the world build off-planet bunkers.
Also, OpenBSD's philosophy is very similar to Suckless. One of the more notable projects that come to mind is the `doas` replacement for `sudo`.
[^1]: This is based on Dan Luu's testing (https://danluu.com/term-latency/). I don't know when this testing was done but I assume a few years ago because I remember finding it before.
I basically only upgrade workstations due to web browsers needs, and occasionally because a really big KiCAD project brings a system to a crawl. At this point even automated test suite runtimes are more improved by fixing things that stop test parallelization from working efficiently vs. bigger hardware.
(It would be cool if dormant tabs can just hold the URL, and kill all memory requirements when dormant after N period of time..)
But heck, even when I am running a high-end game on my machine, the memory consumption is less than when I have a bunch of tabs open displaying mostly text ...
This gives me a way to instantly switch between contexts (with a small delay if a tab has to be reinstated from cache). This is how bookmarks should really work.
This us why Firefox is not the biggest memory hog on my system. Most of the RAM is consumed by language servers and Emacs.
I had over 1000 tabs open in Firefox (macOS) and never noticed any problems. (Trying to clear them out. Down to 920 now.) 2.26 GB out of 32.00 GB is used by Firefox. I have about 70 open in Chrome (since only a certain number fit on the screen) and it's split across 12 processes which are between 12 MB and 158 MB each. I have nearly 500 tabs open (because that's the limit) on my iPhone and iPad each, in Safari.
I am trying to break myself of these habits, but they do have some benefits. For instance when I do a web search on a complex topic, I often scan the results, opening the most promising looking results as tabs. Then I look through the tabs comparing them. The trouble is I never remember to close them when the task is done.
Mainly just not having a workflow of going back to close them. So it's just previous work like a view of some logs, a merge request, a link to a file in a repo, a monitoring dashboard, an alert in a monitoring system, etc.
In Chrome, I do end up closing them eventually because there's no more space to work.
For personal:
it's more like a bookmark, but don't often review them rather than open a new tab to research whatever I'm currently curious about.
edit: That is, I think people sometimes attribute the lag they're experiencing to the number of tabs they have open, when only a handful of their tabs are to blame.
I usually carry 3 sets of tabs, typically around ~10 each:
Personal info sites, like reddit and its links...
Tech Sites, like HN and its links....
Video Sites, like Nexflix / Prime...
EDIT:
Also - what tab-mgmt extensions do you use? Like Tab Grouping etc...
Also - one of the things I attempted to do, but failed to do so consistently, was to swipe to a different desktop between, work, person, and learning/browsing... instead of tab groups I had "workspaces" but that is a hard habit to build, for me, it seems.
I didn't answer before because the answer is none. Not sure if anyone will see this but today Firefox recommended some extensions and one was OneTab. That let me turn all my tabs into a list. Then I could search those and (manually, one by one) open all of the tabs from a given site as long as it's in the title. I'm already down to 264 tabs (from 900+) today in just a little bit of time, and still going.
yea, tab-grouping is essential. (tabkit in the good old days, sideberry currently)
This is the way I do it as well - but I cant hold ~500++ 'context' threads in my head...
I typically hit a tab and wind up here: https://i.imgur.com/KWmVAD0.jpg
(TL:DR OOM errors and the kernel starts reaping processes)
Just seems so odd as I remember playing gta vice city on a pentium 3 with 128mb of ram and now I need 6GB+ to just browse the web
There's a whole spectrum of activity you can have on a tab, and to me I see really no difference between "unhibernating" a tab and just reloading it from scratch.
Either one is very slow in modern crap software.
Unless it happens under 150ms, it is slow.
... Actually the latter is incorrect, in truth I'd expect bookmarks to present me with the exact version I had in front of me back when I bookmarked it, including if the site is temporarily down, has vanished, or if I navigated a more recent version.
this is me
> 500 tabs open (because that's the limit) on my iPhone
that's my wife
The problem with this is that a lot of web pages don't handle this gracefully. You don't end up back where you left off!
It would be nice if all the details of the inactive web page were saved to storage, and then retrieved from storage when the tab is reactivated, without having to make any network calls at all.
Multi-process firefox seems to have absolutely obliterated the performance of firefox with large numbers of tabs until recently (it seems to be have improved).