Hosting SQLite databases on GitHub Pages or any static file hoster
I was writing a tiny website to display statistics of how much sponsored content a Youtube creator has over time when I noticed that I often write a small tool as a website that queries some data from a database and then displays it in a graph, a table, or similar. But if you want to use a
The top-ranking HTML editor on Google is an SEO scam
I went down a rabbit-hole analysing a competitor and discovered a black-hat SEO operation involving tens of thousands of websites.
I bought 300 emoji domain names from Kazakhstan and built an email service
I bought 300 emoji domain names from Kazakhstan and built an emoji email address service. In the process I went viral on Tik Tok, made $1000 in a week, hired a Japanese voice actor, and learnt about the weird world of emoji domains.
Firefox 85 cracks down on supercookies
Trackers and adtech companies have long abused browser features to follow people around the web. Since 2018, we have been dedicated to reducing the number of ways our users can ...
Total Cookie Protection
Total Cookie Protection is a major anti-tracking advance in Firefox that confines cookies to the site where they were created.
TabFS: Mount your Browser Tabs as a Filesystem
A browser extension that mounts your browser tabs as a filesystem on your computer.
Firefox is the alternative to a Chrome hegemony
Supposedly today we have a lot of browsers to choose from - Google Chrome, Safari, Microsoft Edge, Firefox, Brave, Opera, Vivaldi, etc. Having choices is a good thing, right? Nobody wants to relive the time of almost complete Internet Explorer domination again. Unfortunately our choices are significantly fewer than…
Ditherpunk: The article I wish I had about monochrome image dithering
I always loved the visual aesthetic of dithering but never knew how it’s done. So I did some research. This article may contain traces of nostalgia and none of Lena.
Modern Javascript: Everything you missed over the last 10 years (2020)
JavaScript has come a long way since I knew it as the “D” in DHTML. For anyone like me, who’s been reluctant to use the latest syntax that could require polyfills or a transpiler, I’ve written this cheatsheet to get you caught up on all the goodness that’s widely supported in modern browsers.
Tech-savvy audiences block Google Analytics
Is Google Analytics still useful and how accurate are its stats? How much data is missing from Google Analytics due to adblockers and privacy-friendly browsers?
My Current HTML Boilerplate
Every element I use for the basic structure of a HTML document, with explanations why.
IPFS Support in Brave
Over the past several months, the Brave team has been working with Protocol Labs on adding InterPlanetary File System (IPFS) support in Brave. This is the first deep integration of its kind and we’re very proud to outline how it works in this post.
The unreasonable effectiveness of simple HTML
I've told this story at conferences - but due to the general situation I thought I'd retell it here. A few years ago I was doing policy research in a housing benefits office in London. They are singularly unlovely places. The walls are brightened up with posters offering helpful services for people fleeing domestic…
I Still Use RSS
Usable Security, Human-Computer Interaction & AI, from a UNIX perspective.
Screw it, I’ll host it myself
It’s all fun and games until someone loses an eye. Likewise, it’s all fun and games until someone loses access to their private and/or business data because they trusted it to someone else.
Firefox 87 trims HTTP Referrers by default to protect user privacy
We are pleased to announce that Firefox 87 will introduce a stricter, more privacy-preserving default Referrer Policy. From now on, by default, Firefox will trim path and query string ...
Google Chrome to remove detailed cookie and site data controls
A month ago I ran into an obscure Google Chrome bug on macOS that caused the "All cookies and site data" page in Chrome settings ( chrome://settings/siteData ) to load very slowly. You can see this page if you open Preferences, select "Privacy and security", "Cookies and other site data", and then "See all cookies and…
Let’s fix font size
What happens when you set fontSize: 32 in your favorite editor
The mermaid is taking over Google search in Norway
A weird thing is going on with Google search in Norway right now. Spammers are taking over.
I no longer trust The Great Suspender
I know a number of folks use The Great Suspender to automatically suspend inactive browser tabs in Chrome. Apparently recent versions of this extension have been taken over by a shady anonymous entity and is now flagged by Microsoft as malware . Notably the most recent version of the extension (v7.1.8) has added…
The most underused browser feature: reader mode
A great feature that is available in almost every browser allows you to reject the cookie consent popup.
Breaking GitHub Private Pages for $35k
Abusing CRLF, cache poisoning, and other misconfigurations for a no-interaction XSS against GitHub Private Pages.
HTTPWTF
HTTP is fundamental to modern development, from frontend to backend to mobile. But like any widespread mature standard, it's got some funky skeletons in the...
Tailwind CSS v3.0
Tailwind CSS v3.0 is here — bringing incredible performance gains, huge workflow improvements, and a seriously ridiculous number of new features.
Apps Getting Worse
Too often, a popular consumer app unexpectedly gets worse: Some combination of harder to use, missing features, and slower. At a time in history where software is significantly eating the world, this is nonsensical. It’s also damaging to the lives of the people who depend on these products.
RSS is wonderful
Inspired by Web Rings from the 90s, I created a tool for serendipitous discovery of blogs called RSS Discovery Engine. Similar to how web rings work, I make the assumption that interesting blogs will tend to link to other related blogs, and therefore, linked blogs are likely to also be interesting.
How we got to LiveView
I'm Chris McCord. I work at Fly.io and created Phoenix, an Elixir web framework. Phoenix provides features out-of-the-box that are difficult in other languages and frameworks. This is a post about how we created LiveView, our flagship feature.