Please stop using CDNs for external Javascript libraries

by @edent | # # | 27 comments | Read ~35,598 times.
The HTML5 Logo.

I want to discuss a (minor) antipattern that I think is (slightly) harmful. Lots of websites use large Javascript libraries. They often include them by using a 3rd party Content Delivery Network like so: <script src=”https://cdn.example.com/js/library-v1.2.3.js”></script> There are, supposedly, a couple of advantages to doing things this way. Users may already have the JS library…

Continue reading →

Goodbye avatars .io – hello unavatar!

by @edent | # # # | 1 comment | Read ~299 times.
A smiling pixel art face.

Given a social media user’s username, how do you get a picture of their avatar? I always used avatars.io – but sadly that service has bitten the dust. So I’ve switched to unavatar. It’s dead easy to use. https://unavatar.now.sh/twitter/edent will return @edent’s avatar. You can use GitHub, Facebook, Gravatar, Instagram, Telegram, YouTube, SoundCloud, and a…

Continue reading →

Building a physical <blink> tag!

by @edent | # # # # | 27 comments | Read ~3,337 times.

This is the latest of my many terrible lockdown-induced ideas. I’m saving money on commuting. So I’m spending it on tech-crap I really don’t need. I bought a new laptop sticker. Anyway, enough waffle, here’s the end result: This uses 2-frame lenticular printing. History No browser supports the <blink> element any more. It used to…

Continue reading →

Building an “On This Day” site for your Twitter Account

by @edent | # # # | 2 comments | Read ~111 times.
Several columns of Tweets. Each one from a previous year.

I wanted to see what I was Tweeting on this exact day last year. And all the years before. So I built a website! It’s a disgusting hack, and I’m truly sorry for unleashing it on you. Using the API You can’t. The Twitter search API only goes back 7 days. This whole idea would…

Continue reading →

Stop adding email tracking links to phone numbers!

by @edent | # # # # | 6 comments | Read ~8,824 times.
Gmail showing the tel URl scheme of a link with extra tracking information in it.

My Chinese takeaway delivery was late. Very late. I flipped open the confirmation email sent by Just-Eat to double-check I had all the details correct. At the bottom was a “click to call” link. Hurrah! I clicked dial, and this is what filled my screen: An absurdly long phone number. Bemused, I went to inspect…

Continue reading →

The future of the web, isn’t the web

by @edent | # # # # | 9 comments | Read ~5,082 times.
A fist emerges from a computer screen and punches the user.

My friends, and former employers, at the Government Digital Service have written a spectacularly good blog post “Making GOV.UK more than a website“. In it, they describe how adding Schema.org markup to their website has allowed search engines to extract semantic content and display it to a user. For example, the “Learn to drive” page…

Continue reading →

Limitations of HTML’s title element

by @edent | # # # # | 9 comments | Read ~244 times.
The raw HTML displays in the tab.

How much do you know about the humble <title> tag? It has been there since the earliest HTML specification. The 1995 spec says: There may only be one title in any document. It should identify the content of the document in a fairly wide context. It may not contain anchors, paragraph marks, or highlighting. Remarkably…

Continue reading →

A curious way to break Twitter’s search results

by @edent | # # # | Read ~177 times.
Screenshot of a tweet. The HTML is malformed.

(This isn’t really a security issue, although I’ve disclosed it to the Twitter team.) “Fuzzing” is a computer science term which means “sending weird data into a program and seeing what happens.” It’s a useful way to see how your code can break in new and unexpected ways. It’s particularly good at showing what a…

Continue reading →

MailChimp leaks your email address

by @edent | # # # # | 8 comments | Read ~4,364 times.
Change email address page with obscured email address

An annoying privacy violation from leading email newsletter company MailChimp. Responsibly disclosed on 2017-12-04. When you click a link on a webpage or an email, your browser opens up that link and sends the newly visited webpage a Referer Header. (The misspelling is a historical artefact.) This says “Hello new site, I was referred here…

Continue reading →

Mapping in HTML – a proposal for a new element

by @edent | # # # # | 17 comments | Read ~5,047 times.
Two men are confused by a paper map

This is a sketch of a proposal for a new HTML element to simplify displaying maps on a website. I’d like your comments and criticisms before I submit it. This is born out of my frustration of using different JavaScript mapping solutions – my phone has a mapping app, why do I need to share…

Continue reading →