3 ms·
>> Because dwm is customized through editing its source code > Suckless tools are developed for the needs (and the benefit) of their own developers, and nobody
by tomxor 5y ago
>> Because dwm is customized through editing its source code
> Suckless tools are developed for the needs (and the benefit) of their own developers, and nobody else. Remember that.
Just to flip this on it's head a bit (because different perspectives are more illuminating than crude dichotomies).
One of the underlying principles they use to justify not supporting external configuration, is minimal code. The absence of configs are one of many sacrifices they make for their ~1000 line limit. So on the face of it, it seems elitist, but on the other hand this principle makes the code significantly more accessible... one group (non programmers) have been more excluded; another group (programmers of almost all stripes) have had the barrier to entry significantly lowered due to this principle, not only to configure it, but to very feasibly change any aspect of it as they see fit.
- Barrin92 5y agostrong disagree because an artificial codebase size limit doesn't make the codebase more accessible, it makes it worse. Well designed code isn't primarily short, it's readable, modular, extensible and so on. This isn't the case for dwm. Simplest example, to enable extensions in the form of patches you basically have to apply diffs and because everything is just one giant pile of code even applying two entirely unrelated features can break depending on the order of the patch application. This isn't elitist in the sense of applying best programming standards, it's elitist in the sense of "if you want to join the club you get hazed first"
- csande17 5y agoIf you know C, the fact that dwm's code is only ~2000 lines long makes it far more accessible than any other window manager. You can fairly easily read the source code in an afternoon and fit the whole thing in your head, then make whatever changes you want. (I've done it! For what it's worth, the code is pretty well-factored and easy to understand.) You don't have to worry about how any of your changes interact with some complicated configuration system, scripting language binding, or IPC protocol. If you don't know C, you benefit from your window manager offering things like scripting language bindings. The overall system becomes more complex and harder to debug, but it's easier to do simple things like change the color scheme. So when dwm says they're "elitist", they mean that they haven't tried to make their window manager cater to people who don't know C. Luckily, there are a lot of other window managers out there that are better suited to those people.
- addicted 5y agoCan reading a configuration value from a file (something that can be abstracted away in a fairly simple single function) really make code so much more complicated than hard coding that configuration value in code?
- tomxor 5y agoYou can probably make a small function to do it, but then it might take more than you imagine to do it robustly... then there are 1000 other "small" features like this, if you accept them all you wouldn't have a small code base any-more. They are just pretty brutal about what is and what isn't worth a line of code.