-
Must be super stressful being an engineer on a project where an outage would result in front page news. The closest I’ve got to something like this is someone posting a meme on a piece of kit I was working on. Knowing that people are paying attention is a good check.
-
🔗 Lex on Tech: Nvidia CEO Jensen Huang to step down in big blow to AI boom:
Besides absolutely everyone, who could have seen this coming?
I’ll be honest, I did not see this coming. I’m aware the board was going after Huang but I didn’t think Jensen would step down himself. Either the crisis is larger than I imagined, or I’m not tuned to the politics of it all (probably a bit of both). I now recognise that this could have large implications for the industry, given Nvidia is bankrolling all these AI companies. I don’t know anything about this CEO but whether this continues is now up to her.
-
The Smart Keyboard Folio — number two — for my iPad is start to fail on me. The device would stop recognising it, or keys would get missed or become stuck on. Might be time for a replacement. In terms of its physical condition, it’s holding up much better than the last one.
-
🛠️ aws/aws-emulator: local emulator of the AWS APIs
Good to hear that AWS released an official test container for their services. Not sure how it compares to Localstack, or the various DynamoDB test containers I’m familiar with, but sounds promising.
Via: Simon Willison
-
Nano NovEmber: Day 1 - My Colleague, Bubbles
I had an idea for a November blogging challenge to write a piece of nano-fiction every day for the next 30 days. Life got in the way though, and I didn’t come up with the prompts I was going to use. Thankfully, Robert Birming was kind enough to link to Sylvia’s Studio’s 20 random prompts for stories.
So I think I will give this challenge a try: a piece of nano-fiction, about the size of a Mastodon post or so, using these prompts for the remaining days of November. I’m calling it “Nano NovEmber”, pronounced “nano nov [as in novel] ember.” There isn’t 20 days left, so it may spill into December. Or it may fall apart after four days. I guess we’ll find out together. 😀
Continue reading → -
It’s hilarious hearing these streaming companies talk about how vertical, short-form video will save them. Maybe they can convince TV manufacturers to develop screens that can rotate into portrait mode, like computer screens. Place a button to do that on the remote next to the Netflix one. 😀
-
I can’t get onboard with the idea that Jensen Huang’s affair would have any material impact to the larger AI rollout. Whose opinion would these revelations actually change? Enthusiasts believe the tech speaks for itself, and dissenters would have stopped listening to him ages ago.
-
I wonder if the biggest failing of Liquid Glass is that it was trying to be a layered UI design on top of a solid base colour. All the glass effects are neutralised by the white window backgrounds. Maybe if the windows were textured they would’ve have more success.
-
Apparently the design system used within the AWS console is open source. It’s trite to joke about the AWS console even having a design system, but it probably shouldn’t be too surprising given how complicated the console needs to be.
-
Speaking of serious programming languages, UCL is definitely not one of them. 😀
Anyway, this evening I asked the agents to produce a new playground for the language, with a syntax-aware editor. The new one also takes a page from TinyLittleOffice and allows sharing of scripts via URLs.
-
I can’t remember who said that a built-in formatter is table stakes now for any serious coding language. But they’re absolutely right: should a new general-purpose language come about (I believe it’s possible) they absolutely need to be strict in their coding style. It’s just too contentious not to.
-
It’s interesting that Matt Birchler followed up his post about understanding generated code with an argument about going all in on native. It would be nice to use native toolkits, or even move to something like Rust and Druid. I’m resisting as I still prefer to use tech that I’m familiar with for GUI apps, Go and Wails, even if it’s the agent writing the code. I may be deluding myself, but it’s nice to say that I have a chance of understanding it. That, and the tool chain is already set up.
-
You don’t know what you have with a modern web-app with proper REST-style URLs until you’re force to use a system that doesn’t have them.
-
📗 Vibelog
Recent Changes to Raven
Making a note of some of the recent changes made to Raven, mainly for my own record.
First big addition, light mode. Wails defaults to dark mode, which the agents were happy to keep. I tried it for a while, but I am really a light mode person, so I asked the agents to change that for me. Tuning the colours took a little bit of trial and error: while the agent chose decent colours for the 16 predefined ones, they were a little too dark for my liking, so some tweaking was necessary.
Continue reading → -
Barely slept last night. So did my barista. We suspect the weather may have something to do with it. She told me the swings in temperature we’ve been having actually affects the grind calibration. The weather can go after my health and my sleep, but now it’s after my coffee!
-
Word of the day: bachelor’s handbag
(n, au/nz slang) a roast chicken sold in a disposable plastic carry bag with a handle.
I’ve not heard or used it myself, only just learning about it today, but I like it.
-
Would Go benefit from supplying a context in the main method? As in:
package main func main(ctx context.Context) { // ... }Despite how often I supply a context at the top of the function, I think it’s better if main is left as is. Better to keep contexts at a “use when needed” at that level.
-
Shame you don’t get credit for the posts you didn’t write. Specifically the posts you started, then through the act of writing realised that your thinking were flawed, and you end up changing your mind. Arguably what writing is meant to do, but it doesn’t translate well to getting them eyeballs. 😏
-
Working on a terminal muxer has made me aware of the wonderful world of terminal operating system commands. I was aware of a few, such as the escape sequences for changing terminal colours; but I had no idea of how many there were. And the list is still growing.
-
The new Go JSON v2 package looks pretty good. The
jsontextandMarshallerTo/UnmarshallerFrominterfaces are nice additions. The old custom marshalers producing a JSON fragment as a string always rubbed me the wrong way. -
Had gazpacho for the first time today. Caught up with a friend whose wife is Spanish and she was good enough to make some for us. Tasted really good. I was expecting something that was closer to plain tomato soup; but there were onions, oil, and vinegar, which dressed it up quite nicely.
-
It’s amusing to think, back when Unicode was coming about, that we thought that 16 bits was enough to encode every character out there. Java was famous for this break from C, which stuck with 8 bits. But even this wasn’t enough, and they had to bodge some code-point methods to their String library.
-
I’m really glad the industry has largely settled on UTF-8. For a while there we were looking at encoding hell, what with UTF-16 and ISO 8859-1. It’s one of the few things we’ve decided as a whole on, and I think we made the right decision.
-
On How the Web is More Than Enough
Some remarks on Paul Ford’s post. Continue reading →
-
Been on a ginger beer kick recently, but it’s obviously a drink I’m not qualified for. For one thing, I keep forgetting to turn the bottle upside-down to mix it up a little. For another, whenever I try to get the pull tab off, I always end up spilling some of it on myself.
-
Ooh, that’s a bit of a shame: SolarEdge, the inverter I have, is exiting the Australia and New Zealand market. Apparently compliance and competition got a bit too fierce. They are still honouring warranties, but it does mean some integrations I was eying are no longer available to me. Unfortunate.
-
🔗 Spyglass: Apple Leveraging Apps for AI • ChatGPT vs. Google Search
This [allowing third-party apps fully integrate with Siri] is seemingly a way for Apple to maintain some level of the status quo – that is, apps. This system is clearly built to leverage the apps you already have installed, which plays nicely with Apple’s overall AI message and strategy.
So I guess this is Apple saying that the future of
TVapps is apps. 😛 -
An exceptionally lovely day for an after work walk. Particularly with the recent wet weather we’ve been having recently (not that I’m complaining; well, not much).
-
My sister’s cockatiels are back after a brief absence while I was away. They’re more than happy to hang out while I work: preening, sleeping, getting head scratches. But this does mean there’s usually one bird on my arm, and I have to coax them off if I want to use it. How do pirates do it? 😀
-
Also, a very special thank you to @calebhailey.com for featuring FollowDraw as an App Spotlight in SocialSpec’s news feed. I really appreciate the shoutout. It’s a fun little project to be working on, mainly because it’s all hand-rolled and using tech that I really like working with.
-
Added some logic to FollowDraw to detect when a follow is compliant with FollowSpec. Such a site is indicated with an “at card” in the drawn results. Tap it to draw follows from their profile. It’s a regular link so you can go back, or open it in a separate tab, etc.
-
There’s a set of DynamoDB tables I work with that I really wish were tables in a plain old PostgreSQL database. The worst part is that the schema is essentially modelled like an RDS, requiring me to do the joins myself in code (or via the pasteboard).
-
Bought up Raven (my muxer’s got a name now) to a colleague today, and he asked if I had any plans for it. And while I have a few ideas, I told him that the immediate plan is for features that’ll save me from myself. That, and basic issues that crop up from using it.
-
Yes, yes, we all know that bike-shedding is generally something we’d want to avoid. The problem is that people’s opinion of a bike shed don’t stop after it’s been erected.
-
Starting to see the Americans post their “I voted” stickers in my feed. They tried those stickers here once, but with compulsory voting they were a bit of a joke. “I voted!” “Yay, we all did. We had to.” Those stickers haven’t been back since. 😏
-
Much, well pretty much all, of this muxer was written by an agent, but I did want to put something a little personal in it. I asked the agent to display a random quote on the message screen. I insisted on writing the quotes myself and for the last hour and a half, I had a blast finding and adding well known quotes, and quite a few joke quotes too. I’ll need to find a reason to show this page more often.
-
I do wonder if my software engineering experience is having a negative effect to the effectiveness of these agents. After a couple of decades in the field, picking up the lessons and scars of things going right and wrong, it seems natural to get a sense of what;s possible, or how something should be done. It could be that I’m just imagining it, but I feel these boundaries are coming through in the prompts I write. I’d research an approach and tell the agent in detail how to do it. Or I would leave certain behaviours out, or explicitly tell the agent not to do something, with the belief that asking for it would be impossible. Really keeping the reins quite tight.
This is sometimes warranted, when I need to know the code inside out. But for silly little vibe-codeing sessions, is it really helping? Wouldn’t it be better to loosen the reins a little and let the agent find these boundaries?
-
There does seem to be quite a few people working on terminal muxers geared towards agentic coding. The one Matt Bircher is working on looks super compelling. And while the use of agents has become a typical part of my workflow, I am still using the shell just as often in the more traditional way: SSHing into machines, running Git or TUI applications. And let’s not forget the number of time’s I grepping or running JQ over something. So I feel that traditional shells still have a place for me.
-
Started a small vibe-coding project, making a terminal muxer. I started it on Sunday, tried it at work yesterday and spent much of today’s public holiday adding features to it. I wouldn’t call myself a Terminal power user, but I’m always in a terminal, and there are things about it that would be nice to improve, such as maintaining scroll-backs of old sessions I accidentally close. There are some other niceties I’ve added, such as breaking terminal sessions into ad-hoc workspaces (which would be used for separating out tasks) and taking a snapshot of the scroll-back so I can refer to it later.
Built using Go and Wails 2, with Xterm.js as the terminal emulator. Still early days but it looks and feels pretty good.
-
Also updated my Now page. I think it’s fair to say that I’m in a bit of a holding pattern at the moment. No major project, not really reading or watching anything. Did discover some new music, so not completely motionless. But otherwise, in a bit of a “between” phase right now.