Episode 14: Deculture Club


Build: iOS 10 SDK Development, Chapter 6 (part 3)

Continuing our series on iOS SDK Development, we finish out our testing chapter with a look at how to perform UI tests. These are tests that, rather than interacting with parts of the code programmatically, actually perform simulated taps, swipes, and other interactions, to verify that the user interface works as intended. They also happen to work nicely as integration tests.


Play: Uta Macross: Smartphone Deculture

Time for another rhythm action game from Japan’s App Store, this time a lovingly-rendered tribute to the long-running “Macross” anime franchise. In “Uta Macross”, the idols of Walkure and rockers of Fire Bomber are brought to life with surprisingly-nice 3D graphics, and a small but growing catalog of songs from the series.

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

Restarting where he began “Muv-Luv Unlimited”, Takeru settles into life at Yokohama Base, and vows to speed up his graduation, convinced it’s his best chance to help Alternative IV succeed before the December 24 deadline. Problem is, he keeps exposing himself as a man who knows too much.



  • invalidname will be presenting a session at Swift By Northwest, in Seattle, October 27-28.
  • We now have a Slack for chat. Send email to invalidstream [at] gmail for an invite. Also, follow @invalidstream on Twitter for announcements of upcoming shows.

Preview, Episode 14

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

Watch the livestream at invalidstream.com/livestream, starting Friday September 22, 2017 at 10 PM ET / 7 PM PT (Saturday 3 AM UTC)

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

Episode 13: How I Spent My Summer Vacation


Build: iOS 10 SDK Development, Chapter 6 (part 2)

Continuing our series on iOS SDK Development after a summer hiatus, we return to the topic of unit testing. The previous video made a simple test of the podcast UI, but now we want to ensure that tapping the play button actually starts playback. Because of the inherent asynchronicity of downloading and playing internet audio, this is trickier than it looks: the solution is to create “expectations” that wait for tests to pass or fail.


  • Geometry Wars 3 trailer

Play: Geometry Wars 3 Dimensions Evolved

Back from the summer hiatus and it’s time to game. Unfortunately, iOS 11 breaks all our old 32-bit apps, so we need to step into the modern era with games that are actually being maintained. We start tonight with the beautiful two-stick shooter from Sierra/Activision, Geometry Wars 3.

Bonus: How I Spent My Summer Vacation, 2017

The stream’s been gone for four months, an unfortunate result of Life Gets In The Way.

While I wasn’t able to stream, I did go to two anime conventions: Anime Expo in Los Angeles, and Crunchyroll Expo in 2017. This video is a slideshow of some pictures I took at each.

Read: Muv-Luv Alternative, Prologue and Episode 1, Part 1

Currently rated the #1 visual novel of all time, Muv-Luv Alternative comes out on Steam on September 18. Kickstarter backers got the game three weeks ago, and tonight, we start our playthrough. If you watched the Muv-Luv Unlimited streams in spring, get ready for Takeru to be plunged back into the world of the BETA, but this time with advance knowledge of how things will play out, and a determination to keep history from repeating itself.



  • invalidname will be presenting a session at Swift By Northwest, in Seattle, October 27-28.
  • We now have a Slack for chat. Send email to invalidstream [at] gmail for an invite. Also, follow @invalidstream on Twitter for announcements of upcoming shows.

Summer Hiatus

So… yeah, invalidstream.com has kind of gone dark recently, huh?

Sorry, I feared this might happen. It’s just been a real triple-whammy in my personal life the last few months, with a lot of time AFK for an ill parent, and then super-high-maintenance ASD kid. The latter is a real problem in the Summer, as the neighborhood gets noisy and the nights are crazy long. Basically, all the evening time that had been going into prepping invalidstream episodes instead goes into dealing with his problems. Well, that and writing another book, but that’s something to talk about another time.

Anyways, at this point, it’s obviously time to just accept that the entire Summer is a scratch for livestreaming, and I’ll plan to restart in September, after everyone’s back in school.

This delay does mean that the iOS 10 book material will be a little dated (but not that bad), but there are still lots of games to play, plus the release of Muv-Luv Alternative has gotta happen sooner or later, and that’ll blow the minds of all 5 of you who saw any of the Muv-Luv Unlimited streams.

In the meantime, enjoy a tease of the usual mid-show Let’s Play weirdness… this is a Macross-based idol music game that just hit the Japan iOS App Store.

Anime Central 2017: Muv Luv: Eight More Minutes of Death

As promised, here’s the re-recording of the panel that I planned to present at Anime Central 2017, but had to cancel out of due to a family medical situation.

As for regular invalidstream episodes, I’m still trying to figure out how to restart, now that things are almost back to normal in my personal life. Chances are that I’ll need to stream on a different night of the week than Friday, at least for the summer, but I’ll make that decision once I’m ready to start back up (which will be after I get back from Anime Expo, June 30 – July 4).

Announcement: Episode 12 do-over

We had a good time last night, streaming iOS unit tests part 2 (asynchronous testing) from iOS 10 SDK Development, playing the Namco-esque throwback games Electro Master and Hungry Master, and part 3 of Clannad. Unfortunately, I don’t have any videos to post this week.

Screenshot from June 2, 2017 stream recordig

I record a local archive during the stream which I then edit for the videos. As an experiment to improve picture quality, I went from 720p to 1080p this week. This apparently led to a problem where I have a number of dropped frames in the video and audio, and it gets out of sync. This glitch happened a few times in in previous episodes while using Wirecast 7.6, so I edited around those, and reverted to Wirecast 7.5 for this episode. But this recording has far more dropouts than I’ve ever hit before; I guess switching to 1080p (more than twice the bandwidth of 780p) is also a trigger? Maybe it’s just too much video for my six-month-old Mac Pro? At any rate, there are far more dropouts and sync problems than I can fix in FCPX and have the video be in any way watchable.

Then again, I had a few unforced errors in the presentation of the iOS material anyways, so tell you what we’re going to do: assuming my flight back from WWDC / CocoaConf Next Door next Friday gets me home on time, we’ll simply do Episode 12 over again: same preshow videos (even though the Sailor Mars – Wonder Woman Trailer Parody AMV will be a little less timely), same iOS lesson on expectations and asynchronous unit testing, same games, same choices in Clannad (after all, we still want to meet Best Girl, the one who beats up the bikers).

So, barring any further complications in technology or my life in general, look forward to that on June 9. With fewer tech errors. 🤞

Bonus Episode 1: Not While We’re Here

Ongoing family medical crisis has kept me from doing a regular episode, but I did want to do something… so here’s a mini-episode that replays the finale of Muv-Luv Unlimited to get a different ending than the one we saw in episode 9 (the one that Evan, the Lead Editor of Muv-Luv‘s English translation, insisted via real-time direct message that we take).

Every ending to Unlimited is a downer; at the end of this video, I explain why I like this one better, even if it’s not canonical.

Also, this episode was done to continue research on a bug I’ve encountered with Wirecast 7.6 where a glitch at some point will drop a small number of audio and video frames from the locally-archived recording, and cause the audio to be badly out of sync thereafter (more info in the Wirecast forum). Fortunately for my research, but unfortunately for viewership, the glitch happened again (around 13:35), so that’s present in this video, but I added a second of silence to resync the audio for the rest of the file after that.

Announcement: No episode Friday, May 26

As anticipated by last week’s announcement, I’m not going to be able to do an episode this Friday. The family medical situation mentioned last time is still in effect, among other obligations that make sequestering in front of the webcam for two hours a dangerous indulgence.

I hope to be back Friday, June 2. In the meantime, I may use an evening next week to do a one-off special recording of either the Muv-Luv panel I was supposed to present at Anime Central, or the Muv-Luv Unlimited ending route I backed out of in episode 9. These wouldn’t be live; I’d just record them locally and post to Vimeo and the invalidstream.com site. (Also, this isn’t to imply that I’m more interested in the visual novel content here; it’s just that I want to do the iOS 10 SDK Development lessons in the regular episode flow, and not out-of-band like these specials would be).

Looking further out, on Friday, June 9, I get back from CocoaConf Next Door and WWDC week at 4PM, so it’s technically possible I could be ready to stream by 10PM; it’s mostly a question of whether I actually get home on time and if I build the preshow and episode documents the preceding weekend. So… maybe?

Anyways, with any luck, I’ll see you again next week.

Announcement: No episode Friday, May 19

I was already planning not to do an episode this Friday, as I was scheduled to be at Anime Central, where I was going to be presenting a panel on the Muv-Luv franchise.

However, a medical emergency in my family has come up, so I’m not going to ACen, nor am I going to be able to do the stream this week. In fact, it’s highly unlikely I’ll be able to do a stream on Friday, May 26 either.

I may do a one-off mini-episode at some point to run through the ACen panel. I can’t say yet when regular episodes will be able to resume.