Work Text:
FAILED tests.py::test_single_cancellation - TypeError: object of type 'int' has no len()
=== 1 failed, 26 passed in 0.68s ===
Again?! thought Iroha, staring in frustration at the IDE’s output log. I already fixed that, didn’t I? Why is it back?!
Ugh… The library’s closing in less than half an hour, too. If I don’t get this all working by then, I guess I’ll keep going on the train home… It’s going to be so embarrassing if I can’t finish this today. I have other final projects due soon…
How did I end up here? How did I end up struggling with something that’s supposed to be so basic? After all the faith everyone had in me…
That late night in Tsukuyomi a couple years ago, when Iroha’s big idea first took shape in her mind, it had seemed straightforward enough. Kaguya could control a virtual avatar body as if it were naturally her own, so why not a physical robot body? Like one of those experimental realistic androids, but even more advanced and refined, with sensors that emulated all the different human sensory organs in detail? That way, Kaguya could feel Iroha’s warmth again, eat pancakes with her again, be fully with her again not only in Tsukuyomi but in the real world. Just like Kaguya wished for. Just like they both wished for.
Complications had soon arisen, though, after Iroha started trying to concretely plan out a future in pursuit of that happy ending. Research and development always needed funding, and despite Kaguya being the de-facto head of a major entertainment-tech company, she deliberately kept its profit margins tight so Tsukuyomi could be as widely and cheaply accessible as possible. That was something she could choose to compromise on, but both she and Iroha felt iffy about taking that approach just for their personal benefit.
So Iroha would plan on looking elsewhere for R&D funding. But that raised another issue: “Help me restore my alien girlfriend’s disembodied digital soul to a proper physical form” wouldn’t make for an effective investment sales pitch. If Iroha was going to pour potentially hundreds of millions of someone else’s yen into developing a robot that reproduced not only the appearance but the experience of a human body as closely as she and Kaguya wanted, she’d need a more broadly persuasive justification.
Hence, the idea of pitching the new android design for eventual mass production as a human-operated telepresence robot. The android bodies could be used recreationally by people with severe physical disabilities that left them housebound – a category into which Kaguya herself fell, in a sense – or by people who just wanted to play or experiment with having a different sort of body in the real world. Now Iroha and Kaguya were getting somewhere – but with the new complication that, in order for humans to make use of all of the androids’ senses, they’d need interface devices up to the task.
The smart contacts patented and manufactured by Kaguya’s company were by far the most advanced VR interfaces in the world, thanks to electromagnetic field manipulation tech – secretly reverse-engineered from Kaguya’s ship, she’d revealed to Iroha – that let them interact directly with human brainwaves, making handheld controllers optional and sometimes outright obsolete. The interface was still far from full sensory immersion, though – only able to induce crude pressure and motion sensations, alongside visuals displayed physically on the contacts and audio when paired with earbuds.
Kaguya could tell that the basic design of the neural interface tech had a lot of room for improvement, but her lack of a proper body made it difficult for her to experiment with and refine it, and she’d also described herself to Iroha as “not really a hardware person” aptitude-wise. So before Iroha could begin developing the androids in earnest, she’d need to spend time improving on Kaguya’s interface designs – although funding for more immersive VR, at least, couldn’t be hard to come by.
From there, Iroha’s path forward was clear. She’d keep her sights on Tokyo U – without a doubt Japan’s best research university, both overall and for her specific goals – but aim for the Mechanical Engineering program with a focus on both robotics and human interfaces, and take advantage of all of the research opportunities she could as an undergrad before advancing to graduate programs that’d give her more control over her own research agenda. The plan excited Kaguya, of course, but just laying it out (minus the alien-girlfriend part) also managed to impress Iroha’s second-year homeroom teacher and even her mother – the first time in forever that she’d shown pride in anything Iroha did. And when Iroha received her hard-earned Tokyo U acceptance letter, her teachers, Roka, Mami, Kaguya, and even FUSHI had all congratulated her and cheered her on – sure that they were witnessing the start of something wonderful.
Before Iroha could begin her engineering education proper, she’d need to spend three semesters in a broader science-focused liberal arts stream – such was the structure of Tokyo U’s undergraduate program. She’d been trying to make the most of it, though, in terms of both grades for her record and her choices in electives – including computer programming courses, necessary precursors to working with the fancy algorithms involved in neural interfaces. And by any objective standard, she’d been juggling it all quite well…
…Until, that is, her second-semester programming course assigned this final project, requiring her to design and implement a multi-feature software system with only specifications for its external behavior to guide her. Suddenly, she was finding herself floundering, trying to squash a seemingly endless parade of bugs – like she’d exceeded a hard limit on how much complexity she could mentally handle. And to add insult to injury, the project’s “setting” was designing software for a restaurant to keep track of customers’ orders – and the behavioral specifications, Iroha could tell without a doubt, had been written by someone who’d never worked a day in a restaurant.
Guided by the latest error message in the output log, Iroha spent a couple minutes reviewing her code until she felt like she had a good idea of the error’s cause. She added a few lines to fix it, hit the Run button for the testing module with fingers mentally crossed, and…
FAILED tests.py::test_single_cancellation - KeyError: 3
FAILED tests.py::test_duplicate_cancellation - TypeError: can only concatenate list (not "int") to list
=== 2 failed, 25 passed in 0.70s ===
Iroha found herself biting back tears at the sight of the laptop screen. Was this really her limit? If she couldn’t wrap her head around this second-semester material, how could she ever manage to innovate in biomimetic robotics or brain-computer interfaces?
She thought of Kaguya, who she hadn’t had the heart to so much as text all day. She thought of Kaguya’s joyful tears when Iroha had first promised her that future happy ending. She thought of how Kaguya always spoke so effortlessly of their real-world reunion as a when and not an if, not a sliver of doubt in her mind that her loving, brilliant, determined Iroha would make good on her promise. She thought of how crushed Kaguya would be inside, even as she tried to stay strong and reassuring, if – or maybe when – Iroha had to admit to her, I can’t do it. I’m sorry.
In the end, you don’t have what it takes to carve your own path in life, do you? came a voice from the back of Iroha’s mind. You’ve always been stubborn and defiant, but too weak to see it through. You refused to settle for the prudent path, and now you’re being devoured. Are you surprised? You have no excuse for that.
It sounded a lot like her mother’s voice – the countless scathing lectures from throughout her childhood reverberating inside her, even after two straight years of absence on the outside. She wished she had something to say to repudiate it – but what could her first-semester successes prove now?
Iroha was pulled away from her brooding by the sound of the library room’s door opening – maybe one of the few other students left in here finally calling it a night? But no – as Iroha glanced over, she saw a new person entering the room. And that person was, embarrassingly enough… Yui.
Iroha had met Yui at a “women in STEM” student event she’d tried out last semester. Yui was a year ahead of her and going for the Mathematics program, but an avid VR gamer and a seasoned hobbyist game programmer; she’d taken an interest in Iroha’s neural-interface ambitions, Iroha had been curious about her hobby projects and looked up to her for her programming experience, and they’d been in regular contact ever since despite never sharing a classroom. Iroha had admitted her final-project stress to Yui when they were talking this morning, so Yui was probably here to check up on her – in disregard of Iroha’s sense, irrational as it may have been, that someone with her high aspirations should be able to handle all of this independently. And sure enough, Yui quickly spotted Iroha at her usual library table and approached her, speaking only when she got close so as not to be a volume nuisance.
“Hey there,” Yui said with a slightly concern-tinged smile, resting a hand on the back of Iroha’s chair. “How’s progress on everything?”
You really didn’t have to come over here just for me, Iroha wanted to say – but she knew it was much too late for that. And if there was even a chance it could make a difference for Kaguya’s fate… then she’d swallow her pride and let Yui try to help.
“Not bad overall,” Iroha said, voice kept low. “I’m still more or less on schedule. But… I’m having a tough time with the CS project.”
“Can I see your code?” Yui asked.
“…Just as long as you don’t tell me the fix for anything,” Iroha said. She rotated her laptop toward Yui.
Bending down in front of the laptop, Yui spent a minute or so scrolling through Iroha’s code and clicking from file to file. “Okay, yeah, this is pretty spaghetti. You’ve been trying to patch out bad behavior in your individual methods, but you haven’t really been restructuring anything, huh?”
“Restructuring anything…” Iroha repeated. “I guess I’ve been worried about taking too much time going back to the drawing board.” Although now that she put it into words, her current approach clearly wasn’t earning points for time-efficiency either.
Yui hummed in acknowledgement. “I think that’s what you’re gonna need to do, though. Here’s my advice: sleep on it, and then tomorrow, start rebuilding the codebase from scratch. Use what you’ve learned from the problems you’ve been having to make the design cleaner next time. If the fundamentals are solid, the bugs will be shallower and easier to fix.”
Iroha frowned uncomfortably. “I do have other final projects to finish, though…”
“Do you think you can get any extensions?” Yui asked, eyes probing Iroha’s expression. “‘Cause really, there is no shame in asking for them. Happens to the best of us.”
Iroha sighed in defeat. “I’ll ask my profs tomorrow. Thanks, Yui.”
“For sure,” Yui said. “Here, you want to walk to the train station together? I know I’ve got nothing left to do on campus this late.”
“Uh… sure,” Iroha said, managing an appreciative smile. “Thanks.” She closed her laptop and returned it to her bookbag lying on the table.
As Iroha walked side-by-side with Yui through the cold January evening, turning her advice over in her head… she had to admit it was feeling more and more sensible. After all, placing all of her hopes into one rigid plan… that wasn’t how she’d come as far as she had. That wasn’t how she and Kaguya had come as far as they had together.
When Iroha, Roka, Mami, and Black OnyX had failed to drive the Lunarians off and stop Kaguya’s capture at her graduation concert, Iroha had sunk into despair for days on end… but then she’d picked herself back up, completed the song that had become special to Kaguya and her both, sung it to the far-off Kaguya with the bracelet she’d left behind in hand – and reached her. And then when Kaguya realized she’d taken too long in Earth time getting the Lunarians off her back with work, she’d stolen a time-traveling ship so she could properly spend a lifetime with Iroha. When she instead crashed eight thousand years in the past, she’d waited all that time to meet Iroha again. And when Iroha came face-to-face with the truth of a Kaguya reunited with her in soul but not in body, she’d committed herself to making her a body, expanding and revising that plan with further thought until not even her mother could look down her nose at it.
Not that Iroha needed her mother’s approval for her career path, though. She wasn’t going to place more of her hopes for happiness into that plan than it deserved. She’d been putting in her half of the effort to keep their family bond intact, of course – but she knew better by now than to let the whole of that burden fall on her shoulders. And, in spite of what her mother had worked to drill into her… she hoped she was at least gradually learning that lesson for other burdens too.
