Tag: Design

  • Week 34.26

    Week 34.26

    • I pushed through and finished the 460-something pages of The First Fifteen Lives of Harry August, which at some points felt like it was going to earn a 3-star rating, but I had to give it 4 at the end on account of its ambition and scope. It felt like I’d emerged from a long and arduous time war myself, so I’d say it succeeds. I’ve probably burnt myself out on too many stories of the same sort now, so the next book will have to be quite different.
    • I met Stacy for lunch and we caught up in person for the first time in how long? There’s a 21-year gap between her last mention on this blog, from around the time I got back from university, till earlier this January when she pointed me in the direction of a record sale downtown. So yeah, pretty long and the conversation definitely made us feel old. Besides filling in the blanks on what’s happened in all these years, we talked about the benefits of long sabbaticals and the weird things older people are using AI tools for. I honestly had not foreseen some of these use cases (ask me if you want to know). Meta is enabling some very sad and cyberpunk behaviors by putting generative video models in Facebook and WhatsApp.
    • Over the weekend Kim and I visited an “exhibition” on the impact of AI on design, with James and Peishan — more accurately, it purported to explore ‘the life and death of the human soul in design’. I’ll just say it was very poor as an exhibition: imagine a long academic essay printed in small type, set in center-aligned paragraphs, pasted up on the wall in a tight U-shaped corner of a bookstore. Packed with people trying earnestly to read it, the line didn’t move an inch in five minutes. The text was on sale as an S$18 booklet — clearly the intended format — meaning the wall space was completely wasted. It should have been used to provide a visually compelling (and more readable) snapshot of key points. A truly awful experience for something under the heading of design.
    • Reflecting on this, I’ve come to recognize that the role of design under capitalism is chiefly to provide products and services with competitive differentiation and positioning. The widespread support of human-centered approaches lately has less to do with altruism and more with a fortunate (and temporary) alignment with commercial goals. It’s become obvious that in the pursuit of optimization and convenience, in the name of improving user experience, digital product designers have been directed to unleash some absolutely demonic socio-technological forces. Design itself is not inherently a human-centered pursuit or practice — it can be used to center any number of priorities or doctrines. The human soul (i.e. the desires and values that we as customers/citizens/individuals put out into the world and conversely seek out in others) must continuously find a healthy host that capital will agree to feed and clothe, and now under AI, Design looks like a used-up orphan days away from being on the streets. I think it’s more interesting to ask where else the human soul can find refuge — what unlikely organisms might become new hosts for the creative impulse — rather than mourning the death of design.
    • I had tamales, I think for the first time. We met for dinner to celebrate three August birthdays last night, at Mami’s Tamales in the Keong Saik area. Going in, I expected them to be made with a stretchy, sticky consistency not unlike the Teochew soong kueh (which I hate), but it’s really just a polenta skin that’s kinda like firm mashed potatoes. They put avocados on everything there, and their guacamole was excellent: aromatic and creamy. I would go back.
    • I saw Spider-Man: Brand New Day (2026) in a theater and it was much better than the ratings had led me to believe. Yes, it’s more Marvel slop and I’m so over it, but I’ll always have the softest of spots for Spidey. Tom Holland gets my vote for the best person to ever play the role. Of all the films, this one felt the most connected to Insomniac’s videogames, partly because it lifts many signature fight moves and cinematic web-swinging camera moves from those games. It’s made me plan to finally play Spider-Man 2 on the PS5 in the coming weeks.
    • I saw Amores Perros (2000) on MUBI and got the shock of my life when I realized the young love interest Susana was played by the same woman who plays Maximo’s mom in the Apple TV series Acapulco (Vanessa Bauche). Goddamn, 2000 really was a long time ago.
    • Music discovery of the week: Puma Blue’s album Croak Dream. I haven’t heard his back-catalog yet, but this London-based musician (real name Jacob Allen) was supposedly a bedroom R&B artist who’s now veered into trip-hop territory with this new album. It’s glorious stuff. The title track evokes OK Computer-era Radiohead, but that’s really a compliment and not an accusation.
  • Week 32.26

    Week 32.26

    • The dentist frowned at the stains. “These have come back very quickly since your last cleaning”, she said. Well, I do drink a lot of black tea, like maybe three or four big mugs a day, I explained. “That will do it. If you see the inside of your mug getting stained, that’s happening to your teeth as well.” I don’t know why I never thought of that before. So now I have to either switch to green tea or alternate between mouthfuls of English Breakfast and plain water, because somehow even my Oral-B electric toothbrush isn’t scrubbing these out.
    • The contractor frowned at the stains. “We can try to do another round of waterproofing on the roof, but if the water seepage continues after that, you’ll either need to do PU injections in your ceiling or call in a structural engineer.” This temporary solution offered a glimmer of hope, but I’m not looking forward to having our ceilings hacked and drilled and molested if there truly is a structural issue.
    • Look, I’m in no way (in no way!) equating my troubles with those faced by the prisoners at Auschwitz, but as I read Viktor E. Frankl’s Man’s Search for Meaning this week, I found some comfort in his words — essentially perspectives from an explorer who traveled farther into human suffering than any of us will ever know in our lives, like a psychological astronaut… psychonaut? I cannot imagine going that deep into darkness and reemerging intact. But the human mind (or at least some) is incredibly resilient and/or adept at self-preservation. He writes of their return to society after the war:

    But for every one of the liberated prisoners, the day comes when, looking back on his camp experiences, he can no longer understand how he endured it all. As the day of his liberation eventually came, when everything seemed to him like a beautiful dream, so also the day comes when all his camp experiences seem to him nothing but a nightmare.

    • I finished reading Gabrielle Zevin’s Young Jane Young. The only other book I’ve read of hers was Tomorrow, and Tomorrow, and Tomorrow, which I loved whole-heartedly, and I’m glad to report that this one was also a minor masterpiece. The subject matter (a political sex scandal) didn’t appeal much to me at all, but her characters, and their dialogue and humanity, were wonderfully handled. Movie trailer voice: “It’s a story about family, friendship, and second chances.” 5 stars, and it goes on my shelf.
    The famous design process squiggle diagram
    • On Thursday I met some young entrepreneurs exploring product and service spaces that they might be able to play in, especially now that the availability of generative AI tools can amplify their talents. I came away impressed by how much drive they have, and was also reminded of how vital the quote-unquote design process can still be in an age where building happens in parallel with ideation. There’s so much value in “slowing down to speed up” in the early stages, as my friend Ted likes to say, and you can save not only time, but now tokens too, with more upfront research and problem selection before committing to code.
    • Kim and I had a choice between an ‘omakase’ yakitori dinner and a visit to Barrel: Story of Hibiki, which seems to be a Suntory-operated or at least Suntory-blessed restaurant that makes use of their Hibiki Harmony Japanese whisky in several recipes. I like yakitori fine, but associate it more with, I dunno, prices that aren’t S$280 a person before drinks?? So Barrel it was, and it was pretty great. Their simple vanilla ice-cream topped with a Hibiki-infused honey and Maldon salt might just be the best soft-serve I’ve ever had.
    • I passed a few hours playing Lumines Remastered, which has now been launched on mobile with controls that are quite usable. Friends will know that I consider Lumines to be one of my favorite game franchises, almost the equal of Tetris in its ingenuity, replayability, and ability to induce a blissful flow state. I’ve bought every one of these games multiple times, on every platform I can (Java featurephones, Symbian smartphones, iOS, Xbox 360, PSP, PS Vita, PS4/PS5, Switch). For S$9.98 (the first few levels are free), I can recommend the new iOS port if you’ve never played it before or don’t have access to a game console.
    • It was also Singapore’s 61st National Day over the weekend. This time, there were three songs instead of the usual one. I didn’t like any of them, and one in particular tried to strike an optimistic note but its titular refrain, “You’ll be okay”, works like a counterproductive doubt-caster. Like saying don’t think of an elephant. Were we not going to be okay? Why are you saying that?
    • It was a big week in proper music: my DOMi & JD BECK record arrived, and they announced two amazing things. 1) They’re coming to Singapore on Dec 1, and 2) there’s an instrumental version of the album coming soon. Those were both of my wishes to Jazz Santa. Thanks, JS, you’re the best.
    • ROLE MODEL also released his new album, Chuck Timely & The Hourglass, which is transparently about being a pretty fuckboi who’s now nearing 30 and still single while all his friends are getting married, and I love it. The sound is fantastic, a sort of alt-Americana piano rock from the good old days of Springsteen, Petty, and Fleetwood Mac.
    • Also, a new album from The Mountain Goats! Days is classic stuff, with better production values than ever, and a Weezer-like song about touring with the band Candlebox that has what it takes to be a hit single.
    • But the highest highlight for me has been Tricky’s new album, which I put off listening to for a few weeks. I said to myself I needed to hear it “in the right conditions” but really I think I was afraid it would suck. I ended up putting it on while on the train. It does not suck. It does not suck so hard! It’s as good as anything he put out after the first two albums of his career. Pitchfork points out that when Maxinquaye dropped in 1995, few would’ve bet on Tricky still making records three decades later — yet here he is, having outlasted Portishead (Third came out in 2008) and Massive Attack (16 years without an album), turning out what they call “a record of pointed modern blues that suggests an artist still driven to create.”
  • Week 28.26

    Week 28.26

    • I’m not usually the clumsiest person in this household but I got my turn this week when I slipped on the stairs (wet feet) and fell/slid down to the bottom, on my bottom. Fortunately nothing seems broken, and the bruises aren’t visible, but it hurts! I narrowly avoided landing on my tailbone and took most of the impact on my left side, shoulders, and hands. My first thought was, “if I was in my 70s, this would be real bad.”
    • Ex-colleague Jianjia was in town for a short stopover and we met up for a coffee on Tuesday. She’s about to make a big move across the world, so it will probably be many years before we meet again. Although we last saw each other two years ago, meeting her this time reminded me of the people we were back in 2017, and how much has changed. I think we’re both calmer, a little more jaded, but less to prove.
    • Afterwards I decided to bite the bullet and go watch Supergirl (2026) at a nearby GV theater. I’ve seen talk online about how it’s bombing and people are unfairly blaming Milly Alcock for it, and it’s another example of misogyny among comic book nerds or Hollywood or whatever. I can tell you that the movie has problems and none of them are her; she’s fantastic to watch and brings most of the life to be found in this dreck. I mentioned last week that Craig Gillespie directed this, but I don’t see enough people blaming him. It’s a film that not only fails to carry the baton that Superman (2025) passes it, but fails to achieve anything of value cinematically. It’s a pastiche of boring plot points and cliches. Its needle drops and beat ‘em up fight scenes lack emotional impact. Jason Momoa doing an impression of Jack Black is probably the second best thing about this film. 2.5 stars.
    • After that I came home and fired up the MUBI app like a thirsty man crawling towards a desert oasis. I decided it was finally time to watch the first of Krzysztof Kieslowski’s Trois Couleurs series: Three Colors: Blue (1993). No point saving all the good films for someday that never comes, because you never know when you’ll fall down the stairs and break your neck. Maybe it was the contrast whiplash, but what a glorious experience it was. In its first five minutes, it does more than Supergirl manages with a hundred and eight. 5 stars!
    • Not having learnt my lesson, I agreed to watch The Devil Wears Prada 2 (2026) with Kim on Saturday. It was okay, but a far cry from the fun of the first film, too focused on making current moment social commentary but then (unintentionally?) winds up being a downer because it can’t find a silver lining to this shit cloud we’re in. The only way to stop a billionaire is… begging another billionaire. There is a moment near the end that echoes the first film’s resolution where Andy reminds herself Miranda’s life isn’t worth what it costs, but any anti-work sentiment is swept aside and nullified almost as soon as it lands. Miranda’s victorious closing line, “I love working. I really do. Don’t you?” is one hell of a message for the establishment to lob at the general public; a naked admonishment from those boomers who complain “nobody wants to work anymore” without bothering to ask why that is. 3 stars.
    • You know what else was gross? The actions of ex-Apple design team leads which were revealed in a suit filed against them and their current employers OpenAI/io. I’ll leave you to look them up on your own, but I didn’t think it was possible for me to have even less respect for that group than after Jony Ive appeared in his partnership announcement video with Sam Altman. Ive isn’t named in the suit, but whether he knew what his closest lieutenants were doing or just has terrible judgment about who to partner with, it doesn’t look great. What is the point of all that money which lets you do anything you want, if what you choose to do is unethical and stains the only name you have? Absolute loser behavior.
    • I suppose my latest coding project also has something to do with “copying”, if just barely. It’s called Subconscious Samples, and borrows conceptually from the Subconscious Heirlooms series of drawings I made a couple of years ago. The idea is that your mind is always noticing and storing lots of visual patterns and ideas without you knowing it, and when you draw ‘mindlessly’ in a state of flow/play, some of them will emerge. This new software attempts to replicate the process, with a more transparent brain. You add some images, extract contours and shapes, and then it’ll compose new abstract forms out of them, in 2D or 3D space. I’m almost done with it but am still undecided if anyone but me will enjoy having a go.
    • The Rolling Stones’ new album Foreign Tongues is out, and I’ve been listening to it over the week. There are some good songs here, and it’s astounding how good they still sound. One of the comments on the music video (below) starring Anya Taylor-Joy and Charles Melton notes that she was born when the Stones were already 34 years into their careers, and that was 30 years ago. I’m in the middle of the hour-long Zane Lowe interview they’ve done, and hope to be even half as lucid as Mick Jagger is if/when I get to 82.
    • I may have lost a sticker collection when I upgraded my laptop a couple of weeks ago, but I’ve already got some new ones going from my last visit to the B-Side Label store and Village Vanguard in Shimokitazawa. The “How To Enjoy?” #StayHome one is actually from a series of three, with the girl reading a book and playing videogames in the others. What can I say? They spoke to me.
  • Week 14.26

    Week 14.26

    An update on my app addiction

    On Wednesday morning I woke up and saw that my last app DataDeck was getting a bunch of likes and reposts on Bluesky, which was a nice surprise. If ever there was a place where people would appreciate a wacky, nerdy idea, I guess that would be it.

    My Instagram Story on Wednesday

    I made a couple of post-release updates to my magnetic poetry non-game, CommonVerse. There are now two new themes, one called Label Maker that resembles those little Dymo stickers we used to make, and another called Zine which is like a random note of cutout words. The UX has also been improved in subtle ways that might make it easier to manage making sentences.

    My “main” app project now is one that I can keep noodling on in the background, with no real endpoint — it’s done when I think it’s done — and the idea was that would help me slow down and spend less time with this vibe coding stuff. Guess what happened? That’s right, if you design something that can sit on the back burner, it will sit on the back burner. I started work on another app instead.

    Defying time and gravity

    I’ve known that the next step was to play with agentic coding tools like Codex or Google’s Antigravity. These are code editors with integrated AI that can look across all your project files and manage multiple agents working on simultaneous tasks. It’s a far cry from the way I’d been working: getting advice and instructions from a single chat, and then doing everything myself in a code editor. So I finally got started with Antigravity, and it blew my mind.

    The productivity increase is hard to describe. I could just describe stuff and it would get done without further work on my part. The tool can use the system’s terminal and Chrome browser to install packages, click around and test the app, figure out why things aren’t working, and fix it while you watch. Stuff that took me days over the last month could have been done in hours. It was automating so much of what little I, the non-programming human, was doing and considered my job, that it made me feel kinda redundant, to say nothing of real programmers.

    With Antigravity, the MVP of my app concept was done in three hours on a Friday. The good/bad news was that it blew through most of my token allocation for the week. So I went back to the “old” way of working and made subsequent changes manually. What I discovered was that I much prefer getting hands on with the project files, looking through the code to understand what was going on and what went where. I think I’ll use these agentic tools to get started fast and figure out a working architecture. After that, it’s more fun to get involved and make improvements slowly.

    Ate and left the Crumbs

    So the new app is called Crumbs, as in breadcrumbs, as in leaving a trail of them so you know where you’ve been. It’s a private location journal that lets you mark where you are on a map with a single button push. Over time, you can see the path of your journey(s).

    I made this because I’ve always wanted something like this for logging holidays, and no app really does what I want. Foursquare’s Swarm is based on Places, so you have to find the business listing or entry in order to check in. If you’re in the middle of a national park, or in a country where no one has created Places, or you can’t read the names, you’re out of luck. Google Maps has a Timeline, but it tracks your location all the time, and it only shows your trail on a day-by-day basis. Your data is also locked in their app and you can’t get it out to visualize in other ways.

    Crumbs is private, and you can take the data out in JSON format. It logs the time and weather along with your location, and you can write little notes. You can save an image of your map, or export a PDF of your journal.

    A big breakthrough (for me)

    Unfortunately, because it’s a web app and not a native iOS app, it can’t permanently store data on your device. The OS may decide to purge all your data if you haven’t used it in a week. That’s a dealbreaker for any app intended to be a life-logging tool. That really bummed me out, and I thought it would just have to be a personal tool that I couldn’t distribute to anyone else — since remembering to do manual backups/restores of the JSON file would be a massive PITA for any user.

    And then I had a Eureka moment! I thought of a possible solution and asked Gemini if it was feasible, to which it answered “Yes, this is an ideal solution”. I wanted to scream “Well, then why didn’t you suggest it all this time we’ve been discussing how to get around the problem!?”

    The answer was Dropbox integration. I can’t make a web app read/write files locally, but I can do it in the cloud. So now Crumbs is as useful as a “real app”, provided you connect a Dropbox account.

    As of Monday morning this post is late and I think Crumbs is ready, so here it is.

    The first ugly prototype of Crumbs out of Antigravity

    Other thoughts

    • Here’s a free idea: I was inspired by this stamp journal that went semi-viral, and wanted to make some sort of digital Instax photo album. It’d be kinda nice to keep a virtual scrapbook of interesting images, right? Well, turns out you can just use Apple’s Freeform app and Dazz Cam. It’s as simple as making a board and dropping in images, then arranging them however you want. All stored locally and synced to iCloud, easy peasy. Just because you can vibe code it doesn’t mean you should.
    • My iPhone’s MOFT Snap Case developed a cut/tear in its faux leather surface, and so had to be replaced after just six months. Its replacement is a Caudabe Sheath, which fits my requirements of being neither silicone nor slippery, with full edge coverage and a Camera Control passthrough button. It’s a hard plastic material with a rough, pebbled texture that makes it feel secure when held. It also came in second in MobileReviewsEh’s roundup of the year’s best cases. I got the version with the ‘open’ cutout for the 17 Pro Max’s camera island, not the ‘precise’ covered design.
    • Kim managed to finish reading Project Hail Mary and we went to see the film on Sunday (non-IMAX). Apparently there’s a longer cut, nearly four hours, which will be released on streaming in August when it comes to Amazon Prime Video. Yes, this is billed as an Amazon original film from the very first frame, coming even before the MGM logo (which they own), and I don’t think that will ever stop being weird. The film is good, a mostly faithful adaptation of a fun but slightly flawed book. I just think they glossed over a lot of detail in the final act, which lowered the stakes and made it less exciting and rewarding than it could have been. Hopefully the extended cut’s extra run time is concentrated at the end.
  • Crumbs

    Crumbs

    A location journal that’s actually yours.


    Try it at crumbs.sangsara.net

    Most map apps are for navigation, not remembering. You know those sequences in old films like Indiana Jones where a dotted line traces across a map from city to city? That is what Crumbs does, except it is your life and the dots are places you actually went.

    Effortless location logging

    The idea is simple: press a button to log where you are, write a note if you feel like it, and watch your trail build across the map. No passive background tracking, no accounts, no selling your movements for ad targeting. Just the places you chose to remember, connected by a line, yours to keep.

    Most travel apps get this wrong in one direction or another. Google Maps’ Timeline tracks you constantly whether you want to remember or not. Swarm needs a business listing to exist before you can check in. Neither lets you draw a line across a whole week, or a custom trip length, and export it cleanly. Crumbs does all of that, and stores everything locally on your device.

    Do things with your data

    There is a list view that lays out your stops like a journal with timestamps, weather, and location metadata, exportable as a PDF keepsake. You can also save a clean image of your map at any point, ready for sharing or scrapbooking.

    Crumbs is a PWA (Progressive Web App) which means mobile operating systems may occasionally purge its local data if not used in awhile. However, connect your Dropbox account and we’ll sync with the cloud automatically, so you won’t lose a crumb. If Dropbox isn’t your thing, manual JSON export and import are available for backups. Either way, your data is yours to keep and use freely. Vibe code an app to generate custom posters, for example.

    If you want native background tracking that runs without you thinking about it, I recommend Where Now? — a free indie app by Scott Boms that also logs your location privately. Crumbs can import Where Now’s data exports so you get the map trails and other features. Best of both worlds.

    Other details:

    • Pins capture location, date/time, city/country, and current weather conditions from Open-Meteo.
    • Works offline: Pin your location while off the grid, and Crumbs will show it on the map when you’re back online.
    • Filter map and list views by Today, This Week, This Month, All Time, or a custom date range to see only specific trips.
    • Uses standard Plus Codes as a shorthand for geolocation, so PDF exports retain all relevant information in a human-friendly form.
    • Open any pin location in Google Maps for more detail on nearby places of interest that were involved in your moment.
    • Minimal, glassy UI that “puts the focus on your content™”.
    • Bread mode: replaces all red pushpins with baked goods.
    • Red string trails can be disabled in settings.
    • Pins can be moved via drag and drop if necessary.

    Disclaimer: I made Crumbs with the help of Google’s Antigravity and Gemini 3.1 Pro. Your location data stays on your device. I have no idea where you’ve been.

    Related blog post: Week 14.26

  • Week 13.26

    Week 13.26

    I finished my sixth app: DataDeck. It simulates a fictional hardware music player called the DataDeck SG-01, or more accurately, a music generator. It reads live, open data feeds from the Singapore government’s data.gov.sg portal and translates them into unique musical compositions.

    My first prototype ingested the tourism stats for International Visitor Arrivals to Singapore since 2008, and when I first experienced the silence of the Covid years, with the beat gradually building back up again after 2022, I knew I was on to something. Data sonification is a cool term for nerds, but hearing the stories stored in the numbers is something anyone can understand and appreciate.

    At about ten days of development time, it’s the biggest project I’ve delivered so far with the help of AI — there’s no saying how long it would have taken me to do on my own. A million years? Instead, in just 10 days: parsers for 10 different datasets, 10 varied musical styles, and 10 switchable themes.

    The inspiration for its interface was the kind of hardware devices my dad had in the 70s and 80s: calculators, microcomputers, and tape decks from companies like Braun, Sharp, Sony, and Texas Instruments. A sort of Rams-ian, Bauhaus-ish modernist school of industrial design. The different color schemes you can choose from evoke specific brands or devices, like Apple’s Snow White-era or the original Nintendo Game Boy (DMG-01) and the Roland TR-808. I especially enjoyed working within the constraints of an imagined hardware UI, so when you switch to a dataset mapped to Singapore’s physical geography, the drum pad buttons get remapped to move a reticle around the map. It makes it feel more real, imo.

    The idea of playing with procedurally generated music using software-synthesized Web Audio was probably seeded years ago when I collected the 0xmusic series of art NFTs, which generated endless musical sequences from code on the Ethereum blockchain. I dare say that DataDeck is more advanced, and with better sounding musical output than those. Plus I’m making it free, and you don’t have to risk social judgement by going anywhere near crypto.

    I’m especially proud of the app’s design and musical qualities. There are a hundred little details in this thing I could mention that were cool to implement, but users don’t have to know or care about. Although it’s an app made for myself by myself, I’m still inordinately satisfied with and impressed by it. I’ve helped deliver a few apps in my career (some of them even won awards), but DataDeck already feels like one of my favorites.

    I think that’s because designing in the real-world is all about the navigation of compromises — technical debt, financial limitations, organizational will, and a lack of time all get in the way of polishing features you know could be great, or fixing annoying bugs that other stakeholders don’t seem to mind. Personal projects are not like that, and acceleration with AI makes them even less so. I made this thing how I wanted, and was able to tweak the mix or rebuild a cassette’s music logic from the ground up twice a day if I wasn’t happy with it.

    I’ve also been thinking about how narrow the term “vibe coding” is. On one hand, one-shotting an app by asking Claude to “build me a kitchen timer” is vibe coding. But using AI to create a complex tool where humans design the screens, sweat the UX, and look after the details is also kinda vibe coding. I talked recently about how the distinction between designing and developing will fade, and making stuff is all that will matter, and so it stands to reason that eventually coding with AI will just be called coding.

    I spent Friday afternoon with Jussi meeting up with two separate friends, both also middle-aged men, who are similarly interested in this evolution of design/development work, and who are working on their own projects with Claude Code, OpenAI Codex, and other tools. We’re all at different levels of familiarity and sophistication, but it was good to meet for a little co-working + Show & Tell time at cafes on a weekday. I think there’s value in forming a little “late boomers’ coding club” for fellow initiates.

    In any case, I’m hella tired, guys. I started on my next app idea but immediately got hit by fatigue on Saturday afternoon and needed a nap. Switching gears from audio generation to working on more visually-oriented functions was too much context switching to do over the weekend. Think I’ll finish reading a couple of books first before getting back to it.

    I know it’s been app-this and app-that around here for the last month and so maybe some readers (or a future me who’s been thrown in ethics jail for AI use) will appreciate hearing about other things. Let’s zoom all the way out then, into outer space.

    The film adaptation of Project Hail Mary is getting such great reviews and most people in my book club have already seen it. Unfortunately, I have to wait because Kim has finally started reading it, about three years after I told her to. Hopefully she’ll finish before the local IMAX run ends, but nothing in this life is guaranteed.

    There’s just something about stories of people in space, either lost or stranded, alone or in a small team, solving problems with limited resources, all the while confronted by the massive universe-facing perspective of being so small and meaningless. Andy Weir’s The Martian really resonated with people, and Project Hail Mary is having its moment too. I also enjoyed Daniel Suarez’s two Delta-V books a few years back. But the ultimate one that has yet to be beaten for me is Neal Stephenson’s Seveneves.

    The book I’m reading now might be a serious contender though. I’ve had Samantha Harvey’s Orbital on my list for the better part of a year, knowing very little about it, except that it’s about astronauts. Now that I’ve started, I don’t want it to end, I want more of everything, more words from this magnificent brain. You’ll know by the end of the first three pages whether this is a book for you. It’s intensely beautiful, unusual writing. It borders on poetry — perhaps too melodramatic for some — actually it steals over the border by moonlight and maps the territory. I don’t know how Harvey knows what it feels like to be in space, and what astronauts think about as they look down on Earth, but she absolutely does. You can’t write like this unless you’ve stowed away on an ISS mission and been through it. It’s a monumental work, and the best book I’ll probably read all year.

    Literally on the other end of that spectrum, the book club has decided to read Michael Crichton’s Sphere, which is set at the bottom of the ocean and probably isn’t very beautiful or philosophical. I read it once, maybe thirty years ago, and thought I only remembered the contours of its plot, plus flashes of the 1998 film adaptation starring Dustin Hoffman. As I read its opening pages, I was shocked at how familiar some of the writing and scenes were. It must have made an impression on me.

    Since the moratorium on spoilers has probably passed, I think it’s okay for me to mention what I recall: it’s about a mysterious ship that a bunch of scientists are trying to study in a deep sea lab. As time passes, they experience unnatural events, and it’s revealed that the titular sphere onboard has been “having an effect on them”. It’s a mashup of The Abyss and Solaris, essentially. I don’t want to rush Orbital, so I’m going to put that aside and work through Sphere as quickly as I can.

    Speaking of space, the deep sea, and being packed into tight metal containers, I picked up a can of my usual Ayam-brand sardines in extra virgin olive oil the other day and felt a weird “thunk” as I turned it over. I’ve handled enough of these cans now to know when something feels off. Opening it, I discovered only two fish instead of the usual three. That sensation was them loosely rolling around in the oil. It wasn’t like these were two large ones and there wasn’t room — someone on the packing line simply neglected to fill the available space and closed it up. At first I was incensed, and then I tried to let it go. We all deserve to make mistakes, and some sardines should get to enjoy a little more personal space. Be good to yourselves, and I’ll 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. 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

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