Showing posts with label Linux. Show all posts
Showing posts with label Linux. Show all posts

Saturday, March 26, 2016

Trying to be a Mac User--Decision to Give Up

In November I went all-in on switching from Linux to the Mac. Linux quality is ever-declining, and I had a laptop on which Linux Mint was almost completely unusable. But Mac usability is surprisingly poor, and I expect to return to Linux, mostly completely.

This is the first of a series of short articles on Mac usability deficiencies. From Wikipedia, https://en.wikipedia.org/wiki/Point_and_click#Fitts.27s_Law:

------------------------------------------

Fitts's Law

Fitts's law can be used to quantify the time required to perform a point-and-click action.
T = a + b \log_2 \Bigg(1+\frac{D}{W}\Bigg) where:

  • T is the average time taken to complete the movement.
  • a represents the start/stop time of the device and b stands for the inherent speed of the device. These constants can be determined experimentally by fitting a straight line to measured data.
  • D is the distance from the starting point to the center of the target.
  • W is the width of the target measured along the axis of motion. W can also be thought of as the allowed error tolerance in the final position, since the final point of the motion must fall within \pm\frac{W}{2} of the target's centre.
------------------------------------------

Why is this important? Regardless of where a window is on the screen, OS X places the menu in the far upper left. Mousing to the menu is more time-consuming than if the menu were attached to the window itself, putting OS X at a disadvantage compared to other popular desktop operating systems, especially those with large screens.

Friday, May 17, 2013

HTTPS Everywhere Rule Set for userpages.umbc.edu

Many of the servers at  UMBC do not support HTTPS, but userpages.umbc.edu, the server(s) for user home pages, does. However, probably few people access it securely. For those using HTTPS Everywhere, I wrote an extension for HTTPS Everywhere:

<ruleset name="userpages-UMBC">
  <target host="userpages.umbc.edu" />

  <rule from="^http://userpages\.umbc\.edu/" to="https://userpages.umbc.edu/"/>
</ruleset>

I haven't figured out how to install this in my Chrome profile, but it works fine with Firefox HTTPS Everywhere. Tips would be appreciated.

First, HTTPS Everywhere must be installed. Most people should install it anyway. The EFF is doing great things for the public, which is why I donate annually.

Second, the file must be installed "in the HTTPSEverywhereUserRules/ subdirectory in your Firefox profile directory" (see the EFF page). Then restart Firefox. On my Xubuntu system, this directory was
~/.mozilla/firefox/xxxxxxxx.default/HTTPSEverywhereUserRules. The penultimate part of that path will vary from system-to-system.

[ Originally omitted; added 2013-06-09 ]:
Third, the file name must match the domain name, userpages.umbc.edu in this case.

Get HTTPS Everywhere from the EFF here.

Wednesday, May 1, 2013

Locales and Sort Order

I've been annoyed by Linux behavior regarding sort order for a long while, but today hit my gag reflex when I was editing the wrong file because emacs sorted the directory listing incorrectly. I had changed to the local directory listing, hit down arrow and enter, and was puzzled when the file looked wrong. The file was fine, but it was the wrong file. Who was telling emacs to ignore dots in file name sort order? Annoying.

I need an intuitive sort order, and that is the one given by the ASCII collating sequence. It was interesting, because some applications were getting it right, and some were providing goofy results:
  • Dot should be before letter or digits.
  • Upper case should precede lower case. They should not be intermingled.
  • Digits should be treated as digits, not as numbers. E.g., 10 should appear before 5, since '1' appears before '5' in the collating sequence. The problem here is that someone is trying to predetermine how I name files or interpret file names.
The fix is easy. My /etc/default/locale was just one line. I added the second, logged out, and logged back in:

LANG="en_US.UTF-8"
LC_COLLATE="C"


[  Added 2013-05-02:

  I've got a 64b Lubuntu 12.10/Mate 1.6.0 box that seems to sort files okay with this setting:

  LC_COLLATE="en_US.UTF-8"

  However Caja 1.6.1 still doesn't sort file names correctly.

]

Tuesday, October 23, 2012

Thumb Drive Undelete Files

A few weeks ago a student wanted to know how to undelete files on a FAT-formatted thumb drive. I knew I used to be able to do that with a Linux system--no guarantees of reliability of course--but a quick search turned nothing up. Actually, it's easy: just install testdisk, https://launchpad.net/ubuntu/+source/testdisk . To run, you may have to be superuser. It installs easily and works well (n of 1 study) on Mint 13, but any Debian-derived system is probably fine.

Thursday, August 9, 2012

Dia Epiphany

For years now I've used dia as a diagram-drawing tool, and it's a good example of what open-source software should be: usable and useful. But I've often wished I could add to the set of available objects to use within diagrams. Tonight, rather than just getting the job done, I decided to RTFM. Adding an object is easy.

One of the last gadgets looks vaguely like the moon over a mountain. I never clicked it before, or if I did, I didn't get the point. Besides, who wants to virtually moon mountains? The idea is to click the moon & mountain and place it on the drawing. The result is a red X over the text broken image. Double-click on the  X, and then click on browse. Pick an image. So far I've loaded a couple png images, and it works like a dream--perfect!

I don't remember when I started using dia; perhaps as recently as '06. I used idraw on SunOS systems in the late '80s and early '90s. The alternative was xfig which was overly complicated, and impossible to use without reading a manual (like, e.g., the GIMP). After leaving OSU, through '98, I was often stuck using NT machines (NT 4 was Microsoft's most usable OS, however). I don't remember what I was using--probably I just avoided doing anything that wasn't easy in whatever Microsoft's drawing program was. But around the turn of the century I went full-time Linux on the desktop (had been using it for servers since '95 or so--Slackware, then Red Hat, then Debian) and it was a good move, though I believe I'll soon flush Ubuntu & Mint down the toilet where they belong.

But I digress. Dia: great! Dia: easy to add images! Dia: highly recommended! Dia: apparently available for Windows. Wikipedia has a bare-bones dia overview.

Saturday, July 28, 2012

Really the Biggest Albatross Crippling Ubuntu and Mint

I'm an old Unix guy. Unix worked. When I saw the opportunity to blow away Windows junk with Linux, I jumped at it thinking it would be a simpler, more reliable OS. In the '90s that was a correct assessment. Now, Linux distros are continuously chasing new features and thus becoming bloated with partly-working software. I'd prefer to find an OS where attention is paid to quality.

In the late '80s I taught intro CS on Macs, and they were utter crap. Cooperative multitasking? One-button mice? Give me a break. A former colleague used to say that a computer user's intelligence is directly proportional to the number of buttons on his mouse. I realize, as did he (I think), that the generalization doesn't hold, but copying and pasting in Windows is really clumsy due to the 2-button mouse limitation, and it's hard to imagine a Mac being any better. Of course, Macs still use one-button mice, and my early-learned disdain for Macs survives, though without any actual Mac usage in the past couple decades.

I've been married more recently than I've spent more than 10 minutes using a Mac.

Is Solaris any better? The word on the street suggests not, especially since Sun got bought out. How about BSD? I want the system to be invisible and let me do my work. I guess I want SunOS 4, but not really...

Audio Working (Today); Maybe Popping Mint & Ubuntu from Active Stack and Pushing them to Used Stack

Audio is working today on my Linux Mint 13 64b system, which is a pleasant surprise. It's been stuttering the last few weeks, and after much Googling it appears to be a known problem with PulseAudio, one of Linux's several albatrosses. As soon as I read speculation that it would be fixed in Mint 14, I spent a little while pondering OSS, but I have work to do, and clearly the Ubuntu/Mint flavors of Linux are not cut out for that. Is it time to go back to Debian? My recollection was that, as of a few years ago, Debian mostly worked. Or do I try out Arch Linux?

The biggest albatrosses around Ubuntu/Mint's indistinguishable necks? Unity and Gnome Shell, and the notion that we're more interested in crippling desktop and laptop computers to look like smart phones than in, again, actually getting our work done.

Friday, May 25, 2012

Google Drive Non-Op

Earlier this morning uploads of files (.tgz.cpt typically) to Google Drive from my home system failed consistently, for both my UMBC and my personal accounts. Now that I'm on campus, things seem to be working again, and I was able to mail all 19MB to myself via Gmail, so it was a survivable situation, but I need to check out dropbox.

I'm concerned the Drive might work more reliably with a client on my machine, which is not going to happen:

  1. Google as of recently had no Drive client for Linux, and
  2. I already installed Picasa on my machine once, and it immediately ransacked my hard drive, even before I was able to tell it where my pictures were. I suspect it was just looking for image files, but, not having a week to read the privacy policy, I killed it and uninstalled it right away. I wanted a program to ease uploads to Picasa and management of albums on Picasa, and clearly the Google client was much more than that. How can I trust a Drive client on my machine?
Time to checkout dropbox. Thumb drives and e-mailing oneself big attachments are fine, but I need a solid backup or replacement for Google Drive.

Friday, October 7, 2011

I Keep Leaving Truecrypt for Ccrypt

I recently bought a pair of Western Digital 1TB Passport USB drives. They seemed an ideal solution for backing up my personal system. The idea is to keep one in one location, the other in another location, and every couple of weeks do a complete backup to whichever one is least fresh. For me a complete backup, once gzipped, is about 170GB, and I thought it would be a good idea to place a 900GB Truecrypt container on each, and each container could contain several backups.

The WD drives were formatted ntfs, and so a 900GB file wasn't a problem. What was a problem was that, on both drives, with Ubuntu 11.4, the latest version of Truecrypt, Gnome instead of that Unity crap, I could not consistently copy a 170GB file to the Truecrypt container--it kept hanging.

The simple and reliable solution was to format the WD drives ext2, trashing the WD software that I couldn't imagine ever using, and then to do my backups to /tmp as .tgz.cpt, i.e., as gzipped tar encrypted using ccrypt. Then I could reliably copy the file to the WD drive.

BTW, with NTFS on Ubuntu, even with ntfstools installed, I never could change the label of an NTFS volume. But it was a three second job on a Windows 7 machine.

So I temporarily went back to Truecrypt, but returned to ccrypt begging forgiveness. A zombie process told me "It's too late to say you're sorry. How would I know? Why would I care?"

Wednesday, July 20, 2011

Zombies, Firefox, Chrome, and all That

I've been noticing a lot of defunct or zombie evince processes lately and decided to take a couple minutes figuring out what's going on. In the Linux world, evince is a good PDF reader, certainly better than the one freely-available from Adobe. The problem isn't with evince: zombies cannot be held accountable.

All the zombies I had on my system this morning had one of two parent process IDs, that of Firefox (3.6.18) or that of Chrome (13.0.782.56 beta). When a process forks a child, it is supposed to wait() for the child. This can be done asynchronously, so it's little inconvenience for the parent process, and not much for the programmer of the parent process, if said programmer knows what he is doing. The child process, evince in my case, hangs around the process table as a zombie until the parent issues a wait(). This allows a parent process to keep track of the status of its children. Once the parent checks on the child, the child can go away.

Firefox and Chrome are apparently not checking on their children.

Saturday, August 7, 2010

Surprising Bogosity from PearsonHigherEd.com

Pearson usually supplies instructor supplements to texts in Zip archives. Fine. But the PowerPoint slides for Sebesta's Programming the Web 5th ed are in an archive with an extension .sitx. A little searching says this is a StuffIt archive, a proprietary format. Why? Are they going out of their way to make sure some of their customers can't access the materials? StuffIt's free unroller isn't even available in a Linux version, making the 10MB archive useless wasted space on my hard drive.

Monday, February 1, 2010

Remembering SCO

In the '90s, when an assistant professor at Hood College, I was visited by representatives of SCO trying to convince me that we should be running SCO UNIX in our labs. When I mentioned Linux (we had a couple slackware servers and a number of Ultrix machines at the time) to them, they looked at each other as if encountering a tremendously naive user. They then proceeded to belittle Linux. Later while still at Hood and then in industry I had occasions to talk with SCO representatives, and they consistently dealt with Linux with belittling rather than rational argument, similar to the way Microsoft now spreads FUD when discussing open source, so consistently that I couldn't help but suspect this was how they were told to deal with Linux.

SCO was a fine product at the time, and at the heart of a number of voice servers installed by Microlog in my time with that company, but the sales reps were incapable of delineating advantages or disadvantages of SCO vs. Linux.

Now I have trouble seeing someone who went with Linux rather than SCO in the '90s as viewing that as a mistake. SCO may not be dead, but they're no longer relevant.

Saturday, January 30, 2010

tcsh Update

Maybe I don't need to worry about changing shells too soon, if only because tcsh is the default shell for UMBC's Linux cluster, GL.

UMBC shell menu


So it's not just me and the OSU of yesteryear, but also UMBC.

Saturday, January 23, 2010

sftp "Received message too long 1114795883"

A new semester starts in a few days and it's time to move stuff to the server, but, alas, I couldn't log in to the server. More specifically, ssh worked fine, but sftp failed. And it didn't just fail from my Ubuntu desktop, but from my XP netbook. Clearly it was a problem on the server, but I decided to do a little googling before opening a ticket and suggesting to the IT staff that something was screwed up. Besides, if sftp was broken on a university-wide basis, they probably already knew about it.

Google led here, which had a link to a post from a guy whose last name meshes well with my profile picture.

The problem could be that my .cshrc on the server was generating output that sftp didn't know to deal with. Another blogger somewhere gave a hint regarding what this was, and indeed the decimal 1114795883 in the error message was 0x42726f6b, or, in ASCII: "Brok'. Yes, something was broken, and 4 bytes was all that fit into the integer error message.

So I had to figure out why GL (the server, gl.umbc.edu) was generating extra characters. My default shell is tcsh, so the problem was most likely in the init file, .cshrc. I decided not to look at the system-wide .cshrc initially. I tossed some detritus from my .cshrc, and again failed to log in.

There was still a suspicious line, '/usr/bin/mesg n', at the beginning of the file. Why wasn't this inside the conditional that distinguished between interactive shells and others? I moved it into the conditional, and suddenly I was able to log in.

I had to chuckle. I added that line last semester when a student decided that if we were logged in on GL at the same time, he could chat with me. No. But I was clearly careless when I disabled write.

Sunday, July 12, 2009

Chrome: Darn the Luck

It looks like my favorite feature of the Linux version of Chrome, the lack of Flash support, is going the way of the dodo: http://h3g3m0n.wordpress.com/2009/07/12/linux-chrome-flash-ext/ It's nice to have a browser that doesn't support Flash simply because so many web sites use it for advertising content. Perhaps advertising is the predominant use of Flash.

Wednesday, June 10, 2009

Chrome on Ubuntu

I've started using Chrome on one of my Ubuntu Linux machines, and kinda like it. It's fast, and pointing it at a PeopleSoft SA page doesn't lobotomize it (Firefox 3 slows to a crawl when SA is visited and remains at a snail's pace until the browser is closed--generally a mercy killing). A few minuses to date:
  1. The formatting on some of the PeopleSoft SA pages is sufficiently messed up as to be unreadable. It's not as though they were all that readable to begin with, though.
  2. It doesn't seem aware of my Flash installation, which may be a simple configuration issue.
  3. I can't right-click on an image and ask it to never load images from that particular server ever again. Thus I see a lot of ads I've trained Firefox to not fetch.

Tuesday, September 2, 2008

GNU Emacs: making the obvious difficult

Off and on it's really irritated me that someone on the GNU team decided to change the default behavior of tab in fundamental mode from insert ^i to indent-relative. I hate indent-relative. It makes lining things up in columns in text files difficult. So every few months I do a Google search, find other people making the same complaint, and see less than helpful suggestions. Tonight I got more frustrated than usual, and so spent more time than usual. It appears that the following shuts off indent-relative for the most part without messing up filename completion or indentation in various modes, e.g., java or html.
(setq default-major-mode 'text-mode)
(define-key text-mode-map "\t" "\C-q\C-i")
The above is pretty much alpha code at the moment. There's detritus in my .emacs that suggests that years ago I didn't like text mode for pnews or mail modes, but those are no longer issues. indent-relative is, IMHO, evidence of word processor-oriented thought processes, not text editor-oriented processes. As Linux grows to be more Windows like (e.g., bloated and buggy), there seems to be an undercurrent of making basic tools, e.g., emacs and wc, less Unix-like.

Monday, April 7, 2008

Linux, Unix, and all That

"Those who don't understand Unix are condemned to reinvent it, poorly" --Henry Spencer "It seems few Linux developers understand Unix" -- me.