Archive | W3C RSS feed for this section

Pranking

29 Jan

This week was a good week. I engineered a prank at work that brought much fun and entertainment, and made that week even better. A prank in 3 acts.

Act 1

We use Zoom for our meetings and when I noticed, just as I was leaving at the end of a meeting, that a colleague of mine wasn’t at his desk, I thought I just had missed an opportunity to take a screenshot of his room without him, and later use it as my own background image and see his face as he realized!

So I went back, found his room still empty and quickly took a screenshot. I was in the process of making my window bigger to take a better screenshot when he showed up. Uh oh! “Oh, you were waiting for me to return?,” he asked. I couldn’t quickly enough come up with a good excuse for the probably guilty look on my face, so I just fessed up. Good laugh was had. And see you next time, wink wink!

The next thing I did was to quickly edit out his name from the bottom left part of the screenshot. I saved the photo somewhere I could open it on my iPhone and used the “healing” tool of Snapseed (my favourite —and free— image edition software on smartphone), which basically redraws an area of your choice using its surrounding. Then I adjusted a bit the sharpness and reduced the noise to get the best out of that pretty small screenshot.

Then I tested it as my own Zoom virtual background 👌and gave him a preview.

A glimpse of the result

Act 2

I wrote to everyone-but-him in the team who usually attends our weekly all-hands meeting (which was the next day) and shared my “work” and the context, offering them to join me in escalating the prank, since I had been made.

And it turned out so so much better this way.

Response was high. But then, who isn’t in for a bit of harmless fun? Especially when it’s so easy to set up.

Someone had suggested some particular timing: our colleague usually gets to speak early in the meeting and that was going to be our cue to all switch to our virtual background of his soon-worldwide-office.

Act 3

The meeting started as usual and people, who were a bit more numerous than habitual, kept a very straight face. Our colleague was called to speak and most of the tiles in the gallery instantly changed!

Escalated prank

Everyone yielded to the smiles that had been suppressed and for a few moments none of us heard him. We were too focused on awaiting his reaction. And yet, he continued to talk, unaware, for a few seconds until wrapping up. At the exact moment he briefly paused, hesitated, apparently lost track of his thought and then finished his word, we knew he was finally looking at his screen and he was confused.

Mischief managed!

He was not expecting that, to our delight! Hearing his heartfelt laugh was such a reward. Another bonus was seeing a number of colleagues who usually don’t start their video in meetings. I enjoyed immensely seeing a whole room of smiling people.

My other website behind the curtain

1 Jun

I’ve been editing the W3C website for a few decades now (gasp!) and in leading its redesign from the 2008 design, I am learning an astounding amount of new things about it! Here are some of the things I know about it.

Spotlight on the W3C website

In the 21 years I’ve been with the W3C, I remember only 3 different designs, the current one dates from a decade ago. Redesigning our website is crucial to improve the overall experience of those who depends on our Web standards work.

The website is managed by W3C itself and has been up for three decades. It currently contains over 2 million web pages. They’re static HTML or built in Perl, PHP, come from WordPress or are custom built using Symfony.

Tech stack summary

  • Debian Linux
  • Apache is used for serving the static content
  • MySQL for database storage
  • Varnish HTTP Cache is used for full-page caching
  • HAProxy is used for load balancing
  • There are over 3,700 Apache .htaccess files with different rewrite rules

Hosting & content

In a large-scale hosting setup, there are around 100 servers running Linux Debian on OpenStack, of which 20 to 30 servers are related to the primary website.

Web content is stored mostly in CVS and databases via CMS tools (WordPress, Symfony), and secondarily in GitLab and GitHub.

Most content is managed as static HTML edited locally (e.g. emacs, vi, BlueGriffon) and committed into CVS repositories using CVS clients, the terminal or HTTP PUT or WebDAV. Or, content is generated dynamically using Symfony or statically via makefiles, XML and XSLT.

25 instances of WordPress power the W3C Blog (over 950 posts) and W3C News (over 4,200 items), but also our Talks, working groups blogs, a test site, and W3C Community and Business Groups.

The W3C Homepage

The current homepage of the W3C website is a mix of HTML snippets which usually appears elsewhere on the W3C site, generated via XML, XSLT, PHP and other tools:

  • The News items are read from WordPress
    • The “homepage news” category determines what to show on the W3C homepage; we typically show up to 9 entries
    • The “top story” category determines which news item is expanded on the W3C homepage; we prefer to feature one, but have at times shown two or more
  • The right-hand side shows the last three posts from the W3C Blog
  • W3C Member Testimonials rotate from a database
  • The Events and Talks are shown from a Symfony app and WordPress respectively
  • The search bar links to an external DuckDuckGo search (that we chose for its good reputation for data privacy)
  • The rest is static

Markup errors in any of the source files will likely “break” the homepage. On average, I break the homepage 10% of the time!

%d bloggers like this: