
Why I Use Suckless Tools - martinhath
https://christine.website/blog/why-i-use-suckless-tools-2020-06-05
======
geerlingguy
This post highlights many of the reasons why I’ve chosen to just stick with a
standard, widely-used desktop OS (macOS in my case, but could easily be
Windows or some other OS like Fedora), and use almost all the default
settings, adapting to the defaults over the years.

Would the tiny incremental gain from tweaking one or two specific settings to
my perfect liking save me anywhere near the amount of time, happiness, or
productivity that I save from just letting someone else choose the defaults
for me?

I don’t have enough time in my life to debug and recompile my window manager
or Terminal app on a regular basis. Maybe a long time ago, when I was single
and had a lot more time to burn.

But once you get used to an OS and set of tools—warts and all—I think the
level of tweaks that are listed in this post are the equivalent of someone
spending an hour each day prepping clothing and makeup.

For some people, that’s a fun part of their day. For me, it seems like
torture.

~~~
booleandilemma
Yeah, the closer I can get to just opening Visual Studio and pressing F5 the
happier I am. I like to focus on writing software and shipping a product, not
troubleshooting toolchains and figuring out config files for each piece
involved. I know not everyone feels this way.

~~~
xyzzy_plugh
I don't think it's about wanting to focus on troubleshooting toolchains or
figuring out config files for each piece involved. I think the issue generally
boils down to technical-minded users being empowered to unblock themselves.

I use tools like Linux and suckless because I am sick and tired of being
blocked by shoddy software failing in an inexplicable, opaque way. If
something goes wrong in Windows or Mac OS X, I might be able to file a bug off
to into the void, and restart everything, to work around it. There's not much
other choice. It's just a waste of time every time it happens.

With software I control, whether or not it's a waste of time is up to me.

~~~
Carpetsmoker
Yeah exactly; I think "how easy is it when everything works?" is just part of
the total question of "how easy is it?" Another part is "how easy is it to
figure stuff out _if it doesn 't work?_" I think sometimes people forget to
ask that second question. This applies to almost all software.

There's obviously a trade-off here, and no single right or wrong answer.
Visual Studio is undoubtedly neat software with a lot of features that help
people being productive; but it's indeed not as simple as the previous post
made it out to be, IMHO, as it forgot about the second question.

Then again, if you're lucky nothing ever breaks and you win :-) But in my
experience people usually aren't that lucky.

------
hhmc
> If something goes wrong while using them, you can easily jump right into the
> code that implements them and nail down issues using basic debugger skills.

I feel like we have very different conceptions of what 'easily' fixing a
configuration issue looks like.

~~~
tarruda
From the implementation POV, suckless software is very simple, and this makes
it easier not only to tweak configuration (which is usually done C headers
through defines), but also any kind of customization you might need.

Take their window manager dwm as an example. The codebase is only 2000 lines
long, so any bug you find will have to be hidden in those 2000 lines. If you
take a Sunday afternoon to study the code, you will very likely understand how
every piece of the software works, at which point you will be in a position to
fix anything you might find. You might even end up forking it and implementing
your own window manager (AwesomeWM was originally forked from Dwm).

~~~
ilitirit
> If you take a Sunday afternoon to study the code, you will very likely
> understand how every piece of the software works, at which point you will be
> in a position to fix anything you might find. You might even end up forking
> it and implementing your own window manager (AwesomeWM was originally forked
> from Dwm).

I don't think I have ever needed to do this "fix" any piece of configuration
in any software.

While I understand the concept and approach, I don't think that this is a
productive use of most people's time.

~~~
noobermin
Be a little charitable to OP and this reply. The configuration is indeed in
code but it's macro defines. It's essentially as simple as changing a text
configuration file, it's not like you have to actually edit code (as in new
functions, adding actual logic). Things like fonts and sizes and colors is
changing defines, it's actually simple.

Now when it comes to more complex stuff, like hotkeys, well you're essentially
programming already in most other wms that doesn't have such things build in.
AwesomeWM, i3, qtile (not popular but I used it for years) basically is half-
way to programming, although it's a line, so it isn't any worse. I think the
thing people aren't getting is the code is actually simple, so editing it and
recompiling it isn't a chore.

~~~
ilitirit
I actually am quite familiar with suckless tools and I do consider myself an
advanced user, so I'm probably part of their target market as well. But to be
honest, from a pragmatic point of view I just don't see how configuration
through code is better/worse than configuration through dot/json/ini files in
the average "suckless" use-case. Why must this even be something that I care
about?

If it's a case of their software being simpler to understand so which makes it
easier to fix bugs, then sure, I get that. But in my experience, software that
has been around forever just tends to have fewer bugs in general so it's also
just something else that I simply don't need to care about. And how often does
the average user of suckless tools actually have to fix bugs in the programs?
If it's more than once, then does the label "suck less" even qualify?

Is it just because the software is extremely minimal and therefore less
"bloated"? I get that too, but personally, why would I care if a piece of
software is 70kb or 500kb in this age? YMMV.

Don't get me wrong - I'm not trying to bash suckless or any other community
here. I'm just very pragmatic about the tools that I use and my workflow. If
you're the type of person that likes to tinker and customize every aspect from
the ground up, sure then maybe suckless tools are for you. Tinker and mod
away, there's absolutely nothing wrong with that.

~~~
karatestomp
> I get that too, but personally, why would I care if a piece of software is
> 70kb or 500kb in this age? YMMV.

I'm torn on this because I am way, way over screwing around with my OS, but I
also hate that all the modern standard desktop operating systems (macOS,
Win10, Gnome3 or KDE) that you get if you don't want to jack with defaults and
configure things or use some way-less-popular so likely to be (even more)
janky distro or "spin" or whatever, want to take up a gigabyte or more (way
more for macOS and Win10 especially, tens of GB) of disk and hundreds of MB of
RAM, while delivering experiences that are _marginally_ better than what we
had in the late 90s and early 2000s with sub-GB OS installations and low-tens
of MB of memory use when idle.

~~~
nerdponx
All the more reason to not get worked up over including something as mundane
as a TOML parser in your dependencies for a config file. So that, you know,
you don't have to _recompile_ your WM whenever you want to adjust something.

------
noobermin
The thing I like about the suckless people and their tools is not breaking
what works. Seriously, the _primary_ problem with software today in my
assessment is churn. Things change way too fast and you wonder how people get
anything done as aging things are constantly being deprecated instead of being
considered stabilized. I'm not really a developer (I'm a computational
scientist, so I am a different kind of developer), so I'm not sure if this is
my place to complain but if I had the time I'd write a whole article about it,
I just don't think anyone would care to listen.

On the other hand, the thing that I do not like about suckless and the minimal
hacker types in general is just the staunch elitism. I think you'll get some
level of elitism with any group but in this case, with the minimalism comes a
bit of a sense of hostility to new users who just don't think your way. It
feels like there is no in between in the foss world, either people seem to be
friendly and kind with TOCs and all that but force churn every few years or
are militantly minimal and just super unpleasant as people. Then again, I
think the thing I want isn't really minimalism, stability to me is the thing
that is lacking greatly in the open source world which is sort of a side
effect of the minimalism.

~~~
carapace
> Seriously, the primary problem with software today in my assessment is
> churn.

I agree. The machines are wicked fast, most of the needful algorithms are
already sussed out, not to mention how ML solves another swath of problems.
Today most "programming" should consist of picking and configuring existing
software, and this should be seen as a big win and a sign of maturity.

(Instead we have Python 3 and Rust and... <rant omitted>)

So, yes, we need the outside view, please complain!

In re: elitism and hostility, remember that most of the old-school programmers
are old enough to have grown up before nerds became cool, so some of that
grows out of resentment and alienation.

~~~
nerdponx
Python 3 is a _great_ example of "picking and configuring existing software".
If it's not in the standard library, it's on PyPI. A lot of my Python code is
just gluing together high-level functionality from various libraries. It's
beautiful.

You can complain about this or that aspect of language design, but then you
also have to look at what a clusterfuck of historical accidents C and C++ are.

Like what you like, but at least be correct about why you like what you like
(and why you don't like what you don't like).

------
factorialboy
Back in the day, I used to distro hop, window manager hop and try to find the
ever eluding "perfect" setup.

This lasted maybe 15 years. There was a sense of vanity in trying to be
different yet spectacular.

Today I would tell my younger self that use what makes you productive. Even if
it is the standard Windows or Mac OS environments.

R/unixporn is the nerds equivalent of shirtless beach dudes.

~~~
blauditore
My problem is that I was pretty productive with Ubuntu + Unity, significantly
more than with Windows or MacOS, or other Linux DEs. This was great because
Unity was the default DE for one of the most common Linux distros, so it was
well-supported and easy to find information about tweaks and settings online.

But then it got killed off due to a vocal minority constantly complaining
about it, and now I'm trying to find an alternative that uses similar UI
principles but nothing actually seems to get it right. For example, I often
hear people (computer power users) praise OS X. When I see them use it,
they're mostly operating it in a "casual" point-and-click fashion like the
average casual user. What made the difference for me in Ubuntu/Unity were
power user features, like extensive keyboard navigation, or dragging/resizing
a window with the middle/right mouse button while holding Alt, or searching
the window menu simply by pressing Alt.

~~~
ognarb
Disclaimer: KDE dev

Did you try Plasma? You can drag a window while holding the Win key, there are
tons of keyboard navigation, and your last point can be achieved by this
extension: [https://github.com/Zren/plasma-
hud](https://github.com/Zren/plasma-hud). There is even some global themes
with the look of Unity.

~~~
Avamander
I'm not the person you replied to, but yes, KDE seems to be the closest
equivalent. However I still miss a nicely working global menu.

~~~
heavyset_go
There are several global menu options for Plasma, some of which I think are
better than the global menu on macOS.

------
Havoc
This caters to a very specific audience though. This particular concept while
labelled suckless sounds like hell to me.

To change a config I need to recompile stuff? Jikes

To each their own though. I can see how this could work well if one invested a
mountain of time into learning & fine-tuning it all

~~~
tutfbhuf
> suckless tools having their configuration baked into the executable at
> compile time, they start up instantly

I wonder how many milliseconds slower the startup of a C application will be,
when it reads a config file from SSD first.

~~~
rejschaap
Yeah, reading a single file will not have a noticable impact, but we all know
it will not stop at a single file. Before you know it a full blown web browser
is included. The suckless philosophy is pretty extreme, but I'm grateful there
are people exploring this space.

~~~
mikepurvis
I think that's the key thing. It's not about config, it's the fact that the
"plugins" are all compiled in as well— meanwhile over here in the real world
we have there are entire programs and methodologies dedicated to managing
directories of vimscript files, and sharing your personal dotfiles directory
on github is a thing.

~~~
johannes1234321
With suckless you don't have your dotfiles on GitHub, but your fork and then
you have to keep close to upstream all the time. Else they might cause a merge
hell later ...

------
Macha
I get that people enjoy very minimalist computer experiences, but startup time
is hardly that different between these programs and other slightly more
ergonomic programs which offer conveniences like a config file.

If you look at my startup time for my system it goes something like this:

10s - waiting for monitor to wake up to pick OS at dual boot menu

15s - typing disk encryption password

15s - system uses disk encryption password to retrieve LUKS key

5s - Literally the entirety of my OS and window manager and autostart programs
beginning.

I use i3 for my window manager, which manages to launch instantly, and alt-
enter launches alacritty for my terminal, which also launches instantly. But
even heavier terminals like xfce4-terminal launch very quickly. These programs
are lightweight sure, but they don't need to be recompiled for configuration
and have some ergonomics. I don't see the marginal benefit of maybe 4s at boot
time being worth that hassle.

~~~
simias
I don't see why you're focusing on speed (does the author even mention it? I
skimmed TFA and didn't find it mentioned). Less bloat, simpler code means
fewer bugs and it means that it's easy for a hacker/power user to dig into the
code to understand and modify it, _that_ 's the killer feature. After one hour
poking into DWM I understood how it worked and how I could modify it to fit my
needs exactly.

I use a bunch of suckless tools, in particular DMW. I don't necessarily agree
with all their choices but for me it's about configurability and reliability.
I consider myself a power user, I know how things work, I don't need a gui to
configure my keyboard or network interface. I don't want daemons running in
the background and overwriting the settings I apply manually with the command
line (a common issue I have with more fully fledged "desktop environments").

Ergonomics easily win too, sure I have to mess with C code to get the config I
want, but then it's basically tailor-made vs. ready-made. All the functions I
use the most are one key keystroke away, I use the mouse so little that I
often find myself searching for it because it ended up buried underneath some
papers. I want to focus the terminal? Win-C. I want to focus Vim? Win-E.
Firefox? Win-w. I have special customization to sticky windows the way I like,
placement rules etc...

Everything is fast, reliable, no pointless transitions, no cruft, no having to
worry about the next update changing a behaviour that I use and me having to
figure out how to revert the change or relearn how I do things. >I don't see
the marginal benefit of maybe 4s at boot time being worth that hassle.

Before I used DWM I used StumpWM for more than a decade, an other tiling WM.
Being written in Common Lisp it was quite slow to boot up from an image dump
(especially 10+ years ago on HDDs and vastly less powerful CPUs). For me
performance is highly irrelevant, the "hassle" is what I'm in it for. It's
like learning to touchtype, at first it's immensely frustrating but once
you're past the learning curve it gets really beneficial. Digging throw DWM's
code is harder than clicking on Gnome's menus, but once you've got it working
exactly like you want you probably won't have to touch it for a long while.

The last significant change I made to my DWM fork dates from July 27 2018.
Since then I've only tweaked a couple of keybindings.

~~~
masklinn
> I don't see why you're focusing on speed (does the author even mention it? I
> skimmed TFA and didn't find it mentioned).

Second paragraph, second phrase.

> However as a side effect of suckless tools having their configuration baked
> into the executable at compile time, they start up instantly.

~~~
simias
Fair enough, I missed that. I agree that it's a rather minor advantage in this
day and age.

------
sseneca
I used st for a while but switched to kitty. kitty obviously has way more
features (things like colour switching can be added to st, but requires
messing with patches which I dislike, and dislike more than compiling on each
configuration change).

I've been using kitty for a few months now and performance is great. in fact,
the biggest performance gain I saw was when I switched away from "oh my zsh"
to a manually written `~/.zshrc`.

~~~
tdy_err
Don't tell anybody where you placed your .zshrc- it's supposed to be a secret!

------
comocomolomo
It looks like suckless tools work on X. I recently made the switch to Wayland
and was wondering if a similar set of tools (with this minimalist philosophy)
exist. Any idea?

~~~
__s
I was trying to piece together a nobox successor for Wayland:
[https://github.com/serprex/noway](https://github.com/serprex/noway)

250 lines of Rust should get you started

wayst in code refers to having gotten
[https://github.com/michaelforney/st](https://github.com/michaelforney/st) to
work at some point, seems there's also
[https://github.com/majestrate/wterm](https://github.com/majestrate/wterm)

------
wwarner
I think the highlight of this story is seeing the open source workflow. She
found a bug in the source code of the window manager; she was able to isolate
it and make a meaningful report to the community/maintainers; and they fixed
it quickly without any blowback. My takeaway from this post is that for open
source to work well, it has to be as simple and clear as possible.

------
ArtWomb
I'm on CrOS. And I feel like web based tooling is maturing to professional
levels. I can give shout outs to: Piskel - for sprite generation, P5JS -
texture synth and prototyping, Babylon and Three JS Editors - easy 3D
modelling and scene graphs, ShaderToy - vertex and fragment shader development
and debugging in webgl, Rayground - ray tracing experimentation, Nodes.io -
creative coding, AudioMass - waveform manipulation. Now I wouldn't describe
any of these environments as "suckless". At best maybe "experimental". But
they are getting better every day ;)

------
charlesdaniels
I think I agree generally with the thesis of this article.

In my view, the value of these types of tools (Suckless & friends) doesn't
come from simplicity per se, but more from the fact that they can be debugged
at all when they break, because it is possible for one person to have a decent
handle on all the pieces and how they fit together.

I have tried to use and like more complex environments like macOS or GNOME in
the past. If they actually worked, they would be great. However, something
inevitably breaks, and now I have to unpick a twisted not of dependencies,
IPC, libraries, languages, etc. At least when CWM breaks, it can be fixed at
all rather than being forced to give up and deal with it being broken.

I think people saying "having to hack on the C sources isn't easy" and the
counterpoint "it's just a four kLOC of C, it's easy to hack on!" are both
right, but also missing the point.

GNOME, KDE, etc. are so complicated, that from the perspective of an
individual person trying to fix a problem, they may as well be closed source
unless you're willing to devote months just to learning the project.

I have no problem using complicated tools, as long as they are tools that I
understand, because I can't fix things I don't understand. Alternatively,
complex tools that work so well that they never break are also fine, since I
never have to fix them.

------
dannykwells
I found this section ironic, since the whole point is the lack of features:

" As dwm is configured in C, there’s also a community of people creating
patches for dwm that add extra features like additional tiling methods, the
ability to automatically start things with dwm, transparency for the statusbar
and so much more. I use the following patches..."

Eventually, enough users will want a particular patch, and it will be agreed
to include for all users. At that time, is the product still suckless?

~~~
__s
Yes

------
aquabeagle
Seems like having to use a bunch of popular patches is counter to the author's
other praises about how simple and minimal the software is. Why doesn't
upstream integrate them and let everyone use them without having to patch?

~~~
bajsejohannes
I'm guessing it's because of their philosophy that more lines of code might be
a liability:
[https://suckless.org/philosophy/](https://suckless.org/philosophy/)

Note that you can use dwm just fine without any patches.

------
mark_l_watson
The author primarily uses an iPad Pro, a dedicated remote server, and most
work done with ssh, tmux, and Emacs. That is a simplified work environment!

~~~
karatestomp
I'm getting ready to move toward something like that, but with VMs for each
sort of work or task I'm doing. My reasons:

1) I'm leaving Mac hardware for "pro"-tier computing because their gear's
swung _way_ back into ZOMGWTF overpriced territory, especially if you want
higher-than-basic-but-still-not-actually-that-much core counts, memory, or
disk, while also getting worse in some ways (mostly the MBP line), and not
keeping up with what ought to be standard base specs for "premium" hardware.
I'll keep buying used Apple gear as terminals and light farting-around
machines, and iPads are still the only tablets worth a damn and I use them for
tons of stuff, so they've still got me for their iOS devices.

2) No software platforms support suspend/restore-this-entire-desktop-
_session_ , with multiple sessions available at once (and the ability to run
more than one at once), which is an _incredibly_ productive way of working for
me short of having a dedicated machine for every purpose (which would be worse
in a lot of ways anyway), so the only way I can get something like that is
with a big-assed desktop machine with 4x as much RAM as any one of my
tasks/sessions needs, running VMs. I'd rather just be able to suspend and
resume user sessions, including desktop and application state, as a native OS
feature, as that'd save me the PITA of keeping multiple VMs around and up-to-
date and all that—alas, no platform supports that.

[EDIT] for the latter, if it's not clear, think "client 1 session", "client 2
session", "side-project 1 session", "side-project 2 session", "gaming session"
(probably can't do that one with my set-up as I don't want to screw with
gaming in a VM), "book 1 writing/research session", "porn session" (LOL), all
isolated and able to suspend/resume from exactly where they were.

~~~
mark_l_watson
Using mosh instead of ssh, and tmux named sessions I get something like your
different sessions.

~~~
karatestomp
Yeah, that works great for terminal programs _as long as you leave everything
running somewhere_ and there are even ways to kinda do what I want in the
browser using groups of bookmarks as "sessions", it's just everything else
that's the problem.

------
metalliqaz
Every time I see these screenshots of tiling window managers like dwm, there
is always a browser window smooshed into a block that is barely big enough for
a term.

I really don't get it. Who uses a web browser like that? I almost always
maximize my browser on my desktop, and when i want to share the space with
something I'm working on, I maybe will split the screen in half, or just have
floating windows on top of each other. Alt+tab works pretty well.

~~~
Carpetsmoker
I rarely use dwm's tiling: I almost always have most things maximized with
perhaps one or two floating windows. I use workspaces/tags and alt-tab to
switch between stuff.

I'm not sure how representative the screenshots are of actual usage.

~~~
RMPR
>I'm not sure how representative the screenshots are of actual usage.

There's a subreddit for that r/UsabilityPorn

------
JackFr
An erratum is a correction included with an already published work. Errata are
multiple corrections.

Not sure what “All of these things control various errata.“ means.

------
mnm1
Seems pretty sucky to me to have to debug your window manager or configure a
half dozen apps just to do basic things like changing the sound volume or
showing the time. If I didn't know any better, I'd think this was a parody.
It's the complete opposite of what I'd call suckless tools. Don't get me
wrong, I enjoy doing those things sometimes in my time off and playing with
systems, but when I need to get work done, I want a system that requires as
few changes as possible from the default and whose basic functionality I don't
ever need to debug. OS X used to be this and I'm still using it despite the
latest version, even on a brand new mbpro, being unstable. Some Linux distros
are close but even in 2020, still require constant debugging of the core
system (display drivers, DE bugs, stability, etc.). Windows looks promising
but due to it being adware, I never got around to testing it properly.

~~~
chapium
Its just a name, and an interesting project.

------
qq11ww22ee33
Personally I use my computer like a person and not a programming robot

------
douchescript
Nice writeup. I have spent years on dvtm and dwm. Only problem for me is that
as i get older i get less interested in bikeshedding my dev setup. I get the
same feel from trying to get the right mix of ui programs as trying to manage
a javascript frankenstack - just too much work for little gain, and that it
breaks over time.

------
ken
> Their window manager dwm is just a window manager. It doesn’t handle things
> like transparency, compositing or volume control.

That is a strange division of labor. I thought transparency and composition
were aspects of window management. What else would they be?

~~~
p_l
Composition should be domain of display server, IMO (like with Xsgi). Windows
DWM.EXE also, AFAIK, keeps to drawing not policy.

Transparency _support_ falls under composition - the decision on applying the
effect can be left to WM/app.

That's how world used to work, but it seems its going the way of dodo :-(

------
sxp
> For examples of beautiful dwm setups, see this search of /r/unixporn on
> reddit.

Despite its NSFW name, /r/unixporn is a great subreddit of people posting
their Linux GUI configs. It's mostly tiling WMs, but I learned a lot about how
to heavily customize my setup there. The top posts are worth skimming for
anyone who's a fan of beautiful UIs:
[https://www.reddit.com/r/unixporn/top/?sort=top&t=all](https://www.reddit.com/r/unixporn/top/?sort=top&t=all)

------
progre
> cabytcini to show the current time and weather in my dwm bar

...

> As of the time of this post being written, it uses only 11 megabytes of ram

I'm not a rust programmer. Is 11 megs for an app like this concidered small?

~~~
karatestomp
Wild guess: the web client it includes is most of that. Even if it cleans up
the instance of it after, the code itself is still sitting in memory, and that
may be quite large. It also seems to include a JSON parser, which might be a
bit large.

I'd expect something like this grabbing some dead-simple format over a TCP
socket, rather than importing a Web library, to be well under a MB, certainly,
and even that seems not to be setting a very low bar, to me. Though those are
expectations based on C, not Rust.

------
szemet
I like "tabbed". Traditionally I use terminal tabs on local machines, and tmux
on remote. (tmux in tmux is just too much tmux for me)

After I've changed to alacritty, which does not supports tabs, I could easily
recreate my old workflow with "tabbed".

(I've never heard of suckless previously, I just knew that I want some generic
X11 tabbing SW (and I was sure it must exists somewhere, so have put a lot of
effort in googling) - maybe I should check the other things there too...)

------
jbaber
I'm exactly the audience for this stuff. I've been using ratpoison as my WM
for 15 years. But even _it_ reads a simple config file.

------
AmpsterMan
I use some of the suckless suite with minimal configuration and it works well.
The configuration isn't all that bad tbh, no worse than the mini-dsls many
other non-trivial programs have.

I think people should give dmenu a try. It's an application launcher, but it's
unix-y design allows for composition in ways that are very interesting.

------
underdeserver
11 megabytes of RAM to show the time? What?

------
smitty1e
The suckless.org lists a couple of unmaintained distros under their rocks/
section.

However [https://sta.li/](https://sta.li/) (static linux, not "stalin"[:-1] )
appears to be in circulation.

------
ryanmjacobs
I've been using the same dwm config for nearly eight years at this point.
Can't beat it :)

It's followed me from Arch to Ubuntu to Void

------
baq
> I have yet to integrate this meta-patch into my dwm fork, but I’ll probably
> get around to it someday.

famous last words. won't ever use dwm, got no time for this.

------
jdub
As much as possible, I try to use software created by kind communities. The
behaviours and attitudes in the "suckless" world come across as combative,
exclusive, and unpleasant.

~~~
kamranjon
In what way are they combative or unpleasant? I've never experienced this. I
enjoy the philosophy and opinionated approach they have to development. I
setup an old thinkpad with openbsd and dwm and st and it all worked great and
i learned some C along the way. I also used sent - their plaintext slide
presentation tool to give a talk at work and it was a pretty cool way to put a
presentation together quickly and focus on ideas. Anyway - I like their
software and the opnionatedness makes it kinda fun to explore.

~~~
jdub
Start with the name. That puts it in opposition immediately. They present a
lot of that opposition to projects and people, rarely stated kindly.

They could express a positive enthusiasm for simplicity, but that's not the
way they go about it.

~~~
allis10
Accusations of "elitism" being what they may, the name is in fact a slice of
humility: they advertise that their software "sucks less", not that it is
"without suck".

~~~
MauranKilom
That's not the way I understand the "-less" composition they use. "harmless"
doesn't mean "poses less harm", it means "poses no harm". "colorless" doesn't
mean "less color", it means "no color". And so on. So to me, "suckless" means
"doesn't suck", no humility. Admittedly, it doesn't exactly follow the normal
composition rules so the exact interpretation is more up in the air, but that
won't change the fact that many people will read it the way I described above.

~~~
gpanders
Well in this case, "software that sucks less" is on the top of every page of
their website, so the intent behind their name is pretty clear.

------
dilandau
Suckless is all about hacking your own tools. Totally unsurprising that
"hacker" "news" doesn't get it.

[https://suckless.org/hacking/](https://suckless.org/hacking/)

~~~
arkitaip
Most of us have been there, done that since childhood. Once you reach a
certain age, it's more important to get things done and not fuss over
trivialities in life.

~~~
clarry
Counter point: as I get older, I find it harder and harder to put up with
annoying little nags in the software I use (iow, I have less patience for
crap). And boy does software today have a ton of that. I think I'm just about
to cross the point where I'll dump the default gnome setup on my work laptop
(ubuntu) and install dwm or cwm or whatever. Even with all the tweaking and
customization, it doesn't take that long, but it makes work more comfortable
every hour, every day, for years to come.

It's like ergonomics. When you're a kid, you sit on what you have and you've
got more interesting things to worry about than the height of your desk? At
some point in life you might just want a nice chair and roomy adjustable desk
with a sizeable external monitor on a proper adjustable stand to make work
comfortable. That's why you hack your window manager or shell or whatever. The
defaults are always terrible and not tailored for you.

------
glangdale
I'm not familiar with this "suckless" philosophy, although I've seen it go by
a couple times recently. I'm guessing that "suckless" means something
different from what I might guess, given half of the article is about how
great it is consists of having to debug some serious problem _yourself_ , and
the rest of it is self-congratulation over having to recompile everything
because "reading configs is hard".

To paraphrase Arthur Dent: "Ah, this is obviously some strange use of the word
'less' that I wasn't previously aware of."

