flak rss random

github ui

I’ve been paying a bit more attention than usual to web interfaces, and there’s a few examples which really get to me. GitHub is one that’s annoyed me for a while, but I didn’t quite know what was wrong until I looked at some screenshots to see what was frustrating me.


Posted 13 Feb 2019 23:08 by tedu Updated: 14 Feb 2019 17:39
Tagged: rants web

but what about screen readers

But what about screen readers, you ask. Somebody did a web thing you don’t like. Doesn’t this break screen readers?

It seems the easy way to find out would be to test. But that requires caring about screen reader usability enough to actually have one on hand to test. Much easier to wag fingers. Screen readers are the starving children of web accessibility arguments. Why don’t you care about the starving children?

It’s borrowing somebody else’s concerns to score internet points. Oh, hi, I just wanted to try this on and post a few comments, you can have it back now. Thanks. I wouldn’t want to have to think about this all the time.

Posted 08 Feb 2019 18:02 by tedu Updated: 08 Feb 2019 18:02
Tagged: rants web

two dollars to choose

Configuring an HP laptop, came across this gem.

two dollar choice

I like that I get a choice, but is it really necessary to tack on a $2 fee? If I have to choose one or the other, maybe just include it in the listed price? I thought airlines were bad...

Possibly related to this great option:

wifi yes or yes

It’s a tough choice, but somebody has to make it. And pay $22 for the privilege.

Posted 11 Jul 2017 07:20 by tedu Updated: 11 Jul 2017 18:11
Tagged: business rants

hard facts about shitcoins

Got a new spam today, subject “hard facts“, which was actually kind of interesting. There was a link, which obviously not clicking, but the body was a reply to an email I had allegedly sent. Here’s what I said:

Be careful with shitcoins. They tend to market themselves based on the latest trendy arguments against btc.

First it was the confirmation time then mining algorithm then inflation schedule
and recently, unfairly distributed, incomplete shitcoins are hyped on the grounds
of smart contracts, usually asking you to buy in their "crowdsale" or "IPO".

That’s so on target I thought maybe it really was an email I’d sent. Is it still spam if I agree with it?

Posted 30 Jun 2017 19:48 by tedu Updated: 30 Jun 2017 19:48
Tagged: mailfail rants

HP Chrome Print fuckup du jour

Long story short, printing on a chromebook is still fucked, and now the incompetent dickheads who write drivers for HP have made things worse. With time and effort, however, one can still repair the damage. Writing this up in case somebody finds it useful, and because I have little doubt I’ll be referring to it again in the near future.

First, the problem: printing from a chromebook to a local network printer no longer works. There is an extension that used to make this possible. If one reads the reviews, one will quickly notice the many, many one star reviews saying that it doesn’t work. In particular, it used to work, but after the March 20 update it completely unhelpfully and uselessly does nothing but say “Printing unsuccessful”. That was more than a month ago. The rockstar talent at HP is apparently on tour and too busy to fix this.

Here’s the insane workaround. First we need the old version of the extension. Obviously Google will never let us have it, but there’s an archive site. Here’s the previous print extension. Download that. Rename the file to zip. Create a new folder and extract the contents of the zip file. Rename the _metadata folder to not_metadata. Open the chrome extensions panel. Delete the old HP Print extension. Flip into developer mode. Add an unpacked extension. Add back the printer IP address and rejoice.

For bonus fun, talk your mom through this procedure over the phone.

Posted 30 Apr 2017 22:00 by tedu Updated: 30 Apr 2017 22:00
Tagged: bugs rants software web

careful with the chrome HSTS

Updated to chrome and noticed I couldn’t login to my own site.

www.tedunangst.com normally uses encryption to protect your information. When Google Chrome tried to connect to www.tedunangst.com this time, the website sent back unusual and incorrect credentials.

That’s mostly not wrong, although the “this time” is. The cert has never been fully trusted by chrome, but I click through because I’m a bad person. This time, however, there was no option to do so.

You cannot visit www.tedunangst.com right now because the website uses HSTS.

I mean, yes, I set the HSTS header, but that was with the same cert that chrome is now insisting can’t be trusted. Why in the world would you permanently store “must have trusted cert” on the basis of an untrusted cert?

I suppose this warning is too late to save anyone, but you can clear HSTS sites if necessary via chrome://net-internals/#hsts.

Posted 14 Apr 2017 18:59 by tedu Updated: 14 Apr 2017 18:59
Tagged: bugs rants web

meaningful short names

Why don’t unix commands have any vowels in the name? cp and mv are obviously devoweled standins for copy and move. But they’re less intuitive for new users. The user wants to copy a file. Why shouldn’t the name of the command be exactly the operation the user wants to perform?

What exactly does the user want to do? Instead of copying files, maybe I want to link two files. What does that mean? In unix, we have hard links and symbolic links. If I replace the “original” file, do I want the link to refer to the original file or the replacement? Or maybe what I mean by link two files is to combine two object files into an executable. Do we call that loading instead? ln is the name of a command, but link is the name of a concept. And sometimes the concept evolves over time. The linker is called ld because it used to be the loader. (I think.)

grep is a remarkably useful tool, but with a most unintuitive name. Why not call it find like Windows does? I want to find some text, I run find. So obvious. But some users may want to find files in the filesystem, not strings in a file. What command do they run? Probably locate.

There may be a great deal of historical accident in the names of commands (what if the inventors of awk had different initials?), but that doesn’t mean we can’t recognize the value of unique and precise identifiers.

Posted 03 Mar 2017 02:31 by tedu Updated: 14 Jun 2017 22:55
Tagged: rants software

chromebook printing troubles

I have a chromebook which is quite nice for what it does. A dedicated browsing machine, fast and low maintenance. Alas, I am sometimes required to go outside, and worse yet talk to people, and even worster, show those people information. It is inconvenient to hand over my phone, no rotate it back, your other yaw, scroll a little, here, oh wait, let me unlock it again. I print such things on paper. Double alas, the chromebook makes this difficult.


Posted 24 Oct 2016 19:41 by tedu Updated: 24 Oct 2016 19:41
Tagged: computers rants software

cloudflare and rss

Let’s say somebody has a blog that I’d like to read. Subscribe to even. Let’s say they have an RSS link on their page. This should be easy.

Now let’s say the blog in question is hosted/proxied/whatever by Cloudflare. Uh oh.

Just reading the blog in my browser is now somewhat hampered because Cloudflare thinks I’m some sort of cyberterrorist and requires my browser to run a javascript anti-turing test. But eventually the blog loads, I read it, click the RSS link to subscribe, see that it is in fact XML rendered in my browser, and copy the link.

I paste the link into my RSS reader, optimistically hoping to see new links arrive. But they never do. Check the logs. Seems I’m getting 503 server errors, which is Cloudflare’s way of saying, “It’s not us; it’s you. And fuck off.”

Apparently my feed fetcher is also a cyberterrorist. It’s also written in python and can’t solve browser detecting riddles because it doesn’t include a javascript engine because OMG why would fetching an RSS feed require javascript?

Now I’m somewhat less inclined to read said blog, but hey, at least the internet is being kept fast and secure from miscreants like me.

Posted 16 Sep 2016 04:59 by tedu Updated: 05 Oct 2016 17:59
Tagged: rants web

one reason to hate openbsd

The gcc-local man page, which documents local changes to the compiler has this to say.

The -O2 option does not include -fstrict-aliasing, as this option
causes issues on some legacy code.  -fstrict-aliasing is very unsafe
with code that plays tricks with casts, bypassing the already weak
type system of C.

What does this mean and why should you care? The first part is easy to answer. Long ago, in the dark ages when legacy code was written, people used to write functions like this:

superbad(float f)
    int *x = (int *)&f;

    *x = 0x5f3759df - ( *x >> 1 );
    return f;

The C standard clearly says that objects are not to be accessed through incompatible pointers, but people did it anyway. Fucking idiots.

As for why one should care about the default setting of the compiler, the best answer I can give is that if you’re in a position to care, you probably know more than enough to form your own opinion and don’t need me to explain it to you. Otherwise, nobody cares except to the extent it confirms one’s own biases.

The strict aliasing optimization is disabled in gcc 4.2 because it was disabled in gcc 3.3. It was disabled in gcc 3.3 because it was disabled in gcc 2.95. It was disabled in gcc 2.95 because it was the year 1999.

The gcc-local man page continues with even more stupid options.

The -O2 option does not include -fstrict-overflow, as this option
causes issues on some legacy code.  -fstrict-overflow can cause
surprising optimizations to occur, possibly deleting security
critical overflow checks.


The Strict Aliasing Situation Is Pretty Bad.

Posted 25 Jul 2016 12:52 by tedu Updated: 08 Sep 2016 13:06
Tagged: c openbsd rants