I really like simple software that is built for a specific task which it then does extraordinary with a simple to understand codebase. Similar to the philosophy of suckless.org.
What are your favourite programs that “suck less”?
I just discovered lowfi. Does what it says, adding ambiant/lo-fi music to my work day.
Speaking of suckless, does anyone know of a Wayland-compatible window manager, similar to DWM, preferably written in Rust or C (but not C++).
Seems like a fun thing to tinker with to learn how window managers work.
By the way what do you dislike C++? I’ve been getting into lower levels of programming as of late and were unsure about the language to pick. Is it just the OOP stuff?
Thanks for asking. It’s partly OOP, but more than that, C++ is just rife with footguns and is basically unreadable for me.
I think C is much more readable and I find imperative/procedural programming to be much more delightful and readable.
Rust is my absolute favorite though, because it removes the footguns of most lower-level langs while being just as performant. The only trade-off is that you need to understand the borrow checker, but working with it becomes substantially easier over time and saves an ungodly amount of headaches. You can also write something that very closely approximates OOP, without the most of the footguns (like inheritance, until you get into more advanced stuff like trait objects, anyway).
I’ve been eyeing dwl for quite some time which is like 3k lines of c excluding deps, but don’t have the time to jump ship. So can’t tell how stable it is.
This is perfect! Thanks!
mpv
Well, I personally have a soft spot for the gopher protocol and the community that formed around it… it’s in a way the better internet
I’m not sure how closely it hews to your definition, but I really love
vim
.Not
neovim
.vim
.And get those plugins out of my face. I just want a TUI text editor that works the same everywhere.
KDE Plasma. IMO it looks and feels like how Windows should have progressed after 7 with none of the Microsoft bullshit.
kew. For local music playback. I might be biased though.
I am surprised this player isn’t getting the recognition it deserves.
exiftool is one I use to tag my images and videos with my name and sort them. jq is another that does a quick export from json
tldr
man but well… sucks less
I’m not a programmer (don’t know about code) but appreciate this ethos from a user’s perspective, so:
- LosslessCut (trims, combines and separates videos without reencoding)
- Xpano (stitches photographs/makes panoramas, easy, just works)
- Colorway (on-screen eye-dropper for colour; gives hex code and combinations)
- Wordbook (offline dictionary)
- Breathing (it’s just breathing)
- Blanket (nice background sounds)
less
Much better than
more
.The ancients were right when saying that less is more!
mpv, imv, zathura, ffmpeg, imagemagick, pandoc, yt-dlp, yazi/ranger, curl/wget
I realize many of this don’t strictly conform to the suckless philosophy. (which is meme imo). They more loosly follow the UNIX principle: Do one thing and do it well. I would have added emacs, but why emacs follows the unix principle is an argument for another time
The one thing I wouldn’t agree with is ffmpeg.
It does not do one thing. It does a thousand things. The way different functionality works is inconsistent. In some cases you need to read the source code to understand how or why something is happening, as it’s not generated in the already expansive documentation. To me, it’s the antithesis of the UNIX philosophy.
That said, it’s a brilliant piece of software.
All you said also applies to Linux!
LocalSend for transferring files between devices on a local network.
More self hosting than a program, but Home Assistant has legitimately changed my life. It allows for full home automation run entirely from within your home. The customisation options are effectively as unlimited as programming, while still somewhat holding your hand (unless you go full programming mode).
F-Droid because I hate having ads shoved in my face for daring to use the official installation method for an android app. You may find quite a few apps by smaller development teams or dedicated individuals that suck less than the big apps.
[Lynx](https://en.wikipedia.org/wiki/Lynx_(web_browser) web browser. Not particularly usable for most tasks, but simple. Very handy if you accidentally delete your desktop environment and don’t have a second device with internet access.
Since you mentioned LocalSend: https://syncthing.net/. It’s a way to sync files between devices. And since I bring my phone wherever I go, that means it works seamlessly for me.
Lynx
I know of two other uses for it:
- Conveniently setting up a software with a web interface while on a headless server
- Looking busy at bullshit jobs - see the Looking Busy anecdote near the bottom
- podget: TUI podcast aggregator, implemented as a couple thousand lines of bash
- mblaze: similar to mh - a suite of simple unix tools to work with email
- sxiv: lightweight image viewer
- pass: TUI password manager following the unix philosophy
- khard, khal, todoman and vdirsyncer: contact manager, calendar client, todolist and syncer, which are relatively simply implemented
sxiv
andpqiv
have both been great for my niche use case, which involves displaying a single image that auto-updates via inotify.
I just watched this video of Copyparty:
https://www.youtube.com/watch?v=15_-hgsX2V0
and I can quite solemnly say – as an emacs user mind you – sometimes you just want a self-contained tool under 1MB that does everything
The video showed up in my feed and only watched it because of your recommendation.
The video is so information-dense that I feel like I’ve watched a 10 hour video and been hit by a sledgehammer.
You couldn’t get software this good for any amount of money. I will be using it.
Also somehow took notice of
copyparty
. It definitely piqued my interest. Sadly i do not sync enough with my server ascp
cant handle, so didn’t set it up yet. Thanks for the share.Copyparty looks like awesome software that I have absolutely no use for nor the time to set it up but I still want it haha. The video demonstration was really impressive if you haven’t seen it yet.
(btw It’s pique not peak)