This is the first interview in an ongoing series of mini-interviews with famous developers and programming authors. Rebecca Heineman has kindly agreed to be the first interviewee. She has been a games programmer for almost 30 years – she has written and designed many titles over the course of her career including a Bards Tale III: Thief of Fate, Battle Chess, Wasteland, and Tass Times in Tonetown. Rebecca was also a founding member of Interplay, Logicware, and Contraband Entertainment.

Regular readers will remember her name from the analysis of famous developers on GrokCode a while back.

Lets get to the interview!

How did you first get involved with programming?

When I was 14, I saw the early computers like the IMSAI 8080 and the AIM-65 from Rockwell and I knew I wanted to be involved with that. Eventually, I earned enough money to buy an Apple ][ computer (They just came out) and messed around with it. From using F666G, I was able to use the mini-assembler and eventually taught myself 6502 programming. Learning how these machines worked got me hooked and I’ve been programming non-stop ever since.

What advice would you give to someone who wants to be a successful programmer?

My advice is to get into the gaming MOD community. Learn C++, grab the source code from sourceforge or a current game and start making mods. From there, you can get a real taste of what it takes to make a real game (It’s a lot!). College is a huge plus.

What is your greatest achievement?

That’s a tough call, since I’ve done so many projects in my career so far. I think I’d have to say was the evil MOD I had to do to get Out Of This World for the SNES to copy backgrounds quickly. Since Interplay wouldn’t pay for a SuperFX chip, I found a way to do it with static RAM on the cart and DMA which got me a great frame rate. Interplay wouldn’t pay for the static RAM either, so I ended up using Fast ROM and a MVN instruction. Interplay wouldn’t pay for a 3.6 Mhz ROM either. So, frustrated, I shoved my block move code into the DMA registers and use it as RAM running at 3.6 Mhz. It worked. I got fast block moves on slow cartridges and made a game using polygons working on a 65816 with pure software rendering.

What hobbies do you have outside of software development?

I like to write. I write novels, short stories and an ongoing webcomic called Sailor Ranko based on Ranma 1/2 and Sailor Moon. I also like to bake cakes and sharpshoot.

What are some of your recent projects?

At Microsoft, I am working on *\* ***\* ***\* ***\* ***\* *** **\* *** ***\* ** **\** **** which I hope you’ll appreciate all the hard work the team put into it. Otherwise, I work at the XNA Developer Connection where I assist development teams in doing performance analysis on Xbox 360 titles both in coding and with GPU shaders. Oh, yes, and at home I’m with a homebrew team working on a Nintendo DS game based on the webcomic called The Wotch.

Now I’m really curious to know what all those stars stand for… Is it a code? Just a random number of stars? I guess I’ll have to wait until the game comes out. Thanks to Rebecca Heineman for giving us a glimpse into the life of a games developer.

What other programmers would you like to see featured? Leave a comment, and I’ll see if I can arrange an interview.