Spotlight: Tammy Coron (Author) Interview and AMA!

Please introduce yourself.

Hi. My name is Tammy Coron, otherwise known as @Paradox927. I’m Paradox927 on pretty much every social media platform that I’ve ever signed up for, since probably long before we were calling it social media. I’m the author of Apple Game Frameworks and Technologies published by The Pragmatic Bookshelf.

What brought you into game development?

I’ve always had a passion for video games, development, and learning new things. Especially learning new things, which I guess is how I got started.

I remember this one time I got a job, back when you were getting jobs through newspapers, and I had no experience with the tech. They were looking for a Ruby on Rails developer.

I didn’t know anything about Ruby on Rails, but I went to the interview anyway. When they asked me if I had experience with Ruby on Rails, I said, “Nope, not one ounce of experience. But I live like five minutes from a bookstore, so I’ll go get me a book and read about it. If I’m not able to do the job in a couple of weeks, you can let me go. No harm, no foul. It’s just a couple weeks of your time, right?”

Unbelievably, they agreed to hire me and give me a shot.

I’d been a programmer for a while, so learning new languages wasn’t too difficult. While working there, I learned Ruby and some other languages. They were a design and development house, so they had a lot of clients who needed all sorts of stuff.

At one point, they had a client who wanted an app for an iPhone. This was pre iOS. I remember it was one of the first times developers could make apps for the iPhone. Anyway, they knew I had an aptitude to learn new stuff pretty quickly, so they came to me. “Hey, we need an Apple app. Can you make it?" I said, “Um, maybe? Probably. I don’t know. Send it over, and let’s find out.”

At the time, there wasn’t a lot of information available online for making iPhone apps. It was still kinda new. But there was this website, a blog that I would go to, raywenderlich.com. Raywenderlich.com was a small community site dedicated to iPhone development, mostly games. The guy running it, Ray, was pretty much just posting tutorials on how to make stuff for the iPhone. His site was a lifesaver, and the new iPhone app for the client was a success.

I spent a lot of time on Ray’s site and made a few more iPhone apps. Eventually, I started writing content for raywenderlich.com. That’s when I really started to get into game development and writing tutorials.

Professionally, I was an app developer, but game development is really what I wanted to do. I just never felt comfortable enough to do it. But then Apple released SpriteKit, and I knew it was time.

At this point, I had been developing all sorts of business apps and using all sorts of different languages. Now it was time to really get to the thing I love, making games, which is something I’ve always wanted to do since I was a kid.

It sounds kinda weird, but I made my first game when I was five. It was a word game, and it was littered with misspellings and typos. I created it on a TRS-80 Model III using BASIC. I still blame Scott Adams, and later, Lunar Lander for my love of video games.

Apple introduced SpriteKit. What was the impact for you and for other developers, and what did SpriteKit offer?

Like anything new, SpriteKit came along, and we weren’t sure what to make of it. At the time, a lot of Apple game developers were using Cocos2d. Was this new Apple framework going to replace that?

Cocos2d wasn’t something I enjoyed using, so for me, this new framework was something I couldn’t wait to learn, and already knowing Objective-C, it didn’t take long.

Turns out, SpriteKit did a lot of amazing things, it still does, even now.

For some reason, SpriteKit doesn’t get enough credit for what it can do. I guess some developers don’t consider it as something useful or viable for game development, which is a shame. It really can do a lot. And if you already know Apple development, you’re not bogged down with learning a new language or an IDE.

Don’t get me wrong. There are a lot of options when it comes to game development. Unreal Engine, Unity, Godot, I use and like all of them, but my heart lies with SpriteKit.

SpriteKit is the first thing that got me into professional game development.


I get frustrated when I hear people say you can’t make professional-level games with SpriteKit. It’s not true. You absolutely can. You can make pretty much any game you want using SpriteKit. Well, any 2D game for Apple. SpriteKit is a 2D framework, and it only runs in the Apple ecosystem.

If you want to create 3D games or games for other platforms, that’s when I’d encourage you to look at something like Unreal Engine or Unity. SceneKit, Apple’s 3D framework, is OK, and may be the right choice if you plan to stay on Apple, but for 3D, Apple or not, I mostly prefer Unity.

But when you’re talking 2D games, especially if you’re just starting out with game development, SpriteKit is a fantastic framework to help get you started.

Does it make sense today as a game developer to stay within the Apple ecosystem, or is that just not practical anymore?

That is a great question, and it comes up often.

When people ask me what they should do, I like to ask them why they are doing it. What do they hope to gain from this experience? Where do they hope this experience takes them? The what and the how are kinda irrelevant. It’s the why that matters.

If your why is that you’re just starting out, and you’re already familiar with Apple stuff and really just want to focus on making a 2D game, or you want to make a prototype of a game, SpriteKit is a good place to start. But if you have plans to publish your game beyond the Apple ecosystem, or you really just want to level up your skills and resume, Unity, Unreal, or Godot might be the better option.

It would be silly for me to suggest using one tool or platform over another. Truth is, I use multiple technologies to do a variety of things. It’s like Batman and his utility belt. If Batman only needed one tool to do his job, he wouldn’t wear a utility belt…but he does, and it has a lot of tools. So if Batman needs more than one tool, developers probably do too.

If Batman only needed one tool to do his job, he wouldn’t wear a utility belt.


All that is to say that if you’re looking for a fun experience, SpriteKit is great. If you want to expand, increase your skills, pack your resume, have more control over the inner workings of your game, then maybe SpriteKit is not an option for you. I suppose it all depends on your why.

What are the best things, the specific joys, about writing 2D games in particular?

Being able to tell a story in a way that is interactive. It’s one thing to write a book to tell a story, make a movie, create a radio program, whatever. These are all great ways to tell a story, but they are hardly interactive.

At the core of who I am, I’m a storyteller. It doesn’t matter what story I’m telling. I like to get people involved. To be able to weave a story and bring someone into that story, to give them some or all of the control over the ending, I think that’s particularly fascinating.

When I first got into game development, I was hesitant to work with 3D tech. I made, and still make my own art, but back then, I didn’t really know how to make 3D assets, so I stayed in the 2D world. These days, I work in 2D, 3D, even AR and VR stuff, but my heart has always been with the 2D stuff, probably because that’s where I started.

At the core of who I am, I’m a storyteller.


Either way, I love telling stories. I love being creative. I love taking the best of what I do, and sometimes the worst of what I do, and rolling it into this thing that I can share. This thing I can hold up and say, “Look at this thing I made.”

Sure, maybe it looks a little messy, and maybe it doesn’t work perfectly, but that’s okay. It’s all part of the process. There’s always room for improvement. It’s part of learning new skills and being able to recognize growth, and knowing that you’re part of something larger than yourself.

Being able to get someone involved in that process, having them tell you the good and the bad about your thing, like, “Hey, I really enjoyed your game,” or, “Hey, maybe next time you can do this, or I didn’t understand why you did that,” and taking that experience, that feedback, and being able to share that experience with others, whether they’re playing your game or learning how to make games on their own…it’s all really cool.

It’s funny. I really didn’t really like education as a kid, and now I love it. I love to be able to work with people and learn from them and teach them and be a part of their development experience. To have someone come to me and say, “I read your book,” or, “I saw your tutorial,” or, “I watched your video series,” and, “Look at this cool thing I made because of it,” that to me, is one of the most rewarding things ever.

I love to be able to work with people and learn from them and teach them and be a part of their development experience.


What are the hallmarks of a great game, especially how it hits the players in the gut?

Like music, you want to pull out the emotion of an individual or a group of individuals. You want them to be part of the story. You want to have highs and lows. You want the protagonist, the main character, to grow. And you want the person who’s in charge of that main character to make the decisions about how and when they do it. That’s what makes a good game.

Like music, you want to pull out the emotion of an individual or a group of individuals. You want them to be part of the story. You want to have highs and lows. You want the protagonist, the main character, to grow. And you want the person who’s in charge of that main character to make the decisions about how and when they do it. That’s what makes a good game.


To make a good game, you also have to ask yourself, “Who is playing this game? Who is my audience? What do they like? What do they expect? What experience do I want to give them?” As it is with book writing, knowing your audience, the players of your game, is really the first step.

A lot of us go in, and we just want our thing, whatever it is, to be accessible to everybody. That’s a great idea, but it falls short of reality.

For the record, I’m not talking about accessibility in terms of “ability to access,” which is equally important. What I mean is that you can’t write a book or make a game for an experienced player and also have it work for a beginner, because the two audiences are wildly different in terms of their expectations. It would be like making an MMRPG for people who like racing games. It probably wouldn’t work.

Aside from knowing your audience, mechanics are important too. You have to think about the controls your game will use. Will it be mouse and keyboard? Sticks? What about a keyboard for input? You also have to consider the story and what type of game you’re making. Is it a casual game? Is it a role-playing game? That sort of thing.

All of these things are important, but you need to know your audience first.

I guess you can write a game for yourself, but an audience of one isn’t much of an audience. That’s not to say you shouldn’t make games for yourself. I do it all the time. But if you’re trying to make a career out of making games or you’re trying to make an experience for other people, sometimes the game you want to play isn’t the game you need to make.

Sometimes the game you want to play isn’t the game you need to make.


So what makes a great game? That’s a big question.

A great game is one that’s made for its target audience. It’s one that puts the player in control and gets them to feel how you want them to feel while playing your game. If you know your target audience, and know what they like and how they want to play and interact with your game, well, that’s a great start.

Are there any specific tricks or tools or methods that help elevate the user into the game and erase that boundary that sits between the technology, whether it’s a keyboard or a touchscreen, and the game that the user is immersed in?

Yes, get the controls out of the way, make them responsive, and make them intuitive. If your players are spending all of their time trying to learn the controls, and their expectations aren’t being met, you’ve failed.

Imagine your player is trying to move left by pressing the left arrow or A key, but instead, their keypress brings up the inventory panel. Look, there’s just some stuff that most people are expecting. Spacebar to jump, WSAD to move, so coding your game to show the player’s inventory when they hit A is probably not a good idea.

To fully immerse a player, the controls need to get out of the way, and they need to be quick. Hitting a key to move, and then having to wait for that movement to happen can destroy the immersion.

So when you’re developing your games, be sure to take processing time into consideration. Ask yourself, “Do I want to spend all of my processing power over here, which could potentially slow down my game but make it look pretty, or should I put it over here and make the game quick and responsive?”

The player may not see all the pretty, but they will feel every bit of the lag. Players want snappiness. They want to feel as if the action they’re thinking happens as they’re thinking it, as it would in real life.

If you’re working in 3D for example, maybe add some fog in the background and hide what’s going on beyond where the player needs to see. Keep the player where they are, not where they are going or where they’ve already been.

Players want snappiness. They want to feel as if the action they’re thinking happens as they’re thinking it, as it would in real life.


You also don’t want to waste anyone’s time. If the story you’re telling lends itself well and it helps push players into that interactive immersion, great, tell it. But if you’re just adding a story for the sake of adding it, don’t do it. It’s a waste of time.

If you achieve that immersion, that responsiveness, your story is solid. You have done all the technical parts that make sure that there are no barriers between your user and your game. How important is it to add a level of artistry, whether it’s through graphics or through sound design?

I would say that graphics and sound design is subjective.

My family and I talk about this a lot. There’s a certain style that I like when I’m looking at art, a certain type of music I like to listen to. I like to watch horror movies and read graphic novels, whereas my husband is more into cop dramas and “stories with purpose.” When it comes to games, my kids and I tend to vary on what we like. So when it comes to this sort of stuff, it’s really about the player, the individual consuming “the thing.”

“What do you like? What’s your thing?”

I’ve seen games that have a great story, but the graphics aren’t my favorite. Maybe it was a stylistic choice, maybe it was a budget choice. Artists aren’t cheap, and they shouldn’t be. But if the story is good, the graphics aren’t that important.

Then again, I’ve played games that look great, but the story or gameplay is kinda meh. Have I enjoyed them? Sure. But in those cases, the story and gameplay didn’t matter. I was there for the art, the graphics.

Pretty much, if you’ve got a great story and meh graphics, I can look past that. If you’ve got great graphics and the story is meh, or the gameplay is, eh, whatever, that’s fine too. It’s when you’re missing all of the marks…that’s when it matters. That’s when I pass.

Truth is, I love story-based games. I also love beautiful-looking games that have no story. It’s all about individual preferences.

I love playing World of Warcraft, that’s my new thing. My older son, he loves it too. My younger son, well, he doesn’t really enjoy that game at all, and that’s OK.

World of Warcraft is an extremely popular game, with something like 8 million players, but not everybody likes it. And of those who do, not everyone is there for the same reason. My son likes raiding, dungeons, and gold. I like mounts, pets, and transmog stuff. You like what you like. It’s that simple.

How important are graphics and sound? How important is this story? It’s an individual thing. You like what you like. It’s that simple.


I’ve seen games, especially on the app store, where they’re ranked number one, yet they are riddled with ads, there’s limited gameplay, the controls are terrible, and the graphics are cookie-cutter. These games are not for me, but that doesn’t make them bad.

When I’m making games, I like to make them for me. But when I’m making games for other people, I need to think about what they want, and it goes back to what I said earlier. As much as you want to make content for everybody, it’s nearly impossible to do it. You have to know your audience.

There are too many people, too many differences, too many opinions, too many likes and dislikes to consider to have an all-in-one solution. It’s all about contrast, and contrast is good. I would hate to live in a world where everyone played the same thing, enjoyed the same music, liked the same art, had the same thoughts. What a boring place that would be.

How much do you as a game designer have to be true to your own inner artistic vision, regardless of other people’s tastes? To what degree is a game an art form and a form of self-expression?

I think it goes back to the why.

For me, when I make anything or get involved in any project, I have to have some level of artistry, creativity, personal involvement. I’m trying to think of a time where I decided to do something purely based on the market or the money. My brain is not wired that way. The games I make, the art that I create, the soundscapes that I play with, all of that stuff is from me. It’s from my perspective. It’s as much about me as it is about the thing I’m making.

I have tried many times and failed to move away from what people would call my style. Every artist has a style. Some artists’ style is to change or match any style they want. I’m not that artist. My style is cartoonish with a splash of cartoon gore. I love horror, so everything I draw has at least one drop of blood in it. I’ve tried to not be that way.

I remember this one time I was creating a tutorial to teach people how to make interactive storybooks. I was like, “Okay, this is going to have pretty, bright colors and happy little trees,” I kinda felt like Bob Ross. I made the first three pages of the artwork for the book, and I was like, “Oh, this is so not me.” So I went back and re-created everything in my sort of Tim Burton style. Tim Burton is one of my favorite artists, so it’s not surprising that my style is a lot like his.

So, yeah, it’s difficult for me to break out of my style. I try, and I feel like Al Pacino in The Godfather: “Every time I get out, they keep pullin’ me back in,” I feel like that. I try to break away from this style, but for me, the gaming experience is very much about me. My style is in everything I do.

Anyway, to answer your question.

If you’re in this line of work to make money, and money’s important—you got to pay your bills and put food on a table—but if you’re in it for the money, you have to consider the market. You have to consider what people are playing. What style is selling today? What is the flavor of the month? If you don’t think about those things and you work only to satisfy your own personal preferences, you might not make it. Not everyone will like what you like.

For me, though, I’m in it purely for the experience. I like to learn new things, so sometimes I’ll pick a technology or a game genre or whatever just to have that experience. Sure, I would love for everybody to play my games, enjoy my games, and find my games. But my games are for me.

It’s funny, I don’t even know if anyone likes the games I make. I’m sitting here playing Gauntlet, which is from like 1989 or whatever, and I love it. So much so that I created a Gauntlet-like game for my book. Does anyone even remember, let alone know about Gauntlet? It’s so old, but I love the 8-bit music, the graphics, the simplicity. I miss that in games.

What are ways to make people fall in love with your game before they buy it?

Demos. Demos are a great way to introduce people to your game before they buy it. It costs them nothing, and, if they like your game, they might buy it.

I’m working on this large project now that I’ve been working on for a while. It’s hard as a one-person indie developer to get it all done, but my plan is to give away the first part of the game for free. With any luck, players will like the game enough to buy the full version.

Here’s the thing…

Developers need to earn money. We need to pay our bills like everyone else. We can’t make every game free, even if we want to. Besides, no one should work for free. At some point, we have to earn money for what we do or we won’t be able to do it anymore. So, gamers, find ways to support the creators you like. Developers, find ways to thank your gamers for their support.

As a developer, one way to earn money is to include ads. Ads help because they don’t take a lot of time to implement, and they don’t really cost anything to add to your game. Just don’t be obnoxious with them, and make sure the players get something in return, an extra life, a power-up, something.

How do you feel about subscriptions versus outright owning a game?

I’m on the fence with this one.

I really love the idea of purchasing something and owning it until the end of time. I don’t care if it’s a game or an app. I like the idea of purchasing a complete, packaged experience. It’s nice.

But I also like subscriptions, especially when it comes to apps. If the price is reasonable, and I’m getting upgrades and support, that works, too, because I don’t have to think about upgrading. It just happens.

But for games, I suppose it really all depends on the game and the subscription model. I like the PlayStation Plus and the Xbox Game Pass. I’ve found a lot of cool games that way. I also don’t mind paying for my World of Warcraft subscription. There’s a lot of content there, and I’m never bored. What I don’t like are the games in which nothing changes, and you simply need to pay a price just for the privilege of playing the game. Not that you asked, but I also don’t like pay-to-win games.

Anyway, I guess it all boils down to this: I don’t mind forking over good money for good gameplay. If you enjoy the game, and you’re OK with the cost to play that game, that’s what it really comes down to, doesn’t it?

I don’t mind forking over good money for good gameplay.


It’s not really about picking one model over the other. As a consumer, as a game player, if you feel that you’re getting your money’s worth, if there’s some value in it to you, then go for it. If not, or if you change your mind or the value decreases, pass and move on.

I don’t want to mention names, but there are subscriptions that I’ve left because I didn’t find that they were of value to me anymore. That doesn’t mean they’re not valuable, it just means that, to me, it’s not worth it.

If enough people think it’s not worth it, well then that’s a whole 'nother conversation. But for the most part, this kind of conversation is really about individuality. If it works for you, do it. If not, don’t. There’s no right or wrong. No, “Well, this person is making this thing, and they’re charging that much for it, how is that possible,” or, “Why would you pay that much?” It’s a personal choice.

Again, I’m not going to get into any names, but I just dropped $40 on a game that I’ll never play. I tried it, I didn’t like it, but I wanted to support the creator. I could have asked for a refund, but I didn’t spend the $40 to have the game. I spent the $40 to support the creator.

You might be thinking, “Well, why would you support a creator that’s making content you don’t enjoy? Why pay for a thing you don’t like?”

To me, content, product, goods and services, it’s really about the individuals behind those things. The people making the stuff. For some, the things they make are their life’s work. It’s the thing that drives them. It’s what gets them up in the morning.

Every game that I make, every thing that I create, has some part of me in it, some part of my family, and at least some small reference to my animals. I always put something in my games, maybe hidden, maybe not. But it’s there. I’m there. Somewhere. Everywhere. I don’t know.

That, to me, is what gets me going. That’s my passion. So when I drop $40 on something that maybe is not my cup of tea, I remember how that tea got made. I remember the people making the thing, and I want to support them. It’s not the product, it’s the people.

It’s not the product, it’s the people.


Thank you so much. This has been wonderful.

3 Likes