95721 interviews created 
 
 
 
 
 
 
 
 
 
 
 


Interview with:

Matt Christian [mattchristian] 
Share



PROGRAMMING
How did you begin programming and at what age?
I began programming during my senior year of high school (I was probably around 17/18). I took a Computer Science class so I didn't have to take any more advanced math classes other than basic Algebra 2. Turns out I'm majoring in it in college...
What languages do you code, and in what platforms?
I program in a variety of languages, primarily for the Windows platform. I tend to stick with C# or C++ for applications and standard HTML or ASP .Net for web.
What machine configuration and operating system do you use?
I use the standard 32-bit Windows XP system. I prefer desktops to laptops and have had my current desktop configuration for a few years now.
What motivates you to undertake a new project?
I have a constantly wandering mind where I'm always thinking up new things so I always think those ideas warrant new projects. Starting new projects is immensely easy for me, finishing a project takes more motivation for me.
What part of project development is most gratifying to you?
The best part of project development is conceiving ideas that people really think are interesting. When you think up some idea, even if it's just a twist on an old idea, and you tell someone and they say 'Wow that sounds cool, when can I play with it?', that's always a good feeling.
From the outside, it seems a rational job, but is creativity necessary for programming?
Creativity is almost a necessary. Programming often is simply a text form of puzzle-solving. Just like any profession, you'll have problems to overcome that could be approached from many angles. Programming is the same way, you'll write a program and something in it won't work right. Eventually you'll find the problem area and have to change what you initially did. Your next 5 approaches might not even work, but you'll need to think up a 6th and 7th version.

Also, programming is often thought of as simply writing code, when programming often also entails software design. There is a lot of design in the background that the user will never see. Creativity is needed for both designing and approaching problems, which I see as two major parts of programming.
What conditions do you need to concentrate when programming?
It depends on my mood, but lately I've started a practice of burning a scented candle next to me as I program. Something about the small candle is calming while programming can sometimes get stressful, it helps me calm down. I've always been active in music so I'm always listening to music, I'm actually listening to music right now.
After working for long periods of time, have you ever felt as though you were in a bubble?
Not really. If I really get going and pull myself away for awhile I'm generally quieter because my mind stays on what I was working on. Once I get going I can usually be distracted a bit and still come back to what I was working on pretty easily. Some programmers will lose all their concentration if you even speak a word, I'm not really like that.
When you check out code you wrote time ago, what's the main difference with respect to code that you write nowadays?
Basically I've changed my standards quite a bit. I use Hungarian Notation a lot more although I don't remember which prefixes are for which variable types so I kind of use my own little system for that. Although, I will still programming without the standards sometimes.

Also, I've been more careful to optimize my code by preventing loops and such that aren't needed. I probably had loads of spots in my older code that would do a few extra loops here and there and now I try to avoid that. It's not a major problem in the size of projects I create but it's something I've taught myself to do.
Do you still buy programming books, or do you learn everything from online sources?
I definitely still buy programming books although after a while I realized the best books to buy are large reference volumes and not the ones that try to create a project throughout the book. Many times, those books are within the project scope of the book's project and don't teach you anything related that might be out of scope. Online sources are great, but there is loads of information, primarily techniques, that aren't readily available in either written or electronic form. Your best resource is someone who already knows the technique, not their writing.
Do you think programming should be taught at the basic education level?
I don't think programming should necessarily be taught but general computing is absolutely necessary. Computers are so prevalent in today's society that every potential future job will be affected by some form of technology.
What has been your experience in marketing your software?
Marketing is a never ending job. Not just marketing software, but any type of product. There are a lot of new guys who come in and want to make millions by creating some product when they don't realize the commitment trying to sell a product takes.
What do you learn from software users?
Software users are difficult to learn from just because there is such a wide array of users out there. Some may know how to expose your products encrypted code, while others might not even know how to turn the computer on. You can learn something from everyone, but what you learn will apply to people similar to him/her. If I make a button easier to understand for the general user, a hacker probably couldn't care less.
What would be your solution against piracy?
I have no solution to piracy I think would be justifiable. From what I've seen, the best anti-piracy agent is the actual internet in the form of multiplayer video games. Those games usually are consistently checked as to their validity while someone plays online. If we had a way to use the internet to continuously monitor an application we could easily prevent piracy. But then there's a massive question of privacy that is being breached.

I think one of the best implementations of something like this is Steam (the Valve client system). It was widely panned when it came out because there were issues with people trying to play their games offline while Steam wanted to connect to the internet. Unfortunately for Valve, they had leaks of their software prior to release. But I think we'll be seeing more of these 'validation software clients' that use the internet in the future.
Would you consider yourself rigorous in the organization of the coding that you write and on commenting it?
I'm horrible at commenting code. I absolutely organize my code, but I only comment it if I feel it is necessary, which I don't always feel. I'm one of those people who get the job to fix someones old code and complains that they haven't commented it, and then when I fix it I don't comment it. I will comment it though if I feel people will be coming back to it later on.
How do you calculate the budget for a software project?
I haven't had the opportunity to have a spendable budget although I would have to say the budget is directly tied to the scope of the project, obviously this is a common-sense statement but I think many people forget that project scope is a massive concern. Given a budget, I would consider the necessaries and look at what I had left over and have that determine how much I should expand/trim my project scope.
What are your favourite games and on what platform do you play them?
I have played tons of games and usually my favorite game is more of a period statement, one week I'll say 'This game' and the next I'll say 'That game'.

With that said, lately I've been addicted to adventure games (yes, like point-and-click adventure games). My favorite series' are Broken Sword (PS/PC), Jak and Daxter (PS2), Ratchet & Clank (PS2/PS3), Metal Gear Solid (PS2/PS3), Silent Hill (PS2), Kingdom Hearts (PS2), Doom (PC), Zelda (specifically Windwaker for GameCube), and all those music games like Rock Band and Guitar Hero. It's pretty obvious I'm quite the Sony fanboy though I have my fair share of Xbox and Gamecube hits on my shelf.

Those are just series games, I have plenty of single title games I love, I would probably haves pages and pages if I wrote them all though.
How often do you clean dirt-buildup on your keyboard?
Never, unfortunately. I do brush off dust and try to stick my fat fingers in between the keys but I don't go out of my way to clean it. Probably serves me right that some kind of dust is caught in my mouse's scroll wheel...
How do you feel when friends or family ask for your help in solving domestic computer problems?
I get aggravated extremely easily unfortunately. Sometimes I'll help a bit more like when they ask the first time, or if it's something like helping them pick out computer parts or something. But when I have to tell you for the 20th time how to turn on the computer it gets to me a bit. Really, why shouldn't I do it for you if you don't just listen and learn from what I say? I realize computers are quite technical, but I learned it just like anyone else would.
As machines for development, what opinion do Macs deserve?
I've never been a Mac fan and I don't think I'll ever be. As for development purposes, they should get the same opportunities a Windows system gets but I don't think they should expect someone like Microsoft to build stuff for Mac. If you want to use Visual Studio, buy a PC, don't buy a Mac and then run off and complain to people that you have to use some other development environment (which people often will do).

Mac has Garage Band which, from what I hear, is amazingly better than any PC app for that price, same with most video software. There are people complaining PC/Mac doesn't have something when, in reality, there's no reason they should have to share software at all (look at console-exclusive video games).
How do you protect your computer from viruses?
Not very well (please don't hack me). I have an outdated version of Norton installed and run Adaware or some similar program once every year and a half or something. Other than that I rely on Firefox as well as my own judgment. Most virus infestations and bug problems come from the users clicking on something and accidentally installing some unwanted software. I just am really careful about what I get from the internet. Even when I install store-bought games I'll look over the policies you have to accept before installing.
In social settings, do people become interested when you tell them you are a software developer?
Not really. I often will get asked 'So what do you want to do after you graduate?' to which I always respond 'Make video games'. It ALWAYS gets the other person to laugh. I was O.K. with that for awhile, but I just shrug it off. I would often hear, 'Yeah, you and every other programmer'. I just always tell myself, 'Yeah but not every other programmer has my dedication and goal in mind'.

When you tell someone you want to be a video game programmer, many people will think you sit around playing games all day, it's a stereotype. Video game programmers are some of the brightest, most intelligent, hardworking people in the programming/development field.

If someone laughs at what I've decided to set my goals on I don't see why I shouldn't be able to laugh at their career decision. So there are more people wanting to have a job I'm applying for, what does that say for your career?
Do you work alone or in a team? Which do you prefer?
I prefer a team only if the team members are dedicated to the project. if I'm working with a bunch of people who are lazy, I might as well be working alone right? It's nice to work on a full project and say 'I did this completely alone', but it's also nice to not have to sit and do loads of stuff you didn't plan on working on. It'll often show that certain, uninteresting areas, will be lacking if only one person worked on it.
Are you one of the first to update to new software when it comes out, or do you normally wait until more stable versions appear?
I'll update to the latest if it's a software I use often and see a reason for getting the latest version. If the new beta version of Firefox adds the ability to read Japanese easier, I'll probably wait. On the other hand, if it's a sleek new interface that completely changes the way we all will forever browse the internet, I might upgrade.
What is your main reason for not meeting project deadlines?
There could be loads of different reasons to not meet a deadline. Personally, it would be that I lose interest in the project and get easily sidetracked. That said, I've never missed a deadline (knock on wood).
In your opinion, which company helps software developers the most?
In my opinion, companies aren't the biggest help, the community is. Most of the time companies provide the tools, developers in the community provide the solutions. A prime example is the DirectX SDK. There is tons of technical documentation on the built-in functions, but unless I talk to someone about it who knows what it does, I probably wouldn't know how it works from a hole in the ground.
How many breaks per day do you normally take?
Currently I take one half-hour (sometimes 15 min) break per 8 hour day. I think that's how I've always taken my break.
At this point in your career, what would be the project of your dreams?
I recently have had a few game ideas that I think would be amazing games. Any of those would work. All I would like is a project with a nice budget and a good sized team of people who love making games. I could think of millions of great ideas, but it takes a great team to make a great game.
What is your next project?
I haven't decided yet. I was thinking about looking into OpenGL. Other than that, I plan on looking into modding and programming with the Unreal 3 engine.
Which websites or forums for programmers do you frequently visit?
I religiously visit the following:

GameDev.net
GeeksWithBlogs.net

As for gaming I always visit:

Kotaku.com
Neogaf.com/forum
IGN.com
What advice would you give to someone who wants to become a programmer?
Just have fun doing it. There's no point in becoming a programmer because your friend does it. I program at work for 8 hours and come home and program, sometimes, 8 more hours, FOR FUN. It isn't my 'career', it's something I love to do in both my free time and at my job. That's really applicable to any choice of future career.
 

742 visits

Whohub
[mattchristian]
Matt Christian
Wausau, WI


[mattchristian] Matt Christian

Ask me a question, make a comment, or request my opinion on something:

 
 




© Matt Christian
Web address for this interview:http://www.whohub.com/mattchristian

INVITE YOUR FRIENDS    About Whohub  User rules  FAQ  Sitemap  Search  Who's online  Jobs