A little perspective on prefixes

Happy February! No announcements today, but I just wanted to write up something quick about an interesting realization I had. I just answered this Stack Overflow question about CSS vendor prefixes. Here’s an excerpt:

The idea was that authors who wanted to “try” out these experimental features locally could do so with the prefixed properties on shipping browsers, rather than having to deal with nightly builds or even downloading and compiling the source manually, because shipping buggy behavior unprefixed was akin to shipping beta software as production-quality.

What the vendors didn’t see coming was that authors would take the prefixed properties, put them on production sites, and encourage other authors to do the same. As a result the prefixes spread like wildfire to the point where vendors were too afraid to break sites by removing the prefixes after shipping stable, unprefix implementations as originally intended. I mean, just look at what happened when Mozilla dropped support for -moz-opacity, a prefixed property that was relatively little used compared to today’s -webkit- properties, less than 4 years ago. For perspective, -moz-opacity was unprefixed in Firefox 0.9, almost 12 years ago.

(there’s a little more, but these first two paragraphs are the relevant bits)

When writing that bit about Mozilla, I realized this: -moz-opacity was unprefixed before I entered high school, and support for the prefix was dropped after I graduated college.1 I was 12, and 20, respectively.

In other words, in the time it took for me to go through two whole educational milestones in my life, the fellow who submitted the Bugzilla ticket linked above, and who knows how many other CSS authors the world over, didn’t bother to change -moz-opacity to opacity on their websites.

So… yeah. That’s a bit of perspective for you.

  1. Technically, I dropped out in my final year, but that’s not significant. 

Tab Groups to be split from Firefox 45

Firefox 44 was recently released. With it comes a little notice…

Heads up! Tab Groups will be removed from Firefox soon.
The Tab Groups removal notice.

This came as a shock to me — I’ve been using Tab Groups since 2011, when the feature was introduced in Firefox 4 as Panorama:

And I use it all the time:

That last item brings up one of the things I like about tab groups. Like tabs, tab groups can:

  1. persist across browsing sessions, and
  2. be lazy-loaded.

If I put all my tab groups into separate windows instead, Firefox has to manage all of these windows throughout the entire browsing session, even when I don’t need to keep them open throughout the day. Not only is this a waste of system resources, but it also adds needless extra tabs to my Alt+Tab.

The good news is that Tab Groups isn’t going away completely, despite what the notice above might suggest. (And that’s why I’ve opted for a less sensationalist and more accurate, yet equally attention-grabbing title here.) Clicking Learn More reveals that all is not lost:

The Tab Groups (Panorama) feature will be removed from Firefox in version 45. We know this may be inconvenient and we apologize. Removing the Tab Group function will make it easier for us to improve Firefox. Thankfully, the Mozilla community has already come through with some great replacements for Tab Groups. This article shows you some of the new options.

It turns out, Tab Groups is being preserved in the form of a separate add-on (a fate not unlike that of the Link Manager in WordPress, which I use on this very blog):

If you want a direct replacement for the Tab Groups feature, try the “Tab Groups” add-on. It was created directly from the Firefox code and works just like the current feature. It will be as if the feature wasn’t removed from Firefox. This add-on aims to fully replace Tab Groups in Firefox, providing a similar and hopefully even enhanced experience. You can install Tab Groups from the add-ons website.

So there you have it. Yes, Tab Groups is being evicted from Firefox core, and I understand if they’re removing it as hardly anyone uses it so they can focus on working on more important features. I’m just a little bit peeved about the poor wording of the removal notice, but it’s a little late now for complaints.

Thankfully, it’ll live on as an extension, otherwise I don’t know what I’d do. Maybe switch to Microsoft Edge. After almost 10 years of using Firefox, change becomes unsurprisingly tempting.

A tribute to Internet Explorer

In case you haven’t heard, today, the first Patch Tuesday of 2016, marks the end of support for Internet Explorer 8, 9 and 10 in favor of Internet Explorer 11 and, of course, Microsoft Edge.

I remember the first time I went online. It was the year 1996. I was 4 years old. The then-current version of Windows was Windows 95. One of the only remaining memories I have of going online back then was spying the ever so curious ship’s wheel icon on the desktop of the family computer1, double-clicking it, and discovering that it was in fact another way to access the World Wide Web.

My initial reaction: complete and utter bewilderment. I knew what websites were, I knew that websites consisted of pages and pages of information, but it blew my mind to learn that there were other programs that could be used to access said websites besides that blue ‘e’ with a ring around it. And one of the first things I noticed, aside from the differences in the UI, were the differences in how pages looked in each program.

Unfortunately, as a 90s kid, I was completely ignorant of such things as the browser wars, HTML, CSS, or any of that jargon. I wasn’t even that much of a computer person myself. I was just your average preschool boy. Nevertheless, watching my dad work on the computer was one of my favorite things to do at home, and one of the things he worked on was — you guessed it — a personal site of his own (which he maintains to this day!), and although I can’t remember for sure, I’d bet his was one of the sites I poked about on back then.

By the age of 8, I was well-versed with the Internet, having heard that blasted dial-up noise a thousand times. I discovered Neopets, and their HTML Guide for helping Neopians design home pages for their pets. And that’s how I got started with HTML, as well as my first experience testing my own pages in differing implementations. A skill that would remain one of the most important for a web designer to have over a decade later.

It’s my 24th birthday!

Happy birthday to me, I’m officially 24! w00t!

As this is my first birthday since launching NOVALISTIC 5.0 “Veldin”, here’s a fun fact for you: I’ve always wanted to launch my site on my birthday, but not once has it ever happened.

However, launching this iteration at the end of November 2015 is one of the closest I’ve come to a commemorative launch date, because the domain name was first registered in November 2001. The closest is NOVALISTIC 2.0, which was launched in the first week of November 2006, around the fifth anniversary of the domain.

So, that was a little nugget of trivia for you.

While I have plans later this month, I don’t have any for today, so I’ve just taken the opportunity to catch a break and play some games. I haven’t played TF2 in a while, so that’s exactly what I spent the past three hours on. To be honest, the gameplay changes brought about by the Tough Break Update have really shaken things up for me as a Pyro main, and I’ve been finding it difficult to adjust. So I don’t see myself playing as often as I used to for a while.

Which just means more time for me to focus on adding new stuff to my site! Although I did just update my Steam Wishlist, and there’s a few hours left of the Steam Winter Sale, so if you’d rather I played more games than worked on stuff…

It’s always the basic stuff that gets you

I was updating my About page tonight when I found myself wanting to mark up parts of the text with the b element (as, thanks to HTML5, it has found its true calling in life). But I didn’t want the text to be bold, as I was going to style it differently. In particular, I wanted it to have the same font weight as the rest of the text.

But I knew that there wasn’t a special value of the CSS font-weight property that meant “use the current font weight” — there was only lighter and bolder for one step lighter and bolder than the current weight respectively, neither of which was what I wanted.

Then, it hit me like a ton of bricks:

b {
    font-weight: inherit;

That’s right: it’s our old friend the CSS-wide keyword inherit. That is, “inherit the parent’s computed font-weight“. How could I have forgotten?!

And I realized that perhaps other, less experienced CSS authors might run into this problem as well. So I decided to post yet another one of my self-answered questions on Stack Overflow documenting this. Then I realized that the way Stack Overflow treated self-answered questions meant I pretty much had to tell the world how dense I was for a night, as someone who is generally known on SO to be really, really good with CSS.

Oh well; happens to the best of us, I guess.