I found out about Uriel just recently and never knew who he was until a few days ago (he was not super famous, not as many people knew about him as you would think).
His arguments about baroque complex crapware are definitely sane and correct, but I think he didn't realize something basic: you can't just rant about stuff, you have to actually contribute logical articles that prove your point using computing science and code. I.e. just ranting that java sucks, is correct, but you have to show people exactly how it sucks in what ways, with code snippets, in a computing science article. Just ranting about it, is not as effective as logically reasoning and demonstrating with code that it is inferior to other languages.
An example of a rant supported by real evidence is "Why such and such is not my favorite programming language". Often one will back up his statements with code, and experience, proving that the language is lacking and is inferior. What I saw with Uriel is mostly ranting and making references to other people who also ranted (his references were just quotations of other people ranting about the language).
Although I agree with Uriel about software basically sucking majorly, I think he should have backed up more of his arguments with code snippets and computing science articles that actually demonstrated WHY, HOW, and WHERE those languages went wrong. I will be writing some articles about how java sucks, c++ sucks, and not just ranting about it, but providing code to back up my claims. Uriel has inspired me to do some writing. Instead of just saying Java sucks on some mailing list, one has to compose a PDF file that clearly explains HOW java sucks, according to computing science, and not just anecodotal hunches. An example would be comparing plain C where you can just create a procedure such as delete_file() without welding it to some noun (noun oriented programming, i.e OOP) and instantiating your stupid noun. delete_file() is simple (a verb that gets to the point, not some stupid noun-verb-noun-factory-factory-nonsensical-joke. delete_file() is to the point, without jumping through complex OOP hoops forcing you to weld everything to some overrated hyped up bloated baroque Class (and is a class the same as an object? what's an object, what's a class? No one has scientifically defined this crap). I see he even looked into TutorialD in place of SQL. TutorialD tries to put scientific rigor into OOP. However tutorialD seems verbose and complex, so I'm not sure how far Uriel got into researching TutorialD.
Criticizing Uriel is kind of a moot point now since he is gone, and maybe it is in bad taste to criticize him... so rather than just criticize his ways, I'm instead saying that he should inspire people to write about why software sucks - but let's back it up with more scientific evidence that software sucks, not just anecdotal quotes that it sucks because such and such person said so. "Uriel Reincarnated" is anyone who continues his attitude about software sucking. He lives on in my mind, at least. Also, he supported Ron Paul, which is strange, considering Ron Paul doesn't even believe in the theory of evolution, but again this is in bad taste criticizing him so I will stop. He inspired me to do some writing in computing science about how to improve software. Thanks Uriel.
Name:
Anonymous2015-09-07 22:40
Once you're done with your first logical article that prove your point using computing science and code as to why such software sucks, with more scientific evidence than how it's done now, where will you post the article? Where can we read it?
Also, he supported Ron Paul, which is strange, considering Ron Paul doesn't even believe in the theory of evolution, but again this is in bad taste criticizing him so I will stop.
Yeah, I wouldn't criticise him further. Richard Dawkins will find it in bad taste, and he will strike you dead with his all-powerful words of SCIENCE.
Name:
Barney Strootstroop2015-09-08 1:10
>>1 Make sure you don't break userspace either, otherwise the late Linus Torvalds will send you to a thousand years of migration, death, and virginity.
Name:
Anonymous2015-09-08 2:48
>>3 You can't upload a .pdf to progrider.org. Are you saying you will upload the .pdf to some other website but post the link to it here on progrider.org? Please be clear of how this is going to work. I want to read it.
Name:
Barney Strootstroop2015-09-08 3:18
Carter's infinite cumpression algorivvem
Name:
Anonymous2015-09-08 5:21
>>6 There's tonnes of PDFs uploaded to /prog/rider floating around.
If you considered yourself harmful, would you eliminate yourself or embrace your harmfulness and maximize your harm to the world?
Name:
Anonymous2015-09-09 10:00
harmful is just another word for imperfect. If it works well enough and if it's available you should use it, ``harmful'' or not.
Name:
Anonymous2015-09-09 16:27
>>13 I think, if the world of Enteprise Quality can tolerate PHP and MySQL existing on it, then surely the rest of the world can tolerate a lesser harm such as myself, right?
Uriel was one of the Marxes and Engels' of bloat free code. Your argument about not leading by example is not entirely fair, though - early philosophers often don't exactly lead the revolutions either. They were merely (albeit somewhat consistent) armchair generals.
Suckless are the later mao-stalinists who initially sought to execute the idea, but it inevitably degenerated into a cult meant to accomplish their own ends. Turns out the "doing it right" part is the difficult component of revolutions, that's why people suck at it so much.
That said, there are still a lot of fun rants about bloated computing, not just Uriel. My favourite is:
The problem with suckless is that they just do the easy stuff. When something hard shows up they simply pretend it's not an issue and ignore it.
Just see their "browser" (surf). It has this minimalist front-end, no bloat, etc. But what's the backend? Fucking webkit. When asked why they don't work on a good backend they say it's too much work and webkit is a necessary evil.
Name:
Anonymous2016-02-05 19:48
>>27 Funny you mention it, couple of weeks ago I've asked in their channel when they plan to write a web browser, instead of a shitty browser chrome. And why Elinks, Arachnet and NetSurf (actual browsers from scratch) are not listed in their list as suckless. And whether it's a bug that midori (another webkit chrome) has the same resource usage, yet seems to be able to render modern web.
This is one of the pet peeves. I'm pretty sure scc will use llvm as codegen backend as it currently has nothing useful.
There are more signs it's a cult concerned about aesthetics rather than substance. Take 'st' for example. It brags how its better than xterm, which is a completely moot point when most people use rxvt-unicode these days. Again, rxvt-unicode, despite being written in (satan) C++, has even lower resource usage (client/server process mode), much more flexibility (perl scripting) and most importantly, actually works without having to fix terminfo entries with something exotic on remote shell sites.
I agree. Their surf browser is nothing but a different shell for chrome. Same shit, different interface. But they pretend it's okay because ``making a web-browser engine is too hard''.
If scc ends up using llvm as codegen backend, it'll really suck. Let's not jump into conclusions before the time. I'd like to believe that won't be the case.
About st, programs that don't work are buggy. It's not st's fault. This actually makes sense. http://git.suckless.org/st/tree/FAQ About resource usage, could you provide some benchmarks and post on their mailing list? They will either have to make st more efficient or admit it sucks. What's ``suckless'' worth, if in the end more bloated alternatives are more efficient? This would bring a nice discussion to their mailing list.
Name:
Anonymous2016-02-07 1:53
I agree with OP.
There's no "bad" language, only bad use. Some languages will be better at executing X, while performing badly at Y. Of course, I'm excluding deprecated languages.
I know it sounds obvious, but aparently some people just want to act like fanboys: badmouthing the entire language just because it doesn't work in a particular way you want.
Name:
Anonymous2016-02-07 18:41
>>30 Badly designed languages exist. Bad design includes requiring all operators to be overloadable (even for builtins) making optimisation much more work than it rightfully should be (Python). Bad design includes naming your language builtins to optimise for lookup speed in the global function hashmap (PHP, and the hash function was basically strlen).
These aren't even bad implementations of otherwise not-bad languages. They are just bad languages. I'm not badmouthing an entire language because it doesn't work the way I want: I'm badmouthing it because it was designed by a total fucking idiot.
Name:
Anonymous2016-02-07 19:44
making optimisation much more work than it rightfully should be
For you.
Bad design includes naming your language builtins to optimise for lookup speed in the global function hashmap (PHP, and the hash function was basically strlen).
Now, there's something we can agree on. PHP surely has some weird aspects in it. Although, like Java, it's widely used and not exactly bad (unfortunately, what we see out there is mostly retarded implementations of it. I admit that I've never written a decent piece of software in both Java and PHP, but still, they're powerful in their own way). I'm not saying that because it's widely used it's good, but the support for it is tremendous.
I have to say, though: bad design != bad language. Just because a chair is ugly, it doesn't mean that it isn't comfy. Still, you're making some interesting points and I am, in no way, disregarding what you said. It's perfectly comprehensible.
What does that even mean? 'Rightfully should be' means that it is reasonable to expect that the language allows for the emission of efficient machine code in a trivial manner. "Are these values integers? Nice, emit the add instruction." Python has, historically, required otherwise. "Are these values integers? Sure, but let's do a bunch of object lookups to find the definition of __add__." I'm sure a FIOC fan will kick me in the face later ITT, but I don't give a shit. (I don't, however, give a shit about FIOC being a misfeature, but I am not masochistic enough for yet another tedious discussion on syntax.)
I also think you are using a different defition of "design" to the one generally used in programming language theory. Your ugly-yet-comfy chair is still a decent programming language. In this context, a badly-designed chair would burn the anus and break if you tried to sit on it at the wrong angle.