Tag: Music

  • Week 19.26

    Week 19.26

    Brian was kind enough to think of me when he had an extra ticket to see Kraftwerk at their one-night-only local show on Friday. I was not even aware they were still alive, let alone touring. Turns out it’s just one co-founder left holding the project together, Ralf Hütter. After some drama with the tickets — for a moment it seemed like we might not get in — we were treated to an hour and a half of classic electronica.

    One effect of having a discography that spans five decades is that the music varies to an extreme degree. Their early material is rigid, with an almost classical approach to using synthesizers. Everything builds without resolving. This was electronic music before The Drop was invented. But Kraftwerk are necessarily more important than they are fun, which I mean as a compliment. Seeing where the structures and traditions originated helps you understand why what came after sounded so liberating. Their newer material has more swing, more layers and polyrhythms. I think Computer Love and the stuff from that era was my favorite of the night. As Brian said, it was a once-in-a-lifetime experience to see these OGs in action, and when I listened to Daft Punk’s Discovery on the way home I heard it differently.

    The week was also marked by a dentist appointment I’d been dreading for awhile. It was just to get a filling done, but I was told there’d be an injection and drilling involved. The visit was a rollercoaster: it started with an x-ray and the suggestion that the cavity might be in a difficult to reach location, and ended with a closer inspection (in which an injection and drilling were sadly involved) that found… no apparent cavity after all. The tooth has now been sealed with some material that will surely leak microplastics into my mouth, and we’ll monitor it over future x-rays to ensure there wasn’t really anything going on in there. Fingers crossed.

    In other sad news, Amazon Singapore has decided to sunset their Amazon Fresh grocery delivery service. It’s not my main source, but I appreciated their “free” (with Prime) next-day delivery and used it maybe every 4–6 weeks. Lately, they’ve been a primary source for sardines, pasta, and ice cream, if you wanted to know how balanced my diet is. The evil multinational corporation giveth and taketh away.

    I’ll still keep subscribing to Prime though, because it’s letting me do terribly wasteful things like see English language editions of Brutus magazine while in a Tokyo bookstore last week, decide that I don’t want to carry them around all day and get creased, and so order them online for delivery to my home a week later — for virtually the same price. High off the Snoopy Museum visit, I also ordered these two big, lovely Made-in-Japan mugs that will be my daily tea delivery vessels.

    Kim got me a copy of My Beautiful Dark Twisted Fantasy on vinyl for my birthday but it’s only just arrived. I have yet to play it, but the artifact is heavy, substantial, important. It’s no exaggeration to call it one of the best albums of all time, and I think it’s consistently raised my goosebumps for the last 15 years.

    Peishan and James also got me a couple of records, and one of them was a Record Store Day ‘preview’ of two tracks from some upcoming John Coltrane releases that were not on my radar. The Tiberi Tapes are a legendary collection of secretly recorded live sessions of Coltrane in the 1960s, made by saxophonist Frank Tiberi. The recordings were imperfect, but new digital technology has made them fit for release, and Impulse Records is set to unleash a bunch of them soon (it’s Coltrane’s centennial year).

    A few weeks ago, I released Orchids, Once. and several people independently told me that the procedurally generated music was good for having on in the background while they worked. That gave me the idea to make something designed to sit in a browser window on a second screen (or in the background) keeping you company throughout the work day with music and visuals.

    My first idea turned out to be too ambitious — way beyond my current abilities in terms of graphics and animation. I got a prototype working but it wasn’t worth going further. So I pivoted to a new idea yet again leveraging the orchid models I’d already made to get started quickly.

    Window Box is the result. It simulates looking out the window of an apartment, seeing a planter box of flowers set outside the windowsill. I’ve never actually seen one of these in real life; I think I first encountered them on Sesame Street as a kid and thought they were cool.

    You can currently choose to be in Singapore or Honolulu. There’s dynamic real-time weather and lighting pulled from the Open-Meteo API, to reflect current conditions in either location. There’s an incredibly beautiful (if I do say so myself) rain animation system, along with environmental sounds. I also came up with a neat blending technique to transform the photographic backgrounds to reflect time of day and weather.

    Instead of doing more procedurally generated music, I decided people would want real music, so there’s a radio tuner with a handful of curated stations. That includes Apple Music Radio just because I think more people should listen to their shows! There’s also a great Hawaiian station, KAPA-FM, which is a treat when you’re using the Honolulu location.

    And just for you readers of the regular blog, here’s a hidden feature: click the app title in the top left 20 times and it’ll unlock bird sounds to complete the scene.


    Media activity

    • We watched Season 2 of Beef on Netflix. I was primarily excited for the casting of Carey Mulligan, Cailee Spaeny, and Oscar Isaac, but wasn’t keen to see more of the same petty adversarial conflict from the first season. Well, be careful what you wish for — my chief complaint is that it has so little connection to the first season and the concept of beefing, that I think it should just have been a different show. This one raises the class warfare stakes tremendously, goes much darker, and then ends in a tonally unexpected way. Maybe the best Netflix Original in awhile.
    • I’ve been playing more Path of Mystery: A Brush with Death, the new Japanese murder mystery adventure game on Switch that I mentioned back in January. It’s an above average game for the genre, and I’d readily recommend it. The chapters are structured and presented like television episodes, which makes it perfect for playing in a couple of short sessions. Each one opens and ends with (skippable) animated credits, and there’s a short “next time on…” video afterwards to give you a preview of the following episode. I haven’t seen this done before, and it adds to the enjoyment of the story that is both interesting and occasionally funny.
    • Speaking of episodic anime, I got back into Frieren to try and finish the first season now that a second season is out. Previous episodes were pretty easy to space out across large spans of time, but the final arc with the First Mage exams is surprisingly addictive and bingable. I watched the last 11 episodes in 24 hours. I’m not one for fantasy settings but Frieren is brilliant — especially how it explores the perspective that comes with a longer lifespan and outliving all your friends.
  • Window Box

    Window Box

    Your browser window with a view.


    Open up at windowbox.sangsara.net

    Some apps demand your attention, but Window Box just sits in a corner, keeping you company.

    It simulates a flower planter box on a high-rise window sill, with a blurred city view behind it — the way your eyes naturally see when focusing on something close. The plants are procedurally generated, so no two are exactly alike. The weather is real. When it rains in Singapore, rain runs down the glass. When the sun sets in Honolulu, the light shifts warm and the city outside drops into shadow while the flowers stay lit from inside.

    It is designed to live in your browser across a long work day, maybe on a second screen — something to glance at between tasks, the way you might look out an actual window if you had a great view. Because most people like to work to a little music on the radio, a tuner with curated stations including Apple Music Radio and Monocle Radio is built in. For fuller immersion, turn up the audio generator for wind and rain sounds that match what’s happening on screen. It’s inadvertently a fantastic rainy mood machine.

    Two locations are available: Singapore and Honolulu. Each brings its own botanical palette and skyline. If you live in one of these cities, it functions as a virtual window. If you don’t, it’s a portal into a part of the world where it’s always warm.

    New! Added Tokyo, with winter effects and botanical changes (13/05/26)


    Related blog post: Week 19.26

  • 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.
  • Orchids, Once.

    Orchids, Once.

    A meditation on impermanence.


    View the digital artwork at https://orchidsonce.xyz

    Almost every orchid you’ve ever seen was intentionally bred — a slow accumulation of crossings, selections, and genetic accidents that produced something new. This is the same process, compressed into a digital instant. Every visit generates a unique specimen: structure, colors, and proportions assembled from code the way a real orchid is assembled from DNA. No two will ever be alike.

    As it turns in the light, you’ll hear music shaped by the flower’s appearance — the soundtrack itself is a one-time miracle, as unique as the visuals on your screen. Its presence completes the meditation.

    When you close the window, the orchid dies. There is no save state, no gallery, no record of what you saw. Each plant lives only as long as you stay. If you weren’t there, it wouldn’t exist at all.

    There is always another one waiting to grow — but not that one. Never again that one.


    Disclaimer: I made Orchids, Once. with the help of Gemini and Claude LLMs, and take no responsibility for any allergies or other harms.

    Related blog post: Week 16.26

  • 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.

  • DataDeck

    DataDeck

    Introducing the DataDeck SG-01.

    Turn on, tune in, and nerd out at datadeck.app.

    Singapore generates (and publishes) an extraordinary amount of data about itself — temperatures, taxi coordinates, dengue clusters, carpark availability, ticket sales at major attractions. Numbers that civil servants read in spreadsheets and the rest of us ignore entirely. The DataDeck asks, “but what does it sound like?”

    Each Data Cassette draws live government feeds from data.gov.sg and renders them as distinct genres. There are ten cassettes in all, each with their own acoustic logic and ways of interpreting the city.

    The Climate cassette pulls real-time NEA temperature and humidity readings across 12 geographic sectors and converts them into lo-fi hip-hop — with chords deepening as humidity climbs, and the scale drifting toward Lydian as the heat rises. The Transport cassette tracks unoccupied taxis plying the streets and generates a relentless 303-style midnight techno. HDB carparks become polyrhythmic Afrobeat, and the movements of the stock exchange drive a satisfying hip-hop groove. Get money y’all! Check out the sound of visitor arrivals during the COVID years: like musical crickets.

    The controls? Three knobs shape density, tempo, and atmosphere. A mix fader redistributes the instrument balance. AUTO mode hands navigation back to the machine. There’s a user manual built in, should you get lost.

    It’s a music player with no music files. It’s a data dashboard you can close your eyes to. It’s Singapore, rendered in sound. Put your headphones on, and press play.

    Pro tip: If you really love DataDeck, you can save it to your phone’s Home Screen, which gets you a nice icon and a full-screen mode that shows the whole device at once without distractions.


    Disclaimer: I made this with the help of Gemini 3.1 Pro because I’m just an old designer who hasn’t coded stuff since GeoCities. I take no responsibility for any damage you cause yourself or others with this. Thank you.

    Related blog post: Week 13.26

  • Collagen

    Collagen

    Use Collagen at collagen.sangsara.net


    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

    – 14/05/26: Increased export resolution, non-destructive cropping.


    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 collagen.sangsara.net.
    • 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