I’ve been working as a webmaster for one of my non-technically inclined clients since the start of 2011.
It’s not a straightforward effort. I didn’t design the site but inherited it. What I got was a mess.
From what I could tell, the original design crew created the site in standard sophisticated HTML. At some point, they started to migrate the site into WordPress.
There are two problems there. Firstly, they did not complete the site’s migration. I took charge of a mess that is half in the WordPress CMS and half in the original HTML format. My clients have been loath to pay for a new site design so my job is to keep what’s there running smoothly.
A second issue lies in the WordPress design. They produced what I have to work with in WordPress 3.0.1 and created a custom theme based on the Twenty Ten theme.
I’m not sure how or why, but any attempt to upgrade WordPress beyond version 3.0.1 irretrievably breaks the site. The custom theme stops working. To restore it, I have to upload a copy of the WordPress installation that I keep on my hard drive for just such emergencies.
The current version of WordPress is 3.9.1.
As I recently wrote to my client, it is and isn’t a problem to keep the site on 3.0.1.
It is a problem because site security is not as strong as it could be – on the other hand, that does not really affect much. There’s no crucial info to lose. A bigger problem is that the versions of plugins that do things like slideshows and animations and archiving are also outdated and often are no longer supported. Any changes to the site moving forward will have to rely on technology that’s a few years old and there’s no guarantee that I will be able to find something that works.
It isn’t a problem because it’s working fine now, although I can’t apply updates that might automatically take care of issues that I have to figure out manually. And a redesign will consume time and money to essentially rebuild the Web site from scratch on modern technology.
So that’s the background. I don’t have to actively do much work. My clients only update the site every few months. Between updates, I don’t really do anything. My biggest project to date was to install an online store/shopping cart plugin but mostly I add posts, remove old info, etc.
That what I was doing last weekend. My job was to remove an old post and refine a more recent one with updated info and a slideshow. Easy enough. But the slideshow wasn’t working. (The site used the ILC Slider plugin, which is no longer available. It’s the precursor to AllSlider by the same author.)
Now, when I say the slideshows weren’t working, it’s not as straightforward as it sounds, and here I need to explain more background. When I use the Preview function on an edited post, the preview that shows up uses the unadulterated Twenty Ten theme. I never get to see what it will actually look like in production on the custom theme until I push the update into production. (Feel free to cringe, coders.)
So, the slideshows would work, sort of, on the preview page but not in production. Once pushed live, the slideshow would sit there, holding one image like a picture frame. The interactive controls would detect a hovering cursor and change colour but would not do anything when clicked.
There was another problem to deal with in the preview. The slideshow worked, but would not properly frame two of the 12 images. I decided to deal with this first. I resized the original JPEGs to slideshow size (500 pixels across) but that didn’t help. I tried changing the names of the files – no dice. And then I noticed something. The two images that were misbehaving used the .jpg suffix. The ten that worked used the .jpeg suffix. Once I changed the .jpg to .jpeg, the slideshow worked perfectly – on the preview page. It still shouldn’t play in production.
I checked the rest of the site’s slideshows. They weren’t working either. That meant there was some sort of systemic error. Something had changed since I had installed the previous slideshows. It wasn’t the site’s PHP code, but what was it? Had someone remotely deprecated ILC Slider? Were other people having this problem? This called for a Google search.
There was no support for ILC Slider, since it no longer exists. Offical support for AllSlider requires a paid licence to access. I was left skirting the edges, looking for clues.
That second one leads to nothing. I changed it to link to http://malsup.github.io/jquery.cycle.all.js and all slideshows worked again.
I don’t know if a WordPress update would have fixed that. I don’t think so. I suspect that ILC Slider is at fault. Either way, I’m sure that some update would have prevented this from popping up.
Bonus tech frustration:
I also added an embedded Twitter feed to the site. No matter what I tried, I could never get the feed to show up as more than a simple text link in the two browsers I use, Safari and Chrome. No amount of research or plugins could fix my problem, but I did find many complaints about the same thing.
My client asked me to modify the size of the feed, though, which threw me. He was seeing it? I fired up Firefox, and there it was. But I only use Firefox for troubleshooting. I don’t surf with it or modify… – oh, crap.
I use Ghostery in Safari and Chrome to cut down on cookies and ads. Embedded Twitter feeds will not work without cookies or tracking or something. Once I set Ghostery to allow the Twitter Button tracker, I saw the tweet feed. Oy.
I had an inexplicably weird evening/night Saturday.
Elvi, Child 1, and I went to see “The Lego Movie” out our local second-run dollar theatre (really $2.50).
It was amazing. Really. I think it’s one of the best movies I’ve seen in the last, oh, 10 years or so. It is a deep story, profound yet funny around the edges. It could just be me.
The movie touched me. I’m not exactly sure why. I was in the dark next to my daughter with tears runinng down my face.
So I’m tearing up in the theatre and I’m not sure why this movie is having such an effect on me.
I’m not really a crier. It’s unusual.
We’re in the minivan on the way home and I’m really sad.
And I think of something to make me happy and I think of people I enjoy talking to (Yes, they exist.)
And I think of the dumb luck that throws people together. Dumb, stupid luck.
And then my terrible brain starts to think that the same agent of stupid, dumb luck could cleave friendships just as easily and it depresses me. I go from sad to depressed.
That’s what my brain does to me sometimes. It can be a lot more pessimistic than I am.
We get home and the plan is to make pizza for supper. Elvi asks me to make my pizza sauce.
I get out the tomato sauce, garlic, pepper, and basil (my secret ingredient) and look for the oregano. I find the container. There’s only half a teaspoon left and I need two tablespoons.
At this point, this is feeling like a disaster all out of proportion to what it is, but Elvi tells me that there’s fresh oregano in the garden.
She can tell something isn’t right with me. She gets a handful of fresh oregano and chops it up. I throw it in the sauce, mix it up, and I can’t take anymore.
I go upstairs. I cry for half an hour. It just comes out. I think the last time I cried like this was when Elvi’s father John died 12 years ago.
John died suddenly, of an embolism in his garden. He and Child 3 (two years old at the time) had grown such a special bond in thos etwo years. John and Marjory provided grandparently day care for Children 2 and 3. John was really the only grandfatherly influence Child 3 knew since my father lived in the Bahamas and we saw him only twice a year or so.
My dad had an undetectable stroke in 2009 or 2010. We knew something was wrong when he was in town for Child 2’s bat-mitzvah but his was a slow decline. I saw it, though, and I made the effort to say a special goodbye to him when he left Montreal for the Bahamas. I had a hunch.
Sure enough, he was in the hospital by the end of the July, and his life tapered off until it finally ended with him dying in a vegetative state here in Montreal 17 months later.
But the thing is, I had already said goodbye when he was well. I had the closure. I always felt like it was a merciful end when he finally succumbed. I was the only one in the room when he died at 4 a.m.
So I had the closure and no real grief. He hadn’t been concious for days. He hadn’t been a human being for a year.
I don’t want to ruin the movie for anyone who hasn’t seen it but there’s a father-son theme to it that I think has hit me like a ton of bricks.
I’m finally crying for my dad.
I think. I could just be a maudlin idiot.
I didn’t figure out why until today.
My hamstring is improving. Elvi and a friend wanted to go dancing Saturday night so I went with them, expecting to sway at best. Once “Bizarre Love Triangle” came on, though, all bets were off.
Gosh, I enjoy New Order. Sorry for the 6:50 break. I had to listen to this:
Anyway, my leg held up fine under the compression bandage I put on. I wasn’t even sore Sunday.
There hasn’t been any pain at all in my hamstrings and I stopped taking the Naproxen. I have a more or less constant cramp somewhere in my left buttock. Nevertheless, I feel like I could run – but I won’t try that. I will tell my physiotherapist when I see her Thursday that I can definitely expand the rehab exercises.
Sorry to bury the lead, but I’m improving mentally, too. Having exhausted nearly all possibilities for why I’ve been so tired for the last few years, I decided to see id it could be the citalopram I was taking.
I’d read about withdrawal symptoms and I was intrigued by one often described as a buzzing in the head that tends to occur on quitting the drug cold turkey.
So I quit cold turkey.
I didn’t have a constant buzzing but I can confirm that that is a good description. For about two weeks, it felt like every once in a while someone would turn up the volume on a static generator inside my head. It wasn’t painful or even irritating. It was just… there. But I wasn’t so tired anymore!
When I told my GP about my experiment, he just shook his head slowly. He’s great. We decided to try Wellbutrin, which he said is a stimulant.
So far, the Wellbutrin is working somewhat. It’s taken the edge off but I’m not as content as I was on the citalopram. I am, however, accomplishing quite a bit more. It’s a trade-off.
I spend most Thursday nights from May to October playing flag football. Even though I’m old and slower than I used to be, I still have my moments of brilliance.
I was in the midst of one such moment a few nights ago. At the line of scrimmage, I reached back and caught a pass that was off-target behind me. The defender covering me came at me slightly to the outside, so I spun inside and blew by him.
Of course, the middle of the field was crowded and I knew I’d lose a flag there – but not before I turned a loss into a gain of seven to ten yards.
Just as I was flagged, my body started hopping on my right leg. Two hops in, I knew why. I suddenly felt pain in my left thigh. It wasn’t excruciating but I could tell something was wrong and that I was through for the night.
I’d felt the slightest twinge in my left hamstring the week before but it went away. I’d thought it was standard soreness. It returned early in Thursday’s game and I sat out a bit to let it calm before going back in. I should have listened to the warning signs because I tore my hamstring, probably not completely. My though was swollen by the time I drove home, wincing every time I had to press the clutch.
I’m assuming I suffered a hamstring tear with layman’s knowledge. My family doctor was away until Tuesday so I went to a walk-in clinic Friday morning where I was seen by possibly the worst physician I’ve ever met.
She asked me where it hurt and I showed her. She then said there’s nothing to do about muscle injuries, wrote a prescription for the anti-inflammatory Naproxen, and sent me away.
I was stunned. She didn’t even do a physical exam. I was too stunned to ask her to have a closer look or to write me a prescription for physiotherapy, which can help the muscle to heal properly with minimal scar tissue.
I’m sort of following the RICE paradigm of rest, ice, compression, and elevation. I don’t do the ice. I”m not good at resting, either. I hobbled with a cane to Elvi’s Choeur Maha concert last night.
Today there’s no pain unless I try to use the leg for more than walking – but I can walk. I can even go down stairs, albeit like a three-year-old who uses both feet on every step. I can even bend my leg, as long as I don’t try to push off with it. It’s mostly weakness now.
I guess I may have to go see my doctor on Tuesday to get a prescription for physiotherapy if our private insurance covers it if prescribed. That we’ll find out Monday.
Bonus economy tip:
It’s cheaper to find a used printer on Kijiji or Craigslist than it is to replace the printhead in your old one, even considering the lost cost of the ink you already have going to waste.
I noted, when I bought my Mazda 3 in early 2011, that the dealership installed xenon headlights for me for an extra $220.
I’ve had trouble with the headlights nearly ever since. They would flicker off and on randomly. I brought it back to the dealer, Mazda de Laval, three months after I received the car and well within the headlights’ one-year warranty but the service department couldn’t find anything wrong.
I took the car out to Laval twice to get this looked at. I also took the car to Mazda Gabriel, which is much closer to my house, and they couldn’t find anything wrong either.
Last summer, the left headlight bulb burned out, which is odd for two-year-old bulb that is supposed to last 2,000 or so hours. The car only had 30,000 kilometres on it. After replacing the bulb myself, the left headlight stopped having problems. Around that time, the right headlight stopped flickering, but would either come on or not come on when I started the car at night.
This past March, the right side stopped its binary behaviour and decided to remain off always. Aha, I thought, this will make the problem easier to diagnose.
The first thing I tried was to switch the bulbs from left to right and vice versa to make sure both bulbs worked. They did.
So I wrote to Mazda de Laval:
Obviously, there is a problem with the wiring or the electrical system, and it has been there since the car’s first year due to either faulty parts or faulty installation. Because the problem was reported within the warranty period but not found or fixed despite my complaint, I feel that your service department should finally find and fix this issue at no charge to us. It should be easier to find now that the headlight is not working at all.
The dealership refused, but did offer me 15% off parts and labour, plus use of a courtesy car.
That was still a better deal than I could get anywhere else, so I drove to Laval and left with a Mazda 2.
Nothing will make you appreciate a decent car more than the hamsters that power the Mazda 2.
I had signed off on a minimum $55 charge for labour for a diagnosis. That’s a half-hour of work, but I would get 15% off.
It took the mechanics 1.5 hours to find the problem, they told me on the phone a day later. I guess I wasn’t a priority, but I didn’t mind because I had the Mazda 2 to putt-putt where I needed to go. The problem was that the ballast was faulty.
The ballast is an electrical regulator that makes sure the xenon lights receive the appropriate electrical stimuli (no, I did not major in electrical engineering). Replacing the ballast is beyond my modest capabilities.
It pissed me off that this same service department installed a faulty ballast in my car in the first place. It pissed me off even more when the mechanic told me it would cost $220 to fix (after my 15% off). That was what I paid for the lights in the first place. At least that included installation, but it did not include the $150 or so I would have to pay for the diagnostic work.
After I expressed my somewhat obscene opinion to the mechanic, he sympathetically asked a manager if they could waive the cost of the diagnostic. What do you know? They did.
So I paid $220 to fix the faulty parts that the dealership installed in the first place and couldn’t diagnose until my warranty had run out. It’s not all bad. I do appreciate the 15% off, the courtesy car, and the waiving of the cost of diagnosis, but still….
I’ve lost 12 pounds in the last year by keeping a food and exercise diary app and sticking to its advice. I’m a svelte 165. I could still lose another 20 pounds but to do that I have to stop eating Frosted Flakes while I write a blog post.
I’ve never been to Las Vegas, which made the tsuris at dawn somewhat palatable.
I’m here for a Waze conference. The company invited North American country managers to Las Vegas for a conference to discuss the eponymous navigation app. I’m somewhat embarrassed to admit that I’ve done so much map editing that I’ve reached that lofty level of editorship.
Still, it got me invited. Waze paid for the flight. They are paying for the hotel. How could I say no?
Waze is an Israeli company and although bought by Google remains based in Israel. They used an Israeli travel agent to arrange our desired flights. I was supposed to fly to Toronto and take a second plane to Nevada. Everything seemed perfectly arranged.
I tried to use the automated check-in machine but it told me to see an agent. That slightly annoyed me because I only had a carry-on for the three-day trip. I’ve never flown with just a carry-on bag before. This was a day of firsts.
There was only one agent to guard the gateway to the line to see the desk-bound agents and she was busy running between people who were having trouble with their automated check-in machines. She actually had to deputize a passenger to prevent any of us from entering the queue to see the desk agents.
Some ten minutes later, she returned and admitted us into the line. After another wait, my turn came.
The check-in agent took my passport, consulted her computer, and told me I didn’t have a reservation for this flight. This was odd, since I had the itinerary in my e-mail. I gave her the ticketing code.
Mystery solved. My ticket was purchased for the last name Yveen. (That’s missing the first letter.) This second agent told me there was no way that US Customs in Toronto would let me fly with a ticket that didn’t match my name. She suggested I get the ticket reissued and for that I would have to go to the ticketing counter around the corner.
I didn’t have to wait long at the ticketing counter. It was 6:30 and I still had half an hour to the flight, I thought. The ticketing agent disagreed, saying that they close the flight 45 minutes before departure. I could take the 8:30 direct flight to Las Vegas, but it would cost me $150 plus tax to change the ticket.
My mom is coming into town for Passover today and at this point I was thinking I would get an unexpected extra three days with her. I wasn’t going to pay and hope for a reimbursement later.
I called the toll-free number and reached the Israeli travel agent to explain the situation. Yitzchak told me he needed to contact the original agent and Waze to see if they could pay the extra charge.
A short wait later, Yitzchak called me back. Everything was approved and I should go back to the ticketing counter. I did, but the woman I had been dealing with was no longer there. The woman I had to deal with now said it was impossible to link my incorrect ticket to a new one since they are two different people. She refused to talk to Yitzchak on my phone.
I was about to give up when the first ticketing agent returned. She said it was certainly possible to change the ticket, but that she needed to be paid up front. She also refused to talk to Yitzchak and said there was no way she could accept any form of online payment.
Yitzchak swore on a stack of pitot (pitas) that somebody would reimburse me so I handed my Visa card to the ticketing agent.
Right now, I’m in the airplane. The flight crew was late, so we’ll be late into Las Vegas. It’s not a big deal. This flight was going to get me into Las Vegas Ten minutes earlier than my original itinerary, anyway.
I was chosen to try out the new machines set up at US Customs. I had to stand on my tiptoes to get into frame for the camera. I also had a problem because my flight was not listed as belonging to Air Canada. The nice Customs lady helped me backtrack and choose Air Canada Rouge.
When it comes to journalism, I’m not not much of an academic. I teach it in university from a strictly practical perspective.
When faced with the question “What is journalism?”, I don’t have an academic definitions to fall back on. I consider the act of journalism to be a black box. Facts go in one end and interpretation comes out the other. Journalism takes a complicated stew of facts and opinions and turns them into summaries that are more easily understood.
It is with that definition in mind that I looked at Rookie, a new Web site for sports stories. I intentionally avoided the word “journalism” there because the site doesn’t mention it on its About page:
Rookie is a sports site. But it’s not like any sports site you’ve read before. Instead of regurgitating the same scores and boring articles as everyone else, we’re working behind the scenes, hand-selecting the storylines that are important, and using quotes and comments from people that matter to tell them (players, coaches, and insiders). Accompanying the stories are the best sports photos you’ll find this side of an art gallery.
And that’s what it does. Each “storyline” is a collation of quotes from other journalistic enterprises and Twitter. Rookie doesn’t even try to write articles, boring or fresh.
Each storyline does have an introductory paragraph. It’s something. Is it enough to pass as journalism according to my definition? I think so, but only because of that paragraph. Blurbs count.
Does that make this good journalism, though? I doubt it. Good journalism would incorporate those quotes in an article instead of leaving them in list layout. Am I being to old-fashioned?
One thing unquestionably positive about Rookie is it’s pretty. The layout is stunning.
I hate clutter, especially in my menu bars.
I use Safari and Chrome browsers on my Mac. Why two? It’s easy to hide the windows of one while I’m working on a project on the other. There are plugins/extensions on each that I like to use for some sites, like WME Toolbox (Chrome only) on the Waze map editor.
A few days ago, I noticed a greyed-out bell icon in my menu bar (see image at left). Clicking on it revealed that it was a drop-down menu for Chrome notifications, installed without my permission and taking up about a centimetre of valuable menu-bar space.
The standard OS X way to remove unwanted menu-bar items is to hold down the Option and Command keys while dragging the offender of the bar. That wasn’t working.
So I did a little research and here is how you get rid of it:
- Open Chrome.
chrome://flagsin the address field and then scroll down to Enable Rich Notifications. Alternately, you can type
chrome://flags/#enable-rich-notificationsin the address field to go right to it. Or just copy that string from this post and paste it!
- Change the setting for Enable Rich Notifications to “Disabled”.
- Quit Chrome.
The next time Chrome boots, your bell will no longer appear.
But here’s the weird part: I tried reversing the above steps to get a screenshot of the bell for this post, but the bell never reappeared. I’m not losing sleep over that, but that is weird.
Another unusual point is that the bell just showed up for me a few days ago, while many people have been complaining about it since last October. It may have something to do with the fact that I’m still using OS 10.8 instead of 10.9 (Mavericks), or maybe it has to do with my use of Google Notifier.
Google Notifier is a small application that sits in your menu bar and tells you when you have new mail in your Gmail account – at least, it used to. It also lets you set all browser mailto links (i.e. e-mail links) to open in your browser’s Gmail account instead of an e-mail client. I really dislike Apple’s Mail application and I haven’t found anything I like better than Gmail’s Web interface, so I strictly use that (in Safari) for dealing with all e-mail.
Google Notifier is no longer supported and it no longer tells me when I have mail but it still works to redirect e-mail links so I still use it. You can get it at MacUpdate.
A new paper reports on an incredible collection of aquatic fossils from Cerro Ballena, Chile. Spanish speakers who can translate Cerro Ballena to Whale Hill might hazard a guess at what fossils were found.
Such a fine collection of fossils is called a lagerstätte and can reveal a lot about the environment at the time.
Under a deadline due to the impending highway construction that revealed the lagerstätte, the research team relied more on 3-D virtualization than on old-fashioned digging.
Because these fossils are relatively recent, they don’t reveal much about whale evolution, but research did teach me one thing I never knew before: the phrase “aquatic sloths”.
I went to the fantastic Web site the team put together. Not only can you download the 3-D models of some of the specimens, but you can cruise a list of all of them. Near the bottom, you can find Thalassocnus natans, the aquatic sloth.
Aquatic sloths were not small animals. I could not find a published estimate of their size, but I did find an unofficial estimate: six feet long and up to 500 pounds. Here’s a photo of the skeleton (click to enlarge):
And a couple of artists’ depictions:
Note the snout elongation from the first depiction of an older species to the second, more derived species.
The driving force that led to sloths’ adopting an aquatic lifestyle (although they almost certainly came back to land after feeding, sort of the opposite of hippopotamuses) was the terrestrial environment. This area has been arid for a long time, which makes it tough for a dedicated herbivore to find enough to eat on land. Tooth wear tells us that the early aquatic sloths fed on or near shore where sand would abrade their tooth enamel. The later species show no evidence of sand abrasion and probably fed in deep water, where the sea bed is calm.
Don’t listen to the columnists and sportswriters who say the US women dominated the gold-medal game for 57 or whatever minutes. It’s simply not true. Canada dominated that game but didn’t have the same puck luck until the end.
Corsi is an advanced stat that counts shot attempts, shots, missed shots, and blocked shots are all Corsi events. Corsi has proven to be the best predictor of hockey success, probably because it smooths out the luck factor.
Now, power plays obviously give any team an advantage in shots and Corsi, so using only even-strength Corsi numbers is the best analysis. Mainstream reporters and organizations like the NHL or the IOC don’t supply those numbers. You either have to calculate them yourself or take advantage of someone else who does, like Darryl Metcalf at Extra Skater.
Darryl isn’t closely following Olympic hockey games, so I am indebted to Jen LC, who posted her calculations on Twitter.
Here’s the money shot:
Canada out-Corsied the US at even strength by 53-28.
Traditionally – a weird word for how new the stat is – Corsi is measured as a percentage of a game’s events. Canada’s 65% is phenomenally dominating.
Canada deserved that game. As Jen put it, “Not that I loved the penalties or anything but at 5v5 Canada owned the puck.”
And here are Jen’s numbers for the men’s US vs. Canada game.