Hopefully, this does not turn into a rant, but it might.
Just in case you-all don’t already know this, my day job is in tech. I am NOT a programmer, but my job is the kind where being a girl means it’s harder for me to find a new job and I have to be a LOT smarter than the guys, in general, to be taken seriously. I also have to know a lot about the technologies that accompany my area of expertise (databases), including network architecture and security.
Mostly, this means I can figure out or blunder through technologies that are not my expertise. Not without frustration, though.
Anyway. There was some discussion among writers about the problem with links in eBooks, particularly on iThings, where Apple does not necessarily play nice. There’s also the issue of data metrics on your links — which links are getting clicked on and from where? You can do this through a link shortening service like bit.ly. There are some compelling reasons to host a link shortening service yourself, and it turns out this is possible. But, really, only if you are a geekish short or have someone you trust with your passwords on your server space and who will make sure the implementation is done so that at the end, you have exactly what you need and want.
I went off and Googled self-hosted short links and came across a free application that will achieve this. (PS, I was all set to donate to them, but that link appears to be down. Hopefully later.) I was confident it would work because Lester Chan, who wrote the polling plugin I use in this blog, was involved. I read the requirements and acquired the domain I wanted to use and then set up the hosting for it. Woot!
Irritation No. 1
I don’t believe in letting your webhost also register your domain. But this means you need to have your webhost’s nameserver information so you can update your domain registration accordingly. Otherwise, your website will never resolve to the servers where you website resides.
I did those two things (obtain the domain, set up webhosting for it) And then I forgot that I hadn’t repointed the nameservers and was annoyed that I couldn’t get ftp to work. Doh. But then I could not find the nameserver information at my webhost and I KNOW they used to put it where it could be found easily. WTF? I googled their knowledgebase and got ONLY two completely irrelevant results. Really? Really, webhost?
Why, if someone searches “nameservers” in your KB, could you not return information about the damn namesevers? I had to open a ticket and ask for the info. Which I promptly got, I will say. OK!
I updated the nameservers over at my registrar (also not as straightforward as it should have been) then built and uploaded a simple index.hmtl file for the new website so that I’d know for sure when the DNS was populated and sending the requests to my webhost. That only took a couple of hours to resolve. Yay!
Irritation No 2
Remember, I am not a programmer. But I DO know there are a bazillion languages, each with its own syntax. How you indicate a string versus integers versus keywords for the language depends on the language. Double quotes? Single quotes? no quotes? Is there a terminating comma or not? IT DEPENDS!
So, in the example of the config file I needed to set up, the documentation did not define this AND it showed single quotes, but it was UNCLEAR to me if that meant use quotes, or, this is an example.
Here’s an example from the documentation:
Timezone GMT offset
Here’s what was in the sample config file:
/** Timezone GMT offset */
define( ‘YOURLS_HOURS_OFFSET’, 0 );
In the config, the number does not have quotes, even though the example does. Does this not imply that the documentation is using quotes in the sense of this is only an example?
What do you do with this?
Documentation (please note that I have replaced the actual letters of the example URL)
Your (short) domain URL, no trailing slash, lowercase. If you pick the non-www version of your domain, don’t use the www version in your browser (and vice-versa)
** YOURLS installation URL — all lowercase and with no trailing slash.
** If you define it to “http://site.com”, don’t use “http://www.site.com” in your browser (and vice-versa) */
define( ‘YOURLS_SITE’, ‘http://site.com’ );
If quotes are required, then the documentation, having settled on the formality of using quotes in the this is an example sense, SHOULD use two sets of quotes:
‘ ‘http://abc.ab’ ‘
php programmers would know exactly what to do, but I am not a programmer. In fact MOST people are NOT programmers.
How hard would it be to explain the conventions of the documentation? Because this sort of stuff matters.
I made reasonable guesses and they turned about to be right since everything worked.
Irritation No 3.
Once I had everything ftp’d to my new site, everything worked! Except…
My URLS were single digit numeric and that is plain stupid. It’s not the way link shorteners work anywhere. I poured through the documentation, looking for further settings and what have you and did not find ANYTHING. I ended up uploading a revised config.php file to tweak a couple of the settings and then I started getting single letter links. Also stupid. This was related to the use of quotes, by the way. This was NOT the behavior I wanted.
So I googled. and found this:
Issue 937: short urls in numeric order, 1 character only
Why, this is my problem EXACTLY! I eagerly read the developer’s answer, which was this:
Normal behavior. Read the doc before posting issues plz. There’s a bundled plugin if you want random instead of sequential.
Well, I had already activated ALL the bundled plug-ins except the toolbar one and I knew the toolbar plugin wasn’t it and I knew that none of the other bundled plugins solved this issue.
I went back to the site WIKI and documentation and DID NOT FIND anything about this.
So then I found the part of the wiki that lists all the plugins and I went through them and found one that was called random-keywords. I figured that was probably the solution so I followed the instructions and got it installed and, yes. Indeed it did solve my issue.
Irritation No. 4
The developer was very clear that he would be MEAN to people who did not follow his instructions precisely so I had no intention of contacting him. Even though the only instructions of his I could find were WRONG. Or, putting the best face on it, too ambiguous to be helpful.
Seriously. This is the WHOLE problem with tech and it irritates the hell out of me.
This is a great application and there are a LOT of non-geeks out there who could make use of it but basically, can’t.
I work in tech. I know EXACTLY how clueless the general public is and from time-to-time I mock that. But you know what? It’s not the public’s responsibility to understand more than a few basics.
And why, why, would you make the default behavior of your spiffy application a behavior that NO ONE would ever expect?
Who, I ask you, would expect a one digit shortlink?
Answer: Nobody who isn’t mean.
Happy Ending For me
My custom link shortener is working and it really only took about half an hour to set up, with the bulk of that being ftp-ing the files. So, I’m pleased.
Updated to add: Oh, the wordpress plugin is works! Yay!!!
It’s awesome that this is a free app. I am beyond happy and grateful that this application was created, but I wonder about whether the disincentive to make the application friendly for the non-geeks is a good thing. It makes the digital divide bigger. But, I suppose, it also creates an opportunity for other applications to fill that gap.
What do you think?