Tag: Apple

  • Week 17.26

    Week 17.26

    By the time this goes live, I should be in Tokyo. We picked this week to go because Kim thought that there would be a lull at work. That did not turn out to be true, nor is it particularly good timing by any measure: it will be Japan’s Golden Week holidays, a notoriously busy and crowded domestic tourism season, plus there was just a massive 7.7 magnitude earthquake off the northeast coast this week. I believe the Japanglish phrase would be Ohwellganai.

    24 hours until take off and I still haven’t packed a single item. That’s either a sign I’m becoming a seasoned traveler (not likely) or that I’m taking this trip more casually than usual. Maybe it’s the fact that the weather is pretty mild and won’t require a different wardrobe than what I usually wear. I hope Tokyo is ready for my basic-ass black t-shirt and baggy jeans look. Compared to last year’s month-long stay, stopping by for a week this time feels really breezy.

    I’ll often obsess over what camera to bring on a trip, but this time the decision is much easier. For one thing my top pick, the Ricoh GR III, has decided to completely lock up, physically. All its critical buttons are stuck and gummed up either with dust or crystallized substances — not for the first time, but worse than ever. This doesn’t happen to any other line of camera I’ve owned. The GRs are brilliant little things but their build quality and reliability has sadly been a weak spot.

    Secondly, the cameras in the iPhone 17 series are the best they’ve been in years. I’m okay just shooting with the native app in HEIC and editing photos with its “next-generation Photographic Styles”. Or I could shoot ProRAW and edit them in Halide Mk3 too, but it’s mostly extra work and not essential like it was a couple of years ago when Apple’s Smart HDR lost the plot.

    This week was also a birthday week so there was altogether too much eating and that’s never a great idea before a holiday where you’re already destined to put on a few kilos. This week has involved too many curry puffs, pizzas, roast lamb, pastas, and patés. I didn’t buy myself anything more than a 10th anniversary copy of To Pimp A Butterfly on vinyl. I decided that since I’m managing to get a lot done with my M1 MacBook Air, upgrading to an M5 isn’t something that would really excite me at all. Making the most of this five-year-old machine is more satisfying, so I could conceivably wait for the M6 model.

    This week I once again repurposed existing parts to make more new things. Last week’s work on the orchids was too intricate to use only once (pun unintended). So I ported the math to my procedural artwork generator to create a new style called Orchids Forever, where I can stage them with different lighting conditions and make wallpapers.

    Because Cien said she enjoyed having the music from Orchids, Once. in the background as she worked, I started to think about making a thing that was designed to sit in the background of a workday. The first idea that came to mind was sadly too complex for me to pull off (for now), so I started on another that places a few orchids in a flower box outside a window, looking out over the Singapore skyline. The idea is that it lets people anywhere pretend they’re in Singapore, looking out over a scene that changes with the time of day and actual weather.

    The day after I made it, my ex-colleague Tobi over in Germany said he misses Singapore, so I sent this over to help. Rather than reuse the procedurally generated music from Orchids, Once., which would be completely stripping that work for parts, I integrated a free Apple Music Radio player, which makes me happy because more people should hear their live stations.

    While reflecting on all this, I’ve started to think there are three camps of people making things with AI. The first, like me, wants to design experiences and outsource the coding. The second wants to code and outsource the design. The third just wants to see things made and don’t care much about either.

    This is an enthusiast market, and people are even buying curated Markdown prompt files that promise to enforce design and/or development “best practices,” trying to compensate for not knowing what good looks like. But I’m still skeptical that the general public will want to generate their own custom apps. Most people might create a widget or two to solve a personal problem, but that’s it.

    The real unlock for wider consumer vibe coding will be raising the quality of AI-generated UX design. Nobody scrutinizes generated code, but bad design can be felt instantly. Better design defaults might increase the numbers in camps two and three: the people who just want a thing made and don’t particularly have an idea how it should look or work, but would still notice if it was ugly or confusing.

    Claude Design, released this week, might be a trojan horse for exactly this. Although seemingly positioned as the anti-Claude Code, with a focus on front-end design and visual prototyping rather than coding (making it a tool for the first camp), it’s still going to make design more accessible for all makers, even the code-oriented ones. It’s worth noting Figma’s stock fell 7% after the announcement.

    The secondary effect — already playing out in layoffs I keep hearing about — is a devaluation of designers for common production tasks. This drum is being banged by every dimwit on LinkedIn so you know it’s well underway. Most designers will have needed to start burrowing deeper into their organizations yesterday, into strategy and human-centered decision making roles. Service and business designers should have had a head start, but this is a game of musical chairs and someone’s taking out half the chairs.


    • I watched the Sphere (1998) movie with my book club and while I expected it to be possibly racist or sexist, I didn’t think it would be as offensive as it was. It’s godawful. I didn’t hesitate to give it 1 star on Letterboxd. There must be an interesting story behind how Barry Levinson came to direct an undersea horror film based on a sci-fi hit novel by Michael Crichton, starring Dustin Hoffman and Sharon Stone among others, and have it come out so unwatchable and incoherent. The effects, both practical and computer generated, are laughable. And this was just a year before The Matrix.
    • We finished Company Retreat, the new hidden camera show from the makers of Jury Duty. The premise is that a normal person is chosen to temp at a company that’s going on their annual team-building retreat, except everyone else is an actor. They put him through absurd situations that test his character, and like in the first show, the mark turns out to be an unbelievably good human being. The scale of the con is much larger this time, and the behind the scenes content is as interesting as the main story (if not more so). I think they went just a little too far with some of the characters this time, to the point where you think he must have known this wasn’t normal.
    • I’m currently reading another goddamned Japanese cozy novel, except this one seems to be worth the paper it’s printed on. Letters from the Ginza Shihodo Stationery Shop seemed like an appropriate choice given that district is where we’ll be staying. Like some of these other trash tomes, it’s a bunch of intersecting short stories centered around a titular shop. This time, the stories are actually kinda interesting and have emotional cores that work — stories of everyday people trying to write letters to resolve personal issues. Rob asked if it was appropriate for his 12-year-old (that’s about the reading grade for these books), and I said yes, as long as you can explain the concept of a hostess club to him.
    • I’ve also begun reading Oliver Burkeman’s Four Thousand Weeks, a book that appeared on my radar awhile back but whose apparent premise — life is only 4,000 weeks long, so what are you going to do about it? — scared me off. Then Ted mentioned it when we met up a couple of weeks ago and thought that I’d find its concepts familiar, and in line with how I’m already living. I took that as a tremendous compliment and permission to get started. I read the intro and first chapter on the plane, and they deal with the idea that you should embrace that life has time limits, and accept you’ll never be able to do everything. Not only is that okay, it’s how all people lived before our clock-watching, productivity-obsessed era. I couldn’t help but wonder if I was taking away the wrong conclusions, though, because when I think about how short life is, I think of how Whose Line Is It Anyway? is played. You may recall it’s the show “where everything is made up and the points don’t matter”.
    • It’s Sunday night in Tokyo and I’m in bed rewatching Lost In Translation (2003) on local TV.
  • Week 15.26

    Week 15.26

    I’m looking through my camera roll to remember what happened this week and it’s mostly a bunch of “artworks” I’ve been making. Wait, let me step back: I’ve had an interest in procedurally generated graphics (GenArt) for awhile, and it peaked with the NFT boom of 2021–22, where I spent a relatively obscene amount of money minting and collecting artworks I really liked (not the monkeys). I’m mostly drawn to the idea of mathematically rigid routines producing organic beauty — the contrasts in that, and the unpredictability of what you get when you roll the RNG dice.

    So after my recent experiments in making apps, I wondered if I could get AI to write me code that would generate images based on concepts I described. The answer is, of course, yes! It’s important to note this isn’t prompting for images (like when you use Midjourney or DALL-E), it’s prompting for the math behind making images. And once you’ve created the rules by which it draws different art styles, you can create a nearly infinite number of unique artworks by dialing different variables up and down.

    One example is a “style” I made called Labyrinth, which produces actual, solvable mazes. Depending on the variables you adjust, you can make mazes ranging from tiny to massive, with just one solution, or many. If you asked an image generation AI to draw a maze, it would likely lack the coherence of a real maze, because of the way it operates — focusing on the superficial appearance and not the integrity of its paths. But an AI model can make the math to draw a maze.

    I start most of these by thinking up an artistic production approach, say “take sheets of colored cardboard or acrylic, and punch holes of varying shapes into them, then layer them on top of each other so the holes line up (or not), and randomly spray contrast-colored paint on some of them”. Then I describe the possible variations and variables I want to control to the AI, such as the density of shapes, the thickness of the borders, the ratio between angular and organic lines, and we iterate after seeing some of the results. Just think of all the methods and ideas you might want to play with, and how this lets any old idiot model them on their computers!

    The meta project is that I’ve made a modular app that handles all these different styles for me, whether they require a 2D canvas or WebGL. The app provides a common UI layer that all “styles” can plug into, which allows me to control them. Now that it’s done, I can just focus on experimenting and having fun making new artworks. I daresay a few of these are executed as well as any of those I spent money on.

    I’ll probably release it as a wallpaper generator once I have enough styles built in, if anyone’s interested. But mostly I love having this as a background project that I can dip into, on and off. It allows me to take on other app ideas as momentary “side quests”.

    While making Labyrinth, I showed a maze to Cong, who said “You should do a puzzle maker”. To which I said, “Nah.” And then a minute later… “Although, a daily maze game. Hmm.” It made sense that I could save time by taking CommonVerse’s daily random generation mechanic and combining it with Labyrinth’s logic to make a daily maze challenge. But would it even be fun to trace a 2D maze with your finger and try to solve it? No… so what if it was a 3D maze you had to escape?

    The first prototype took a couple of hours, and I’ve been polishing it for the last few days. I think it’s coming along nicely. I’ll put it out soon, once I balance the difficulty and get more feedback from testing.

    The development of a maze, a maze, a maze… was hampered by a rare bar crawl with Howard and Jussi on Thursday night that gave me a massive hangover lasting into Friday afternoon. When I got home, I was too plastered to care that my vinyl copy of J Dilla’s Donuts had arrived from Amazon US protected by nothing more than a flimsy paper envelope. By the clear light of day I was amazed that they would even do such a thing. The discs are intact, but the sleeve has a bent corner. If I’d ordered from Amazon Japan, I would bet a major internal organ that it would come wrapped in four layers of stiff cardboard, bubble wrap, and a handwritten apology for their carelessness.

    Did I mention we’re going to Japan again? It’ll be a short vacation, in a couple of weeks’ time. Not much on the agenda, just checking in on the state of curry rice and egg sandwiches. Maybe see some nice art. Take some photos.

    Which brings me to the latest betas of Halide MkIII, which I’m very much looking forward to using on the trip. They’ve been progressing the app nicely, and it might be enabling the Holy Grail of iPhone photography workflows for me. Ironically it involves using Halide not as a camera app, but just as a photo editor. You can shoot compact (lossy, JPEG-XL compressed) ProRAW photos up to 48mp with the default camera app, then edit them in Halide to have the same look as their Process Zero photos! What this means: you get all the benefits of computational photography at time of capture, including noise reduction and night mode, but you’re also free to dial it back and get natural, “real camera” photos in post if the scene calls for it.

    As much as I like these side quests, I think making my own photo editor would be biting off entirely too much to chew, so I’m still rooting for these guys to crack it.

    While writing this post, I got the news that an elderly aunt passed away at the age of 93. She had been in reduced health since the Covid years, but by all accounts she went very peacefully and I guess you can’t ask for much more than that after a long life. The extended family’s Chinese New Year routines fell apart in recent years after she pulled back from organizing them, so it was fitting that some of us got to reconnect at her wake on Sunday evening.

    See you next week.

  • Week 12.26

    Week 12.26

    Another busy week, and I’ve been like a caffeinated creature hunched over its keyboard with bloodshot eyes. You may notice I’ve updated the navigation bar on this site to point to a dedicated page listing all my apps. This takes the place of a page that pointed to all my custom GPTs on ChatGPT (that never really took off, did it?) and before that, my NFT experiments. Those are still around, though!

    You may call it AI slop but I’ve generated key images for each of the apps on that page, which I like to think of as analogous to game box cover art, those evocative artistic representations that used to stretch truths to their breaking points, back in the days when games looked like Lego.

    Here they are, just so you can admire them.

    The latest for now is CommonVerse, my daily magnetic poetry app. Give it a go!


    I’m writing this paragraph on Thursday after another failed attempt to stop vibe coding and focus on other pursuits. So far I’ve mostly finished one project and started on another that I meant to leave aside until next week. What is this feeling? This need to actualize a new ability that I’ve always wanted but never had to worry about not having?

    Instead of being able to recognize that I’ve already accomplished a lot, and “taking the rest of the week off” to go watch movies or something, I’m sucked into continually iterating and improving upon these apps like I’m on a deadline. It’s that paradox (mentioned here last May) where new technologies don’t decrease our workloads but only make us busier instead.

    Productivitymaxxers will say this is fine. This is how it’s supposed to be: you can do more, so you work just as hard and get twice as much out of it. Why would you want to work half as much? And they’re not wrong — that’s the engine of progress. But it’s also how you end up making six apps in three weeks and treating it as some kind of baseline rather than a miracle. As predicted, my capability has grown but I got desensitized to the satisfaction.

    The discomfiting shock to the system as I struggle with this resetting of scale, and feeling addicted to realizing more ideas, is an adaptation crisis. Adapting to life at a new speed and learning to balance capability with sensibility. Astronauts and pilots have to train to handle G-forces, in which the G stands for gravitational. I’m suggesting that working with AI has its own G-force, where the G is gratification. You can suddenly manifest many of the things you can think of. That’s a very powerful impulse to get under control. How do you engage with life’s responsibilities, appointments, or your growling stomach, when there’s always just one more prompt and revision to make? After getting home from a few drinks on Friday night, I found myself on my laptop in bed after midnight, fighting with a procedural audio generation engine that wouldn’t trigger drum sounds for any obvious reason.

    The next night I did the same, staying up to 3:30 AM because I had some new ideas that just could not wait. My Apple Watch sleep score is in shambles. But App #6 is certainly shaping up to be my best work. I’m going to sit on it for a whole week and keep polishing, instead of putting it out and moving on to the next one. That’s my strategy for slowing this down — it’s all I’ve got.


    Over the weekend, I also attended an Apple Store photo walk activity on a sweltering afternoon (up to 36°C next week) with Cien and Peishan. I hadn’t done one of these in years, but always keep meaning to. This one was conducted by the staff at Apple Orchard, and was a walking tour of Emerald Hill — which in reality is just a tiny street off Orchard Road. I’ve been there dozens of times over the years, but never saw the details just sitting there in tiles, old paintwork, and ornamental doorframes. Going to a small area with the intention of taking photos, and giving it more time than you’d normally allocate, can be a really fun and creative exercise.

    There’s no reason one couldn’t do this themselves any time, anywhere, of course. But these free ‘Today At Apple’ sessions are a good excuse to get off the couch. The other two local stores have their own programs, and I might check them out someday: Apple Jewel Changi Airport looks at the indoor waterfall, and Apple Marina Bay Sands has a night photography focus.

    Another nice touch is that they’ll lend you an iPhone 17 or 17 Pro if you don’t have one, and they’re incredibly relaxed about handing them out. No paperwork to fill out or deposits to pay. That’s the great thing about Find My protection, I guess. A comment was made that in the UK, those phones would disappear the instant the group left the store — even if just for parts. But they must do these sessions worldwide, so I’d love to know how it’s dealt with.

  • Week 11.26

    Week 11.26

    If you thought I was going to stop after last week’s two apps, I wouldn’t blame you. I’ve been having poor luck staying focused on new hobbies and pursuits over the past year; they all just seem like too much work for too little payoff and I drift off. Vibe coding seems different so far because it lets me start making weird things that I want to see, without being dependent on anyone else’s time or generosity.

    If you think in terms of music albums/careers, then Collagen was the mixtape that I put together to see if I could be a real musician. Urban Jungles was a big leap forward, the debut album, if you will. It had way more polish and was usable by almost anyone (whereas Collagen had what you might call a niche audience).

    Which brings us to the sophomore curse or slump. The second album tends to be over-ambitious, myopically conceived, and underwhelms audiences looking for more of what made the debut good. There are exceptions to this mythical rule, like Radiohead’s The Bends, Lorde’s Melodrama, and D’Angelo’s Voodoo. By this logic, my next app was statistically going to “fail” by being a harder one to get into.

    I ended up making two apps again this week: SkySpotter and Library Supercollider. Each one has a separate page on this site that shows and explains what they are, so you should stop here and go read them before coming back.

    Like a sophomore album, SkySpotter probably reached a little too far. It took the real-time weather data angle from Urban Jungles, added the more complex dimension of real-time air traffic data, and then threw in rendering a first-person 3D world as a bonus challenge. I started refining the concept and prototyping it on Sunday afternoon, and then worked on it for two full days on Monday and Tuesday. I literally forgot to eat lunch, and was still messing with it at 11pm both nights. It was like a job.

    Gemini 3 struggled. The Canvas chat became so long and convoluted that it won’t even load now in the iOS apps — I have to use the web interface. It hallucinated making changes, and introduced new bugs each time I made an improvement. It built planes with reversed wings and nose cones pointing backwards. Working with bugs in a 3D app was so blood-boilingly frustrating that I wanted to give up.

    I actually did give up… on implementing a VR mode for Apple Vision Pro. We got it to half work but the skybox sphere was too far away and would keep turning black. Rather than risk corrupting the working regular version any further, I decided to cut it.

    I’m proud of SkySpotter because it’s pretty damned cool to lie in the virtual grass and watch real planes go by. Even as someone who doesn’t care about planes more than the average person! But it was a technical challenge first and a passion project second. So if that was my over-produced sophomore studio album the label breathed down my neck for, then the next release would be its opposite: a scrappy, self-funded back-to-roots project recorded directly to tape in a Nashville studio over an inspired couple of days.

    Library Supercollider was an idea that came to me all of a sudden after I’d finished SkySpotter. I’d been interested in the concept of cut-up poetry since I was in university (popularized by Brion Gysin and William Burroughs around the 1960s), and I believe it occurred to me back then that someone could make a computer program to cut up and mash two classic texts. I just didn’t know it would be me, twenty years later.

    I expected it would take me the next couple of days to get working, being that it requires the somewhat complex-sounding downloading and processing of entire ebooks in the background of a web app. I didn’t know if it could even be done. So imagine my surprise when I had a working prototype by lunchtime on Wednesday. But between polishing the experience and overcoming download limits with Project Gutenberg servers, I wouldn’t be done until Saturday morning, making it a longer project with different challenges — comparatively less frustrating, more educational.

    I understand that it’s not an app for everyone — you might read a page and conclude that it’s worthless gibberish. Maybe it takes the sort of person who likes abstract art and free jazz. But personally I’m so pleased with this project that I’ve bought two domain names to go with it: librarysupercollider.com and the superior smashmybooksup.com, which I’ll retain for a year as a ‘marketing URL’.

    In all seriousness, I think this is the finest work of my two-week career as a builder of software! The user experience for remixing and reading the resulting texts is brilliant, if I do say so myself. The steampunk UI and animations are completely unnecessary but bring me joy (notice the moving gears in desktop view). I had to come up with caching and proxy solutions to make the app more reliable under load. I even got a little into the weeds: installing node.js and Vite on my Mac, running scripts in the terminal, trying to compile a macOS port to get around problems (eventually unnecessary).

    Even if I were a skilled and experienced developer, I can’t see how I would have made these apps in two weeks; from writing to designing and coding them up, plus preparing documentation and website copy (plus one very dubious video ad). Deploying Library Supercollider to its own domain made the reality click for me, a feeling kinda like publishing your first thing on the App Store. It says: this thing is now real and can be used by real people.

    Then I came across this article in the NYT Magazine, entitled “Coding After Coders: The End of Computer Programming As we Know It”. It notes an interesting inversion of what we’re seeing in other fields — AI is taking away the drudgery of programming and leaving the human, soulful (and fun) parts.

    “The work of a developer is now more judging than creating.”

    In that way, I may not have magically joined the ranks of coders overnight, but I could probably say I’m developing. At my job, I used to direct the form of apps in a way so removed that I could only claim the role of design, but not the larger making. Part of the handwringing in design circles today is precisely about how designing and developing are merging, and soon only making will remain.

    Not everyone will bother to turn their ideas into reality, and fewer still have the experience and vocabulary to prompt polished apps distinct from the models’ averaged-out defaults, but those who persevere will be bringing tools and toys into existence the likes of which you may have been waiting decades to see.

    What’s next? Well, I might have a couple of ideas…

    One thing all this app-making has done is bring me back to my Mac. I usually spend most of my computing time on my iPhone and iPad, but there’s no substitute for a Mac when it comes to managing local files, running scripts and compiling code. I’ve had coders like Michael make this point to me before, but I never got it because I never needed to sync a local repo with GitHub or anything before.

    So a side effect of spending long stretches of time on my five-year-old and long-neglected M1 MacBook Air is that I’m wondering “Why did I ever stop? This thing is great!”

    It’s worth noting that this week Apple’s newly released MacBook Neo has been getting a ton of praise on my social feeds for being an affordable and all-round capable machine at an unbelievable $599 price point. I got a tear in my eye as I read this essay by Sam Henri Gold: “This Is Not The Computer For You” — it perfectly encapsulates what it was like to grow up on computers and teach yourself things, even on PCs.

    Too much screen time is awfully bad for you, so on the weekend I touched some metaphorical grass by taking our niece out to Disney on Ice at the Singapore Indoor Stadium. It’s extremely well-timed, with the world still coming down from Alysia Liu’s gold medal, and Singapore being in the midst of a Disney craze — a Disney Cruise offering has launched after delays and is now at the local docks, with fireworks and drone shows along the bay at night.

    These were Live Photos of some stunts

    I have no deep affection for Disney IPs but appreciate the amount of effort and coordination that goes into making magic, and it clearly works with so many adults into this stuff. What’s interesting is that while ice-skating can get pretty boring after awhile — it’s all the same moves over and over, around a static rink — adding a layer of characters and storytelling works to keep it fresh over an hour and a half.

    Oh, and our niece is 9, and by way of introducing her to the MacBook Neo, I asked her what computer she uses. I swear, her response was not far off the punchline in that Apple ad that everyone but me seems to hate, in which a girl who’s been using her iPad all day for creative things is asked what she’s doing on her computer, and she responds “What’s a computer?” Will iPads become open enough to support kids learning to (vibe) code? Or will nature heal in a post-post-PC revival led by the MacBook Neo? In any case, that ad was prescient.

    Bonus: Steve asks the same question in a different context (around 1:30). You must watch this video, it’s breathtaking. He’s 28 at this point. In addition to confidently describing things like Street View, mobile wireless computing, LLM chatbots, and the App Store, there’s a part near the end where he says “What we need to do is get away from programming. People don’t want to learn programming, they want to use computers.” He was talking about providing more finished software products to customers, because writing custom software was the norm then, but it’s an eerily relevant quote!

  • Collagen

    Collagen

    Use Collagen at usecollagen.netlify.app


    A simple tool for making collages, specifically with album cover art.

    Most collage tools are either bloated with unnecessary social features or too restrictive to be useful. Collagen is a single-purpose utility designed to solve a specific friction: the tedious process of manually sourcing high-resolution album art, aligning it in a grid, and then realizing you want to swap the top-left for the bottom-right. It turns a multi-step design chore into a fluid, drag-and-drop experiment.

    v2.0 screenshot
    Crop to fit a range of new aspect ratios

    Features

    • Integrated Sourcing: Queries the iTunes database for official, high-resolution artwork (600×600) so you don’t have to hunt for covers or deal with low-res thumbnails.
    • Tactile Reordering: Drag and drop tiles to swap positions instantly. The layout logic handles the movement so you can focus on the visual flow.
    • Flexible Dimensions: Define your grid up to 10×10. The preview and export scale dynamically to match your rows and columns.
    • Hybrid Content:
      • Search: Instant API pulls for mainstream releases.
      • Upload: Support for local files (obscure imports, demos, or personal photos).
      • Text Tiles: Add context or labels with custom text tiles. Features automatic contrast (white/black) and a choice between a clean sans-serif or a classic serif typeface.
    • Borders: Toggle between borderless, white, or black frames. The logic includes outer edge padding for a symmetrical, finished look.
    • PWA Architecture: Built to be “Added to Home Screen.” It caches assets locally on your iPhone for faster subsequent loads and works as a standalone app.
    • Export: One-click generation of a high-resolution stitched PNG. It uses a dedicated image-proxy pipeline to ensure every tile renders correctly without the “blank square” errors common in browser-based canvas exports.

    Change log:

    – 14/04/26: Version 2.0


    Disclaimer: I made Collagen with the help of Google’s Gemini 3/3.1 Pro LLM and take no responsibility whatsoever for any damage you do with it.

    Related blog post: Week 9.26

  • Week 9.26

    Week 9.26

    • The featured image above is the result of having Geese’s Au Pays du Cocaine in my head all day. The line about a sailor in a big green boat and a big green coat made me think of Puffer Jacket Snoopy, and of course I had to realize the joke.
    • We got the sad news that Deliveroo is shutting down operations in Singapore. This comes on the back of an acquisition by DoorDash who must have run the numbers and decided that a 7% share of the local food delivery market after a decade wasn’t worth investing further in. We use it all the time and prefer it over Grab and Foodpanda — it is by far the better app and their subscription service is better value for money, but we’ve seen this movie before. It’s like how Uber lost out to Grab; the market doesn’t always choose efficiently.
    • I will probably switch to Foodpanda because Grab as a brand has the same icky halo as, say, Facebook or Spotify.
    • Google released Nano Banana 2, the new version of their hit image generation model. This one is cheaper to run and kind of almost as good as Nano Banana Pro, so they’re making it the default for everyone. Paid users can still access the Pro model, but it’s hidden behind some menus. It’s a regression in quality, a slight improvement in speed, and most importantly, a boost to Google’s bottom line. Since I only do silly things with these tools, it doesn’t bother me tremendously, but imagine the same happening at an enterprise level for more important work.
    Screen recording of an AI panorama
    • One of the new things Nano Banana 2 can do is generate very wide panoramic images, so I asked it to render some “panoramas taken with an iPhone” in various locations. I then upscaled those and opened them in my Apple Vision Pro. They don’t have the photorealistic quality of images from Nano Banana Pro, and the resolution leaves a lot to be desired, but they’re still immersive and impressive when viewed in this way. You can see where this might go.
    • There’s been a lot of talk lately about how AI vibe coding could upend the SaaS market, if not replacing dependable enterprise tools with individually created ones, then at least giving IT departments a billion more unapproved apps to worry about. A viral essay from last week posited that AI coding could kill DoorDash, though I’d say they did a good job of that themselves out here. The other oft-discussed idea is that AI could replace the App Store, and everyone will just make their own apps instead of buying them from developers. Michael has been blogging about vibe-coding his own to-do list app based on Clear. I’ve been wanting to try this myself, making more little tools of my own to solve niche problems, but the opportunities have been slow to materialize.
    • This week the right idea presented itself and I made a web app using Gemini: an album cover collage maker that searches for the artwork or lets you upload your own. I’ve looked online for something like this before but only found a few that were quite lacking. Making one to my own specifications took maybe five minutes of prompting and testing. Then I thought it would be nice if you could drag the images to different locations. Gemini added that feature like it was nothing. I’m pretty hyped that even someone like me with zero current coding knowledge could will this into existence. If you’d like to try it, I’ve deployed it at usecollagen.netlify.app.
    • Otherwise it was a sort of decompression week where I just read a lot, listened to the records I bought/ordered last week, and was regrettably glued to my phone watching day trading losses (Chekhov’s gun has fired!) and social media feeds.
    • It took a couple weeks of dawdling but I finished John Le Carré’s Call for the Dead, his first novel featuring the spy George Smiley. I may continue reading the series, seeing as his son Nick Harkaway (whose work I really enjoy) has decided to continue his father’s legacy and written one more already: Karla’s Choice. This one was a little dated and not particularly thrilling, but a fine introduction and scene setter.
    • It was immediately followed by Adrian Tchaikovsky’s The Expert System’s Champion, sequel to The Expert System’s Brother which I read at the end of last year. I recommend both as examples of sci-fi stories set so far in the future that humanity has looped back around to the beginning. It reminds me of the “middle chapter” in Cloud Atlas, if you remember that.
    • Then I read Hu Anyan’s I Deliver Parcels in Beijing, a modern memoir that reportedly did well in China when it came out in 2022. It details the author’s dual career as a writer and on-and-off gig economy worker, which is made more interesting by also being a portrait of what it’s like to live in the lower brackets of Chinese society today.
    • I also had time to tackle Rob’s recommendation of Marlen Haushofer’s The Wall, which was written in the 1960s but doesn’t feel that way, unlike Le Carré’s spy novels. He called it the best book he read last year, so I could hardly say no. It starts off like an intriguing sci-fi novel: a woman visiting friends in the Austrian alps wakes up one morning in the log cabin to discover she’s alone, and there’s an invisible wall separating her from the outside world. Things then focus on survival and what it means to live and be human in solitude, and in nature. Which, given that I’ll be home alone next week while Kim is away again for work, means I’m already in the appropriate headspace.
    Some of the better books I’ve read this year
  • Week 6.26

    Week 6.26

    • A quick follow-up on one of last week’s topics: it turns out that some posts on Moltbook may have been faked because there were security holes allowing people to get on there and post directly (instead of being a bot-only place as promised). Doesn’t change the main point that future agents will collaborate not just on one computer, but sync up across wide networks with effects most of us can’t fathom. Look at the crowd that gathered to discuss Clawd a couple of days ago, to see how much excitement there is for this box that says Pandora on it.
    • I’m too tired to dwell on this much more today! Keeping up with the AI space is still a full-time job, and I’m not going to try. But Claude Opus 4.6 was just released, along with demos of what it can do in Cowork mode, which is very impressive if true. Apparently these models are also able to tell when they’re being evaluated by safety/alignment teams, which makes it very hard to know how they’ll really behave in the wild. Look at this example where a model can infer the user’s cultural background with just a few words, owing to the words they choose. These are tools, except other tools don’t do things like this.
    • I read a fantastic sci-fi short story that sort of involves AI: Julia, by Fernando Borretti. If you also enjoy fiction that drops you into a context and makes you swim, and then shows you strange and beautiful ideas as you break above the surface, you’ll love this. Like how China Miéville uses ornate language in The Book of Elsewhere to suggest Keanu Reeves’s… I mean the protagonist’s immortal, mystical otherness, Borretti uses a dense, intellectually dominating host of references here to illustrate the POV of an artificial mind at the end of humanity’s time. I haven’t stopped thinking about it.
    • What will we do when all the jobs are gone? A young entrepreneur in our neighborhood has started a home-based business selling smashburgers, and we bought some for dinner midweek. They were good, and I’m slightly afraid of what this proximity will do to my waistline. For those unaware, this was a bit of a trend last year and local media outlets like ChannelNewsAsia ran stories (example) about how such businesses were springing up as a result of low employment opportunities and rising rents.
    • Retreating further into the virtual world is another option. A bunch of new experiences became available on the Apple Vision Pro recently, and I caught up with some of them. The cutest is an immersive documentary on Apple TV called Top Dogs (two 15-min episodes), which looks at the annual Cruft’s dog show in Birmingham, UK. You get really up close to some of these beautiful animals, and the urge I felt to reach out and pet them was extremely strong. It wouldn’t be the same seeing this on TV. Here you get a sense of their size and presence, see them in incredible detail — everything but smell them. Apparently there are 25,000 dogs at the convention center each year, but I imagine these are all shampooed and much more pleasant than your average wet dog.
    • There’s also Retrocade, a game on Apple Arcade that uh… simulates an arcade. The game is playable on other devices, but on Vision Pro you get life-sized arcade cabinets standing in front of you, playing licensed retro titles like Space Invaders and Bubble Bobble. The only thing that breaks the illusion is of course that you can’t reach out to grab the sticks and mash the buttons. Instead, you have to use a connected game controller.
    • Speaking of emulating old hardware, I played and finished a game on Switch (also available on PC) called The Operator. It’s one of those where the entire UI is a computer’s desktop and you have to chat, look into files, and do hackery stuff to experience the story. I think this can be filed along with the other murder mystery games I’ve played lately. It’s fairly short at under four hours, almost completely linear, and not something you’d play twice. Wait for a sale, I think.
    • You know who else is a hacker? The lead character in Apple TV’s Tehran, a show that came out in 2020 and has since been renewed for a fourth season. We watched Episode 1 back when it came out, liked it enough, but for some reason completely forgot to go back until this year. It’s been topping the charts lately, maybe because of the recent civil unrest in Iran. Having just finished Season 1, I can say it‘s a really good espionage thriller, and we’re keen to keep going.
    • Oh and check this out. Someone has managed to license Isaac Asimov’s Foundation series and made a free-to-play (i.e. shitty) mobile game: Foundation: Galactic Frontier. It even has an Apple TV logo appear on startup?! And the next day, I saw this insane animated ad for it pop up on Instagram and couldn’t believe my eyes — I took a screenshot to prove it. In all fairness the actual game isn’t anything like this, it’s just a heinous misrepresentation that probably has Asimov spinning in his grave.
  • Week 4.26

    Week 4.26

    Trump spoke at the WEF in Davos, and we watched it live despite wanting to turn it off many times. I intermittently tuned into Bloomberg TV over the week to try and keep up with all the repercussions. It’s something I haven’t done in a while, and the memory of watching last year’s Davos coverage came back clearly — has it really been a year? Time flies when you’re watching chaos porn.

    My main accomplishment for the week, in which admittedly little else happened, was acting on an impulse to make a sardine-themed t-shirt. If you were here back in Weeks 49 and 50 of 2025, you’d know they’re kind of my current food obsession.

    How sad I was, then, to discover that canned fish has actually become a trendy thing now. Read this piece on the Taste Cooking site about how it’s hit the mainstream and now faces a backlash. It turns out that Big Sardine has been aggressively courting women. See the pretty illustrated boxes and tins coming out of Portugal and from new brands like Fishwife; they’re perfect for social media. As a result, prices for what was once a humble working man’s lunch are soaring.

    Sidebar: As a man on the internet, you have a non-zero chance of being targeted for red-pill radicalization by algorithms, and it’s something I try to be hyperaware of and on the lookout for on platforms like Twitter. Despite that, at one point this week I was told by friends that I’d said something borderline manosphere-y. It was an observation that dating someone older and wealthier in your 20s could lead to lingering lifestyle inflation (spending above your means, simplistically) after you broke up with them. And seeing how women date older more often than men, I thought it might be another reason for the statistical gap between men and women’s retirement savings (alongside lower wages, caregiving duties, parenting). I just want to record this observation in case you notice me starting to blame women for all of society’s ills.

    But back to the t-shirt I was talking about. I had the idea to draw a sprat, which is a species of fish commonly grouped under the sardine umbrella. I wanted to place it under with its Latin scientific name, Sprattus sprattus, on a black tee. I also had a mental image of what the lettering would look like, and managed to bring it to life with my own two hands (and an iPad). I’ve ordered a couple of shirts from a print-on-demand service for myself and Kim, thinking that maybe if they looked good and I felt like having more problems in life, then I could try selling some online.

    As soon as I had that thought, I got excited and started mocking up a product page. I had a defunct Etsy store for my Misery Men project, so I renamed it “Maison Misery” to serve as a brand for all of this as-yet unrealized merchandise.

    Next, I wrote up some funny copy for the sprat shirt, and then decided to put Gemini through its paces as an assistant copywriter to improve it. I wanted to spend more time with Gemini given this week’s rumor that Apple might not only use Google’s technology for the Apple Foundation Models powering New Siri, but also for an integrated chatbot debuting in this year’s OS updates.

    And yeah, it’s really not looking good for junior copywriters. Five seconds after being given the brief, Gemini came back with three options that made me laugh and then compliment it with “Fuck me, these aren’t bad!” Now, each one wasn’t really usable on its own, but there was enough there that I could cobble together a good result along with what I’d already written. And that’s really all a creative director wants a junior employee to do: produce a range of half-formed ideas to pick through and refine. Unfortunately for humans, the fastest and cheapest LLMs today can already do that for things like product descriptions. And they’ll be running locally on your iPhone by the end of the year. This would be great technology if we had a shortage of copywriters, but instead we have a surplus, all looking for work.

    But since I’m the writer Maison Misery is replacing with AI, it’s okay? Here’s the augmented final writeup that I’ll put next to this t-shirt.

    At Maison Misery, we believe in celebrating the small things — mostly because the big things are too overwhelming to think about. Enter the sprat or brisling: a tiny fish harvested in its delicate youth, then tucked into cozy tins of extra virgin olive oil to dream of the Portuguese coast. These are the fancy ones you bring out to impress a date you’ve just brought home. If they don’t like the ‘deenz’, then that’s a bullet dodged.

    This original tee pays homage to Sprattus sprattus with a hand-illustrated and lettered design placed over the heart, providing a conversation starter for marine biologists and a conversation stopper for everyone else. It’s a way to wear your passion for canned sardines on your sleeve, though technically we put it on the chest because sleeve printing is prohibitively expensive and we have a lifestyle to maintain.


    Media activity

    • Netflix pushed the show His & Hers onto us last week, claiming it was an “addictive” thriller. I say give it a miss, because I can’t remember a damned thing about it today. Instead, their self-declared “top tier” thriller The Beast In Me, starring Claire Danes and Matthew Rhys, is a much better production. We finished it over the weekend, and while it’s no timeless classic, I’d agree it’s what you would find on the upper shelves if Netflix were a Blockbuster.
    • I watched the French animated film, Mars Express (2023) and came away very entertained. It’s a sci-fi story about robot/AI rights, a murder that defies the Three Laws, uploaded consciousness, and so on, borrowing from many existing works while having enough original ideas to justify itself. It premiered at the Cannes Film Festival, and doesn’t seem to have gotten wider attention since. Check it out if you can find it.
    • We also finally saw Brendan Fraser in Rental Family (2025), a Japan-through-American-eyes sort of film that doesn’t come close to capturing Lost In Translation’s magic, but has enough heart to reward your time. Fraser plays a down and out actor living in Tokyo who falls into a job playing stand-ins for people who need to tell white lies. Except some of them are kinda gray. I appreciated how the film leans into the moral ickiness of these assignments and rejects smoothing them over completely.
    • I swore I wouldn’t buy any records this week, and lord it was hard. J Dilla’s Donuts album went on “Limited Time Sale” on Amazon, dropping about $15, but I still didn’t cave! It’s in my cart, though. Instead I played some vintage cuts from my dad’s collection: War’s The World is a Ghetto and Rudolf Serkin’s Beethoven Piano Concerto No.5 with the New York Philharmonic.
    • If you want to know how close AI-generated music is getting to turning out radio-friendly bops, check out this album I came across by Japanese technologist Tom Kawada. I don’t think many people would realize what it was if they heard it in the background of a store, or a movie scene, or their own living rooms.
    • Then, to restore your faith in the messiness of human artistry, watch the new HBO Music Box documentary, Counting Crows: Have You Seen Me Lately? It covers the creation of their first two albums with a focus on Adam Duritz’s struggles with fame and mental illness. AI will probably write a chart-topping hit this decade, but can it ever write A Long December?