New
The latest blog posts to take off on Hacker News. 4,614 posts.
Why don't I have a blog?
I feel like I should have a blog. Specifically, a tech blog. Everything points towards it! I like coding, I like reading, I particularly like reading blog posts . So then, why don't I have one?!
Make the “semantic web” web 3.0 again – with the help of SQLite
Before the term was hijacked by crypto-grifters (and, admittedly, a few genuinely neat projects), web 3 (point oh) referred to Tim Berners-Lee's project to promote a standard way to expose and parse metadata on the web. It never took off. In this piece, I'll argue that a breakthrough idea introduced last year by HN…
CSS Gradients that avoid the “gray dead zone”
Have you ever noticed that gradients tend to look a little gray and washed-out in the middle? This happens because of a mathematical quirk with RGB colors. Fortunately, we can work around this quirk, and create beautiful, lush, saturated gradients.
The optional chaining operator, “modern” browsers, and my mom
Eric Bailey recently wrote on CSS-Tricks about testing your website on a crappy laptop and it reminded me of this anecdote from my own life. About a month ago…
State of the Web: Deno
What is Deno, why does it matter, and how is it currently used for server-side JavaScript?
My Evaluation of SvelteKit for Full-Stack Web App Development
I recently tried out SvelteKit for the first time. This is a summary of my experience setting it up, some information I've collected while researching + learning it, and my thoughts on how it compares to other similar frameworks.
Real Problems That Web3 Solves, Part 1
Social recovery wallets introduces new ways to authenticated with our own owned identities.
Use spacer components instead of CSS margins (2020)
We should ban margin from our React components. Hear me out.
A not so gentle intro to web3
Pyramid schemes, scientology and Tamagotchi
You don't need that CORS request
A low code optimization
What is the small web? (2020)
Updated June 19th, 2023 Sorry, your browser doesn't support embedded videos. But that doesn’t mean you can’t watch it! You can download Small Is Beautiful #23 directly, and watch it with your favourite video player. Small Is Beautiful (Oct, 2022): What is the Small Web and why do we need it? Today, I want to introduce…
Using HTTP Basic Auth in 2022
Field notes on shipping fast, privacy-first, evergreen web products.
A Guide to Twitter
We hope that this guide to Twitter will be useful to you, wherever you are in your Twitter journey.
Self-Hosting Dozens of Web Applications and Services on a Single Server
Over the years, I've accumulated quite a collection of websites, web applications, APIs, and other services that I've built and continue to host publicly. I've experimented with a lot of different hosting methods for them, switched between several different providers, and have finally arrived at something that I feel…
Sciter, the 5 MB Electron alternative, has switched to JavaScript
Without too much fanfares Sciter has officially transitioned from TIScript to JavaScript this week.
How did LastPass master passwords get compromised?
LastPass accounts are under attack. I look into how user’s master passwords might have leaked.
Why Web3?
Over the last month, there has been a ton of debate and conversation about web2 vs web3 with many leading voices raising doubts about web3. Debate and doubt are healthy. And web3 enthusiasts, particularly on Twitter, remind me of missionaries trying to recruit the unwashed to their belief system. Frankly, it is all…
Maybe we could tone down the JavaScript (2016)
I’m having a really weird browser issue, where scripts on some pages just won’t run until about 20 seconds have passed. Whatever you’re about to suggest, yes, I’ve thought of it, and no, it’s not the problem. I mention this not in the hope that someone will help me debug it, but because it’s made me acutely aware of a…
You block ads in your browser, why not in your city?
There are defences against badvertising on the internet, and you should use them. But there are defences against bad advertising in real life too, and you should use them too. Put badvertising in its place: nowhere!
There's never been a better time to build websites
We're closing in on the end of 2021 and I'm as excited now about building websites as I've been in ~25 years.
An iframe from googlesyndication.com tries to access the camera and microphone
The last thing we want is for an advertising network to access the Camera or Microphone on our computer. But, while looking for something else, I stumbled upon messages in the Safari JavaScript console saying that an iframe loaded from safeframe.googlesyndication.com tried to do exactly that.
An NFT without a blockchain
This is a small proof-of-concept. It relies on PGP - but you could use Keybase, GPG, or any other hard-to-use encryption program. Background Suppose you want to support an artist and give them money. That's easy. Most artists take PayPal, bank transfer, or cash. But how can you prove that you've paid an artist for a…
Fuite: a tool for finding memory leaks in web apps
Debugging memory leaks in web apps is hard. The tooling exists, but it’s complicated, cumbersome, and often doesn’t answer the simple question: Why is my app…
The Third Web
(This text is very long. Maybe too long. You can find a PDF and an EPUB of it below.The current version of this text will always live at https://web3.tante.ccSatya has created an audio version of this essay. Eine deutsche Version findet sich hier. Una versione italiana di questo testo è qui – grazie Nebbia! En […]
Introduction to WebAssembly Components
WebAssembly and WASI show great promise for the future of computing outside the browser, and the WebAssembly component model aims to improve the portability, cross-language, and composition story for Wasm. This article explains the goals of the component model, and showcases how to use tooling from the Bytecode…