Writing For An App

So, as I move towards a sort of beta (at what point does software become beta?) of the app, I’m becoming more and more frightfully aware of the fact that I’m going to need content to display my idea.

And isn’t that where so many great ideas die?

The idea for the app is great. And, to be perfectly objective, the very general idea I have for content is great: a child talking about how his father goes to work when the child would rather he stayed home, followed by work described by a child who’s only ever been able to ask his Papa about it. And, at the end, the child asks the Papa “Why do you go to work if it’s so bad?” And the Papa can say, “Well, I don’t really like the work. But, I get money if I go, and there are a lot of things I like to do with you — from simple things like eating, to more fun things like going to the swimming pool — that I can only do with money.”

And, yeah, that long last sentence is currently how it goes. I’m not crazy about it (translation: I know it’s bad).

That’s what I’m talking about. As I write, I try my hardest to not think about the need to illustrate everything, but it’s not working. I write three sentences and think “I don’t know what should be happening on the screen during this time.” And the story suffers, because I seem to feel a need to work in as many things that I can get a doodle for as possible.

It’s not good writing. And it’s not going to make it into the app. What I’m wondering is whether it’s an inevitable step in the development process.


Why I Program

As I begin moving towards app development — and, believe me, the thought that that might really happen is pretty shocking to me — the thing I find myself explaining to other people more than anything else is why I started programming.

There are a number of possible answers: I was a peripheral member of the techie-clique in high school, and, in a sense, it’s a matter of getting back to my roots. Every day I teach English to people who think very technically and having a few technical pursuits of my own gives me an insight into how they think.

More than anything else, though, it’s the same reason I like to try my hand at writing: the more I ‘consume’ software, the more ideas I have for new software. It’s like reading a great novel and then thinking, “I’d like to write a story with characters like that, but as students.” To my way of thinking, the logical next step is to fire up the word processor and start writing. Or, in the case of software, to try my hand at a little code.

And, that brings me to the greatest benefit of trying to program: I like to think it’s strengthened my theory of mind for computers. It’s clearly anthropomorphism to think of computers as ‘thinking,’ but I feel like it’s a pretty natural reaction to have to them. For a long time, I’ve annoyed (or thought I was annoying) my techie friends with questions like “Why can’t a computer automatically tag the people in my photos?” or “How hard is it to make a computer understand that open can be both an adjective and a verb?” And, while I haven’t found answers to those questions, my introduction to programming has given me a sense of what a computer can do easily (translation: I can do the code for it) and what is more difficult (everything else.)

This experience is what made me think that my idea for a story-telling app was pretty feasible. It’s what made me realize that making an app somehow understand (read: react to) the outraged outbursts of my kids when it made ‘mistakes’ in telling the story was way out of my league. But, seriously, why couldn’t I create something that would tell one of the many wacky stories that I tell my kids, but with simple animations (look, I just added something to the picture!) and touch response? It seemed reasonable!

I don’t know that I’ll ever make a dime off programming. And I’ve spent enough time teasing my father about his hobbies to know that children are seldom impressed by the ‘skills’ of their parents (unless you can kill a bear with your bare hands, that’s always impressive), so this seems to be something I’m doing for me. Nonetheless, it’s something I’ve definitely benefited by.

Why Minecraft

I had stopped thinking of myself as a gamer. That was something I did (a lot) in high school, and a little less in college. In the meantime, I was married, had a job.

And my brother started talking about multiplayer Modern Warfare. I think it was Modern Warfare 3. Innocently, I asked “If I got the PC version, could I play and talk with you?” After all, it’s fun doing stuff with him, even if it’s virtual stuff. You probably already know the answer: the PC version couldn’t talk to the xBox version.I’d need an xBox.

My brother is cool enough that I was willing to get an xBox in order to play with him. We still play 3D shooters together, and even got my sister to get her own console so that she could join us in beating up aliens in Halo and Destiny.

But I have kids.

I could only play after they were in bed, or as they were going to bed. After all, violence and all that.

And the kids really wanted to play. I mean really. They saw that Papa was doing something, and they wanted to be a part of it.

Then I heard about how Minecraft is used in schools to teach reasoning, logical thinking and the like. And I thought, at the very least, it’s something I can do with my kids, rather than sending them out of the room.

We started with Pocket Edition (the version for your mobile phone) and quickly needed to pay for a copy on my wife’s phone so that she could play along. The kids weren’t great at it — not by my standards — but they loved it. At thirty-five years old, I think it’s fun to play a game where I can make actual changes in my environment. My will made reality! Imagine how a six-year-old feels!

It didn’t take long for me to begin lusting after the xBox One edition. It did more, it was the version that Stampy Longnose used (the kids and I started watching videos about Minecraft together probably on the same day that we started playing together), and — I told myself — I’d be able to see what the kids were doing at a glance, rather than having to ask them to show me the device in their hands. (The ones who play are six and four, I still get to hover, right?)

Here’s the thing, though, I quickly had to start my own world, because I was tired of them messing up the stuff I was trying to do. I still play with them in their world, but when it’s just me playing, I find myself playing my own world. Sure, they’re allowed to see what I’ve done and they ask me to build the same stuff in their world, but hands off my world!

The To-Do List

This seems like a pretty big project to me. So big, in fact, that I’m ready to bring in outside help: I’ve already contacted an illustrator and asked if she would be willing to do the illustrations, should I send her a proof-of-concept that she finds convincing. The answer was a “yes,” but a tentative one.

So, outside of the ‘simple’ act of coding, I see several things for me to be working on:

  • Defining what a ‘success’ will be in this project. It has to be more than just a working app, as I don’t think I can afford to pay an illustrator just to prove that I can make the app. And I certainly can’t expect her to work without some sort of reward. What are we working towards?
  • Deciding if this thing is going to cost money? That’s obviously a subset of whether or not I want it to make me money, or if I’m doing all this just to prove that I’m cooler than the next guy. (Still a worthwhile goal, but is it enough?)
  • Researching how to get my app in front of a few eyeballs. I get that it can get lost in the Play Store, but how do I get the people who would be interested in it to see it?

I genuinely love the idea of seeing an idea that I had realized. Sure, it’s not something physical in the traditional sense, that I can frame and put up on the wall. But, nonetheless, it would be something I could point to and say “See that? I had that idea and I made it happen.”

On the other hand, I sense that success is going to require more than just a finished project. And the idea of marketing my idea, of being forced to try and convince people to look at what I made, well, that’s the part of this project that I’m looking forward to the least. Forget the tedium of trying to figure out why my code isn’t doing what I think it should be doing, this will be the hardest part of the project for me.

And that means it’s the part that I need to work the hardest on.

The Vision

The vision, I think, is simple: an app that tells children an entertaining story, but in an entertaining way. There are a lot of story-telling apps in the Play Store, but few of them are what I would give my kid. They’re basically videos that ask the kid to press the button for the next page.

I don’t know how you read to your children, but that’s not how I read to my children. If they won’t sit still for me, why should they sit still for a device?

What I’d like to build is an app that tells kids a story the way I would, or very nearly. I would love to be able to have the app read the story wrong and respond to kids correcting it (“No! He’s not a horse! He’s a boy!”) But I don’t think that is within my reach as an amateur programmer.

Telling children a story and then becoming increasingly — and comically — frustrated as they keep touching the things in the pictures, now that is something I could do. (I think.)

Imagine for a moment that you’re basically passively consuming a story and you touch the funny picture of a cat. The narration stops for a moment and says “Yeah, that’s a pretty strange picture of a cat. I bet that cat is having a bad day.” And then the narration picks back up again. I don’t know what you would do, but I would touch other things, what does the narrator say?

If I touch the cat again, will the narrator do it again? This time he says, “We talked about the cat already, come on, let’s do this story.” I try it again, of course. In a voice that is so comically frustrated it sounds more like the Cookie Monster than anything else, the narrator complains: “Enough with the cat! I am trying to tell a story here!”

I think my kids would eat that up. And, of course, I’m banking this project on the idea that other kids would eat it up, too.