📱

Get Our Mobile App

Take your business learning on the go!

Download on the App StoreGet it on Google Play

My 24 hour app development rollercoaster

Adam Lyttle7:36

Transcription

You ever had one of those days where nothing goes to plan, but it ends up being one of your most inspiring days ever? That was my day yesterday. I woke up to find our back window had spontaneously exploded. What happened next was a series of events that turned a household disaster into a game-changing app feature, proving that inspiration can strike in the most unexpected moments. But first, let me take you through what happened.

It was supposed to start off as a productive day. I'd already spent the weekend and even Monday off from coding; hadn't even opened up my MacBook, and I was looking forward to just getting stuck into building my app—a captions app that automatically adds subtitles and captions to your videos. My day starts like any other day: make myself a coffee and ease into the mental process of deciding what feature I'm going to start building first. But as I opened the window, I discovered glass—glass everywhere. A window had spontaneously exploded. There was no projectile, and there was nothing obvious that broke the window. The kids were just waking up; they weren't quite awake yet, so it wasn't them. I went to bed at night; the glass was intact. I woke up in the morning, and there's glass everywhere.

And while cleaning up this mess, I was looking at the shard of glass—glass hanging from the ceiling precariously—and I thought to myself, wouldn't it be cool if a subtitle jumped out from the phone and like smashed the phone on the way through? To give you a full sense of the inspiration and how it struck me so visually, I'm going to show you with my handy duck—a printed-out caption and the broken window. So we've got the window—the window—the window is like the screen on the iPhone, and we've got the caption—the caption is this piece of paper—and what I want it to do is like come through the window. This is a duck. This is a duck. And it'll smash the phone screen on the way through. And this same functionality, the same feature, can have like explosions; it can have rain; it can have all sorts of visual effects, and it could be triggered by the words that are said on the screen. So I added a proof of concept, and it works. This is a duck. Say hello to the duck.

But how do I customize this, and how do I make it trigger at the right time? That's the issue that I've been facing every step of the way with this development journey: making it as easy as possible for the user to do rather complex tasks that you would do in Premiere Pro or CapCut and just automating it, making it as easy as possible, and just making it happen seamlessly. And the solution has come from the most random and unexpected low-tech place you can imagine. We were out and about at an antique market, and we stumbled across a pianola. If you've never seen a pianola before, they're a piano that plays itself. You can feed in these rolls of music, and it just automatically plays the keys to the right notes in the right timing. You feed the scrolls into the pianola, and you pump the pedals below; it pushes air through these little holes that are aligned to each of the [Music] keys. This blows my mind; uses no electricity, and there's no programming language whatsoever. It's a low-tech way to make a device that works like a computer. And in the context of building this captions app—this automatic captions app—it means adding an extra element—a timeline—and the timeline can then have these explosions and these glass smashes and whatever effect I want to add to the timeline as the video progresses. The timeline progresses, and as the timeline sees an event, it triggers it on the video. You've got a timeline running that just looks for a specific queue and executes it. And this is what it looks like. This feature is explosive. This feature is coming at you. This feature is cause for celebration. This feature makes the app dynamic; it makes it stand out and adds that extra element that I was looking to add—the missing part of it that I just couldn't find while I was sitting in front of the computer and coding and refactoring—and my head was too deep in it. It came from the most unexpected place imaginable: my back window smashing. But it really highlights the fact that when I take myself away from the computer and I take myself away from the coding, that's when the ideas really sort of present themselves, and they really come to surface.

Have you ever had an unexpected event like this happen where it just derails your entire day? I had to call up trades to get this window fixed; I had to clean up the mess, and I had to make sure the kids didn't track glass through the house. It took up a large portion of my morning, and then the rest of the day was just sitting around waiting for these tradespeople to rock up and to fix it. The window is still not fixed as of recording; the best they could do is add a cover to the window to make sure no one can get in or out. On one hand, I could have really got frustrated and angry at the day, and I really could have fought against myself being pulled between cleaning up the mess, arranging tradesmen, and coding my app, and I would have had this dynamic where two things I wanted to do at the exact same time were sort of conflicting with each other. I would have got angry at myself for not doing the amount of coding I wanted to do; I would have got angry at the window, and I would have got angry at the tradesmen for not showing up on time. And all of those—all of those events that unfolded—but by allowing myself to experience that situation and really just throwing myself into life and throwing myself into that situation, something really positive came of it. We've still got a broken window, and we've got that—that ugly sheet metal there—but everyone's safe; no one was standing around the window; it happened late at night; the kids didn't get hurt; everything ended up fine. And I think that's the key takeaway for me today. In my last video, I struggled a lot with having my head just too stuck in the coding and the refactoring that I wasn't pulling myself out of that experience, and then I pull myself out of this process, and all of a sudden I've got insights and a new direction that I wouldn't have thought of. It's amazing how that happens.