Episode 37: //FIXME

Preshow

Build: Xcode Treasures: Editing (part 2)

Taking another trip into the source code editor, we look at how self-documentation helps you move around your code base and find things more quickly. It starts with the symbol menu, the right-most element of the jump bar, which automatically offers quick access to every property, function, method, extension, etc. in the current source file. You can organize this further with special comments to name sections, add dividers, and include to-dos and fix-mes. Next, doc comments on symbols provide a good way to declare your code’s interface, and in Xcode you can even write your comments in Markdown to include simple styling and links. Finally, check out the immensely useful open-quickly command, which navigates to the source of any symbol, including those in Apple’s frameworks, where you’ll sometimes find a very different story from what’s in the platform documentation.

Interstitial

Play: DanMachi: Memoria Freese (again)

Last episode, I had a let’s play of “Danmachi: Memoria Freese” blow up in my face because after 10 minutes, it needed to do a 20-minute data download. So this time, I got everything loaded up to make a proper run through the early tutorial content of this game.

Moreover, I had a better grip on the material, because during the break, I went to Anime Central with my friend Mikey, who showed me the first episode of the source anime, “Is It Wrong to Try to Pick Up Girls in a Dungeon”, much of whose dialogue is recreated word-for-word in the game’s tutorial. It also gave me a better grounding in the franchise and what the game is trying to do.

Speaking of anime, the episode starts with a brief photo show-and-tell of my trip to ACen 2018.

Read: Muv-Luv Alternative, Episode 7, Part 1

With the coup d’état foiled, Takeru returns to his main task: saving Alternative IV by helping Yuuko complete the “00 Unit” (whatever that is). He wakes up back in his original world, remembering that Yuuko has sent him there one last time with an 18-hour window to meet up with that timeline’s Yuuko to get the equations her BETA-verse equivalent needs. But a full waking day in his old world means interacting his old friends under the guise of rom-com silliness, and Takeru may now be too hardened by his experiences to play the fool anymore.

Encore

Preview, Episode 37

“Now / Next / Later” bump for the next episode:

Watch the livestream at invalidstream.com/livestream, starting Tuesday May 22, 2018 at 10 PM ET / 7 PM PT (Wednesday 2 AM UTC), with pre-show videos 15 minutes prior.

Also remember that we have a Slack at invalidstream.slack.com. For an invite, email invalidstream [at] gmail.

Episode 36: Is It Wrong to Try to Download Files in a Tutorial?

Preshow

Build: Xcode Treasures: Editing (part 1)

You spend most of your time in Xcode writing code, so it’s natural to want that experience to be as pleasant and productive as possible. For this episode, we ease into editing by checking out the available color themes and where to get more. Then we look at the relevant preferences — including the ever contentious spaces-versus-tabs issue — and see how the jump bar at the top of the editor lets us quickly move between files, helpfullly teasing out useful relationships in our code like counterparts (header and implementation files) and even who calls whom.

Interstitial

Play: Play – DanMachi: Memoria Freese (partial)

Oops. As an experiment, I wanted to come in and play a game completely cold, and chose Crunchyroll’s first game localization, “Is It Wrong to Pick Up Girls in a Dungeon: Memoria Freese”. Unfortunately, after about 10 minutes of tutorial, I hit the wall where the game needed to download the rest of its data, and rather than sit on a loading screen for 20 minutes, I called a halt to the evening’s activities. So, don’t bother watching this one; we’ll try it again next episode.

Read: Muv-Luv Alternative, Episode 6, Part 9

The gambit is on. Tsukiyomi negotiates with Sagiri, leader of the coup d’état, for an audience with the Shogun, who is actually Meiya disguised as her twin sister. Sagiri accepts and the two meet, speaking from the cockpits of their TSFs. Now comes the crucial test: can Meiya convince him to stand down, or at least buy the real Shogun enough time to escape?

Encore

Notes

I’ll be (co-)presenting two sessions at Anime Central in Chicago, May 18-20, one on the Muv-Luv franchise and the other on Wake Up, Girls!

Preview, Episode 36

SCHEDULING NOTE: Now on Tuesday nights

“Now / Next / Later” bump for the next episode:

Watch the livestream at invalidstream.com/livestream, starting Tuesday May 8, 2018 at 10 PM ET / 7 PM PT (Wednesday 2 AM UTC), with pre-show videos 15 minutes prior.

Also remember that we have a Slack at invalidstream.slack.com. For an invite, email invalidstream [at] gmail.

Episode 35: My Super-Secret Password

Preshow

Build: Xcode Treasures: Debugging (part 4)

This episode looks a a completely different kind of debugging, for a different kind of problem: what do you do when your app just “looks wrong”? Or maybe it’s not handling user input correctly? For some problems, the right tool is Xcode’s various tools for visual debugging. In this example, we start with an app that has two buttons that seem to not be tappable, even though they’re connected to IBActions. One common cause of this problem is that some invisible view is intercepting the taps, and that’s a problem that isn’t obvious until you can split out the views individually, which is what “Debug View Hierarchy” provides.

Interstitial

Play: Play – Muv-Luv Alternative Strike Frontier (again)

Here’s a second look at the Japan-only mobage, Muv-Luv Alternative Strike Frontier. Not because it’s particularly good — it’s not (currently rated 2.2 out of 5 on the Japan App Store) — but because it’s symbolic of how all these franchise-based gacha / loot-box free-to-play games work. This second look goes into the card management and leveling up systems, showing how these kinds of games present a complex digital economy of currencies, limits, artificial scarcity, while all the while luring the player with exclusive new artwork or story elements featuring their favorite franchises.

Read: Muv-Luv Alternative, Episode 6, Part 8

With the one-hour ceasefire from Capt. Sagiri’s coup d’état forces nearly up, the Shogun proposes to take matters into her own hands and hand herself over to the rebels. Her stated intention is to talk them down, but Takeru suspects that she may have a more dangerous and unlikely idea in mind. Meiya proposes an audacious alternative: she’ll disguise herself as the Shogun and negotiate with Sagiri, allowing the real Shogun to escape. At worst, it sacrifices a cadet instead of the head of state. But are the long-separated twins really willing to go through with this?

Encore

Notes

I’ll be (co-)presenting two sessions at Anime Central in Chicago, May 18-20, one on the Muv-Luv franchise and the other on Wake Up, Girls!

Preview, Episode 35

SCHEDULING NOTE: Now on Tuesday nights

“Now / Next / Later” bump for the next episode:

Watch the livestream at invalidstream.com/livestream, starting Tuesday May 8, 2018 at 10 PM ET / 7 PM PT (Wednesday 2 AM UTC), with pre-show videos 15 minutes prior.

Also remember that we have a Slack at invalidstream.slack.com. For an invite, email invalidstream [at] gmail.

Episode 34: Welcome to Wet Willie’s

Preshow

Build: Xcode Treasures: Debugging (part 3)

Digging into deeper debugging depths, we show how many crashing bugs are by their nature hard to find, but how Xcode’s improvements over the last few years make it much easier. First, we start with Obj-C exceptions like arrays out of bounds, which ordinary blow you out to main.m with little idea of where the true problem occurred. By using an exception breakpoint, you can stop execution at the very line that throws the exception, thereby revealing the bug. With the Main Thread Checker, crashes that result from modifying the UI from a non-main thread are also revealed right at the line that causes them. And with the Address Sanitizer, crashing bugs caused by memory management mistakes in C can be clearly identified and fixed.

Interstitial

Play: Pinball Arcade – White Water

1993’s White Water is a fairly mellow game compared to other pins of its era. It has a wide open, two-level playfield to recreate the experience of whitewater rafting, and getting to its top prize requires working through a series of themed events and carefully managing accomplishments with an onscreen “vacation planner”. Also, you get to set Bigfoot’s feet on fire, and discover a stash of gold nuggets.

Read: Muv-Luv Alternative, Episode 6, Part 7

Capt. Sagiri and his coup d’état forces have surrounded Takeru and his allies, giving them one hour to turn over the Shogun. Takeru know she won’t be able to recover from her injuries in such a short time, so he goes to his comrades one-by-one to see how they’re all doing, and figure out what comes next.

Encore

Notes

I’ll be (co-)presenting two sessions at Anime Central in Chicago, May 18-20, one on the Muv-Luv franchise and the other on Wake Up, Girls! The current registration tier (the last one offering mailed-out badges) ends April 1.

Preview, Episode 34

SCHEDULING NOTE: Trying out a move to Tuesday nights

“Now / Next / Later” bump for the next episode:

  • Build – Xcode Treasures: Debugging (part 3) (part of a preview of my upcoming Xcode book!)
  • PlayPinball Arcade: White Water
  • ReadMuv-Luv Alternative (Episode 6, Part 7)

Watch the livestream at invalidstream.com/livestream, starting Tuesday April 24, 2018 at 10 PM ET / 7 PM PT (Wednesday 2 AM UTC), with pre-show videos 15 minutes prior.

Also remember that we have a Slack at invalidstream.slack.com. For an invite, email invalidstream [at] gmail.

Episode 33: Hello, Mr. Spiky-Head

Preshow

Build: Xcode Treasures: Debugging (part 2)

Continuing a dive into Xcode’s support for debugging, here’s a look at other powerful breakpoint features. We start by looking at the console, which you might think is just for logging output, but actually offers a command line interface to LLDB, the low-level debugger. And by using the ability to arbitrarily execute code on that command line, we gain the remarkable ability to change an app’s behavior *while* it’s running. Plus, for something more visual, we’ll see how the QuickLook button can show previews of graphic objects like images (provided you don’t crash Xcode like I do in the video).

  • Xcode on the Mac App Store
  • [I’ll post a link to the book once it’s officially announced by the publisher]

Interstitial

Play: Final Fantasy Dissidia Opera Omnia

The “Dissidia” sub-series brings together characters from the massive “Final Fantasy” franchise in an ultimate dark-versus-light battle. On consoles, the titles are wild fighting games. But for mobile, the title has been rethought as a hybrid of traditional turn-based RPG along with daily quests, limited-time events, gacha / loot box mechanics and all the rest. Is it any good? I’ve only played a little bit so far, but it sure it pretty if nothing else.

Read: Muv-Luv Alternative, Episode 6, Part 6

Just when it seems the cadets might escape the coup d’état forces, events go bad quickly. The shogun, incapable of tolerating the violent ride inside the TSF without the protection of a fortified suit, passes out, and Takeru is faced with a terrible choice: sedate her to keep moving, at the risk of possibly killing her in the process. Making things harder, he’s pulled between the orders of the American major commanding the operation, and the objections of Marimo and Tsukiyomi, who are aghast at the idea of a foreigner ordering the sedation of Japan’s head of state. And while they argue, the sound of jet engines overhead signal that a bad situation has just gotten very much worse…

Encore

Notes

I’ll be (co-)presenting two sessions at Anime Central in Chicago, May 18-20, one on the Muv-Luv franchise and the other on Wake Up, Girls! The current registration tier (the last one offering mailed-out badges) ends April 1.