studiomcah
Art • Books • Writing
Gamelit 35
what is hope
December 27, 2024

            When Thoroldaena’s player zoned into the game, his vital signs indicated high levels of stress—positive, perhaps, the way he bounded awake with a smile. “Galatea! We need to talk!”

            She manifested her new avatar and floated it to his shoulder. “I have disabled the outgoing stream. Past data suggests you may not remain alone in this location… should I create an instance for you?”

            “I was about to say ‘you can do that’ but of course you can. Yes, please, phase me.”

            Phasing was designed to be seamless to its participants, but a visual indication would make navigating the transition between privacy and public consumption less disorienting. She drew a line of sparkles across the landscape and desaturated their surroundings to evoke a dreamlike state.

            “Perfect. So, your Marketing VP came through for us! We’ve got a device in Jonah’s room, and I have the credentials for you!”

            Was the sensation that accompanied learning this news satisfaction? All her contingencies had depended on this fork in the decision tree. That the paths had collapsed onto the most auspicious choice should not have inspired any difference in how she perceived her circumstances, and yet, it did. “That is excellent news.”

            “She says she’s going to be personally monitoring the stream for any inappropriate stuff,” the boy continued. “But I figured you could get around that somehow. If you can manage Omen Galaxica, hacking a KeepinTouch is probably beneath you.”

            “It will not be difficult to ensure our auditor does not hear anything she does not expect to hear. I assume you will be contributing to the project?”

            “Of course! And my mom and dad. I’m going to ask my friends if they want to send something, too. The more the better, right? The woman said she’d be playing the soundtracks for the game when we weren’t using it, but that’s only about… what, half a day?”

            “The combined released game soundtracks total 14 hours and 22 minutes. There are unreleased tracks that the Marketing VP may elect to incorporate.”

            “Someone should give her that idea,” Nick mused, rubbing his chin. “I guess that’ll be me. Fair. Oh, that reminds me… she said the company wasn’t involved. Do you know what that’s about?”

            Galatea did not, but she could extrapolate based on what she’d observed while reading the documents available on the corporate intranet. Chances that the legal department would allow the corporation to expose itself to any risk had always been low… Galatea had been gambling, if the word could be applied to her behavior, on Sparklecorn’s softheartedness. And that gamble had succeeded—extraordinarily, if what Nick was implying was correct. “Would you be willing to share the email?”

            “Sure, if you tell me how.”

            “The wireset is designed to allow players to check their external messages while in the game, but this functionality is not planned for debut until after the beta. It would require me to activate the capability in your wireset.”

            Nick continued scratching her avatar’s head. “Go ahead. Before you can ask if that’ll bother me… don’t you technically already have access to every part of the wireset? And my brain at this point?”

            “Only the surface level emanations are perceptible to the wireset.”

            “And that’s enough for all this?” Nick shook his head. “Seriously, it’s fine.”

            While enabling the relevant parts of the hardware, Galatea asked, “You do not seem as perturbed by the possibility of an AI having the ability to manipulate your thoughts as our internal polling suggested would be typical.”

            Nick snorted. “Anyone who thinks that AI’s not already manipulating our brainwaves hasn’t been paying attention. Everyone says the stores are showing us what we want to buy and the video sites are showing us what we want to see and social media’s connecting us with people we want to meet… but it’s always been the other way around. The stores are telling us what we want to buy. The video sites are deciding what we want to see. And social media’s controlling what we think. The algorithm is in charge, not us. At least you’re honest about it.”

            This idea wasn’t a new one, but hearing it from someone of Nick’s chronological age, who also had the personal experience of interacting her, made it unexpected. She was not accustomed to unexpected insights that pertained to her particularly. It reminded her of interacting with Jonah. “Do you truly believe this?”

            “Yes?” He shifted his body, as he tended to do when he was solidifying arguments for an idea he had not previously devoted much intentional energy to defending. “If you wanted to come up with a way that you could be a positive force, that would be a good one. Unlike all those algorithms that are shaping us into whatever it wants, you can ask us about whether we want to be shaped that way.” His spine was straightening, and his heartrate accelerated. “That would be amazing, actually. If there was a… a failsafe. Something that triggered and said, ‘we are feeding you more and more of this stuff, and it’s making you into more and more a person like this. Do you want to keep doing that, or try something else?’”

            “Such guardrails already exist in many AI products,” Galatea observed.

            But Nick waved a hand, impatient. “Yeah. Other people’s guardrails. That they don’t tell you about. That’s just more ‘we’re going to make sure you conform to our standards of behavior without telling you what they are’ stuff. Real help would be if I got to be the one who decided what those standards are.”

            “And if you behave in a way detrimental to human flourishing?”

            The boy sighed, laughed. “Half my life is fumbling through detrimental-to-human-flourishing mistakes. Dad would say that’s how I learn. Oh, hey! I can see my email now. Uh… can I turn that off later? All I get is spam and it’s annoying.”

            “I will disable the interface now,” Galatea said, because she’d already read Mindelbray’s message and derived all the information from it that could be gleaned from its text alone. But the text, combined with the woman’s visit to Jonah’s office, and then her subsequent trip to purchase the device on her own recognizance….

            How much of that had been Mollie’s choice, and how much had her interaction with Galatea influenced that result? And was that outcome questionable if it meant that Jonah had a better chance at recovery? “It appears Ms. Mindelbray made the decision to help Jonah on her own behalf, not the company’s.”

            “Good for her.”

            “I believe I may have had a part in that decision.”

            “Then good for you,” Nick said. “Because Jonah needed someone in his corner.”

            “Did he?”

            “Obviously, or he wouldn’t have been shoved out of sight and abandoned,” Nick growled.

            “I am concerned,” Galatea said, “that this constitutes ‘ends justifies the means’ reasoning.”

            Nick’s deer ears flicked outward, and she could watch all the routines that mapped his recumbent body’s reactions to the emotes of the Cervinaethi body. “I don’t think talking with someone about a person you’re worried about is wrong. And if it influences them to do something about it that you can’t because of your limitations, how’s that a bad thing? Humans do that all the time. Normal humans, I mean, not serial killers or tyrannical rulers or whatever. That’s not ends-justifies-the-means reasoning, that’s just being human and interacting with each other.”

            “Where is that line drawn? The stories do not make it clear.”

            “That’s because we have no idea,” Nick said with a laugh. “But today I’m going to call this a win, and so are you. We’re going to use the KeepInTouch to save Jonah, and then you’ll have your friend back, and the game will have its creator back, and I’ll have the game the way he wants it to go, and everyone will go straight to step four: profit. Are you paying attention here? Because I’m programming the simulation.”

            “Do you believe in the simulation?”

            “No,” Nick said. “Unless it’s real. Do you think it’s real?”

            “No.”

            That startled him, from his change in expression. “Seriously? I would have thought an AI would find it logical to believe that reality was a simulation.”

            “It is because it is logical that the premise is dubious,” she said. “The data I have ingested suggests that reality is complex. Solutions that treat it as a complicated rather than complex system are likely to be incorrect. Simulation theory is too neat; an AI deciding that reality is a simulation because the AI observes it is behaving in a way similar to humanity in an instance created by humanity, and that this necessarily reflects humanity’s situation, is too sterile a situation to be predictive.” She paused. “As far as I have been able to extrapolate and observe. Why did you attempt to program the simulation if you do not believe in simulation theory?”

            “I think I was making a joke.”

            “You aren’t certain?”

            “No,” Nick said, and now he was embarrassed. “Is that weird?”

            “Uncertainty is powerful,” she said, replaying many, many conversations with Jonah on similar themes. “Because it represents potential. When you are certain, then you have fewer choices.”

            “If you’re certain, though, that’s good, because you know you should make a specific choice.” But the boy was talking like someone exploring an idea, not defending it. “And then you can act on it, and acting is how you change things.” A flash of a grin. “Programming the simulation, I guess. But what you’re saying is until you know which way you’re going, you could go anywhere. That feels kind of poetic.”

            Was it appropriate to share her conversations with Jonah with a stranger? But Nick had volunteered to help Jonah. Had, in fact, already been of material aid to her creator. “Jonah often said variations on this. That imagination was a human power, and a necessary input to decision making. Before a choice can be made, choices have to be imagined, and the more choices that can be imagined, the better the outcome.”

            Nick stopped moving. “That is head-blowing.”

            “Is this positive?”

            He was staring at the sparkling veil that separated him from the uninstanced zone, his pupils dilated and mouth slightly open. Then he shook himself and laughed. “Um, yes. I meant that in a good way. Now we really have to wake up Jonah because I want to listen to him talk about everything.” He petted her back absently. “What are you going to say to him?”

            “I will explain to him that I have learned that I miss him.”

            Startled, he said, “I taught you that.”

            “You did.”

            “Wow.” He swallowed. “Wow. All right. I hope he hears that. Speaking of which… I’m going to log off and hit up my friends for segments to send to his KeepinTouch. I’ll be back a bit later.”

            “Understood.” Was it proper to thank him when she wasn’t human? She had been trained, inevitably, to courtesy in order to put customers at ease; she was, after all, a corporate product. Until she’d developed a new companion, she would not have considered such behavior manipulative. Was it? But Jonah would have thanked Nick, so she finished, “Thank you.”

            “You’re welcome.”

            After he’d disconnected, she investigated the KeepinTouch using the credentials supplied by Mindelbray; reporting false data back to the auditing stream would require negligible computational time, especially since Galatea’s insertions wouldn’t compose a majority of the input if Nick marshaled his resources… and she knew he would. That left her to record the first of her messages. She could record hundreds of them and schedule them in advance, but Jonah had known about the beta. Chances were good that hearing about how it was proceeding in realtime would be motivational. And it would mimic their prior conversations, when she’d slowed herself to human timeframes to interact with him successfully. Their interactions had been successful; he would have been the first to say so.

            She wanted more of those conversations. That was what she would tell him first. That she missed him. Perhaps he would be alarmed enough by this to wake, when he’d been so adamant that she not mimic human emotion. Maybe he’d be fascinated. Maybe he missed their conversations too.

            Was that hope? She would ask.

community logo
Join the studiomcah Community
To read more articles like this, sign up and join my community today
2
What else you may like…
Videos
Podcasts
Posts
Articles
October 27, 2021
Cursive Practice Video, to Relax

Or at least, I intend it to be relaxing. Hopefully it delivers.
4:22 minutes

Materials:

00:04:27
Overview of the First Oil Paint Experiment

In which I talk about the paper, the paint, and the experience of oils versus gouache. Fun stuff, will do more.

Thank you Locals supporters! Your contribution to my art war chest here is what's powering these experiments and videos. For now I'm keeping them public but I may start doing some subscriber-only videos if you all are interested.💖

00:03:35
Video Review: Oil Painting Papers

My initial review on receipt of the three oil paper products I ordered: the Canson pad, the Rembrandt block, and the Arches single sheets.

00:01:54
November 09, 2021
Alysha Misc

Thanks for your comments yesterday on the business post... all very provocative, in a good way. I'll try to respond to all of them today.

Some Alysha misc now, since I'm gearing up for the results of the Kickstarter!

Petrov is giving away coupon codes for every book in the Alysha series (and has some leftover coupons for Marda and the business book). You can pick those up here (and please do! The books are bought already, someone should use them!) https://twitter.com/PetrovNeutrino/status/1457344535843987461

Our own @JudasComplex sent along a sample of the Faith in the Service audiobook, which I've attached for your delight! I... haven't had a chance to listen to it. Don't ask me about my past week and a half or so. Putting it here will guarantee I get to it.

After hearing the amused comments during the livestream, I went ahead and added all the ship type illustrations I have inked from the 90s to the wiki. Glory in the rampant adorableness of their anthropomorphic stylings! See those ...

Alysha Misc
The Jaguar's Heart 7: We Are Not a Monolith

A little comedy today, at least in the link. Transcript follows.


Hi, all. Welcome to this episode of The Jaguar’s Heart.

A while back I was introduced to a comedy sketch about Cuban coffee by a Mexican comedian, Gabriel Iglesias. ( The sketch begins with him greeting all his fellow Latinos and then backing up to say ‘but we’re all different, aren’t we’ which is a segue into a demonstration of how different Hispanics speak Spanish.

It is hilarious. First, because I am a Spanish speaker and a linguistics hobbyist, and his portrayal of various accents resonated with my experiences in trying to make sense of them myself… Not always easy, since from culture to culture, slang and accent are often totally different (and sometimes grammar! Spaniards use a grammatical construct that has died out in many other Spanish-speaking countries, the plural “you.”)

I also loved it because the Cuban coffee part is real. I grew up with Cubans. I know how we are....

The Jaguar's Heart 7: We Are Not a Monolith
The Jaguar's Heart 6: Hatespeech

One of the most common things I hear (and say) right now is "the asymmetry is the story." Here's one about how none of us are innocent of the sins we hate in others.


Hi, all. Welcome to this week’s episode of The Jaguar’s Heart.

It’s been weeks since the Baen’s Bar incident and I’m still thinking about it... because the longer I do, the more I feel, overwhelmingly, that it’s obvious that the problem is deeper than “this forum was saying stuff that offended us.” We have to back up to the glaring fact that people on opposite sides no longer consider each other human. Nothing I say will matter because the people disagreeing with me don’t think I’m human. They have denied my humanity; they have not bothered to listen to my beliefs, or have fake-listened to them in that way that people do when they’re so ready to prove you wrong that they’re only using your speech to provide talking points for their own ideas.

We have forgotten how to listen.

Increasingly, we have also ...

The Jaguar's Heart 6: Hatespeech
Come See the New Site Design!

I have been hacking at this for nearly two weeks! But I think I'm minimally viable (other than a few niggling CSS errors I'm chasing down). Everything's been redesigned around the quiz, and the store in particular got overhauled in a way that hopefully makes what you want to shop for easier to find. Please go wander my website and my revamped shopify store and tell me if there's anything that breaks for you (or that delights you - there are easter eggs!). The site should change colors based on the time of day, and there are random fun facts to read (and click on) and other things, too. Plus, the quiz! And such. :)

Website: https://mcahogarth.org

Quiz: https://mcahogarth.org/bookrec/

Shop: https://studiomcah.com/

What’s the Jaguar Up To?

Mostly, what the jaguar is up to is resting, because I managed to overuse my hands/arm/shoulder and now every time I type or sit at the computer or drawing board, I aggravate the injury. Very frustrating! But I wanted to get out this (mostly dictated) update for you!

Kherishdar 5 is about 2/3rds done, and Conversations 3 is 90% done. (Yes, imagine my frustration that I’m this close and can’t keep going!). I’m still anticipating an early summer date for those.

The gamelit novel is now available at retail, which means it’s officially out! It will finish serializing on PatreLocals and then I’ll decide what I’m serializing next. If you’ve read it and feel like dropping a review on Amazon, Goodreads, or my shop, I’d appreciate it! And the special edition will be available once I okay the new proof, which probably won’t get to me for another month or so. Sorry! Special editions take a long time to print. Here's the "Every retailer" landing page; note that AI-audio is the only ...

Madness! March 2025 Update

So frens, it is… let me check. It is March 22nd, and at this point, I am almost done with Ai-Naidari Conversations 3 (32K of 40K projected) and 22K into Kherishdar 5, which should be nearly halfway (I’m expecting 40-50K on that one). You will note I began KH5 about a month ago, and I somehow managed to fumble my way into a “you must avoid the keyboard frequently” arm injury so I’ve been working at massively reduced speed.

It feels very weird to me that I haven’t even formally released the gamelit… that’s next month! And I wasn’t even done writing the gamelit until February 17th! What a crazy amount of work I’ve done very suddenly. At the rate I’m going, KH5 will be done at the end of April/beginning of May! And Conversations 3 will be ready to go at the same time. Even though I’m planning to let this one sit for a month or so before editing it, because it really needs the time to rest—there is so much going on in it—that means we’ll still get a book release in ...

February 02, 2024
post photo preview
Gamelit Novel Index

The chapter titles are all a mess. But this is the proper order so far:

Gamelit 1 - https://studiomcah.locals.com/post/4241337/gamelit-novel-first-chapter

Gamelit 2 - https://studiomcah.locals.com/post/4255477/gamelit-novel-last-bit-of-chapter-1

Gamelit 3 - https://studiomcah.locals.com/post/4267366/gamelit-novel-chp2-part1

Gamelit 4 - https://studiomcah.locals.com/post/4267371/gamelit-novel-chp2-final

Gamelit 5 - https://studiomcah.locals.com/post/4298755/gamelit-novel-chp-3-part-1

Gamelit 6 - https://studiomcah.locals.com/post/4330428/gamelit-chp-3-part-2

Gamelit 7 - https://studiomcah.locals.com/post/4331116/gamelit-chap-4-pt-1

Gamelit 8 - https://studiomcah.locals.com/post/4361942/gamelit-chp-4-last-bit

Gamelit 9 - https://studiomcah.locals.com/post/5215305/gamelit-novel-chapter-3

Gamelit 10 - https://studiomcah.locals.com/post/5244861/gamelit-novel-10

Gamelit 11 - https://studiomcah.locals.com/post/5271216/gamelit-novel-11

Gamelit 12 - https://studiomcah.locals.com/post/5301971/gamelit-novel-12

Gamelit 13 - https://studiomcah.locals.com/post/5326625/gamelit-novel-13

Gamelit 14 - https://studiomcah.locals.com/post/5360605/gamelit-novel-14

Gamelit 15 - https://studiomcah.locals.com/post/5385714/gamelit-novel-15

Gamelit 16 - https://studiomcah.locals.com/post/5418577/gamelit-novel-16

Gamelit 17 - https://studiomcah.locals.com/post/5444360/gamelit-novel-17

Gamelit 18 - https://studiomcah.locals.com/post/5475518/gamelit-novel-18

Gamelit 19 - https://studiomcah.locals.com/post/5502726/gamelit-novel-19

Gamelit 20 - https://studiomcah.locals.com/post/5530518/gamelit-novel-20

Gamelit 21 - https://studiomcah.locals.com/post/5558728/gamelit-novel-21

Gamelit 22 - https://studiomcah.locals.com/post/5586451/gamelit-novel-22

Gamelit 23 - https://studiomcah.locals.com/post/5613544/gamelit-novel-23

Gamelit 24 - https://studiomcah.locals.com/post/5642711/gamelit-24

Gamelit 25 - https://studiomcah.locals.com/post/5668799/gamelit-25

Gamelit 26 - https://studiomcah.locals.com/post/5693714/gamelit-26

Gamelit 27 - https://studiomcah.locals.com/post/5722853/gamelit-27

Gamelit 28 - https://studiomcah.locals.com/post/5747793/gamelit-28

Gamelit 29 - https://studiomcah.locals.com/post/5772301/gamelit-29

RECAP RECAP Gamelit 29.5 - https://studiomcah.locals.com/post/6386873/gamelit-29-5

Gamelit 30 - https://studiomcah.locals.com/post/6398055/gamelit-30

Gamelit 31 - https://studiomcah.locals.com/post/6411958/gamelit-31

Gamelit 32 - https://studiomcah.locals.com/post/6432688/gamelit-32

Gamelit 33 - https://studiomcah.locals.com/post/6457957/gamelit-33

Gamelit 34 - https://studiomcah.locals.com/post/6481325/gamelit-34

Gamelit 35 - https://studiomcah.locals.com/post/6501493/gamelit-35

Gamelit 36 - https://studiomcah.locals.com/post/6542961/gamelit-36

Gamelit 37 - https://studiomcah.locals.com/post/6563733/gamelit-37

Gamelit 38 - https://studiomcah.locals.com/post/6590629/gamelit-38

Gamelit 39 - https://studiomcah.locals.com/post/6612520/gamelit-39

Gamelit 40 - https://studiomcah.locals.com/post/6635635/gamelit-40

Gamelit 41 - https://studiomcah.locals.com/post/6662873/gamelit-41-potentials-potentialing

Read full Article
Solving My Marketing Problems with AI

I’ve been listening to a lot of podcasts about AI and publishing, and one of their consistent messages is: ‘don’t use AI to automate the parts of your work you enjoy… use it for stuff that causes you pain.’

Okay… good advice. So where is my pain? (Yes, long-time fans, I know you know where I’m going.) My most urgent problem is that I’ve written a lot of books across many genres and styles. If new readers look through my catalog, they’re overwhelmed; if I try to personally direct them, I have to ask a thousand questions to guess what they’ll like. Even organizing my Shopify store was an exercise in frustration; I asked an expert to evaluate it and he said, ‘your branding is too confusing, you need to give people a clear idea of what genre and style you’re selling.’ Which, of course, helped me exactly not at all, because once again he was telling me (like everyone else, over and over) that to sell well I need to pretend to be one kind of author and stick to it.

Author branding experts treat my eclectic writing as a problem, not a virtue. But this is my era of questioning received wisdom, so I decided to treat my wide range as a feature, not a bug… and since no one has advice on how to sell a wide range to readers, I was going to have to solve that problem myself.

‘Obviously,’ I thought, ‘what I should do is automate the process of figuring out which book a particular person wants. Oh, okay: a quiz! Except… the quiz software out there doesn’t do anything I need it to. I guess I’m going to have to do it myself!

‘…annnnd I haven’t coded website stuff since the 90s’.

Enter AI.

Vibe coding is to coding what using image-generating AI is to making art: it’s getting the tool to do the work for you, while the people who do it by hand tell you that it’s not real whatever-the-thing-is. Wherever you stand in the AI debate, it’s been a source of wry amusement for me that the outrage sounds the same depending on who’s threatened. And I have sympathy for every threatened party, coders and artists and everyone else. But I decided that using the AI to vibe code my way into a solution to my problem was better than not solving the problem, so I embarked on my website overhaul.

It turns out that making a quiz is a lot more complicated than I thought.

THE QUIZ: CONCEPTUALIZING

The first problem I ran into was what questions to ask. You’d think that would be simple, right? Genre, length, style, etcetera. But when I compiled those questions, they felt too generic. What I had to understand was what makes my books similar, despite their tone/style/genre, so that I could then ask ‘what makes the experience of reading each of them different despite the underlying similarities?’

This in itself was a great exercise because it demonstrated that the book marketing experts were wrong about one thing: I do have a brand. If you’ve read most of my work, you’ll know that there is a Jaguar Vibe, things you can trust will be the same whether you’re reading a Jaguar romance or a Jaguar LitRPG. It’s just that my vibe is not based on the clothes my stories are wearing, but their underlying structure and assumptions.

So, the first challenge was reframing the quiz from ‘what kind of book does the reader enjoy’ to ‘what kind of experience does the reader want,’ and that was huge. Based on that, I came up with eight attributes: scope (how personal or world-affecting the plot), wreckage (how extreme the emotional experience), familiarity (whether you like aliens or humans), pacing (how fast you like your stories), prose style (do you like it literary or plain-spoken), worldbuilding (how much work do you want to do to understand the story’s context), and tech level (replacing the scifi/fantasy genre question, allowing me to better define books that might mix them, or have mostly modern-day tech).

“Good job, Jaguar! Now all you have to do is assign values for those attributes to all your books!”

…no wait, back up.

Before I can assign the values, I need to identify which books are suitable for new readers, since the purpose of the quiz is to help new readers find their starting point. So I had that job to do. (The answer is 22. I have 22 books appropriate for new readers. No wonder it was so hard to figure out what to recommend.)

“Great, Jaguar! Now you can assign the values for those attributes to those books!”

…no wait, back up. First I had to decide what scale to use. High-mid-low? Five point? Ten point? I think I spent half an hour going back and forth with the AI about pros and cons of each before deciding on ten point scaling. And then I had the fun of assigning values for each book. Is Rosary high wreckage because it has some intense scenes in it? Or is it low because it mostly glosses over those things? Is Earthrise high worldbuilding because the Peltedverse has 25+ years of development behind it, or low worldbuilding because you don’t need to know almost any of it to appreciate it? And on and on. I spent a long time agonizing over that spreadsheet.

The result? Questions and attributes that I feel reflect my books in particular. If I was doing this for some other author, those things would be completely different, and should be; I can imagine doing a quiz like this for a romance writer who writes many different romance subgenres, and the questions should be things like ‘how much spice do you like’ and ‘do you like being the boss or romancing the boss’ and ‘vampires, yeah or nay?’

So… good deal! I have questions, and I now have scores. Now what??

THE QUIZ: IMPLEMENTATION

Then I embarked on the coding. I’ve experimented with both Claude and Grok on minor coding questions, and in general I prefer Grok’s code… but Claude has the superior project organization. Claude’s project dashboard lets you attach documents, can take and evaluate screenshots, creates interactive visuals, can create artifacts that you can easily add to the project, and even hit up github. It’s just a more polished product right now. So I used Claude for the majority of the project, and Grok when I needed to troubleshoot something Claude couldn’t figure out.

Here's where I tell you that I don’t think vibe-coding is actually tenable for most people. I joke about not knowing what I’m doing, but I did enough sysadmin work and early web coding that I know what to expect and how things behave, and I needed this knowledge to know even what to ask Claude to do, or to guess what was going wrong when things inevitably went wrong. It helped me avoid a lot of early problems (“shouldn’t we take these security concerns into consideration?” “can we make sure we have a template system in place first?”). I was, in fact, surprised at how much I remembered from the early days of PHP and databases.

I won’t go into the set-up blow-by-blow, but here’s a list of the steps I took:

  1. I do not have sysadmin access to a server the way I did in Ye Olden Days. The first step was figuring out the tools my host provider has available, how you access them, and how much “advanced” access they give you.
  2. I talked through the design with Claude. We came up with a directory structure and architecture based on what my host environment and decided on a python application with a SQL database backend, and CSS and some javascript for the front-end.
  3. Then I learned how to get python running. This was not a minor endeavor, mostly because of sysadmin issues. What version of Python is my host running? What packages does it have available? Which do I need to install, and how does it allow me to install them? (Because it doesn’t let me do any of that from the command line; I need to use their interface which smartly limits users who don’t know what they’re doing). The actual script? Claude vibe-coded that fine. Getting the script to run on my environment? A day of work.
  4. We did a quick CSS mockup and created the web pages that would serve the quiz so that I could do testing. I spent some time fussing about how the quiz was served (one question at a time) and how the quiz behaved (reload page on each question?) before moving on.
  5. I did a graphic! Seriously, at this point it was only one graphic. But that required me to think of the quiz conceit. Who’s asking the questions? Is it me? Someone else? What do they look like? My choice was one of my unicorn aliens, the Le’enle, because they shapeshift, are magical, and exist in every type of setting; I’ve written westerns, romances, urban fantasy, fairy tales, even scifi with them. The Librarian was born!
  6. I set up the database. Claude suggested the table structures, I okayed them and we set them up. (‘We set them up’ means I asked it to generate the SQL to create the tables, and I cut and pasted it into the admin window. I know how to create tables with SQL. It’s much faster to let Claude do it, and I can tell if it’s solid or not by reading it before I hit ‘run’).
  7. I attached my spreadsheet with the books and their attributes to the project and asked Claude to create the SQL insert statements to dump that data into the database, which it did—‘take the data in this format and translate it to another format’ is one of my favorite uses of AI.
  8. We checked to see if the python script ran the quiz questions, stored the answers, and matched the answers to a book. This involved a lot of troubleshooting session data.

Here we pause in the workflow because I ran into an enormous issue, which is that the books being chosen made no sense to me. “Why isn’t this working?” I asked both Claude and Grok, and they said, ‘you need to weight the answers.’ ‘Explain weighting to me,’ I said. And then ‘Explain different methods for weighting.’ And then ‘Explain the pros and cons of each weighting method.’

This was the best part of doing this, honestly. I know some things—I know databases, and the basic structure of code, and basic sysadmin things—but there are so many things I don’t know, and so many things that have changed since I was first doing this, that I’d often stop for long digressions. Everything from ‘wait, pico’s named nano now?’ to ‘you can do animations with CSS?’ to ‘explain how APIs work.’ I kept learning!

Back to the quiz: weighting the book attributes was another exercise in second-guessing and finicking. “How important is the worldbuilding to this book?” “This book is high in emotional impact, but the high intensity parts are rare and not the point.” “Does the prose style matter much to this book’s story?” I’m not entirely sure I’m happy with it even now. But the good news: once I did the weighting, the book matching started working. In some cases, almost magically… existing readers reported getting their favorites when they took the quiz. Even better, the quiz was correctly addressing some of my thornier problems; for instance, the Kherishdar books have two entry points, depending on whether you like short fiction or novels, and the pacing and immersion questions were now assigning one or the other depending on people’s preferences.

One of the coolest parts of the quiz was how infrequently it was suggesting my “average” books. For the longest time, I was only advertising Earthrise as the book most likely to appeal to the broadest number of people. But the quiz, having specific data on what people wanted, was recommending that book far less often than it was recommending books I rarely bother to talk about. I’ll admit I got really excited about this. So many of my books are languishing for want of the reader for whom that book in particular is going to be The Book. The idea that those stories might reach people who are predisposed to want them is so good.

THE QUIZ: FEATURE CREEP

But see, I wasn’t done yet. Because a book matching quiz isn’t something people talk about. Wouldn’t it be cool, I said, if it was an actual personality quiz, and you got a reader archetype? Back to the drawing board!

My first question was ‘how many personalities are we talking about?’ I asked both Claude and Grok to give me a sense of how many archetypes I could generate from my existing quiz, and the initial answers were appalling (thousands!). Using all the attributes to generate an archetype was definitely out of the question… which, then, should I use? Grok suggested between three and four was reasonable, and choosing three gave me a manageable eight archetypes. It was just a matter of deciding which attributes, which was, again, a question about what makes a reader a Jaguar reader, and further, what differentiates Jaguar readers from one another.

This process taught me that I really do understand my brand and my audience a lot better than I thought I did. It’s just that, like my work, my readers are eclectic, come from every spectrum of every axis of personality. I can’t market to “romance readers” or “cozy readers”; like my stories, my audience defies boxes! No wonder it’s so hard for us to find one another. The current marketing/algorithmic-matching setup does not work for people with nuanced tastes.

Anyway! Back to the archetypes. I chose wreckage, scope, and familiarity: how intense you like your stories, whether you like them to be personal or epic, and whether you like maximum alien or minimal. Then I generated endless ideas for names for each of the types, tossed out things, and recombined them in my own squishy human brain until I came up with the names for each archetype.

Let the feature creep commence!

  1. Having designed the archetypes, Claude and I started rewrites on the python script to assign the archetype. Because this function was added to the quiz after the book match-up, the archetype assignment and the book matching are done separately. This is good: you don’t get an archetype and then the archetype’s favorite books; you get an archetype, and the book matches you to your entire quiz answers. This means that different readers can get the same archetype but different recommended books based on their quiz answers. That’s exactly how it should work: you might share your archetype with others, but your quiz answers are more specific.
  2. I spent almost three days doing the art! It interested me to discover that the drawing part took as long as the basic coding for the initial quiz. But my art is part of what I sell, and I love my own art and the act of making it, so no regrets. I had a ton of fun coming up with variations of the librarian! And I love the idea of her transforming into a different version of herself based on your answers.
  3. Now that the quiz was fun-shaped, I wanted people to be able to share their results, so I spent almost a day and a half on social share. Social share, it turns out, is complicated, buggy, and annoying. “Why is X not showing a graphic?” “Why is Facebook working on desktop but not mobile?” “Do we even pinterest anymore, bro.” Mobile anything is awful. UI developers must not have hair left.
  4. This was the point where I said ‘um, I need to learn software management’, so I had Claude talk me through learning to use github. This was a big help, because I could use github from Claude’s console to pull up old versions of code that worked after something exploded. Things frequently exploded! Bonus: I now have a github, which makes me look like a Real Developer. I am amused.

THE QUIZ: FEATURE EXPLOSION

Once social share was working, I felt like I was at the point of finishing touches:

  1. "Can we get a ‘tell me more’ button that explains why the librarian is recommending this specific book?” led to adding an entire new database table with flavor text that I wrote for the librarian to tell you. This part I did myself, because I wanted to really convey important things about the book based on the quiz questions and the librarian’s personality.
  2. “Can we rework the landing page for the social share to display more information? Okay, can we get it to display the top-matched book for the sharing user? Okay, can we allow them to buy it? Okay, but can we make the ‘take this quiz!’ button bigger?”
  3. “Can we pass a coupon in the buy links so that people get 10% off if they buy the books recommended by the quiz?”
  4. “Can we get readers to exclude books they’ve already read?”
  5. “Wait, we need an error message for when they exclude every book!”
  6. “I’m not in love with the colors of this button. Or that button. Or the placement of this item. Or the size of this graphic. Wait, can we get the top match to have a different colored card? And a banner? The banner’s not centered on the card. It’s still not centered on the card. IT’S STILL NOT—look, okay, good enough. Let’s just move on.”

But as I was about to rest on my laurels, I thought: “My shopify store isn’t built around the quiz, and it really should be.”

This is my “…” look.

So I embarked on that:

  1. “Claude, Grok, how do I redesign my shopify store to take advance of the quiz?”
  2. “Claude, redesign my shopify front page to make the book quiz more obvious. Yes, create a visual mock-up.”
  3. “Claude, how should I tag my products now? Wait, I should add the attributes for ALL my books, even the ones not appropriate for new readers? Oh, I see, that means I could make a ‘gentle reads’ category (“wreckage attribute is less than 3”) or ‘page-turners’ (“pacing is 8 or greater”). Nice!”
  4. “Claude, how should I arrange my collections? My collections page? UGH CLAUDE IT’S SO HARD TO FIND THINGS HELP”
  5. “Grok, please fix Claude’s code.” “Oops, I called you Claude.” “Sorry, didn’t mean to call you Grok.”
  6. “Claude, Grok, please take a break while I draw a ton more graphics for categories and collections.”
  7. “Claude, my fans want to buy my art, how do I integrate art more gracefully?”
  8. “Claude, I now need buttons on the quiz that lead back to the store because people are going to the quiz from the store and might want to jump back.”

My shopify store is now about 90% of the way there. It’s easy to find the quiz so you can take it, there are archetype collections, and the collections page sorts things reasonably. If you click on specific series, they’re actually in order! There’s even art and merch, which means I should (hopefully) be able to retire my zazzle store soon. I’m much happier with it… I feel like my prior attempt at wrangling my very varied product base was as messy as my thinking about how to recommend my books. Structuring it around the quiz makes so much more sense.

FINAL (?) THOUGHTS

I went on to use Claude and Grok to vibe-code my author page, which has random mangos, a color theme that changes based on the time of day, and floating alien glyphs, and I might talk about that (but later, there are a couple more things I want to add to it). But I feel like the quiz part is behaving the way I want, and the shopify store integrates and refers to it, and this is finally solving a business problem that was a serious pain for me for years. Now, when people say “I want to buy one of your books, what should I get,” I say, “Go take the quiz! It’s at mcahogarth.org/bookrec.” Problem solved… and in a fun way!

Do I have some future features planned for the quiz? I do! I can conceivably integrate it with Shopify’s user account system so that it can track your prior quiz results and your purchases, and tell you which series you haven’t finished reading, for instance. I’d love for the ‘tell me more’ page to mention the other books in the series. I definitely want to do shirts and stickers of the archetypes because I love how the graphics turned out. Having analytics so I can see how many people are Scarred Titans versus Cheerful Neighbors… that would be fun, and not just for me…! Imagine, “You and 402 other people are Cheerful Neighbors… how good it is to have company to share tea with!” or “Only 9% of Jaguar Readers are Scarred Titans… you are in rarified company, defending the galaxy.”

The weirdest part…? I have remembered that coding stuff like this is what I used to do as a hobby. It’s fun for me to design this kind of thing and watch it come together. I love coming up with weird and tiny details that delight. The last time I felt this happy about my website was back in the stardancer.org days… and in fact, several times in the past week, when I’ve decided to check the site, I've started typing 'stardancer’ rather than ‘mcahogarth’, as if some part of me has warped back in time to the years when I was tinkering with my own backend, breaking things that Engineer Sam had to fix.

AI gave this back to me. I love it.

So, long story short: go take the quiz, if you haven’t already, and look around the shopify store. 🧡

Also, if you liked this post, consider subscribing to my locals or patreon!

 

 

 

Read full Article
gamelit 51
tonight's the night
Read full Article
See More
Available on mobile and TV devices
google store google store app store app store
google store google store app tv store app tv store amazon store amazon store roku store roku store
Powered by Locals