Explicating the survival of the Shell as default OSS UI


  • kills Dumbledore

    If I understand what @blakeyrat is trying to get at, it's irrelevant whether everyone is capable of becoming a programmer or not. The point is that saying "software development is hard, therefore software development tools will always be hard to use" is defeatist and results in the interfaces never improving.

    The attitude shouldn't be "this will always be hard so there's no point making it easier", it should be "how can this interface/tool/whatever be improved?"

    To use a car analogy, driving is hard. It was a lot harder with some of the early ways of managing acceleration, gearing and steering though. But eventually, people settled on the three pedal, gearstick steering wheel approach. Then there were automatic gearboxes, disabled friendly cars and now self driving cars. The people saying development should be difficult would have been saying that if you can't drive a Model T you don't deserve to be on the road.



  • Look, software is just the expression of an idea. To anyone thinks that a good way to prevent the spread of dangerous ideas is to hinder (or fail to facilitate) the average person's ability to express their ideas: fuck you.


  • Trolleybus Mechanic

    @jaloopa said:

    The people saying development should be difficult would have been saying that if you can't drive a Model T you don't deserve to be on the road

    Fun Factoid: I understand that the Model T had a very different - and simpler - steering system than its contemporaries. As a result (IIRC), in Poland there was a separate driver's license for Model T drivers and a separate one for Real Drivers.


    Filed under: I'm sure there's an OT moral in there somewhere


  • Discourse touched me in a no-no place

    @jaloopa said:

    The point is that saying "software development is hard, therefore software development tools will always be hard to use" is defeatist and results in the interfaces never improving.

    Feel free to do something about it if it bothers you that much. Don't feel free to criticise people who are of the opinion that it is better to be spending their limited resources elsewhere.


  • ♿ (Parody)

    @Buddy said:

    Look, software is just the expression of an idea. To anyone thinks that a good way to prevent the spread of dangerous ideas is to hinder (or fail to facilitate) the average person's ability to express their ideas: fuck you.

    I think you hindered the expression of whatever you were thinking about when you wrote this. Fuck yourself.


  • ♿ (Parody)

    @GOG said:

    As a result (IIRC), in Poland there was a separate driver's license for Model T drivers and a separate one for Real Drivers.

    In (most?) US states there are at least 3 categories of drivers licenses: regular, motorcycle and commercial (truck).



  • @jaloopa said:

    If I understand what @blakeyrat is trying to get at, it's irrelevant whether everyone is capable of becoming a programmer or not. The point is that saying "software development is hard, therefore software development tools will always be hard to use" is defeatist and results in the interfaces never improving.

    Thank you. Yes.

    @Buddy said:

    Look, software is just the expression of an idea. To anyone thinks that a good way to prevent the spread of dangerous ideas is to hinder (or fail to facilitate) the average person's ability to express their ideas: fuck you.

    Double thank you. Jesus, there's some people who fucking get it posting here, amazing.


  • Trolleybus Mechanic

    @boomzilla said:

    In (most?) US states there are at least 3 categories of drivers licenses: regular, motorcycle and commercial (truck).

    Right now, I believe there are a total of 5 driver's license categories in Poland - from motorcycles to buses and trailer-trucks.

    That's not the point though: the different license category in this case was for a single make/model in a comparable vehicle class. It was like having a single license for all sedans and a different one just for Ford sedans. I believe the "proper" license entitled you to drive a Model T - and everything else - while the Model T license was just for Model T (possibly other Ford models).



  • Hey let's all TAL ABOUT DRVERS LICENSGIN SO FUN ON A FRIDAY HOLY SHIT LOOA T THATRT BEARUCRACY IN ACTION POP!!!


  • Discourse touched me in a no-no place

    @boomzilla said:

    In (most?) US states there are at least 3 categories of drivers licenses: regular, motorcycle and commercial (truck).

    The UK has several others as well: the ones I remember are farm vehicle (only needed for taking one on a public road), public service vehicle (buses over a certain size), and military vehicle.

    Though who would argue with someone in a main battle tank over whether they're licensed to be on the road?


  • ♿ (Parody)

    @GOG said:

    That's not the point though: the different license category in this case was for a single make/model in a comparable vehicle class.

    Yeah, but it was pretty early in the development of these things. How many other models were there?

    @blakeyrat said:

    Hey let's all TAL ABOUT DRVERS LICENSGIN SO FUN ON A FRIDAY HOLY SHIT LOOA T THATRT BEARUCRACY IN ACTION POP!!!

    Good times, eh?

    @dkf said:

    The UK has several others as well: the ones I remember are farm vehicle (only needed for taking one on a public road), public service vehicle (buses over a certain size), and military vehicle.

    I wouldn't be surprised if some states had those, too.

    @dkf said:

    Though who would argue with someone in a main battle tank over whether they're licensed to be on the road?

    Military combat aircraft license holder?


  • Trolleybus Mechanic

    @boomzilla said:

    How many other models were there?

    Here in Europe? A metric fuckton.


    Filed under: I have to keep 'splainin' shit for y'all merkin hicks!


  • ♿ (Parody)

    @GOG said:

    Here in Europe? A metric fuckton.

    Sorry, I'm not as old as I look.



  • And for extra confusingness, back in Missouri your concealed weapons permit is an endorsement that goes on your driver's license just like any of the other driver endorsements (motorcycle, CDL, bus, etc.). But most people would get a second non-drivers license and put the CCW on there instead so they aren't announcing that they're possibly carrying anytime someone checks their driver's license.


  • Discourse touched me in a no-no place

    @boomzilla said:

    Military combat aircraft license holder?

    OK, anyone with an A-10 can argue anything they like with almost anyone else.


  • Trolleybus Mechanic

    @blakeyrat said:

    Hey let's all TAL ABOUT DRVERS LICENSGIN

    And well you would, @blakeyrat, 'coz it proves your point about user interfaces.

    The Model T was not only cheap, but it was much easier to drive than most of the competition, meaning you did not have to be a grease-monkey/qualified mechanic to own and run one. Hence, its success and contribution to motoring as more than an engine-geek past-time.


  • I survived the hour long Uno hand

    Wow, this thread went into la-la land. @Blakeyrat is totally correct: If you're writing a tool and you go "bah, cryptic command-line is good enough for anyone", you're being LAZY, not CLEVER. Nobody's arguing for some marxist utopia, FFS.


  • kills Dumbledore

    I'm quite impressed at how quickly my on topic post managed to derail the thread. Is it something people do on purpose to annoy @blakeyrat?



  • @jaloopa said:

    I'm quite impressed at how quickly my on topic post managed to derail the thread. Is it something people do on purpose to annoy @blakeyrat?

    Typical TDWTF thread:


  • ♿ (Parody)

    @Yamikuronue said:

    Nobody's arguing for some marxist utopia, FFS.

    Keep reading @blakeyrat. It's true he's not arguing for marxism, but he is arguing for utopia. And that you're a terrible person if you don't make it so that a blind and dyslexic 3 year old can use your software to optimize fast Fourier transforms.


  • I survived the hour long Uno hand

    Sorry, I believe in actually responding to what people say, not what the voices in your head tell you they said.


  • Trolleybus Mechanic

    @Yamikuronue said:

    If you're writing a tool and you go "bah, cryptic command-line is good enough for anyone", you're being LAZY, not CLEVER

    Back in my day, all we had was the cryptic command-line and we liked it, young lady.


    Filed under: and we walked twelve miles to school, uphill both ways


  • ♿ (Parody)

    @Yamikuronue said:

    Sorry, I believe in actually responding to what people say, not what the voices in your head tell you they said.

    Yes, me, too. I've just read enough @blakeyrat to have seen him write equivalent things. And for reference, the voice comes from the alien on my shoulder, not inside my head.


    Filed Under: this is exactly the sort of thing I'm talking about



  • While it would be nice if Grandma could go to Wal-Mart, buy her first-ever computer and then be compiling her own Linux distro by nightfall, that's never going to happen. So why even argue about it?

    Utopia doesn't exist, and any man-made efforts to bring about Utopia are doomed to failure because of human nature.


  • Trolleybus Mechanic

    @mott555 said:

    While it would be nice if Grandma could go to Wal-Mart, buy her first-ever computer and then be compiling her own Linux distro by nightfall, that's never going to happen.

    Five bucks says I can make it as easy as pushing the power button. 😃


  • Discourse touched me in a no-no place

    @GOG said:

    Five bucks says I can make it as easy as pushing the power button. 😃

    Not with either of my grandmas, on account of them both being deceased. It'd take longer than that to get the ouija board input method working…


  • I survived the hour long Uno hand

    @mott555 said:

    While it would be nice if Grandma could go to Wal-Mart, buy her first-ever computer and then be compiling her own Linux distro by nightfall, that's never going to happen

    This bullshit is what I'm walking about. Blakey says nobody should be excluded from software development and you get to grandma compiling linux. Where did anyone say that knowledge should be instantaneous?

    I'm thinking about my dyslexic 10-year-old-brother grabbing something like Scratch and learning the basics of programming. I'm thinking about my forays into video editing and being faced with terrible, cryptic UIs to the point where I can't figure out what any buttons do. Nobody should be locked out by a bad UI or because they have dyslexia.


  • kills Dumbledore

    I'll never become an expert in every programming language, so I might as well not learn any more because any attempt to become a world class programmer are doomed to failure.

    I'll never be a billionaire, so I shouldn't keep trying to earn money. Any effort to bring about me having more money than I know what to do with are doomed to failure.

    I'll never have time to read every book ever published. Time to stop reading, as my efforts to better myself are doomed to failure



  • @Yamikuronue said:

    If you're writing a tool and you go "bah, cryptic command-line is good enough for anyone", you're being LAZY, not CLEVER. Nobody's arguing for some marxist utopia, FFS.

    It depends on what your tool does; sed is something that never will have a GUI in a million years, because it's designed solely for batch/pipeline processing, not interactive use. Obviously, a GUI scripting language will have its own set of text-manipulation chainsaws, or at least ought to...

    On the other hand, for tasks that are user visible (like say version control, or faffing with the guts of a database), a GUI righteously should exist, and in many (most?) cases, does. The main problem becomes people who either aren't trained in GUI design at all, and have no exposure to making a GUI anywhere near good, or think that because a GUI exists, a programmatic interface (whether it be shell-style CLI or an open-access automation interface such as AppleEvents or COM Automation; for the love of all that is good, pure, and holy in this world, DO NOT INVENT YOUR OWN PROPRIETARY SCRIPTING LANGUAGE) shouldn't. The latter are responsible for the biggest WTF of GUI programs; namely, the entanglement of presentation and logic that leads to non-unit-testable, non-automatable, oftentimes non-accessible, bug-riddled code soup. (Number Two on the WTF chart, of course, are APIs that don't make the right way of doing things the default.)



  • Not sure what any of that has to do with anything, but good luck in life with such a pessimistic outlook.


  • ♿ (Parody)

    @Yamikuronue said:

    I'm thinking about my dyslexic 10-year-old-brother grabbing something like Scratch and learning the basics of programming. I'm thinking about my forays into video editing and being faced with terrible, cryptic UIs to the point where I can't figure out what any buttons do. Nobody should be locked out by a bad UI or because they have dyslexia.

    This is all true, and it's one aspect of what @blakeyrat advocates. And no one really disagrees with him about that sort of thing.

    But he doesn't stop there. And then he also complains about careless developers doing things that cause him trouble because they didn't think things through. And he can't see why this is a problem, because he's just talking about an ideal, you see, so if you bring up reasons why that all can't / doesn't work, you JUST DON'T GET IT.



  • I'll never have the corner office - time to move to Blakey's cube.


    Filed under: couldn't resist.


  • Trolleybus Mechanic

    @dkf said:

    Not with either of my grandmas, on account of them both being deceased.

    Same here, I'm afraid. Is that an excuse to sample... ahem... commune with spirits this evening?


  • Discourse touched me in a no-no place

    @tarunik said:

    (Number Two on the WTF chart, of course, are APIs that don't make the right way of doing things the default.)

    That really ought to be #1 on the chart, whatever interface you're dealing with (API, CLI, GUI, magical telepathic interface, …)


  • ♿ (Parody)

    @tarunik said:

    The main problem becomes people who either aren't trained in GUI design at all, and have no exposure to making a GUI anywhere near good,

    This is an excellent point. I blame people like @blakeyrat who have a clue about UX for not making tools that enable the people who understand nitty gritty problems but can't make a GUI for shit. Why haven't those assholes saved us all yet?


  • Discourse touched me in a no-no place

    @GOG said:

    Same here, I'm afraid. Is that an excuse to sample... ahem... commune with spirits this evening?

    Perhaps we should consider some Whisk… Use Cases…



  • @dkf said:

    Perhaps we should consider some <s>Whisk…</s> Use Cases…

    Why are we always preparing? Just go!


  • Discourse touched me in a no-no place



  • @boomzilla said:

    @Yamikuronue said:
    I'm thinking about my dyslexic 10-year-old-brother grabbing something like Scratch and learning the basics of programming. I'm thinking about my forays into video editing and being faced with terrible, cryptic UIs to the point where I can't figure out what any buttons do. Nobody should be locked out by a bad UI or because they have dyslexia.

    This is all true, and it's one aspect of what @blakeyrat advocates. And no one really disagrees with him about that sort of thing.

    But he doesn't stop there. And then he also complains about careless developers doing things that cause him trouble because they didn't think things through. And he can't see why this is a problem, because he's just talking about an ideal, you see, so if you bring up reasons why that all can't / doesn't work, you JUST DON'T GET IT.

    Here's where the problem with his argument lies; some tools require conceptual understanding of the problem domain to use, no matter how good your UI is. It's like trying to teach someone how to use the autopilot on an airplane before they get the hang of flying an airplane manually. No matter how intuitive you make the autopilot UI, it will still require you to have some understanding of the fundamental concepts and relationships of flight in order for your actions using it to make sense in the grand scheme of things.



  • @tarunik said:

    No matter how intuitive you make the autopilot UI, it will still require you to have some understanding of the fundamental concepts and relationships of flight ...

    I'm not so sure... why shouldn't the autopilot catch the issues with the course you're planning and work you through fixing your plan?


    Not that I'd be in favor of having pilots who aren't qualified to fly manually



  • @ijij said:

    I'm not so sure... why shouldn't the autopilot catch the issues with the course you're planning and work you through fixing your plan?

    The problem comes when you command the A/P to do something that makes no sense given the plane's state...(you can trap some of these errors, but not all, given the current state of the art of airplane design).

    @ijij said:

    Not that I'd be in favor of having pilots who aren't qualified to fly manually

    Three words from a comment whose poster has been lost to the sands of time: "Ditch The Dog". No autopilot's going to save you when you snap your elevator cables during the takeoff roll, have to do an all-engines-out landing whether it be on the Hudson or an abandoned airstrip in the Canadian prairie, find out the hard way that your pitot heat's kicked the bucket without telling you about it, or experience what it's like to fly a very, very large J-3 Cub thanks to an unexpected shower in the electronics bay.

    @Yamikuronue said:

    Read what I wrote again. If you go "Hmm, the best interface for this application is command-line because [list of reasons]" then you're not going "bah, it's good enough for anyone", you're making an intelligent decision.

    Consider my post as support for your position, then.

    @Yamikuronue said:

    But in a lot of cases, the UI itself is a barrier to using the tool. If I can't do video editing because I don't understand how to edit videos, that'd be one thing, but when I know what I want to do and I sit down and I open a tool and I can't figure out how to translate the ideas in my head to button presses because there's a billion buttons and no help.... that's not my fault.

    I wholeheartedly agree there. It's the difference between staring at a cryptic code or a mysterious button wondering what it means with no help file or explanation, and having it spelled out for you in the UI and still not getting what's going on because the tool is operating on different concepts than you are.

    @mott555 said:

    That's making an assumption that the plan is correct, which is probably false if someone has zero domain knowledge. If I literally know nothing about flying and decide I'm going to fly a Cessna to New Zealand, I literally might not know that I need to stop and re-fuel several times, or that I should probably bring food and water aboard, or that there may be a hurricane in the way, or that I should probably bring supplemental oxygen if I go above 12k feet, or that there may be mountain ranges in the way requiring me to go above my normal cruising altitude, or that I shouldn't fly within a fuel miles of an airport or no-fly zones (nuclear plants, certain government offices). Autopilot or not, the mission is doomed because I'm an idiot who's in way over my head.

    And an autopilot that can account for all of that would be extremely annoying to real pilots and would be received about the same way we receive DiscoClippyToasters here.

    Back halfway on topic, trying to make developer tools easy enough for my 90-year-old grandma to use would be futile because she has zero domain knowledge of computers to begin with. No matter how easy the tools are, I doubt she knows what a mouse is, much less a menu or even GUI controls.


    QFT. Never mind having to deal with ferry tanks in the cabin, extra fuel plumbing, having to get the necessary exemptions for an extended overwater ferry flight in a single engine plane (yes, it is done, how else do you get a Cessna 210 from Wichita to Wellington?), or having to pack a proper liferaft for extended overwater operations.


  • I survived the hour long Uno hand

    @tarunik said:

    t depends on what your tool does;

    Read what I wrote again. If you go "Hmm, the best interface for this application is command-line because [list of reasons]" then you're not going "bah, it's good enough for anyone", you're making an intelligent decision.


  • I survived the hour long Uno hand

    @tarunik said:

    some tools require conceptual understanding of the problem domain to use, no matter how good your UI is.

    But in a lot of cases, the UI itself is a barrier to using the tool. If I can't do video editing because I don't understand how to edit videos, that'd be one thing, but when I know what I want to do and I sit down and I open a tool and I can't figure out how to translate the ideas in my head to button presses because there's a billion buttons and no help.... that's not my fault.



  • @ijij said:

    I'm not so sure... why shouldn't the autopilot catch the issues with the course you're planning and work you through fixing your plan?

    That's making an assumption that the plan is correct, which is probably false if someone has zero domain knowledge. If I literally know nothing about flying and decide I'm going to fly a Cessna to New Zealand, I literally might not know that I need to stop and re-fuel several times, or that I should probably bring food and water aboard, or that there may be a hurricane in the way, or that I should probably bring supplemental oxygen if I go above 12k feet, or that there may be mountain ranges in the way requiring me to go above my normal cruising altitude, or that I shouldn't fly within a few miles of an airport or no-fly zones (nuclear plants, certain government offices). Autopilot or not, the mission is doomed because I'm an idiot who's in way over my head.

    And an autopilot that can account for all of that would be extremely annoying to real pilots and would be received about the same way we receive DiscoClippyToasters here.

    Back halfway on topic, trying to make developer tools easy enough for my 90-year-old grandma to use would be futile because she has zero domain knowledge of computers to begin with. No matter how easy the tools are, I doubt she knows what a mouse is, much less a menu or even GUI controls.


  • BINNED

    @Yamikuronue said:

    This bullshit is what I'm walking about. Blakey says nobody should be excluded from software development and you get to grandma compiling linux. Where did anyone say that knowledge should be instantaneous?

    You clearly haven't read enough of @blakeyrat's writings. To be fair, he didn't say it should be instantaneous; he said the software should gently guide you through the rest of what you didn't know. In either case, reading documentation is out of the question, and that Grandma has no idea what a kernel is or what it's for shouldn't be a barrier to her recompiling it.

    @ijij said:

    I'm not so sure... why shouldn't the autopilot catch the issues with the course you're planning and work you through fixing your plan?

    Needs more :trollface: .


  • FoxDev

    @antiquarian said:

    Needs more .

    Needs more 🐄 🔔


  • ♿ (Parody)

    @Yamikuronue said:

    Read what I wrote again. If you go "Hmm, the best interface for this application is command-line because [list of reasons]" then you're not going "bah, it's good enough for anyone", you're making an intelligent decision.

    Welcome to the @blakeyrat-thinks-you're-a-horrible-person club!



  • @tarunik said:

    The problem comes when you command the A/P to do something that makes no sense given the plane's state...

    INAP - I'm just playing the "think oustide the box game" - but the A/P, instantaneously, may have a better idea of what "makes no sense" than you do. The A/P can be aware that your plan to land at altitude in Denver won't work out well because there's a heat wave and it's 20deg hotter than normal (and the last time you went it was cold and you were light).
    The A/P can help with details you may have forgot or have wrongly remembered. (Crap! THIS airframe hasn't been re-engined like all the others??)


  • FoxDev

    isn't that club defined as...

    $\forall x \in PEOPLE | x \notin @blakeyrat$



  • @ijij said:

    INAP - I'm just playing the "think oustide the box game" - but the A/P, instantaneously, may have a better idea of what "makes no sense" than you do. The A/P can be aware that your plan to land at altitude in Denver won't work out well because there's a heat wave and it's 20deg hotter than normal (and the last time you went it was cold and you were light). The A/P can help with details you may have forgot or have wrongly remembered. (Crap! THIS airframe hasn't been re-engined like all the others??)

    On the other hand, you might have a better idea of what makes no sense than the autopilot does. For instance, you might know that there's volcanic ash 30 miles ahead that you need to divert around, but how's the autopilot supposed to know about that ash cloud? Or how about diverging slightly off course to avoid something on the synoptic chart that looks like it could produce clear-air turbulence? Both of these phenomena cannot be automatically detected by current aircraft systems, but a human can make intelligent decisions about what they do know and avoid hazards far in advance of what a computer can do.

    Going back to my original point, though: I'm talking about asking the autopilot for a 500fpm climb when you're in a low energy state, or asking it to try to descend to 4000' and slow up to 180kts at the same time. While future autopilots might detect the problem with the former, what are they supposed to do about the latter?


Log in to reply