Berkeley CSUA MOTD:Entry 13177
Berkeley CSUA MOTD
 
WIKI | FAQ | Tech FAQ
http://csua.com/feed/
2025/05/25 [General] UID:1000 Activity:popular
5/25    

2004/4/13-14 [Computer/SW/OS/Linux, Computer/SW/Unix] UID:13177 Activity:nil
4/14    The Luxury of Ignorance: An Open Source Horror Story
        http://www.catb.org/~esr/writings/cups-horror.html
        And a nice response:
        http://daringfireball.net/2004/04/spray_on_usability
        \_ Nice response?  More like a head in a hole response.
           \_ Uhhh... no.  The response is that ESR doesn't even understand
              the extent of the problem.  How is this a "head in a hole"
              response?
        \_ not really an "open source" horror story... more like a unix
           configuration horror story. or linux or whatever *nix this guy
           has. nothing related to "open source" about the problem
           \_ Way to not read any of the articles!
ERROR, url_link recursive (eces.Colorado.EDU/secure/mindterm2) 2025/05/25 [General] UID:1000 Activity:popular
5/25    

You may also be interested in these entries...
2013/2/19-3/26 [Computer/SW/OS/OsX] UID:54611 Activity:nil
2/19    I program a lot by sshing to a Linux cluster.  So I'm used to using
        Xemacs to code.  This works fine from a Linux or Windows workstation,
        but sometimes I have to use a Mac.  On Mac, the meta is usually
        bound to option, but that often doesn't work over ssh for some reason.
        This makes using emacs a real pain.  Any suggestions on how to fix it?
        (Other than "use vi")
	...
2012/8/28-11/7 [Computer/HW/Memory] UID:54466 Activity:nil
8/26    Amazon medium instances (3.75GB RAM): 0.160/hour = $1382/year
        Generic standard Linux VPS (4GB RAM): $480/year
        Amazon costs more (but does offer superior scaling options).
        \_ Amazon is $670 if you buy a year's usage up front (heavy util).
           Why is heavy util less expensive than light util?
	...
2012/1/4-2/6 [Computer/HW/Drives] UID:54281 Activity:nil
1/4     I want to test how my servers behave during a disk failure and
        a RAID reconstruction so I want to simulate a hardware failure.
        How can I do this in Linux without having to physically pull
        a drive? These disks are behind a RAID card and run Linux. -ausman
        \_ According to the Linux RAID wiki, you might be able to use mdadm
           to do this with something like the following:
	...
2010/7/21-8/9 [Computer/SW/OS/FreeBSD] UID:53890 Activity:nil
7/21    Can I just use ifconfig to expand my netmask on a FreeBSD box?
        Are there any gotchas here? Linux forces me to restart my network
        to expand my netmask.
        \_ yes... and no, you don't have to restart your network on linux either
           \_ Rebooting is the Ubootntoo way!
              \_ Oooboot'n'tootin!
	...
2010/7/22-8/9 [Computer/SW/OS/FreeBSD, Computer/HW/Drives] UID:53893 Activity:nil
7/22    Playing with dd if=/dev/random of=/dev/<disk> on linux and bsd:
        2 questions, on linux when <disk>==hda it always gives me this off
        by one report i.e. Records out == records in-1 and says there is an
        error. Has anyone else seen this?  Second, when trying to repeat this
        on bsd, <disk>==rwd0 now, to my surprise, using the install disk and
        selecting (S)hell, when I try to dd a 40 gig disk it says "409 records
	...
2010/5/26-6/30 [Computer/SW/Unix/WindowManager, Computer/SW/OS/OsX] UID:53844 Activity:nil
5/26    anyone use lxde?  supposedly it is less stupid than xfce and
        less bloated than gnome.  thoughts?
        \_ lol, does anyone still use desktop linux?  Get with the times
           buy a mac.  Now.  DO IT.  Go NOW.
           \_ but we prefer herring to Kool-Aid
              \_ "you have to yell, he's hard of herring"
	...
2010/5/6-26 [Computer/SW/OS/Windows] UID:53818 Activity:low
5/5     Does anyone know how to do custom install of Ubuntu 10.04? I can't
        even boot it up to give me the menu to custom install and it
        keeps installing a bunch of crap I don't need. It's getting
        just as slow and bloated as Winblows install. Dear lord,
        I miss the old Ubuntu.
5/5=1.0 Numerology FTW.    5+5=10
	...
2010/4/22-5/10 [Computer/SW/Languages/Misc] UID:53797 Activity:nil
4/22    In Linux is there an easy way to rename the scripts in /etc/rc?.d ?
        For example I want to set all the /etc/rc?.d/S91apache to S100apache
        so that it'll run the ramdisk BEFORE going to apache.
        \_ Sure, just move them.
           \_ I mean is there a script that will rename all of them
              for me? Like: setrc apache2 0 0 1 1 1 1
	...
2012/8/26-11/7 [Computer/SW/Security] UID:54465 Activity:nil
8/26    Poll: how many of you pub/priv key users: 1) use private keys that
        are not password protected 2) password protect your private keys
        but don't use ssh-agent 3) use ssh-agent:
        1) .
        2) ..
        3) ...
	...
2012/8/29-11/7 [Computer/SW/Security] UID:54467 Activity:nil
8/29    There was once a CSUA web page which runs an SSH client for logging
        on to soda.  Does that page still exist?  Can someone remind me of the
        URL please?  Thx.
        \_ what do you mean? instruction on how to ssh into soda?
           \_ No I think he means the ssh applet, which, iirc, was an applet
              that implemented an ssh v1 client.  I think this page went away
	...
2012/9/20-11/7 [Computer/SW/Unix, Finance/Investment] UID:54482 Activity:nil
9/20    How do I change my shell? chsh says "Cannot change ID to root."
        \_ /usr/bin/chsh does not have the SUID permission set. Without
           being set, it does not successfully change a user's shell.
           Typical newbie sys admin (on soda)
           \_ Actually, it does: -rwsr-xr-x 1 root root 37552 Feb 15  2011 /usr/bin/chsh
	...
2012/3/29-6/4 [Computer/HW/Memory, Computer/HW/CPU, Computer/HW/Drives] UID:54351 Activity:nil
3/29    A friend wants a PC (no mac). She doesn't want Dell. Is there a
        good place that can custom build for you (SSD, large RAM, cheap video
        card--no game)?
        \_ As a side note: back in my Cal days more than two decades ago when
           having a 387SX made me the only person with floating-point hardware,
           most machines were custom built.
	...
2012/4/27-6/4 [Computer/SW/Languages/Misc, Computer/SW/Unix] UID:54372 Activity:nil
4/27    I wrote a little shell script to collect iostat data:
        #!/bin/bash
        DATE=`date +%m%d`
        DATADIR=/var/tmp/user
        OUTPUTFILE=$DATADIR/$DATE.out
        while true
	...
2012/5/8-6/4 [Computer/SW/Unix] UID:54383 Activity:nil
5/8     Hello everyone!  This is Josh Hawn, CSUA Tech VP for Spring 2012.
        About 2 weeks ago, someone brought to my attention that our script
        to periodically merge /etc/motd.public into /etc/motd wasn't
        running.  When I looked into it, the cron daemon was running, but
        there hadn't been any root activity in the log since April 7th.  I
        looked into it for a while, but got lost in other things I was
	...
2012/1/27-3/26 [Computer/SW/Unix] UID:54299 Activity:nil
1/27    Interesting list of useful unix tools. Shout out to
        cowsay even!
        http://www.stumbleupon.com/su/3428AB/kkovacs.eu/cool-but-obscure-unix-tools
        \_ This is nice.  Thanks.
	...
2012/2/9-3/26 [Computer/SW/Security, Computer/SW/Unix] UID:54305 Activity:nil
2/9     Reminder: support for mail services has been deprecated for *several
        years*. Mail forwarding, specifically .forward mail forwarding, is
        officially supported and was never deprecated.
        \_ There is no .forward under ~root.  How do we mail root and how do
           we get responses?
           \_ root@csua.berkeley.edu is and always has been an alias.
	...
Cache (8192 bytes)
www.catb.org/~esr/writings/cups-horror.html -> www.catb.org/%7Eesr/writings/cups-horror.html
Home Page Whats New Site Map Software Projects HOWTOs Essays Personal Weblog Freedom! Ive just gone through the experience of trying to configure CUPS, the Common Unix Printing System. It has proved a textbook lesson in why nontechnical people run screaming from Unix. This is all the more frustrating because the developers of CUPS have obviously tried hard to produce an accessible system but the best intentions and effort have led to a system which despite its superficial pseudo-friendliness is so undiscoverable that it might as well have been written in ancient Sanskrit. You have to think about what the actual user experiences when he or she sits down to do actual stuff, and you have to think about it from the users point of view . The CUPS people, despite good intentions, have utterly failed at this. Im going to anatomize this failure in detail, because there are lessons here that other open-source projects would do well to heed. The point of this essay is not, therefore, just to beat up on the CUPS people its also to beat up on every other open-source designer who does equally thoughtless things under the fond delusion that a slick-looking UI is a well-designed UI. I go to my desktop menu and click System Settings-Printing, then give the root password to the following popup. Up pops a wizard that says, in big friendly letters, Add a new print queue. Now, those of you who are intiimate with CUPS know I have already made a basic error. I shouldnt be trying to create a new print queue on snark and then glue it to the server on minx, at all. Instead, if I want to pass print jobs to minx, I should look at the configuration wizard, see minxs print queue already announced there, and make it snarks default. But nothing in the configuration wizards interface even hints at that! And minxs print queue does not show, for a reason well discover later in this sorry saga. New form in the window, saying Queue name in equally big friendly letters. I change it to laserjet because I might at some point want to hook up the ancient dot-matrix thingy I still have. Clicking on the menu, I am presented with the following alternatives: Networked CUPS IPP Networked Unix LPD Networked Windows SMB Networked Novell NCP Networked JetDirect Here is our first intimation of trouble. If I were Aunt Tillie the archetypal nontechnical user, I am at this point thinking What in the holy fleeping frack does that mean? And I certainly dont have a Networked JetDirect, whatever that might be. If the designers were half-smart about UI issues like, say, Windows programmers theyd probe the local network neighborhood and omit the impossible entries. If they were really smart like, say, Mac programmers theyd leave the impossible choices in but gray them out, signifying that if your system were configured a bit differently you really could print on a Windows machine, assuming you were unfortunate enough to own one. Instead, Aunt Tillie is already getting the idea that this software was written by geeks without clue. But instead of answering the question in my mind, which is How do I choose the right queue type, it is a page on adding a locally connected printer. That is, its associated with the currently selected-by-default queue type, not the operation of choosing a queue. Aunt Tillie, at this point, is either resigning herself to another session of being tortured by the poor UI choices of well-meaning idiots or deciding to chuck this whole Linux thing and go back to the old Windows box. It blue-screened a lot, but at least it allowed her the luxury of ignorance she didnt have to know, or care, about what a JetDirect or a CUPS might be. I am not ignorant, but I have my own equivalent of Aunt Tillies problem. I know I want one of the top two methods, but I dont know which one. I have better things to do with my brain than clutter it with sysadminning details. If the tool can detect that both methods are available on the local net and that shouldnt be hard, theyre both well-known ports it should put recommended next to one so I can click and keep going. Instead I have to stare at the help screen and think Where might I find some guidance on this, and why is this already taking too freaking long? I get a page about the printer configuration which describes the queue types, but still no guidance on how to choose between CUPS and LPD. Obviously it never occurred to the designers of the CUPS that this could be an issue, either for Aunt Tillie or for the more technically ept. There is no large friendly button next to the Select a queue type that says How to select a queue type. This lack is a grave flaw in the UI design that turns the superficial spiffiness of the configuration wizard into a tease, a mockery. Applying my fearsome hacker-jutsu once again, I guess, and select CUPS IPP. Comes now the form that turns the UI from a mockery to something worse. The other is labeled Path: and contains the string /printers/queue1. If Aunt Tillie were still along for the ride, she would be using some unladylike language right about now. And with good reason, because this is a crash landing, an unmitigated disaster. To understand why, you have to stop thinking like a hacker for a few moments. Cram your mind, if you can, back into the mindset of a clueless user. Somebody who not only doesnt know what a string like /printers/queue1 might mean, but doesnt want to know, and doesnt think he or she ought to have to learn. From Aunt Tillies point of view, its reasonable that the host field is empty; The page associated with Networked CUPS IPP Printer says Any networked IPP printer found via CUPS browsing appears in the main window under the Browsed queues category. And it doesnt give me a clue what to do if I dont see any Browsed queues category, which is particularly wack since that is the normal, default situation for a new installation! The problem isnt that the right things are technically difficult to do; CUPS is already supposed to have discovery of active shareable queues as a feature. They never exerted the mental effort to forget what they know and sit down at the system like a dumb user whos never seen it before and they never watched a dumb user in action! And its whats keeping Microsoft in business because by Goddess, they may write crappy insecure overpriced shoddy software, but on this one issue their half-assed semi-competent best is an order of magnitude better than we usually manage. Im going to tell you about my efforts to research my way out of this hole, because there are some lessons there as well. I did this in a Unix-hackerish way, by eyeballing the output of locate printers for anything in /usr/share/doc related to CUPS. That password prompt, rather than being a signpost leading further into an understanding of the system, was another stone wall. I searched on CUPS printing HOWTO and found a link to The Linux Printing HOWTO which when I chased it, turned out to be a 404. Im throwing it in just to establish that, at that point, I was feeling screwed, blued, and tatooed. The shiny-surfaced opacity of CUPS had, it seemed, defeated me in what should have been a trivial 30-second task. My next step was to ssh into minx and see if I could discover the name of the active CUPS queue. Maybe, I thought, if I found that out I could plug that queue name into the configuration wizard on snark and it would all work. The two commands that seemed possibly relevant were lpinfo8 and lpadmin, and you cant get a list of queue names from either of them. The output of lpinfo -v looked like it ought to be useful, but I had no idea how to map these device URLs onto queue names. I am writing this rant as I am trying to figure out the path out of this maze. I am reading the CUPS System Administrators Manual and it claims : CUPS supports automatic client configuration of printers on the same subnet. Each client should see the available printers within 30 seconds automatically. The printer and class lists are updated automatically as printers and servers are added or removed. Well, thats very nice, but the breezy confidence of their exposition leaves me with no clue about what to do when the autoconfigura...
Cache (6543 bytes)
daringfireball.net/2004/04/spray_on_usability
But the days when Linux was really more complex to administer than a Windows machine are long past us. I mean, come on, its funny that the guy who wrote that couldnt connect to a shared printer. But its when Raymond begins proposing solutions to the problem where the problem is the larger issue of open source software usability in general, not just the specific case of CUPS printer configuration that things get hilarious. In his follow-up article , Raymond summarizes his proposal thusly: A few days ago I uttered a rant on user-interface problems in the Common Unix Printing System. I used it to develop the idea that the most valuable gift you can give your users is the luxury of ignorance software that works so well, and is so discoverable to even novice users, that they dont have to read documentation or spend time and mental effort to learn about it. And indeed, most of the follow-up article is devoted to the congratulatory email Raymond received in response to part one: This rant made it onto all the major open-source news channels, so I was expecting a fair amount of feedback and maybe pushback. But the volume of community reaction that thundered into my mailbox far surpassed what I had been expecting and the dominant theme, too, was a bit of a surprise. But this is not a radical new direction for open source desktop software. This idea, that the hard work of development is in building the underlying foundation, and that the easy part is writing a GUI wrapper, has been the Linux/Unix way all along. Raymonds proposal is predicated on the idea that good UI design and development is easy, that developers simply need to keep dear old AT in mind and the design will fall into place. The problem isnt that the right things are technically difficult to do; CUPS is already supposed to have discovery of active shareable queues as a feature. They never exerted the mental effort to forget what they know and sit down at the system like a dumb user whos never seen it before and they never watched a dumb user in action! And again: As I said before, the point of this essay is not especially to bash on the CUPS guys. Theyre no worse than thousands of projects out there, and that is the point. We talk about world domination, but well neither have it nor deserve it until we learn to do better than this. None of the changes in CUPS behavior or documentation Ive described would be technical challenges; Conversely, some people who are good UI designers arent programmers. But the rock stars are the guys who can do both, and they are few and far between. If theres a glib, nutshell synopsis for why Linux desktop software tends to suck, its this: Raymond and his ilk have no respect for anyone but themselves. They have no respect for the fact that UI design is a special talent. They have no respect for the fact the good UI design requires a tremendous amount of time and effort. And, most importantly, they have no respect at all for real users. The idea that GUI software needs to be designed for dumb users which is Raymonds own term, and an indication of what he really means when he refers to dear old AT is completely wrong. They design for smart, perceptive people people just like themselves . There are a lot of developers creating good UIs for Windows, for the web, and for other platforms. And, yes, there are even developers creating great UIs for software running on Linux. But the undeniable truth is this: successful open source software projects tend to be at the developer-level, not the end-user level. The open source revolution has done nothing to change the fact that the best-designed, most-intuitive user interfaces are found in closed-source commercial software. Im not saying all commercial software is well-designed, nor that all free software is poorly-designed what Im saying is that software that does provide a well-designed, intuitive interface tends to be closed and commercial. The most obvious explanation is that the open source model does not work well for producing software with good usability. Not to mention MPTs aforementioned essay , which addresses this directly. Good user interfaces result from long, hard work, by talented developers and designers. The distributed, collaborative nature of open source software works for developer-level software, but works against user-level software. Imagine a motion picture produced like a large open source project. Different scenes written and directed by different people, spread across the world. One exception is the Mozilla project, which has released two very well-designed web browsers, Camino and Firefox. But Mozillas long development was in large part fueled by full-time Netscape engineers. Talented programmers who work long full-time hours crafting software need to be paid. Remember the old open source magic formula that one could make money giving away software by selling services and support? That hasnt happened in terms of producing well-designed end user software and its no wonder why. In Raymonds own words, the goal is: software that works so well, and is so discoverable to even novice users, that they dont have to read documentation or spend time and mental effort to learn about it. Its pretty hard to sell services and support for software that fits that bill. This is politically distasteful to open source zealots, but its true and it explains the poor state of usability in open source software. Raymond also complains about CUPSs shoddy and inaccurate documentation, but thats just another side of the same glove. Technical documentation is also hard work, and requires talent to be done well. Linux Raymond is quite complimentary to Mac software in these articles he holds it up as an example for Linux developers to emulate. But he fails to acknowledge that most Mac software such as the System Prefs panel you use to connect to a shared printer is closed source, and produced by full-time professional engineers. He also fails to acknowledge another uncomfortable truth: Unix nerds who care about usability are switching to Mac OS X in droves. This trend isnt necessarily a market share bonanza for Apple all the Unix nerds who care about usability in the world amount to only a fraction of a percent of the general population. But its a trend that bodes poorly for usable desktop Linux software. Most of the talented developers still using desktop Linux are either cheapskates or free-software political zealots. But its growing at the bottom end of the market cheap $400 computers from Wal-Mart.