The cafeteria bustled with adolescence and chatter. With morning classes behind them, friends gathered around the lunch tables, eagerly sharing food and stories. Students joked around, discussed the year so far, and indulged in random gossip.
For the first time in years, Izuku did not sit at a table alone, because he had friends!
"Hey, Mido, my man," Kaminari said, punching Izuku's shoulder as he sat down next to him. "Too bad about the class rep thing. You were just one vote away from being vice!"
"I did my part," Hagakure said, sitting across from him. Next to her sat Uraraka. "Better luck next time."
A wobbly smile bloomed across Izuku's face. "So, you two voted for me?" Kaminari and Hagakure nodded. "And so my third vote was from…?"
"That was me!" Uraraka said cheerfully, waving her hand in the air. "Guess it was just us though."
How could he express that he was already so unbelievably grateful that he had three friends willing to vote for him that it didn't matter that no one else did? This was the first time he'd ever had friends at all! Should he say that? No, that would be weird.
"Thank you so much, you guys," he said, doing his best to fight back tears.
"No problem," Kaminari said. "I gotta ask, that notebook of yours is for your quirk, right? What does 'rerere' mean, anyway?"
Oh, that. Izuku's face reddened again involuntarily. "It's short for 'reuse recorded resolution'."
Kaminari tilted his head. "Yeah, I don't know what that means, but you should have said that at the time, man! You didn't say anything, so Sero just made you look dumb. You could've turned it around so everyone would see that you're smart!"
…Huh. Kaminari was totally right, wasn't he? Izuku had screwed that up. He'd instinctively felt ashamed by all the weird things he wrote, like he was still back in Aldera where everyone made fun of him for his made-up quirk. But now he was a hero student at UA, and his notebooks were valuable assets filled with legitimate hero stuff.
He clearly needed more practice at this "being confident" thing.
"I wouldn't have beaten Asui anyway. She got twice my votes," Izuku deflected.
Hagakure shrugged. "Maybe not, but you could've beaten Yaomomo. Then we'd have two greenies for our class reps!"
Uraraka nibbled on her lunch. "I feel bad for Honenuki. He was trying to be subtle, but it didn't work. And, well, Iida wasn't trying to be subtle, and it also didn't work."
"Day three is kind of too early to make this decision. Like, I nominated Asui without thinking too much about it," Izuku admitted. "Sorry about that, Hagakure. You nominated me but I couldn't nominate you in return."
"Pfft! Don't worry about it." A mischievous gleam entered Hagakure's eyes. "By the way, Midoriya…" she said with a tone of innocence. "Please, call me Tooru. After all, you did give birth to me."
Izuku choked on his food.
Kaminari's and Uraraka's heads whipped back and forth between the two of them. "Okay, what in-joke am I missing here?" Kaminari asked.
He'd been caught off guard, but Izuku got the joke. What now? Right, this was friendly banter, this is what friends did. He would play along. "Sure, as your father, call me Izuku."
"Calling my father by his given name? Nah, I'll call you Daddy."
Never mind, playing along was a terrible mistake. "Please don't do that," he begged, but Tooru was already cackling.
Uraraka leaned over and fake-whispered to Kaminari, "You think they're going to explain, or will they just leave us in the dark?"
"Pretend you don't care. Reverse psychology and all that," Kaminari whispered back.
Tooru was still chortling away. She was way too proud of herself. Izuku rolled his eyes and turned to his other two friends. "You know how Tooru hurt herself at the exercise yesterday? I healed her, in a way. I can use my quirk to make save points, so I did it by reloading a save from before the Battle Trial started. So, it's possible, maybe, that my quirk recreated her, so…"
"I'm a new me!" Tooru chirped.
"…Yeah," Izuku finished lamely.
"Oh, wow, you were being way more literal than I expected." Kaminari threw his arm around Izuku's shoulder. "So, how's it feel to be a father at your age?"
Izuku groaned. "Don't you start now…" The girls both laughed at his suffering.
Kaminari grinned. "Seriously, though, it's going to be weird if only you two are calling each other by your given names. Call me Denki!"
"Call me Ochako!"
Izuku smiled. "Hi, Denki. Hi, Ochako." A thought came to his mind. "We're in heroics, so all of our classmates are people we'll eventually have to trust with our lives. I think we'll all become close sooner or later. Guess we're just doing it sooner."
"Look at us, one big happy family," Tooru said.
"Uh, by the way, Tooru," Izuku said. "I'm sorry for bringing this up again, but… um, in the video that Principal Nedzu showed you, it must have included the very end, right?"
"You mean the part in the infirmary? Yeah, what of it?"
Izuku swallowed. "So, you're… okay with what I told you then?"
"Am I okay that the old me was killed and I'm just a replacement Tooru? Yup, no problem at all," she said with a laugh.
…Was she being sarcastic? It didn't seem like it, but he wasn't sure. Denki and Ochako were both staring at her like they couldn't tell if this was another joke or not.
Tooru sighed. "I'm serious. Izuku, dude, I get where you're coming from, but you're way overthinking this. By your logic, every single moment of every day we're continuously murdering the person we were a second ago. After all, they don't exist anymore, right? The 'me' that just said that sentence is dead now. The only things that are real are snapshots of the present." Tooru waved her hands around. "Yeah, sure, your quirk makes things confusing because you're reordering cause-and-effect in a way our brains aren't used to. Like the 'me' that exists right now originates from before the 'me' that a past version of you remembers once knowing. But when you zoom out, every moment always has a 'me', and I'm still me in the present, the same as I've always been. I feel fine, so what's the problem?"
Well, that was one way of looking at it. And she accuses me of overthinking this? Izuku thought, bewildered. "Uh, that's good. I'm happy to hear that?"
"That's deep," Denki said. Tilting his head, he continued, "Well, I think it is? It sounded deep, at least." He faced forward. "Hey, Ochako, please don't tell me you're a smarty-pants like these two. I don't want to be the only dumb friend here."
Ochako giggled. "You're not alone! Dumb friends unite!" They high-fived over the lunchroom table.
Did Denki say that as a joke, or was he secretly insecure like Izuku was? Man, being social was going to be so much easier once he stopped having to overanalyze every interaction. "You're not dumb. No one here is dumb. Like, we all passed the written part of the entrance exam. Anyone who passed that nightmare of a test isn't allowed to call themselves dumb."
Like a synchronized performance, all three of his friends threw back their heads and groaned.
"Don't remind me of that test, man!"
"I thought I failed before even getting to the physical exam!"
"I was keeping track. I couldn't have gotten better than 60%," Ochako moaned. "But All Might praised me for getting a great score in my acceptance video. What did they want from us?"
Complaining about school—truly the most universal teenage bonding experience. The mood lightened as the four of them continued to chat, jumping from topic to topic without any real purpose, enjoying spending time with each other.
It was so nice to have friends.
—
"Tooru, can we talk quickly?" There were only a few minutes left on their lunch break. Izuku caught up to Tooru when she started heading back to class.
"Sure, what's up?"
Right, how should he explain this? "I know you said you were fine with me reverting you yesterday, but there's more to it. Um, as long as my quirk is tracking you, I can theoretically use it on you whenever. Like, right now, if I wanted to, I could send you back to right before the Battle Trial, and you'd forget the last day—not that I'd do that! I wouldn't! But unless I specifically untrack you, I could. I just haven't untracked you yet because then I wouldn't be able to see you anymore, but that's kind of a dumb reason. So, uh, I figured I should probably untrack you, unless you think otherwise?"
"You wouldn't be able to see me anymore?" she said quietly. Then she spoke in a normal tone of voice, "I still need to practice using my strength without hurting myself. Not that I want to rely on you, but it might not be a bad idea to have a failsafe in case I destroy my bones again. So, I don't mind you using your quirk on me."
Izuku hesitated. "I don't think… um, are you really sure about that?"
"What, you think I can't make my own decisions?"
"No, no! That's not what—"
"Relax, relax!" Tooru interrupted. "Sorry, I didn't mean it like that. I just… I don't like thinking about what would've happened if you weren't able to heal me yesterday." She rubbed her arm unconsciously. "And also… well, I don't mind. It's fine."
Izuku bit his lip. "Right, well… the alternative is maybe I can make a save point of you every day, so even if the worst happens you'd never lose more than a day, and likely not even that much." He put a hand to his chin and thought about it more carefully. "Technically I wouldn't be making a proper commit, because then you'd be reset if I switch away from my current branch and switch back, so instead I guess I'd re-stage you every day. Although that means I can't revert you to earlier than the most recent re-stage, but you wouldn't want that anyway… and I'd need to unstage you before making any other commit so that you're not included by accident, so maybe I can make a throwaway branch that only tracks you, make a single commit there, and then I can cherry pick from the branch later… sorry, you don't understand a word I'm saying."
"Nope! But it sounds like you do, and that's what matters. So, how does that work? Should we meet every morning so you can make a backup me?"
"Um, no. My quirk works remotely. So I'd just do it in my own time. Once I'm tracking something, I can do whatever I want to it, whenever I want. That's how I summon things to me, and stuff."
"Oh." She stared at him in thought. "…Does that include making things disappear, like the zero-pointer?"
"…Yes." He swallowed and had to look away.
Tooru was silent for a long time.
"Dude, your quirk is scary," she said eventually.
"Look, this is why I wanted to untrack you!" Izuku exclaimed.
"I… no. No." She looked him in the eyes. "It's fine. I trust you." Her mouth twitched like she couldn't decide whether to smile or frown. "No point in not trusting you, frankly."
"You can change your mind whenever! Just let me know, anytime, and I'll stop!"
"Sure. If I do, I'll let you know. Now, c'mon already! Class is gonna start any minute and who knows what Aizawa will do if we're late!"
"Right, okay!"
That could have gone worse, he supposed.
—
It was late evening. The sun had already set; the surroundings were illuminated only by a waning glow at the horizon. Izuku was at the local park carrying a small bag containing stuff that he'd scrounged up from around his apartment—scissors, a roll of string, and a package of small S-shaped hook hangers.
He didn't mean for it to get this late. At Aldera, he could get most of his homework done during the school day, but the accelerated schedule at UA (due to half the school day being devoted to hero training) meant that between school, training, exercise, homework, dinner, and other various chores he found himself with very little free time. He wasn't used to this.
Regardless, he had a quirk experiment planned for tonight, and he was damn well going to do it! On the bright side, the park was empty this late at night, so he wouldn't get in trouble for public quirk use.
One aspect of his quirk that he'd failed to take advantage of so far was multiple degrees of relativity. When he added an item to his quirk, by default the virtual object would exist in a static, unchanging position relative to the Earth's rotation. But if he added an object while it was touching another object that he had previously added to his quirk, then the virtual object would exist relative to the object it was touching. That was how he summoned items to himself. While he couldn't anchor objects to his own body (because he couldn't add himself to his quirk), he could anchor objects to his clothes, which was pretty much the same thing in most circumstances.
But that was only one degree of relativity. One object was anchored to the Earth, and a second object was anchored to the first object. What if he kept going? What if he added a third object relative to the second, a fourth relative to the third, and so on? Were there any interesting things he could do with that?
Leaving the park's walking trail, he dropped everything he was carrying in an open grassy plain. What should this test be called? "git switch -c project-skyward-string," he decided.
Getting to work, he reached a hand into the air and then measured out a length of string that matched the distance between the ground and the tips of his fingers. He cut about ten lengths of string and tied the ends of the first piece to two hooks.
All right, so to create a chain of relative positions, the order in which he added the objects mattered. He left one hook on the ground. "git add hook." He then picked up the other hook and held it as high into the air as he could reach. "git add string; git add hook." With the virtual objects now in place, he could relax his arms and make a commit of this setup. "git commit -m "Step 1 of Project Skyward String"; git tag s1." By tagging this commit with the name "s1", he could easily refer back to it later.
Izuku picked up the next piece of string he'd prepared and tied it to the second hook. He then picked up a third hook, tied it to the other end of the string, and held it in the air as far as he could reach. "git add string, git add hook." Because he was only touching one set of items at a time, it was fine that all of these objects had the names "string" or "hook" because touching the item made it clear which one he was referring to. "git commit -m "Step 2"; git tag s2."
Here was Izuku's idea. Usually, Izuku could never anchor an object to somewhere he'd never been in the first place. He could hold a hook above his head, and that was the highest that the hook could be. If he reached into the air, saved a commit, and then applied the commit, then the hook would reappear at that same elevation before falling to the ground.
But if each hook was saved relative to a previous hook, then the height would be determined by the elevation of the previous hook in the sequence. Usually, objects had to be touching to anchor them to each other, but that was what the string was for. A hook was anchored to a strand of string, which was anchored to another hook, which was anchored to another piece of string, which was anchored to a third hook…
In theory, he could apply each commit in sequence, and each hook's height would compound on the previous one. The first would appear six feet in the air, the second would appear six-plus-six-equals-twelve feet in the air, the next hook eighteen feet in the air, and so on, not accounting for gravity pulling the whole thing downward at the same time. It didn't necessarily have to go straight upward either because it was all relative to the initial anchor on the ground that he could angle in whatever direction he wanted.
Strands of string connected each of these hooks, thus, "Project Skyward String".
It was like an extendable grappling hook, except way more finicky, and much stupider.
This was just to test the theory. Nothing that he was doing tonight would be directly practical for hero work. Izuku repeated the same process of tying the hooks together, holding one in the air, committing its relative position, and then continuing onto the next one until he had finished assembling his long piece of rope made of ten strands of string linked by hooks.
He'd tagged each commit in sequence with a step number, "s1", "s2", etc. Now he had to rapidly checkout each tag one after the other. "git checkout s1."
» Note: switching to 's1'.
» You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch.
» If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example:
» git switch -c new-branch-name
» HEAD is now at 51eae0e Step 1 of Project Skyward String
A warning message immediately appeared in his mind's eye. The heck? Behind the warning, he saw that the first hook appeared six feet in the air, the string hanging down below it, before immediately falling back to the ground once gravity caught up. He wasn't really paying attention because he was distracted by the warning. What had gone wrong?
…Oh. Oh, it was this stupid warning again! Izuku facepalmed. He forgot about this. It happened whenever he switched to anything that wasn't the most recent commit in a branch, and it was really annoying! It didn't have anything to do with his experiment, it was just a bother that he'd have to put up with.
All right, now that he knew what to expect, it was time to try again. This time he'd ignore the warning and keep reciting commands like he meant to do. "git switch main." That reset the experiment so that he could apply the first commit again. "git checkout s1."
» Note: switching to 's1'.
» You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch.
» If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example:
» git switch -c new-branch-name
» HEAD is now at 51eae0e Step 1 of Project Skyward String
While the hook was still in the air, he quickly said, "git checkout s2."
» Note: switching to 's1'.
» You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch.
» If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example:
» git switch -c new-branch-name
» HEAD is now at b2db0aa Step 2
You have to be kidding me! It's seriously going to warn me for every single step? "git checkout s3."
» Note: switching to 's1'.
» You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch.
» If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example:
» git switch -c new-branch-name
» HEAD is now at 7f883d2 Step 3
Oh my god, GO AWAY!
Izuku's mind was being swarmed by popups. Behind all the popups, it looked like his idea was actually working. The string had been lifted about fifteen feet in the air, and Izuku could've kept going to lift it higher, but he didn't bother continuing. The string and hooks fell to the ground with a quiet clang.
This wasn't workable.
Imagine if he were facing a villain, and then he got blindsided by a whole bunch of overlapping popups appearing in his mind. He couldn't afford to be distracted or waste time closing popups when he needed to focus on fighting villains or saving people.
Augh! This was so stupid! He didn't need the warning, so why was his quirk insisting on it?
Was there an alternative way to do this that wouldn't result in the popup? Izuku put a hand to his chin and considered the problem.
The issue that the message was complaining about was that, by switching to arbitrary commits, he was going "back in time", and so any changes he made would be ignored in favor of the most recent commit made to the branch. To fix that, instead of swapping between commits in the commit history, he needed a way to apply the changes that were made in one commit to his current state. That would keep everything in a nice, linear timeline.
He thought about it for a while. He'd been using his quirk for nearly a year now; it shouldn't be too hard to think of a command that would do what he needed.
Eventually, he nodded to himself. He had an idea. "git switch main," he said to reset everything. "git diff s1." This command meant "show me the difference between my current state and the commit 's1'."
A holographic hook and string appeared in his view hovering in midair where he had raised in over his head. However, unlike usual virtual objects, these had distinct green outlines around them. At the same time, the physical hook and string lying on the ground had visible red outlines around them.
The "diff" command showed a visual preview of what had changed between commits. The old version was shown in red while the new version was shown in green. Thus, this was saying "these objects, currently in this red position here, will move to this green position here if the commit is applied".
By itself, this wouldn't solve Izuku's issue. It was just a visual preview, not the actual thing. But "diff" had a secret extra feature: You could save the difference between two things as its own item (called a "patch" by the manual), and then apply that patch to turn the preview into reality.
"git diff s1 » p1." This created the patch object, which he called "p1".
Now to apply it. "git apply p1."
The hook teleported six feet into the air, pulling one end of the string along with it, and then fell to the ground. The result was exactly the same as the previous test, except this time there was no stupid warning message getting in his face! Woo!
(…Jeez, his quirk took so much effort to do anything…)
Izuku spent the next several minutes creating patch objects for the differences between each of the tagged commits, labeled "p1" through "p10". This whole test was turning into a bit of a hassle, but hopefully it would be worth it.
Done! All right. It would work this time! "git apply p1." The hook teleported into the air and began to fall. "git apply p2." The second hook also teleported upward… but the first hook had already nearly fallen to the ground, so at best the second hook only got up to seven feet in the air. "git apply p3," Izuku said as quickly as he could. The third hook continued the pattern, teleporting into the air but not gaining any meaningful height because the hook that it was anchored to had already nearly reached the ground thanks to gravity.
Izuku stopped. He literally couldn't speak fast enough for this to work.
But… but… this didn't make any sense! During his first test, he saw the structure reach at least fifteen feet in the air. He only stopped because the popups were bothering him. He wasn't speaking the commands any faster than the previous time.
Shouldn't applying a commit and applying a patch of that commit do the same thing? He didn't get it. What had changed?
Izuku fiddled with the pile of string by his feet, thinking through the problem carefully. A patch of a commit only included the change that was introduced in that commit itself. Whereas if he checked out a commit directly, then that also included the history that led up to that commit. The difference between them was that a commit was an event within a timeline, whereas a patch was an event unrelated to anything else.
So, in his first experiment, he wasn't speaking the commands any faster than his second time. That meant that the hooks must have been falling at the same rate, but for some reason, it didn't affect the height of the structure. The only thing that made sense was that each time he checked out a commit, it reapplied all the commits that had led up to that point since it was part of a timeline, and by definition, a timeline had to include everything that had happened.
Was there a command that he could use to sequentially apply all the commits on a timeline all at once?
…
…Oh my god, I am so dumb.
If this worked, he was going to be so mad. Well, he'd be happy, but he'd also be so mad.
Izuku took a few steps back from the pile of string and hooks on the ground. "git switch main," he said to reset the experiment for hopefully the last time.
Now for the moment that would prove whether or not he was the stupidest person on the planet. "git switch project-skyward-string."
In an instant, the string sprung skyward. For a brief moment, the structure of string and hooks reached about fifty feet into the air before gravity reasserted itself and it all fell back to the ground.
It worked. Switching to a branch meant to jump to the most recent point on some given timeline. In order to get to the end of a timeline, everything that was included in that timeline had to have happened as well, because that's what a timeline was. All of it was applied at once. And since each hook was relative to the previous hook, the heights between them added to each other until the whole thing reached fifty-plus feet into the air.
Man, Izuku wished he could feel proud of himself. His experiment was objectively a success, but he was still berating himself for his tunnel vision. If he forgot how branches worked, then what other incredibly obvious things was he forgetting about right now?
Right on cue, the waning sunset finally surrendered to the dark. The faint glow at the horizon had just faded enough that Izuku's night vision could no longer keep up. The park was illuminated only by distant street lamps and the gentle nighttime starlight.
Izuku looked around the park he was in, barely able to see anything around him.
…
What the hell was he doing flouting public quirk laws in a random park in the middle of the night?
He was a UA student. UA had entire facilities devoted to quirk training. He could be doing all this with proper equipment and a whole staff of Pro Heroes ready to help him with anything he needed. Just earlier this morning he had recommended to Tooru that she should take advantage of UA's facilities to find how how her body reacted to different light frequencies.
Izuku's head fell into his hands, ashamed and embarrassed over his absolute stupidity.
He could blame the oversight on habit. After all, he'd been experimenting on his own for most of the previous year. It made sense that it might not immediately cross his mind that he didn't need to do everything alone anymore.
That explanation didn't quite ring true to him, though.
Izuku stared up at the night sky. It was a new moon, but the sky was bright. The starlight shone with unusual intensity. He could almost picture the rays of starlight shining down around him.
He held up his hand, palm facing upward. He imagined a ray of starlight striking his palm. "git add starlight."
Oh, shit. Fuck. That worked. Why did that work?
Izuku continued to stare up at the universe, not sure what to do next.
"git diff."
The night sky burst into a kaleidoscope of reds and greens. His quirk was trying to show him how the starlight had changed since he added it a few seconds ago… whatever that meant. The "diff" starlight was brighter than the normal night sky. Was it because the diff collected all of the starlight that had been emitted since he added it, shining all at once?
Cumulative light. He was reminded of how Tooru's quirk gathered and stored light that passed through her, converting it into energy.
"git diff » starlight."
Now he had some concentrated starlight stored as a patch object that he could use to briefly brighten the night sky in the future. Not that he had any earthly idea why he'd use it.
…
Izuku didn't entirely lack self-awareness. Why had he spent so much time tonight screwing around with compounding relative motion and diff patches and all the rest of it? He knew why. He recognized that the reason he was so interested in all these exotic, finicky usages for his quirk was because it helped distract him from the big, obvious, dangerous, horrifying things he could do instead.
There was a reason why he intuitively avoided doing his quirk experiments where smart, knowledgeable, helpful Pro Heroes could see him. He didn't want people to know exactly what he could do with his quirk, and he didn't want anyone to challenge him on what his limits actually were.
It was nice to pretend that his quirk had limits. Achieving cool things by working around those limits was fun.
…
What if, right now, he said "git rm starlight"?
Even worse, what if he said "git rm Earth"?
He would never dare do it. He would never dare try it.
…
"Dude, your quirk is scary," Tooru had said earlier today.
She didn't know the half of it.
…
Izuku loved his life right now. He was having so much fun. He loved experimenting and pushing the limits of his abilities. He was a student at UA. He was going to be a hero. He had friends that he liked and who liked him in return! He was happy! He wouldn't trade what he had right now for anything in the world. He was so grateful for everything his quirk had granted him.
But deep in his heart, in a dark place that he never wanted to admit aloud, he knew the truth.
He was so scared of his quirk.
