Every modifier key starts simple and humble, with a specific task and a nice matching name. This never lasts. The tasks become larger and more convoluted, and the labels grow obsolete. Shift no longer shifts a carriage, Control doesnt send control codes, Alt isnt for alternate nerdy terminal functions. Fn is the newest popular modifier key, and it feels were speedrunning it through all the challenges without having learned any of the lessons.
Show full content
Every modifier key starts simple and humble, with a specific task and a nice matching name.
This never lasts. The tasks become larger and more convoluted, and the labels grow obsolete. Shift no longer shifts a carriage, Control doesnt send control codes, Alt isnt for alternate nerdy terminal functions.
Fn is the newest popular modifier key, and it feels were speedrunning it through all the challenges without having learned any of the lessons.
👋 I’m currently participating in the University of Iowa’s Venture School program, and I’m doing some research on the software tools that people use.
Show full content
👋 I’m currently participating in the University of Iowa’s Venture School program, and I’m doing some research on the software tools that people use.
As part of my customer discovery process, I’m looking to learn from a few specific groups of people. I would love to chat if you are:
👨💻 A busy developer
⚡ A tech enthusiast
🔒 Privacy-focused
🌐 An Internet user (yes, this means you!)
I’m not selling anything–I just want to hear about your experiences and frustrations!
If you have anywhere from a few minutes to half an hour for a video call to answer some questions, I would be incredibly grateful. You can grab a time that works for you right here: 👉 schedule an interview! 👈
Last month the court decided to take up a petition lodged by oil companies Suncor and ExxonMobil in a climate-damages case brought against the companies by Boulder, Colorado. The petition argues that Boulders claims are barred by federal law, and if the justices agree, it could knock out not only Boulders lawsuit but also many others like it. The court is expected to hear the case during its upcoming term that starts in October.
The AirPods Max 2 will be available for preorder on March 25 and launch in early April, Apple said. They will cost $549, the same as the original AirPods Max upon launch.
Show full content
The AirPods Max 2 will be available for preorder on March 25 and launch in early April, Apple said. They will cost $549, the same as the original AirPods Max upon launch.
I had no idea these headphones I see on so many heads cost so much. It’s Apple so I’m not surprised, but especially on college kids, these make no sense. Add an iPhone, iPad, and Mac… That’s expensive!
There’s been a lot of sickness in our house this winter. Managing it is a balance between being a parent and also appreciating that SciShow Kids is educational and magical when it’s on headphones… and trying to find work that’s okay to interrupt because I don’t know when the next interruption is. Or when my 6 year old is just content to read by himself for an hour and something I needed to do actually got done.
It’s always nice to see your posts. Hopefully I’ll see you again at a Ruby conference in the future.
Last week, I saw three different tools for cramming entire codebases into a single text file. Nobody was asking for this. But sometimes you just need to feed your whole project to Claude and think “you know what would make this easier?”
Show full content
Last week, I saw three different tools for cramming entire codebases into a single text file. Nobody was asking for this. But sometimes you just need to feed your whole project to Claude and think “you know what would make this easier?”
You know, it’s funny. I’ve found AI generated code to be needlessly verbose more often than not. Even the above example is probably just a find command like this:
That’s half AI generated and half human generated. And that’s the point. I know these tools and what I can do with them. It’s often still faster to know what I’m doing. On the other hand, If I asked any AI for something like this in English, it would probably spit out a 200 line Python program that does a bunch of error handling and tree traversal. And is that okay? Sometimes. Very often it’s just “okay, good enough” (adequate). However, it can lead to massive codebases if not done well. So, there’s a line. And you need to have experience to know where the line is.
So yeah, I’ve generated tons of adequate code and just said “meh” and gone with it. And other times? Well, when it’s important it requires more attention because the AI just did something very stupid.
It’s a great thing that it’s easy to generate lots of code that would have taken weeks in years past. That said, lots of code is often not the right solution. If you lean on the AI for everything without understanding, it’s going to take you down the wrong path eventually. I’m wary of anyone who says otherwise.
Use with Tampermonkey or a compatible userscript manager.
Show full content
Use with Tampermonkey or a compatible userscript manager.
Known issue: if the chat name isn’t on the screen, it uses the name of the first chat instead. It turns out Gemini doesn’t even know the name of the chat on the screen until scrolling down to it in the history (check the top of the screen to see what I mean). I’m opting to ignore the issue until Google improves the situation.
// ==UserScript==
// @name Google Gemini Tab Renamer
// @namespace https://benjaminoakes.com/
// @version 1.0
// @description Sets tab title to the title of the selected chat
// @author Benjamin Oakes
// @license CC0-1.0
// @match https://gemini.google.com/*
// @grant none
// ==/UserScript==
(function() {
'use strict';
function syncTitle() {
const targetElement = document.querySelector('.conversation-title');
if (targetElement && targetElement.innerText.trim().length > 0) {
const newTitle = targetElement.innerText.trim();
if (document.title !== newTitle) {
document.title = newTitle;
}
}
}
setInterval(syncTitle, 1000);
})();
Toy Story was a transitional project. Since Pixar couldnt send digital data to theaters, every one of the movies frames was printed on analog film. When Toy Story originally hit home video, that 35 mm version was its source. Only years later, after technology advanced, did Pixar start doing digital transfers - - cutting out the middleman. And Toy Storys look changed with the era.
Show full content
Toy Story was a transitional project. Since Pixar couldnt send digital data to theaters, every one of the movies frames was printed on analog film. When Toy Story originally hit home video, that 35 mm version was its source. Only years later, after technology advanced, did Pixar start doing digital transfers - - cutting out the middleman. And Toy Storys look changed with the era.
Basically, the EU is trying to spy on everyone’s chat messages (SMS, FB Messenger, Signal, you name it). Even if it’s encrypted. (All providers would have to give access through some kind of backdoor in order to be legal in the EU.) As often happens, they are trying to use actual bad things as an excuse to try to overstep and achieve mass surveillance.
Show full content
Basically, the EU is trying to spy on everyone’s chat messages (SMS, FB Messenger, Signal, you name it). Even if it’s encrypted. (All providers would have to give access through some kind of backdoor in order to be legal in the EU.) As often happens, they are trying to use actual bad things as an excuse to try to overstep and achieve mass surveillance.
Here’s an LLM summary that matches my understanding:
Chat Control is an EU legislative proposal to mandate detection and reporting of child sexual abuse material (CSAM) online, including requiring clientside scanning for endtoend encrypted services and creating an EU centre to coordinate reports. Critics warn it undermines privacy and encryption, risks false positives and centralisation harms, and its effectiveness and legal proportionality remain hotly disputed.