February 2, 2025
Stream
This is a mirror of my tweets in an attempt to follow the indieweb movement.
January 30, 2025
Contrary to oft-repeated wisdom, the internet isnât written in ink. Physical ink on paper is often a far better method for carrying data forward into the future. Manuscripts that are hundreds and even thousands of years old are still with us, and still being discovered every day. Will the same be true of our own data a hundred years from now?
Physical collections benefit from their form: by taking up space in the real world they demand attention and care. Digital collections more easily fall into the trap of âout of site, out of mindâ. How many online services have you signed up for, added data to over time, and then later forgotten about? How much of our data, the traces of our lives online, are permanently lost?
Itâs amazing how fragile weâve let our data become.
Managing our data has only gotten more difficult as personal computing has gotten more sophisticated. So much of our digital lives have moved from our machines and into the cloud. Our documents, photos, and music used to exist on our devices where they could be backed up and preserved, but now they exist more and more in privately-owned corporate silos.
Our computers should be databases! We should be able to script them, access them using browser APIs, browse them via a first party application, etc. They should accrue data and knowledge over the course of our lifetimes, becoming more useful as we use them. They should be ours, something we can control and back up and preserve long after weâre gone.
All of our emails, recipes, playlists, text messages, Letterboxd reviews, TikTok likes, documents, music, photos, browser histories, favorite essays, ebooks, PDFs, and anything else you can imagine should be something we can own, organize, and eventually leave behind for those that come after us. An archive for each of us.
From We could all be archivists | Chase McCoy
I couldnt agree more with all its said in this post. I was highlighting almost all paragraphs.
January 20, 2025
User adoption doesnât work if itâs forced; it has to come from a genuine user belief that the new feature can help them achieve their goals. And it certainly doesnât work if the feature actually creates a worse user experience and degrades the quality of the product.
Google implementing AI search results has led to countless examples of misinformation, factual errors and hallucination. Google was already excellent at ranking information, guessing the intent behind a search phrase and modifying its results accordingly.
But in my opinion, the tech industry desperately needs less disruptive new shit for the sake of innovation and more listening to the actual problems users are facing out there.
January 19, 2025
We put so much pressure on ourselves to be continuously productive. But we all know, deep-down, that this is an unsustainable, and frankly, highly unenjoyable way to live.
We know we need the rest, and yet we feel guilt. We feel shame. We berate ourselves for not being able to fully submit ourselves to our labour. We apologise for not getting that thing done, even though there was no arbitrary deadline.
Productivity and progress is not only measured by deliverables, such as lines of code, features, or blog posts. You are more than what you produce. You are your ideas, your thoughts, and your actions.
January 18, 2025
A beautiful visualization of turing machines. I knew Sam because of his Bloom filters posts and they all are a treasure to look at.
January 17, 2025
Look how cute! In 2015 average web page size was approaching shareware version of Doom 1 (2.5 MB):
Well, in 2024, Slack pulls up 55 MB, the size of the original Quake 1 with all the resources. But now itâs just in JavaScript alone.
For a chat app!
January 17, 2025
Thereâs a wonderful article by Sebastian Bensusan: âWe need visual programming. No, not like that.â (the dot is part of the title ÂŻ\_(ă)_/ÂŻ).
In it, Sebastian argues that we shouldnât try to replace all code with visual programming but instead only add graphics where it makes sense:
Most visual programming environments fail to get any usage. Why? They try to replace code syntax and business logic but developers never try to visualize that. Instead, developers visualize state transitions, memory layouts, or network requests. In my opinion, those working on visual programming would be more likely to succeed if they started with aspects of software that developers already visualize.
January 16, 2025
In other words, the web was about retention and accumulation of content. An ever growing library that by its very nature was self-indexing and cross-referencing. And this is what is being actively killed these days.
From Witnessing the death of the web as a news medium | Christian Heilmann
An interesting review and timeline on how the web is dying.
January 16, 2025
When the web started one of the best parts about it was the naming of things. To âsurf the webâ implied fun and adventure and to âbrowseâ implied serendipity. And we seem to have lost that. Letâs go back.
Finding information on the web was a journey, an adventure. And people wrote about the most random things, went down many rabbit-holes and of course also published things nuttier than squirrel droppings.
Nowadays the web has taken over the mantle of most in your face medium trying to force you to consume and purchase things. And it âdoes the research for youâ and pushes you into bubbles. Spending time aimlessly browsing for content is touted as inefficient. Operating systems and browsers come with âamazing AI featuresâ that give you summaries of content instead of allowing you to get your own impressions and draw your own conclusions.
Sure, on the surface this seems great, but it feels like weâre pushed into a world of faster and faster consumption without allowing us and our minds to wander.
Aimlessly browsing to find things you may not have heard of yet is as important as discovery is exciting
We need to browse more, find things we havenât looked for and discard or embrace them. You donât often go to a clothes shop to buy one special item. Itâs fun to try on a few things and maybe find a new style.
Letâs be browsers again, letâs embrace the weirdness of the web, a library curated by racoons on drugs
So letâs keep looking around for the strange, the overly detailed and the just bonkers web. And â hey why not â start contributing to it. You can publish, nobody is stopping you.
January 16, 2025
Can I find what Iâm looking to do? Do the pages work on mobile? Does the site load? Is the main content the main content item? Does this web site work for all people? How are images used?
January 16, 2025
Hello! The other day, I started wondering â has anyone ever made a FUSE filesystem for a git repository where all every commit is a folder? It turns out the answer is yes! Thereâs giblefs, GitMounter, and git9 for Plan 9.
But FUSE is pretty annoying to use on Mac â you need to install a kernel extension, and Mac OS seems to be making it harder and harder to install kernel extensions for security reasons. Also I had a few ideas for how to organize the filesystem differently than those projects.
So I thought it would be fun to experiment with ways to mount filesystems on Mac OS other than FUSE, so I built a project that does that called git-commit-folders.
From Mounting git commits as folders with NFS
Another interesting approach to git internals by the great Julia
January 14, 2025
Hello! I was talking to a friend about how git works today, and we got onto the topic â where does git store your files? We know that itâs in your
.git
directory, but where exactly in there are all the versions of your old files?
From In a git repository, where do your files live?
Im a lover for this kind of deep dive/look into internals and Julia always writes them in a nice exploratory way.
January 13, 2025
Using less memory to look up IP addresses in Mess With DNS
A fun read about how simple changes about representation/algorithms could have a big payoff.
January 12, 2025
As I weave through double parked cars and brave pedestrians, I see that this bicycle with an electric motor has returned the hope Iâd lost over the years. Here, listen, it whispers: tech doesnât have to be a con or make us the worst versions of ourselves. Look: technology has kept its promise and genuinely made the world better!
My e-bike is pulling me into an alternate dimension where tech isnât designed to be a grift from the start, as these two-wheeled bad boys arenât only here to generate shareholder value; theyâre designed to help.
Iâm halfway through my ride now and itâs dawning on me that this little e-bike of mine offers a critique against tech culture as a mere profit-generating tool, sure.
Hereâs the kicker though. E-bikes arenât cool because of the way they look or how loud they are and theyâre certainly not cool because they turn heads or make strangers jealous. Instead, e-bikes donât care about cool. They argue for a new kind of world where technology is genuinely helpful, where technology doesnât have to be cool at all.
Technology can just do the job itâs meant to.
As someone whoâs worked in tech for more than a decade (sorry) Iâve seen how a lot of folks in the industry are terrified of making something merely useful. It must be important! It must scale! It must have a million eyes on it!
January 12, 2025
Good user experience should be good SEO. People prefer fast websites; fast websites will rank higher. Good markup and metadata improves accessibility and happen to help ranking algorithms. Where interests align thatâs a bonus.
I canât be the only one seeing the quality of search results tank? Letâs be honest, as despicable as Google are, their search results were miles ahead. Now it seems Google has given up. They donât even pretend to care about quality. Apparently Google are using âAIâ in their algorithm now?
January 11, 2025
But, doing it this way taught me a lot. It also helped to demystify the black box that someone else built, to give me the confidence that I could come to understand this tool as well as the creator, no matter how brilliant they seemed from a distance.
My action item to you, developer: when you start using a brand new, shiny technology, talk about it! Ask questions, write blog posts, share on social media, and be open about your findings. You never know who you could be helping! And the more you share, the easier it will be for other people to find you and return the favor.
From Apollo Mission - The Pros and Cons of Being an Early Adopter of New Technology
January 10, 2025
December 20, 2024
And this is why personal websites are the best
December 7, 2024
There is a cognitive bias known as the curse of knowledge, which occurs when one assumes that others possess the same level of knowledge during communication.
This phenomenon is quite common in software development. People who have experience writing certain types of code and those who donât often struggle to communicate effectively, even if they share the same theoretical foundation (algorithms, programming languages, or domain knowledge). The reason for this lies in the significant flexibility of software engineering; there are multiple ways to implement the same functionality, each with its own set of challenges.
To eliminate such communication barriers, various technical fields have developed their own set of idioms or design patterns. New projects built on these practices can avoid a lot of unnecessary trouble. The same is true for the field of databases; however, due to its niche nature and high degree of commercialization, knowledge circulated among the public is very scarce, and engineering practices are scattered across various open-source projects.
In this article, I will build a SQL IR from scratch based on my own best practices, which will facilitate the progressive sharing of some design considerations.
From What I Talk About When I Talk About Query Optimizer (Part 1): IR Design
December 7, 2024
To break from talking about actual DNS features, check out this little snippet instead:
dig +short TXT {0..92}.vid.demo.servfail.network | sed 's/[" ]*//g' | base64 -d | mpv -
Requires bind-tools, mpv. If it doesnât work, try adding @8.8.8.8 just after dig, or replace mpv with ffplay
December 6, 2024
You have a unique voice that others donât have. Not everyone learns best from the top teacher out there, not everyone enjoys the writing of the most prolific blogger you know, and not everyone uses the most popular app for their problem. You donât know who might benefit from what you offer, and you wonât know until you go for it!
From Ship it anyway
December 6, 2024
But they should not be afraid! Libraries are not magic. They are just code someone else wrote. After all, I pasted the entirety of
is-number
above, and nothing in there is too mysterious. And beyond librariesâlanguages are not magic, operating systems are not magic, nothing is magic. Dig into the source code and you will find code you can read and understand.
If you are a proponent of tiny libraries, I encourage you to overcome your fear and try writing the code yourself. You are more capable than you think.
December 6, 2024
But this stuff right hereâadding things that never happened to a pictureâthatâs immoral because confusion and deception is the point of this product. There are only shady applications for it. Looking at a lot of the examples here I canât tell whatâs real without inspecting themâthe crashed motorcycle has a bicycle tire for example but man I would never look this closely in most situations.
So right now I think this stuff should be straight up illegal.
December 4, 2024
Communities function like that Tamagotchi. You canât play with them until you feed them and care for them. Unless you keep those health and happiness meters high, they will not behave in the ways youâd like them to, potentially undermining your efforts and investments.
This goes for any community. Whether it is one you created and managed for your product or open source project or one that previously existed (though especially the latter).
One of the fun aspects of the Tamagotchi was that it could be unpredictable. They had personalities and they evolved in stages, which also affected their behavior. You had to invest time and effort to care for the Tamagotchi, but the outcome was unpredictable because the personality was intrinsic to the specific Tamagotchi and not something you could control.
In much the same way communities tend to have a personality. Existing communities will have already established one that you need to invest time to understand and adapt to.
Instead of tracking the outputs, track the inputs. What are the activities we did to foster the community this month?
Done right, community efforts can pay off immensely
December 3, 2024
File over app is a self-guaranteeing promise. If files are in your control, in an open format, you can use those files in another app at any time. Not an export. The exact same files. Itâs good practice to test this with any self-proclaimed file-over-app app you use.
âStainless steelâ is a self-guaranteeing promise. You can test it yourself on any tool that makes this promise, and the stainlessness of the steel cannot be withdrawn.
Terms and policies are not self-guaranteeing. A company may promise the privacy of your data, but those policies can change at any time. Changes can retroactively affect data you have spent years putting into the tool. Examples: Google, Zoom, Dropbox, Tumblr, Slack, Adobe, Figma.
A self-guaranteeing promise about privacy gives you proof that the tool cannot access your data in the first place.
Encoding values into a governance structure is not self-guaranteeing. Given enough motivation, the corporate structure can be reversed. The structure is not in your hands. Example: OpenAI.
December 2, 2024
However, these tools arenât necessarily faster because theyâre using a faster language. They could just be faster because 1) theyâre being written with performance in mind, and 2) the API surface is already settled, so the authors donât have to spend development time tinkering with the overall design. Heck, you donât even need to write tests! Just use the existing test suite from the previous tool.
In my career, Iâve often seen a rewrite from A to B resulting in a speed boost, followed by the triumphant claim that B is faster than A. However, as Ryan Carniato points out, a rewrite is often faster just because itâs a rewrite â you know more the second time around, youâre paying more attention to perf, etc.
In the world of Node.js scripts, we donât get the benefits of the bytecode cache at all. Every time you run a Node script, the entire script has to be parsed and compiled from scratch. This is a big reason for the reported perf wins between JavaScript and non-JavaScript tooling.
Most developers ignore the fact that they have the skills to debug/fix/modify their dependencies. They are not maintained by unknown demigods but by fellow developers.
This breaks down if JavaScript library authors are using languages that are different (and more difficult!) than JavaScript. They may as well be demigods!
For another thing: itâs straightforward to modify JavaScript dependencies locally. Iâve often tweaked something in my local
node_modules
folder when Iâm trying to track down a bug or work on a feature in a library I depend on. Whereas if itâs written in a native language, Iâd need to check out the source code and compile it myself â a big barrier to entry.
That said, I donât think that JavaScript is inherently slow, or that weâve exhausted all the possibilities for improving it. Sometimes I look at truly perf-focused JavaScript, such as the recent improvements to the Chromium DevTools using mind-blowing techniques like using
Uint8Array
s as bit vectors, and I feel that weâve barely scratched the surface.
I also think that, as a community, we have not really grappled with what the world would look like if we relegate JavaScript tooling to an elite priesthood of Rust and Zig developers. I can imagine the average JavaScript developer feeling completely hopeless every time thereâs a bug in one of their build tools. Rather than empowering the next generation of web developers to achieve more, we might be training them for a career of learned helplessness. Imagine what it will feel like for the average junior developer to face a segfault rather than a familiar JavaScript
Error
.
From Why Iâm skeptical of rewriting JavaScript tools in âfasterâ languages | Read the Tea Leaves
December 1, 2024
The truth is that there is kind of a lot of detail to all of it. But also, detail ultimately just means it is a slog. x86 has a scrillion opcodes to implement, win32 has scrillion APIs, but the path from zero to a scrillion starts with a step like any other.
âGood things happen when I try hard to chase my sense of excitement, ignoring impulses to produce legible outcomes.â I think that observation about legibility really reached me. I went through a period in the past where I found I was only reading books that I felt like I ought to be reading and had ultimately been killing my enjoyment of reading, and I was trying to recover that feeling about programming.
Also, had I known I would need to implement some of MMX, would I have even started this project? Not even sure. I have seen it observed that sometimes not knowing how hard something will be is an important help to actually just starting to try.
I have sometimes thought about this: what are the chances of someone having both the low-level skill set needed to usefully contribute, and also the need to emulate an old Windows program? This is to me one of the best things about the internet, where even if such a person is a one in a billion chance, we have a few billion people around on here.
November 30, 2024
The year is 2005. Youâre blasting a pirated mp3 of âFeel Good Incâ and chugging vanilla coke while updating your website.
Itâs just a simple change, so you log on via FTP, edit your
style.css
file, hit save - and reload the page to see your changes live.
Now listen, I really donât want to go back to doing live updates in production. That can get painful real fast. But I think itâs amazing when the files you see in your code editor are exactly the same files that are delivered to the browser. No compilation, no node process, no build step. Just edit, save, boom.
Funnily enough, many build tools advertise their superior âDeveloper Experienceâ (DX). For my money, thereâs no better DX than shipping code straight to the browser and not having to worry about some cryptic
node_modules
error in between.
So, can we all ditch our build tools soon? Probably not.
November 30, 2024
You see, people on the Web think conventions are boring. That regular controls need to be reinvented and redesigned. They donât believe there are any norms.
Anyway, with Appleâs betrayal, I think itâs fair to say thereâs no hope for this tradition to continue.
November 30, 2024
I donât necessarily believe that everyone can have a job or even a career that makes them spring out of bed in the morning and gives them creative satisfaction in their day-to-day. Ultimately we live under late-stage capitalism, and I certainly couldnât afford my house (or indeed any house) if I dedicated my life to, say, running choirs.
So I get my creative energy and joy from elsewhere. Iâm fiercely protective of my free time, even if itâs just spent horizontal on the sofa playing video games. When the working day is done, I have creative pursuits that bring me joy and put art into the world in their own little way.
Art is in the weird and wonderful websites I make occasionally, which bring people (including myself!) a moment of joy when they land on them.
In a world of shit, creativity for creativityâs sake is radical.
I cant stress enough that last quote, So i will quote it again
In a world of shit, creativity for creativityâs sake is radical.
November 30, 2024
There is no reason for AI generated output to be shared with humans online. Thereâs already so much on the internet created by humans â so much that not only would I never be able to see it all, I will never understand just how much there is. All of us use our creativity to make things and share them with others in the hope for human connection.
From âCreated by a humanâ badges - cadenceâs weblog (personal blog)
November 29, 2024
Weâve built incredible general-purpose computing devices with processing power to run circles around the big desktops I learned to program on. But the way we interface with them locks them up as devices for consumption, not creation.
Itâs not because I canât use my phone for theseâI have! People usually like to bash iOS, saying things like, âitâs just not possible to write the apps to do all this in the first placeâŚâ but for me, all the apps actually exist! I drafted this whole post in a markdown app on my phone. Blink Shell gives me a whole Linux environment to build code, even on iOS. Tailscale lets me build a website at home and access it anywhere. GitHub, Gmail, and Google Docs all have mobile apps.
Rather, the reason I donât is because itâs so unsatisfying. The disconnect between my speed of thought and my speed of action is grating, making it impossible to get into anything resembling a flow state. Like a runner stuck on a crowded sidewalk, Iâm constantly frustrated by the sputtering pace of progress.
November 29, 2024
Robin Sloan coined these type of apps as home-cooked. Following his analogy, technically I am a professional chef but at home Iâm creating dishes that no one else has to like. All the stuff I have to care about at work - UX best practices, what our Community wants, or even the preferences of my bosses and colleagues re: code style and organisation can be left behind. Iâm free to make my own messed-up version of an apricot chicken toasted sandwich, and itâs delicious.
From Home-cooked web apps
November 29, 2024
Perhaps most well-known today for its jarringly out-of-place high-octane soundtrack by the inimitable Tim Follin, the game makes you play bizarre minigames to reveal a drawing, and then â in traditional Pictionary fashion â you have to guess what was drawn, against the clock.
A community quickly formed around âCSS crimesâ, making all sorts of wonderful things by pushing the platformâs capabilities to the limit. Blackleâs CSS Puzzle Box remains one of the most impressive creations on the site. I took part in this phenomenon too, making a zoetrope that shows your browserâs refresh rate, a demoscene-esque twister, a recreation of the Star Wars opening sequence, a light hypnotic induction replicating the siteâs UI, and more.
With the easter egg drawings starting to show up, people naturally started enquiring about the possibility of submitting their own
Iâve given a lot of thought to why the Pictionary bot in particular was so popular, and I think it ultimately comes down to the âyes, andâ posting culture of Cohost. This could have just been a bot posting drawings from the original NES game. But people latched onto it and made their own game out of it. People loved it so much they wanted to contribute back to it, for no other reward than getting to share their work with their friends. People formed a community around it, and Iâm so grateful that they did.
From The NES Pictionary Bot, In Memoriam ¡ Lunaâs Blog
I cant get over the main theme of the game, but a beautiful tale of how internet could still be a nice and beautiful place to share and hangout with others
November 29, 2024
Cheff kiss
November 29, 2024
And in that traffic, Iâve started recognizing people I see every day. We donât talk. Thereâs no handshake. Itâs not like weâve technically ever met. We just happen to be in the same dense traffic at the same time on a regular basis.
November 29, 2024
Iâve enjoyed working with some of the most brilliant web engineers. All of them enjoy a good challenge. They want an excuse to flex some development muscle and show what they can do. In more than one case, the idea of using an existing tool, resource, platform, whatever, led to all-out shoutiong matches driven not by what the user wants, but by the unwillingness to back down from a challenge.
November 28, 2024
Not in the notification feed, not in any sort of hover pop-over, no growth-hacking âput follow buttons everywhereâ nonsense, you basically had to visit someoneâs profile to follow them. It made the act of following much more intentional.
I want people to follow me naturally because they enjoy my posts in particular
November 27, 2024
This is culture surveillance. No one notices, no one consents. But itâs not about catching criminals. Itâs about catching vibes. A constant feed of whatâs popping off in real-time.
November 26, 2024
And it validates something Iâve been complaining about ever since the concept of âApp Storesâ came up: this isnât about user convenience, but about controlling the whole experience and keeping people in your app. Itâs âtime spent in appâ KPIs over and over again.
Speech recognition and speech synthesis is something we already have on the platform level. An app running on the platform should integrate with these instead of competing. As a user, I have spent a lot of time setting up my environment to fit my needs. And I spent time and money to install and buy solutions I like to use for various tasks. Apps should recognise my efforts to cater the experience to my wants and needs and not offer me a lesser experience and sell it as innovation.
From Kirby apps and regressive enhancements | Christian Heilmann
November 26, 2024
Having been in a startup situation where literally everything was deleted, you begin to understand that it ainât all about the code we write. The âoutputsâ; all the code, the designs, the processes, the testsâtheyâre ultimately fleeting. It might be our choice, it might not, but itâll all be replaced or removed in time.
But the relationships you make, the impact you have in colleaguesâ & customersâ lives, and the growth that occurs in your professional journey outlasts any fork in the road.
November 20, 2024
Good defaults make things easier to teach. They point to what the layout method is designed for. Flexbox is really designed for putting things into a line and distributing spare space. So that initial behaviour of putting all your things in a row is a great starting point for whatever you might want to do. It may be all you need to do. Itâs not difficult as a teacher to then unpack how to add space inside or outside items, align them, or make it a column rather than a row. Step by step, from the defaults.
November 19, 2024
Call me oldschool, or even stupid, but I find everything a lot more rewarding when I put some effort into it. Using a pen for writing feels good. Music sounds deeper from the spinning on the turntable record. The time it takes to develop an analogue camera film makes a picture more memorable. But all this is a story for another article.
November 18, 2024
Am I an analog girly, or am I just a snob?
Probably both. I feel like the more experienced and âdeepâ I get into tech, the more I retreat into⌠low-tech. I enjoy pen and paper. I have fun with my typewriter. I want DVDs instead of streaming. I like using a point and shoot camera instead of just my phoneâs camera.
I like not relying on the internet or some level of availability to be entertained or to do tasks. I like owning the things I own, and not thinking about what algorithms are watching me back. I like not being interrupted by notifications when Iâm doing something.
From Analog girly
November 18, 2024
The result is bloated websites built by framework developers. And you canât blame all the new developers for that. When all the job postings require framework experience, people joining the web dev world focus on becoming framework experts.
A dev knowing the web platform will produce great websites regardless of the tech stack. At the end, thereâs âjustâ web stuff below all the framework magic, right?
July 26, 2024
localghost.dev has a new theme! In search of a little project over the merrineum that didnât require me to learn anything and therefore use my brain, I remembered there was a stylesheet hidden in the themes directory of my website that I hadnât finished. The theme: teenage personal websites in the early 00s. It was a lot of fun to build, and really nostalgic to recreate the websites of my youth. Think impossibly tiny fonts, blocky layouts with a sidebar full of assorted crap, and grungey photoshop brushes. (But this time with CONTAINER QUERIES.)
From Remembering the early 00s teen website scene - localghost
July 25, 2024
For example, the word stress is slowly disappearing from the workerâs lexicon, while words like anxiety are ramping up. Because itâs in capitalismâs best interest to convince you that whatâs wrong is coming from inside you, rather than what the system is doing to you.
July 25, 2024
Right now Iâm working on something, a big piece with no clear edge. I donât really know what it is yet â or where itâs going â but for days Iâll leave it alone and wait for inspiration to strike. Iâll wait for a characterâs name or an event to tumble out of the ether or hop right into my lap. Iâll wait for a scene to take shape or a paragraph to be whittled down. But progress has been glacially slow on this project because thatâs just not how work works.
So if design has taught me anything itâs this: Donât wait. Just keep noodling. Creativity isnât a thing that you are, or a thing that you will be temporarily in the future. Creativity isnât luck, either.
Creativity is simply a byproduct of work.
July 25, 2024
I donât share this kind of anxiety. I mean, I would if my business was entirely dependent on Google but boy trusting any of these platforms in the first place was the real problem there. The whole point of the web is that weâre not supposed to be dependent on any one company or person or community to make it all work and the only reason why we trusted Google is because the analytics money flowed in our direction.
Like, sure all these websites could make a business model on web advertising and being on the front page of a Google search could mean piles of cash but under the hood this broke the web in such a way that Google became the front-door of the whole internet.
July 25, 2024
This, I realize now, is 1. dumb and 2. cruel.
Itâs anti-worker and anti-union and it takes away peopleâs autonomy to chase a healthy work environment. Companies are allowed (and expected!) to pivot when their business model doesnât work and yet workers are not granted the same privilege when they find themselves at a gig thatâs underpaying them or putting them on useless busy work or hurling them into a toxic work environment.
You owe them nothing because thatâs what the money is for. Your company is not a family, you are not letting anyone down.
July 25, 2024
The best onboarding experiences guide people as they interact, instead of explaining things in narrative form.
Thereâs only one catch here: I almost exclusively hate onboarding experiences. Theyâre slow and patronizing, they get in the way, and they often try to explain around their overly complex UI instead of simplyâŚmaking the UI less complicated.
Most folks takes the laziest approach possible and you can see it everywhere: apps of every kind and ilk are chockablock full of annoying popups and guides and things you have to dismiss before you can use the product itself. We all hate those.
July 25, 2024
Much of the concern and criticism of AI we are seeing at the moment relates specifically to the challenges with the largest LLMs, particularly when used as a proverbial sledgehammer. Considering the MVM approach as an alternative is one way to navigate forward in a balanced, pragmatic and mindful way. We would love to hear from anyone trying something similar, or different!
July 24, 2024
Itâs easy to think of places like Twitter (I refuse to call it X) as a right-wing, hateful, misogynist platform (it absolutely can be), but itâs also worth highlighting the other side of it - the digital relationships tools like Twitter have allowed us to form.
Despite all of the drama that often happens on social networks, Iâm so grateful to all of the people I have met through these channels. I could make a muuuuch longer list highlighting all the people Iâve met online and sincerely value as ârealâ friends, but for now let me just say how much I value you all - readers of this blog, subscribers of my newsletter, people that randomly email me, interactions on social networks, and all the amazing clients.
From Digital tools may create life long relationships â Anton Sten â Product Designer
July 22, 2024
During the rest of the flight I wrote PySkyWiFi. PySkyWiFi is a highly simplified version of the TCP/IP protocol that squeezes whole HTTP requests through an airmiles account, out of the plane, and down to a computer connected to the internet on the ground. A daemon running on this ground computer makes the HTTP requests for me, and then finally squeezes the completed HTTP responses back through my airmiles account, up to me on my plane.
This meant that on my next flight I could technically have full access to the internet, via my airmiles account. Depending on network conditions on the plane I might be able to hit speeds of several bytes per second.
When I was done with all of this I used PySkyWiFi to load the homepage of my blog using
curl
, tunneling the data via a GitHub Gist. Several minutes later I got a response back. I scrolled around the HTML and reflected that this had been both the most and least productive flight of my life.
From PySkyWiFi: completely free, unbelievably stupid wi-fi on long-haul flights | Robert Heaton
July 22, 2024
Imagine you post and make new friends on an online network for more than a decade â and suddenly, your account gets suspended for no apparent reason. And there is nothing you can do about it.
Or imagine the online community you were an active part of for years just closes down and all user data gets deleted after a few months. And there is nothing you can do about it.
Or imagine that a site you poured all your thoughts and writing into decides overnight that it might be a good idea to sell access to all user data to a company that is training their large language model with it. And again, there is nothing you can do about it.
Now imagine a place where you actually own your content, your connections, and your online identity.
And now, imagine that this place is your personal website, under your own domain name, under your control.
This is the basic idea behind the IndieWeb.
From Welcome to the IndieWeb ¡ Matthias Ott â User Experience Designer
July 22, 2024
What makes RSS so powerful is that it is an open format. RSS is one of the reasons the blogosphere grew so rapidly and it is the reason why podcasting exploded: because this open format allowed everyone to participate by simply publishing a feed anywhere on the web, without being restricted by platform requirements, closed APIs, and paywalls. And this superpower is also why RSS is having a renaissance today: it allows everyone to subscribe to, share, syndicate, and cross-post content on the open web.
RSS already is the cornerstone of many open technology systems like podcasting, which canât be owned and controlled by any one company. As Anil Dash notes, this alone is radical, because it is the triumph of exactly the kind of technology thatâs supposed to be impossible: open and empowering tech that allows people to have ownership over their work and their relationship with their audience.
From We â¤ď¸ RSS ¡ Matthias Ott â User Experience Designer
July 22, 2024
So, feel free to stop by any time and stay as long as you like. I wonât track you, make you look at ads, ask you to download my app, harass you with popups, suggest you sign up for my newsletter or push you through a sales funnel. Enjoy the garden, and the peace đ.
From My own little patch
July 22, 2024
Sit with that for a second, you can write a desktop application with no tooling, launch it from your phone to the internet for free, and seconds later install it on any computer. You donât have to ask permission, or jump through any App Store hoops. You can write a thing, push it to the internet, and then immediately use the thing. Even better, you can send the link to your friends and they can immediately use the thing. Thatâs the power of the web.
July 21, 2024
You donât need to know how to implement all the data structures, thatâs what (software) libraries and Wikipedia are for (and for that matter, book libraries too). However, it is useful to have an idea of whatâs available and when to use it.
July 21, 2024
So models know everything about all the things. But itâs not enough. They donât know how to act human.
So they need to study every online human conversation. They need social media. But social media is a walled garden â you canât just walk up and scrape every Facebook post, every Instagram image â not after those guys already did it. And besides, maybe copyright does apply to them after all!
So they make deals with the social media platformâs owners to access its subjectsâ data. Hereâs every platform I can find that has publicly announced AI training:
Thatâs all there is. After these deals finalise, there will be no more available training data on the internet. Itâs all been absorbed. Whatever the state of AI models is in a year or two, they cannot get any better after that, as there simply will not be any more data to train on.
From The internet has run out of training data - cadenceâs weblog (personal blog)
July 21, 2024
After the main hubbub subsided, I was let in early on the fun. It ended up being the best gift of all to see such an amusing event in internet history caused on my behalf by my better half.
July 21, 2024
As a web developer, having a quick go-to web stack to build projects like this is essential. So many times Iâve had project ideas of grandeur, only to get stalled immediately in the technical architecture because I didnât have the right tools on-hand to get started.
But not this time. My muscle memory for Astro + Vue hosted on github + vercel has become strong enough that these things faded away into the background, letting me focus on the core functionality.
If you donât have this at-hand, I recommend going into real prototype mode and using something like codepen.
July 21, 2024
âDid you catch the game last night?â
I donât know who talks like that, but it seems to be the right type of thing to use as an example here.
In the age of remote work, there are a lot of culture-building moments like that lost behind the screen divide. So, in similar fashion to remote leadership, building strong remote-based company cultures takes a concerted effort.
July 20, 2024
Yup, thatâs right; they were prepared to throw their own WebKit and Safari teams under the bus and remove Web Push, the Badging API, and all the other work those teams had done. They were happy to destroy many EU businesses that relied on PWAs, and harm those users. They were fine with sneaking in anti-competitive behaviour while blaming the very legislation that is designed to open competition.
From Bruce Lawsonâs personal site : Happy DMA day to all! Where we are, and what comes next
July 20, 2024
Some people need AI Smart Cooking technology to get a perfect bowl of rice, but I am OK with a cheap IKEA pot with a lid. Some need 3D teeth tracking with AI to preserve good oral hygiene, but I am happy with my dumb brush. I absolutely donât need any ChatGPT-driven features built into my mouse. Naively, I thought I would turn off this feature and carry on. So naive I was!
July 20, 2024
âGreat stuffâ! Really! Letâs go out and take every file, image, and other resource accessible on the internet and reuse it to make some money.
Letâs visit all these paid media services, âSave asâ their content, remove watermarks, polish it and then sell it under our names. And letâs automate this process! And then letâs talk about the social contractâŚ
From Web content, the social contract and copyrights | Stefan Judis Web Development
July 19, 2024
Hereâs a thing I never would have imagined possible: an LLM embedded into a font.
July 19, 2024
Discovering and playing Bokunatsu (and watching Timâs 6 hour magnum opus of a review) has given me a deep appreciation for the timelessness of art and media.
A game from 24 years ago, deeply steeped in a culture that isnât my own, has managed to create in me a sense of warm nostalgia. Its soundscapes remind me of home, but also make me long for a place Iâve never been.
Itâs also worth appreciating the meta aspect of the journey I went on to discover and experience this game, all because of a link in a newsletter. This is why the web is so special, and itâs what an AI will never do: unearth a lost gem.
When writing in his diary at the end of each in-game day, Boku reflects on âthe most wonderful day in which nothing happened.â Let this be a reminder that there is magic waiting to be found in the mundane.
July 19, 2024
Contrast the above mega-corporate phone system with the simple and direct experience youâll get when calling a typical small business:
- Phone call answered by a human being
- Provides the required information/support
- Done.
That is 1,000,000,000 times better than being treated like cattle in some limited, over-engineered, automated telephone service.
July 19, 2024
The solution that most improved passenger happiness was to increase the distance between the arrival terminal and baggage reclaim, such that, although the delay between arriving and receiving baggage was largely the same, it was spent actively moving; passengers were not feeling like they were wasting their time passively waiting around.
This was a great example of if you canât make something actually fast, make it seem fast enough.
July 18, 2024
WTF!?
July 17, 2024
Years on and I feel that weâve gone down a path where creativity is second to efficiency and that we often look at ready made solutions or reusing what exists. Tools like Squarespace and Wix offer pre-designed templates and drag and drop builders mean anyone can build a site without writing any code but weâve come to a point where everything looks the same
We have deadlines to meet and weâre looking to cut costs so the process has become more about efficiency over creativity in my mind.
From Decline of web craftsmanship | Website and blog of Front-end developer and web designer, Dan Davies
July 17, 2024
It was about improvisation. How a lot of things we do every day are - to some extent, made up! From how we greet each other, to how we respond to an unexpected phone call. None of it is planned. We donât create some sort of crazy scalable distributed architecture to deal with these things: Theyâre licks.
While weâre thinking of the perfect solution, the original problem is still there. Users donât see your research, users donât see the architecture meetings, users donât see the ether. The only thing they see is the problem. And guess what? The problem is still there.
July 17, 2024
So in order to be found on google you have to pay them. Which means that if I, as someone who searches, am looking for something I end up at the website with the largest marketing budget. Not necessarily at the website with the best content. Thatâs bad. That very bad. But it gets worse.
July 17, 2024
the world needs more recreational programming. like, was this the most optimal or elegant way to code this?
no, but it was the most fun to write.
But my favorite kinds of projects are the ones that are just for the fun of it.
July 17, 2024
âHey, we need to do this or weâre going to hit a wall.â Well, weâre not hitting any walls so I guess we donât need to do this. And then we hit a wall.
Any working system can become invisible to the point where the system loses value because itâs working.
July 17, 2024
The internet today is a lot like my Seattle experience. The âFor Youâ pages on the various social networks are spot on with regards to what I like, and they help me get more into the things that I like. But those arenât really âsocialâ networks as much anymore. Theyâre content networks. Itâs things, not connections. Yes, some connections do happen, but the mediums are geared towards what content will keep you around.
I feel like the internet of the past was more like my Chicago experience. I made random internet friends who Iâm still friends with from over a decade ago. Thereâs little pockets here and there on Discord (hello, nerds) and other more chat-oriented spaces, but itâs not what it once was.
the point is that there isnât a big central place now to find or interact with friends unless you really put a lot of effort into it.
July 17, 2024
âIn web development, a lot of decisions are driven by the fear of looking dumb. People are worried about appearing unsophisticated and unwilling to say this is âtoo complicated and we should do something simpler even though itâs not super sexyââ
Peer pressure is the ultimate evil. New developers are especially prone to thinking âseniorsâ will make fun of them for picking some tech stack that doesnât look complex:
People use our app because they need it. If you happen to build something people need, and you are able to find customers in a way thatâs sustainable, youâll have success.
From Simplicity
July 17, 2024
But I need to remember, now and again, that Apple is a corporation, and corporations arenât people, and they canât love you back. You wouldnât love GE or Exxon or Comcast â and you shouldnât love Apple. Itâs not an exception to the rule: there are no exceptions.
Apple doesnât care about you personally in the least tiny bit, and if you were in their way somehow, they would do whatever their might â effectively infinite compared to your own â enables them to deal with you.
July 17, 2024
But, whose user is it anyway? Thatâs irrelevent. The ultimate goal is to provide a good and accessible experience to the user. The way email clients and senders are handling this right now takes focus away from that goal and the engineering effort is instead put into tricking the other partyâs code to do what you want.
Its always the same game of mouse and cat around different topics like with ads when the user is not the one in control.
July 17, 2024
I want to order a pizza. ¡ Lunaâs Blog is a clear example of the uneeded complexity around things that should be as easy as a few taps.
February 13, 2024
The delights of putting smart in things that shouldnt be
February 12, 2024
February 12, 2024
Im a sucker for this kind of content of âlets build a cpu in the most random placesâ or âthis thing is turing completeâ. Love it.
February 12, 2024
It always amazes me the kind of things that you can do with redstone.
January 13, 2024
Maybe im in a nostalgia train, but i love the idea that a group of fans are trying to recreate and let you experience how things worked in the past.
January 13, 2024
On the fringes of the internet, where things are small and specialized (even when theyâre grim or shocking), thereâs something far more captivating than the sanitized, controlled environments weâve established on the modern web. And it is still very much out there, and I believe it is growing.
January 13, 2024
JavaScript in the address bar, as a protocol for a URL, was possible virtually from day one of the language, effectively creating JavaScript URLs.
[âŚ] And pretty early on, people realized that these JavaScript URLs were also bookmarkable, just like any other URL.
And, crucially, easily shareable as links.
From Wait, whatâs a bookmarklet? by The History of the Web
A little history of bookmarklets, something that i really like and even shared in my posts
January 13, 2024
More software running as a kernel space driver? What could go wrong?
January 13, 2024
When I say âI donât know where everyone went,â I know everyoneâs out there surfing the web, of course, but it feels like itâs a different place now. When the algorithms are determining everything we should be seeing, itâs a much less personal internet. The âFor Youâ pages of the world are right, I am interested in that content, but Iâm not seeing it from my friends, or that one author I like, or that random blog I found when I was learning about an obscure hobby.
From I miss human curation by Cassidy Williams
I also found myself mourning in the last weeks the old communities that i had on the internet.
January 12, 2024
Over the past year or so, Iâve been working with other BlueSCSI developers to add Wi-Fi functionality to their open-hardware SCSI device, enabling Wi-Fi support for old Macs and other vintage computers going back some 36 years.
From Adding Wi-Fi to the Macintosh Portable by Joshua Stein
I always like this kind of posts bringing old tech to modern life with open source (hard/soft)ware
January 10, 2024
After reading Embed Slides, YouTube Videos, and More by Adrian Roselli i finally decided to replace my youtube embeds with click-to-load widgets.
January 10, 2024
Since WHATWG HTML is versionless, and since it essentially only takes one browser implementation to get into WHATWG HTML, and since the people approving PRs to WHATWG HTML seem to be the same ones adding features to Safari and Chrome, perhaps the best way to stay on top of HTML today is to look at Chrome âintent to shipâ announcements and Safari feature releases.
January 8, 2024
Hoy me entere de esta horrible noticia, de las pocas ultimas comunidades que aun sobrevivian en internet frente al avance industrial y de jardines privados. Sin embargo, me hicieron conocer este relato.
January 7, 2024
So instead of messing with any device/computer I want to plug this ethernet adapter into I now have a normal USB ethernet adapter with just one extra solder connection :)
From Making an USB Ethernet adapter work [SR9700] by Martijn Braam
January 7, 2024
So when I teach about HTML I always start with the elements that are obviously interactive. I show them the multitude of UX layers of a link, I show them the layers and layers of UX that are added to a well considered form. I show them what happens on a phone when you use an input with a default text type instead of the proper type of email. First we need to get people exited about HTML by showing all the free yet complex layers of UX you get when you use the interactive elements properly. And then, when they do understand the interactive elements, when theyâre really excited and they ask for more, show them the more obscure UX patterns.
From The UX of HTML by Vasilis Van Gemert
January 6, 2024
A few weeks ago, I stumbled upon a very cool research project around using the sound of touch gestures on your face to create new interactions with interfaces.
After reading the paper, I decided to try and recreate something similar using JavaScript. Iâve experimented with using sound data and machine learning in the past and the result was quite successful, however, I had never thought about working with more subtle sounds like the ones this research is focusing on.>
From Control UIs using wireless earbuds and on-face interactions by Charlie Gerard
Almost all of Charlieâs interactions are amazing, and this isnt the exception.
January 6, 2024
So in this article Iâm digging into what JSX is, where it comes from and how one might go about using it as a simple server-side HTML template engine.
From Using JSX on the server as a template engine by Evert Pot
I also found myself making my own JSX Factory for a personal project recently for a similar use-case
January 6, 2024
I spent almost all of this year working on projects for other people. While I am proud of the work I did, and enjoyed it, thereâs still something special about making tools for yourself. Does anyone else in the world want to make their websites in a weird dialect of Lua? Maybe not. But I do, and thatâs enough.
Try building something for yourself. Try writing code for you, and you alone. Donât worry about whether it will look good on your resumĂŠ or attract lots of stars on GitHub. Just write something that feels good to you. Explore a weird idea and see where it takes you.
Who knowsâmaybe someday other people will like it too.
From I made JSX for Lua (because I hate static sites) by Ben Visness
I dont share some of the thoughts, but i always like this thing of doing something for you because its fun.
January 6, 2024
This began as a quick-and-dirty experiment to visualize the UK National Minimum Wage in real-time, inspired by Blake Fall-Conroyâs Minimum Wage Machine.
Then I added the US Federal Minimum Wage, since a sizeable proportion of this blogâs readership are US-based. Did you know the US also has a Youth Minimum Wage? I didnât.
Then I got curious, and added some CEOs for comparison. The vast disparity is nothing new to me, but seeing it like thisâŚ
Itâs fucking sobering.
From Minimum Wage Clock by Luna
I LOVE THIS. Similar to my Comparate con Forbes Argentina but so much better. It has a real sense of time is worth.
- < Previous
- 1/16
- Next >