July 4th, 2008

Things You Need to Know before Interviewing for a Game Programming Position

For quite some time, the game industry was an exclusive club that didn’t allow any new blood because every opening required applicants to have 2+ years of experience and 1 shipped title. I don’t think there has ever been a better time to get into the games industry right out of college than now. Because next gen team sizes are increasing drastically, people with experience are harder to find, so more and more companies are recruiting right from colleges. Regardless, of what college you go to, you can still get a job in the games industry provided you have a certain proficiency in the following areas.

Math – This is an important area to video game development. No, you don’t need to remember how to compute the surface area of a curve when rotated about the x axis. You do need to have very good linear algebra skills. If you don’t know what the formula for a dot product is (a dot b = a.x * b.x + a.y * b.y + a.z * b.z ) and what it means geometrically (|a| * |b| * cosine of the angle between a and b), then there’s no chance you can get a job. You need to know how to project a vector onto another vector (a projected onto b = ( a dot b ) / |b|^2 * b) and onto a plane. You need to know what the cross product is (a x b = [a.y * b.z – a.z * b.y, a.z * b.x – a.x * b.z, a.x * b.y – a.y * b.x]) and what it means geometrically (a vector perpendicular to the vectors with a length equal to the sine of the angle between them). The way I remember how to compute a cross product, is to put i, j, k in the first row of a matrix, then the first vector and finally the second, and then compute the determinant. If you don’t know how to compute a determinant or what that is, that’s a bad sign! You should know what the inverse of a matrix is and how to compute it for any matrix. You should know how to transpose a matrix. You should know what an orthonormal matrix is and a shortcut to compute its inverse (just transpose the matrix). Familiarity with conversions between different coordinate spaces is essential. The math behind collision routines is very important to learn also. How do you find the collision point between a parametric ray and another ray? a plane? a sphere? What are quaternions? How do you do common operations with them? If you are very rusty on your math or don’t know where to start, I’d recommend 3D Math Primer for Graphics and Game Development. I read it and found that it covers all the basics pretty well. I haven’t read all that many other books for comparison, but it’ll definitely will give you a good foundation to build on as well as reference for many common math operations for game development.

Physics – You should be very familiar with all the projectile equations. If you can’t either derive or remember d = v0 * t + 0.5 * a * t^2, you’ll be in trouble when you interview or take a programming test. Any problem that involves a projectile with gravity should be easy for you to solve. Whether the unknown is gravity, launch angle, y velocity, xz velocity, time, distance or any combinations that are solvable, you should have no problems determining the solution. You should also be familiar with momentum and kinetic energy for elastic and inelastic collisions. Drag and friction should be concepts you understand also.

C++ - Although some places still use C over C++, C++ is pretty much commonly accepted as the standard for game programming. Knowledge of C++ is very important because if used poorly, you can write very suboptimal code. Firstly, you should know what a virtual function is, and how to use it. It’s also important that you understand how the virtual function table works, so you understand the extra steps that can decrease performance that take place when you call a virtual function (each object has a virtual function table pointer hidden from you in its structure data [where it is located depends on the compiler and this has important ramifications when pointer casting], and to call a virtual function, you need to follow that pointer to the table, and then jump to the function pointer contained within, which can hurt caching). Knowing how to use templates and operator overloading efficiently is important too. Good object oriented design is the most important thing you should know about C++. All too often class hierarchies are deep and convoluted, so you end up having to do horrible things like virtual inheritance, or all your classes have a lot of wasted memory for variables they didn’t need.

AI – I took the standard AI class that University of Michigan offered, and absolutely none of it was applicable to game AI. A lot of the algorithms taught are intractable, or just impractical for games. As long as you know what a finite state machine is, you should be fine. Most games use finite state machines, and the ones that don’t, use simple rule based systems. “Black and White” (and its sequel) is the only exception I can think of that used something different (neural networks), but many gamers weren’t satisfied with the results. If you are looking for books, I’d recommend AI Game Programming Wisdom 3. It has two particularly outstanding articles in it, one about fun game AI design and another about behavior compositing. Seriously, although books may be helpful, the best way to learn about game AI is by doing it.

Graphics – This is an important area. If graphics is your main area of interest, then you should know a lot more that what is covered here, but whatever your desired position in the industry is, you should know these basics. You need to know what a render state is and what the common ones (cull, z write, z test, etc) are. What is the standard lighting equation? (It’s I = ka*Ia + Ii*(kd*(L dot N) + ks*(R dot V)^n) in case you were wondering) How does texture mapping work? What’s the difference between texture wrapping and clamping? How do you efficiently render a bunch of procedural geometry? (Organize your geometry by render states, batch it up in the fastest primitives for your hardware and send it off to the graphics card) You need to know how skinning works. If you’re interested in a book, I read 3D Computer Graphics by Watt. It’s not game specific, so it covers a lot of techniques that are impractical for games. But, I think the general overview is helpful, and as game hardware gets more advanced, the techniques presented that seem impractical now, might become the norm.

Tools Development – C# seems to be gaining a lot of momentum in the games industry, so it would be good to familiarize yourself with it. C# presents many advantages to speed up tools development. Many people have said tools can make or break next gen games. I agree with this. The more tools you have, the less time the team spends wasting time doing easily automated tasks. Maybe when you have a team of 10 artists, spending a man year of programmer work to create a tool that saves artists 15 minutes a day won’t pay off, but if you have 50 artists, then it is definitely worth your while. C# allows rapid creation of GUIs, and unlike some other ways to simplify creating GUIs, the GUIs are easy to understand and use since they are the standard Windows components and allow you to easily set up all the keyboard shortcuts like standard Windows applications. The Form Designer works really well in Visual Studio, and C#’s metadata and event driven design makes development a breeze for tools. It’s also nice to have at least some understanding of MFC also in case the developers you interview with are behind the times.

If you are interested in learning a lot about how the technology works (which will in turn allow you to write better C# code), I’d highly recommend Applied Microsoft .NET Framework Programming. I read it while on vacation, and I just couldn’t put it down. It seriously was a page turner. I read it cover to cover over the course of a few days because I was so excited to learn the topic of the next chapter. Keep in mind though, this book doesn’t teach you about the various Framework classes, and what they do. It instead covers the core mechanics of the language and how it works. It isn’t specific to C# either. It tells you what you can do in VB.NET that you can’t in C# as well as provides examples in MSIL (Microsoft Intermediate Language – the byte code that all .NET languages compile into) for things that may not be supported by any .NET languages yet.)

Operating Systems – Although this seems relatively unrelated to game development, I’m really glad I took Operating Systems in college because I frequently use knowledge that I learned in this class. knowledge about operating systems is very important since it handles a lot of important behind the scenes work for the programs. Especially with the multicore next gen consoles and dual core PCs, multithreading knowledge is essential. Virtual memory is definitely a useful thing to know. Knowledge about file systems, kernel to user transitions and paging is more useful for PC game development, but consoles are rapidly becoming more like PCs with every subsequent generation, so it’ll never hurt to know these things.

Compilers – Although it may not be important to know how to write a parser, it’s important to know how your code is converted into assembly, so you can understand how to write more optimal code. You definitely should be familiar with the four stages that take place to convert your program to an executable: preprocess, compile, assemble and link. How are constants treated by the compiler? A good understanding of macros and how to simplify common operations with them is important. Knowledge of calling conventions for the compiler you are using because passing over a certain amount of function parameters may cause them to be pushed on the stack instead of reserved registers. Calling convention is also useful for when you are writing a function in assembly.

So, this is just a starting point for the diverse array of knowledge you should have as a game programmer. There’s always more you should learn and the level that you should be familiar with each area depends on the type of task you are doing. It can never hurt to know more than you’ll actually use. If you have any questions about what you should learn, or getting into the industry, feel free to post, and I’ll get back to you.

 

132 Responses to 'Things You Need to Know before Interviewing for a Game Programming Position'

  1. 1Christopher Shell
    August 12th, 2006 at 7:25 am

    Thanks for writing this article, it was really an eye-opener for me and really influenced a lot of my course of action for the remainder of my college career, especially the part about learning C#, something I was considering but now know is a must and i’ll definitely brush up on Math and Physics.


  2. 2Matt
    August 12th, 2006 at 5:04 pm

    I’m glad you enjoyed it! If you have any questions, don’t hesistate to post. Also, you might want to check back frequently because I’m planning to write more for people interested in getting into the industry.

    Thanks!

    -Matt


  3. 3Christopher Shell
    August 15th, 2006 at 2:43 pm

    Did you take Physics at Michigan? And if so, did you take it during the Fall/Winter or Spring/Summer.


  4. 4Matt
    August 15th, 2006 at 3:01 pm

    I took Physics 140 Fall 2000 and Physics 240 Winter 2001. Physics 140 teaches the material that I use for gameplay. I still have my Halliday and Resnick Fundamentals of Physics at my desk. I hope that helps.


  5. 5Christopher Shell
    August 15th, 2006 at 8:17 pm

    Ok, cool. I’ll be beginning Physics in Winter with 140 i’ll take 240 the following fall if not in the spring. I’m just a bit worried because I hear so many people complain about the difficulty of the courses at Michigan.


  6. 6New Technology
    September 22nd, 2006 at 7:50 am

    Video Game Programming

    Video Game ProgrammingVideo Game Programming is probably one of the most sought out jobs in the technology market. All developers want to see an outcome of what they have created, and what better way than work with Video Game Programming.


  7. 7Schelsea
    January 5th, 2007 at 11:37 am

    Physics 140 and 240 at U of M are great for honing the math and physics skills listed in this blog. I took them both while studying Engineering at U of M in 2000.


  8. 8Social Content Headline News
    January 5th, 2007 at 11:46 am

    Things You Need to Know before Interviewing for a Game Programming Position

    [link] [more]


  9. 9Tim Kerchmar
    January 5th, 2007 at 12:28 pm

    I work for a major middleware developer, and I can agree with everything that he said in this article. It has to be what you love to do, because there is so much to learn. I wasn’t brushed up on everything when I started, but I had a demo that showed that I had a grasp of how to integrate all these things into a game.

    The funny thing is that we actually do use ANTLR or BISON or one of those parser thingies for our special non-xml formatted files, so understanding how to build a compiler is very helpful. That’s one of the curveballs you don’t know about until you are given a task to extend the syntax.


  10. 10Chris DiBona
    January 5th, 2007 at 1:23 pm

    And if you are going to U of M, take John Laird’s class senior year if you really want to do games.


  11. 11Barry Kelly
    January 5th, 2007 at 1:30 pm

    I gotta say, first thing I noticed, you’re missing the “one-half” in this equation:

    ‘d = v0 * t + a * t^2′

    should read something more like (this is the one I learned in school):

    ’s = u*t + 0.5 * a * t^2′

    s being displacement, since ‘d’ as distance is scalar, and doesn’t represent direction.


  12. 12Leonard
    January 5th, 2007 at 1:35 pm

    It’s ‘differentiate,’ not ‘derivate.’


  13. 13Leonard
    January 5th, 2007 at 2:03 pm

    A simpler explanation for Barry Kelly is that when taking the antiderivative, the power rule for x^n is (x ^ (n + 1)) / (n + 1).

    So, where a(t) = a
    v(t) = at + v0
    s(t) = .5 at + v0t + s0


  14. 14Matt
    January 5th, 2007 at 5:24 pm

    Barry, thank you for the correction. I have updated the article to include the 0.5. I have not changed the “d” since that is the way I usually see the equation, and “d” represents displacement to me.

    Leonard, thank you for the math proof. I still think derive is correct because it is referring to use mathematical operations to calculate the new equation. Differentiation as you proved is a way to derive that equation. I appreciate the feedback.


  15. 15Tom
    January 5th, 2007 at 9:36 pm

    Hi. Great article man, it opened my eyes… but you see, I have some questions and I’d like to talk to you a bit more about this subject, could you email me so we can have a chat sometime? I’d really appreciate it. See you around, and thanks!


  16. 16woof-woof
    January 5th, 2007 at 9:38 pm

    OK, I’ll try again, now in an HTML-conscious way. Sorry.

    First get length of projection: |a|*cos(gamma)

    Normalize b: b / |b|

    Multiply them: b * (|a| / |b| * cos(gamma))

    Now remember: <a, b> = |a|*|b|*cos(gamma)

    Thus the projection is: b * (<a, b> / |b|^2)

    Which you can beautify as: b * (<a, b> / <b, b>)


  17. 17Jeffrey
    January 5th, 2007 at 9:57 pm

    I don’t think you need to know c++, a bit would be good but alot of companies now are using high level languages like python for the AIs and only using c/c++ to execute it, and for the graphics


  18. 18Matt
    January 6th, 2007 at 1:28 am

    Woof Woof - You are very much correct. The equation I wrote was for when b is normalized, but I neglected to mention that. I have updated the article accordingly. Thanks for the feedback!

    Jeffrey - I respectfully disagree with you. If you want to be a “game programmer”, you normally work in C/C++. There are a few companies that are exceptions, but that’s generally the case. If you want to be a “game designer” or “game scripter”, they often work high level scripting languages. Regardless of whether you are working in a higher level language or not, you SHOULD know C or C++. The reason for that is because high level languages do a lot of things for you. If you don’t understand the lower levels, then you will write suboptimal code. For example, say you are using a resizable array structure in a high level language. As you fill it out, you add the new elements to the end. Now, this may seem like a perfectly reasonable thing to do in a high level language, and it is. Unfortunately, high level languages aren’t all that suited to games. So, you would have to do a lot of allocations in order to fill the array out in that way. If you understand C/C++, you’d know that it is very slow and a very bad thing to do in a performance critical application such as a game. So, even if you never use C/C++, you still should know them.


  19. 19dustin
    January 6th, 2007 at 3:18 am

    A while ago I blogged about my experiences interviewing for a programmer position with EA. Click my name to read it.


  20. 20Binary Creativity - Things You Need to Know before Interviewing for a Game Programming Position : Popular Bookmarks : eConsultant
    January 6th, 2007 at 11:34 am

    […] Binary Creativity - Things You Need to Know before Interviewing for a Game Programming Position Posted in bookmarks | Trackback | del.icio.us […]


  21. 21chris grze
    January 6th, 2007 at 3:39 pm

    Enjoyed the read,

    Some random comments in particular about the math section:

    You write: “You should know what the inverse of a matrix is and how to compute it for any matrix.”

    If you know how to do this please let me know (think singular) :)

    Being aware of ill-conditioned matrices and how to identify them might be good.

    Also, being aware of the (fast) fourier transform and operating in the fourier domain might come up… maybe the DCT, too?

    cheers


  22. 22Like Your Work » Blog Archive » links for 2007-01-07
    January 6th, 2007 at 5:20 pm

    […] Binary Creativity - Things You Need to Know before Interviewing for a Game Programming Position (tags: programming games game) […]


  23. 23Derelict
    January 6th, 2007 at 6:22 pm

    This is an excellent article / overview of game programming positions!

    There are a couple of other major systems in gaming, as well … each with their own particular areas of knowledge. Networking and sound are both very important disciplines in many of today’s games and platforms.

    Also, the ability to both read and write (i.e. work from) specification documents (whether white papers, analyses, or design docs) is crucial as well. Many programming test in interviews consist of solving a given problem set from written specifications in a set amount of time.

    D


  24. 24Matt
    January 6th, 2007 at 7:48 pm

    Chris - Excellent point. If I figure out how to invert a singular matrix, I will definitely let you know! :-D So far, I have not directly used fast fourier transforms or DCTs (although I worked as an intern on the Xbox Media Center Extender at Microsoft, and they are very important in video compression). The way I see it, the stronger your math skills are, the more tools you have to solve a problem, which makes you all the better coder.

    Derelict - You also raise good points. Working from documents is very important, but it is also important to be able to work from poorly specified problems and incomplete requirements. That is especially important if you want to program gameplay because no matter how good the designer is, they won’t be able to detail how a character can react in every circumstance, and even if they do, there’s a good chance it won’t be fun.


  25. 25David Monarchi
    January 7th, 2007 at 8:47 am

    I’ll add my “excellent article” to the chorus of praise. One note wrt matrices: check out singular value decomposition (SVD). It’s effectively a generalized inverse that applies to non-square matrices. It’s used a lot in a variety of disciplines, frequently with large (e.g., 100K X 1M) sparse matrices.

    cheers,
    david


  26. 26chucky
    January 10th, 2007 at 8:04 pm

    Seems I’m pretty close to qualified… never knew a theoretical physics degeee was so useful ;-)

    PS. The SVD is more like a generalized eigenvalue decomposition rather than an inverse, although given the SVD it’s easy to figure out the inverse (assuming that it has one).


  27. 27Wolf
    January 11th, 2007 at 5:14 pm

    How do you guys remember the vector projection stuff? I can’t unless i study and then i loose it like 2 days later lol


  28. 28CompSci.ca Blog » Breaking into a Video game Programming career
    January 12th, 2007 at 7:15 am

    […] I had some thoughts on video game programming jobs, but an important question - “if every game studio required 2 years of experience, where would a new graduate get it?”, was not clearly answered. Ilya Grigorik followed up with a link to an interesting article by Matt Gilgenbach, a video game developer. There Matt talks about what he thinks it would take to break into the game development right out of college. “For quite some time, the game industry was an exclusive club that didn’t allow any new blood because every opening required applicants to have 2+ years of experience and 1 shipped title. I don’t think there has ever been a better time to get into the games industry right out of college than now. Because next gen team sizes are increasing drastically, people with experience are harder to find, so more and more companies are recruiting right from colleges. Regardless, of what college you go to, you can still get a job in the games industry provided you have a certain proficiency in the following areas.” […]


  29. 29Binary Creativity - Things You Need to Know before Interviewing for a Game Programming Position « Danger - No Random Walking!
    January 20th, 2007 at 4:28 am

    […] Link to Binary Creativity - Things You Need to Know before Interviewing for a Game Programming Position […]


  30. 30armand bovoso
    January 29th, 2007 at 11:13 am

    i am a student od walter reed middle school. i am wondering if you can email me so i can understand 3d math skills better for my math project. i was inter viewing a woman named ursila that im sure is the top animator of the game call of duty1 and she also is part of other games too but i dont know what they are called. please help me with 3d math skills because when i interviwed her she said 3d math skills and i didnt under stand that. so thankyou and bye


  31. 31Topher
    January 31st, 2007 at 10:55 am

    I actually just broke into the industry right out of college. Someone asked me how close this article portrayed my interview and I’ll admit, it’s close… but to clarify, at least at my interview they don’t ask questions such as “Here’s a camera ray and an AABB, what’s the intersection?”, it’s more of a “So we have this scene and a camera object, how could you optimize?”… (ie, know the material, don’t memerize it)

    Also, my college degree meant little to nothing, it was personal or side projects that got me the interview… and the side projects are what gave me the experience to answer the questions… so if you’re really serious about getting into the industry, get a couple friends together, and start a project… it’ll speak volumes more than a degree will.


  32. 32Matt
    February 5th, 2007 at 6:23 pm

    Wolf – Rather than trying to remember the formula, try to remember the concept, and it’s easy to derive the formula. If you know what the projection really represents, then it’s easy to come up with the formula. So, let’s take a look at what the formula represents, and then derive the formula from that. So, let’s project a vector called v onto a vector called w. The projection is basically calculating the component of one vector that is along the other. The easiest way to explain what the projection represents is with a picture. This website has a good picture to explain it.

    (image from http://www.math.duke.edu/education/ccp/materials/mvcalc/vectors/vec3a.html )

    So, the projection is the vector along w with the magnitude such that if you draw a perpendicular vector from w to the end point of v, where the perpendicular (q in the picture) meets w is the end point of the projection. The projection (p in this picture) begins at the start point.

    Although the description is complex, hopefully the graphic describing what it is will stick in your memory. So now that you hopefully have an idea of what the dot product represents, we can address the task at hand, which is deriving the equation. Notice the triangle formed between p, q and v. Now, you have a triangle and if you remember SOHCAHTOA (Sine = Opposite / Hypotenuse, Cosine = Adjacent / Hypotenuse, Tangent = Opposite / Adjacent) You’ll notice that the hypotenuse is the magnitude of v, and we are looking for the magnitude of p. So, the new equation is:
    Adjacent = |p| = |v| * cos( theta ).
    The definition of the dot product states that:
    v dot w = |v| * |w| * cos( theta )
    To simplify the math, let’s normalize w to create u. That way |u| = 1
    So, v dot u = |v| * cos( theta )
    cos( theta ) = v dot u / |v|
    |p| = |v| * v dot u / |v|
    |p| = v dot u
    So, that’s the magnitude of |p|. The direction is along u, so p = |p| * u
    So, basically that’s one way (of many) to derive the equations from the actual math without memorizing the formulas. That’s usually how I pick up formulas until eventually, it becomes second nature.


  33. 33Matt
    February 6th, 2007 at 1:28 pm

    Topher - Congrats on getting into the industry! No two game companies interview the same way. I’ve been on both sides (interviewing and being interviewed) of quite a few interviews, so I’ve seen a lot of variance. Sometimes specific questions are asked about algorithms or equations. Othertimes code or pseudo-code must be written. Othertimes specific problems have to be solved and/or equations have to be derived. I think if you know the information here and the info contained in the article Dan Sass and I wrote for the game career guide getting a job out of college will be easy. Thanks for posting!


  34. 34Anthony (3N)
    May 4th, 2007 at 4:34 am

    Hello, I’m a graduate from University of Alabama with a Bachelors in Computer Science and a 3.7 GPA (Graduation with Honors and # 17 in my class from Alabama and a 4.0 with my AS Degree in Mathematics at a jr.College Graduating with Highest Honors) and with an A+, C#, JAVA .NET, C++, Visual Basic, Web, BCPL, and Network Communications Certifications (I spent $90 and 2 1/2 weeks for each one!!!) I also Know how to use Perl, and APL (I Studied Greek) and Very Proficient in LINUX and UNIX. I have studied and researched how to program since i was 14 years old during my spare time and on just about every weekend (When I was 16 I wrote my own text-based game (at the time it was like a spin off text game of the game Diablo with D&D features) However I’ve been out of school for a year now and im still unemployed and can hardly pay my rent or feed myself. I was wondering do you have any tips on how I can get my career started? Because I’ve Applied at several places with my Resume and got either Declined because of no prior work history, or I got OVERQUALIFED!! Honestly I want to know, if You interviewed me today for a game design company, what would you do based on what I just said to you about me? (Hire or Not Hire)


  35. 35Matt
    May 4th, 2007 at 2:59 pm

    Anthony - Thank you for the comment. I’m afraid I can’t say exactly whether I would hire you or not because more information is required to determine whether I would hire or not hire someone. Firstly, do you have a demo? A demo is very important to set yourself apart from the hundreds of resumes that recruiters receive. Ideally, a resume should be complemented by a 3d game or tech demo. I think the 3d part is important because 3d requires familiarity with important math concepts such as matrices, quaternions, and vectors. A 2d game can be okay, but it needs to be really well polished and impressive in order to get you considered. If you don’t have a game demo, then you need to put one together before applying places. You have options as far as what technology you want to use. Some good choices are C++ with DirectX, C++ with OpenGL or C# with the XNA Game Studio Express. The XNA Game Studio Express is good because you can develop a game that will run on an Xbox 360 (although it costs $99 for a year long license). Many recruiters specifically look for console experience because the development style is a bit different. (I’ve discussed this somewhat in my recent post on PC vs. Console development) If you had a really cool demo that you put together running on the Xbox 360, then I would imagine you’d have no trouble finding a job.

    I’ve never heard of someone turned down for a job because of being overqualified. The only reason that you would be overqualified is if they are looking to pay someone less money then they’d think you’d ask. Perhaps you could negotiate with them as far as your financial expectations for any positions they may offer you.

    Once you have a good demo, then send your resume everywhere. Go to gamasutra and respond to all the programmer positions they have there. Go to every game developer’s website and respond to any job positions they have open. Be sure to write them a message about how eager you are to get into games and how dedicated you’ve been in pursuing it as a career. In fact, if you have a cool demo, you’re welcome to apply to High Impact Games, where I work. We are hiring currently.

    Another thing is that it’s important to have a professional e-mail address. DevilsChild666@hotmail.com and GanjaLuver420@stoned.net aren’t going to impress any recruiters.

    I hope that helps. Feel free to write back if you have more questions.


  36. 36Marsha
    May 4th, 2007 at 5:43 pm

    Nice site!


  37. 37Shirley
    May 4th, 2007 at 5:57 pm

    Nice site!


  38. 38Cathy
    May 5th, 2007 at 2:21 pm

    Nice site!


  39. 39Terabanitoss
    May 8th, 2007 at 5:00 am

    Hi all!
    You are The Best!!!
    G’night


  40. 40javatalk
    May 14th, 2007 at 3:16 am

    在面试一个游戏编程职位前,你需要知道的东西

    在面试一个游戏编程职位前,你需要知道的东西


  41. 41Whitney Riley
    May 28th, 2007 at 2:50 pm

    I believe this one applies “Unless each man prodiuses more than he receives, increases his output, there will be less for him than all the others”, doesn’t it?


  42. 42qianlima888
    July 5th, 2007 at 1:02 am

    在面试一个游戏编程职位前,你需要知道的东西

    长时间以来,游戏产业不允许新的血液加入,因为每个职位都要求申请人有2年以上的经验. 但是现在是加入游戏产业的最好的时机. 因为研发队伍的急剧增长, 有经验的人很难找了, 所以越来越多…


  43. 43http://www.cvgirlscouts.org/adults/rss.php?blab791/52247.html
    April 28th, 2008 at 8:33 pm

    acomplia where to buy

    45L7Ct0 | buy nolvadex tamoxifen


  44. 44Lesbian anal sexfiction lesbian sex stori.
    April 29th, 2008 at 1:09 pm

    Lesbian anal sexfiction lesbian sex stori.

    Lesbian anal sexfiction lesbian sex stori.


  45. 45http://inventum.uniminuto.edu/invent.php?passus822/5925.html
    April 30th, 2008 at 6:32 am

    yahoo webcam girls sara

    3Eo7ht0 | schoolgirl strip webcam


  46. 46481b0ae8f1
    May 2nd, 2008 at 5:37 am

    481b0ae8f1

    481b0ae8f1


  47. 47Ambien online.
    May 3rd, 2008 at 5:44 am

    Ambien next day delivery canada.

    Ambien. Ambien online.


  48. 48Articles on the benefits of ritalin.
    May 4th, 2008 at 3:12 pm

    Ritalin statistics.

    Ritalin. Ritalin without prescription. Scientific evidence pro con ritalin. Ritalin online no membership.


  49. 49Tenuate 75mg. s.
    May 12th, 2008 at 11:31 am

    Tenuate.

    Buy tenuate tenuate. Tenuate. Buy tenuate dospan no prescription. Diet pills tenuate.


  50. 50Trucks.
    May 14th, 2008 at 3:41 pm

    Trucks.

    Trucks.


  51. 51Best source information about propecia.
    May 16th, 2008 at 10:44 pm

    Propecia side effects.

    What is propecia mg and frequently asked questions. Do generic propecia work.


  52. 52Kitchen cabinets.
    May 18th, 2008 at 2:13 pm

    Kitchen appliances.

    Kitchen rugs. Kitchen aid. Kitchen aid mixers. Kitchen cabinets. Kitchen designs.


  53. 53Long term care insurance.
    May 19th, 2008 at 2:00 pm

    Boat insurance.

    Car insurance. Auto insurance quotes. Cheap car insurance. Employment insurance. Health insurance. Insurance quotes. Accident insurance www.biz49.com.


  54. 54Propecia.
    May 20th, 2008 at 1:43 pm

    Propecia moins cher.

    Propecia. Pill propecia. Does propecia work. Propecia photos before after. Propecia pill. Propecia side effects fre.


  55. 55Buy xenical and propecia online from pharmcom.
    May 22nd, 2008 at 1:46 pm

    Propecia online uk.

    Propecia.


  56. 56484cee36a2
    June 9th, 2008 at 1:49 am

    484cee36a2

    484cee36a2


  57. 57http://6.cireoc.com/b1
    June 11th, 2008 at 9:27 am

    Iiird Tyme Out

    f6v9vt0 | Les Petites Annonces Classees Du Quebec


  58. 58http://3.runlolo.com/a7
    June 11th, 2008 at 2:01 pm

    D70 D70s Digital Dvd Nikon Slr Tutorial

    PUF89t0 | Fscanf C Programming


  59. 59http://6.guhieg.com/c1
    June 11th, 2008 at 2:16 pm

    39 S Stubb

    3Hsn8t0 | German Consolate New York City


  60. 60http://9.ligcylk.com/d4
    June 11th, 2008 at 4:44 pm

    Alamo Del Hacienda Property

    8wUdet0 | Hopkins Opioid Program


  61. 61http://8.guhieg.com/d4
    June 11th, 2008 at 8:17 pm

    Masconomet Regional School

    Po27Pt0 | Markettools Research Private Limited


  62. 62http://7.cireoc.com/f1
    June 11th, 2008 at 9:06 pm

    Bdsm Waar Je

    syLN3t0 | Bill Byerly Cigar


  63. 63http://2.guhieg.com/a2
    June 11th, 2008 at 9:10 pm

    Army Of Lovers Crucified

    zSei7t0 | Ky Louisville2c Paternity Test


  64. 64http://5.guhieg.com/a8
    June 12th, 2008 at 3:51 am

    Gpo Loopback Mode

    QJmBdt0 | Gratka Pl Praca Zagranica


  65. 65http://4.runlolo.com/g3
    June 12th, 2008 at 5:37 am

    Grand Canyan Vacations

    cCbpXt0 | Comiskey France Francis


  66. 66http://6.runlolo.com/e0
    June 12th, 2008 at 6:06 am

    Maryjanes Last Dance

    sSc9Qt0 | Leigh Fmt Review


  67. 67http://9.ligcylk.com/e7
    June 12th, 2008 at 7:38 am

    Daro Realty Inc.

    6XHnJt0 | Bisel Fern Peat


  68. 68http://2.cireoc.com/e9
    June 12th, 2008 at 8:19 am

    6.6 Bus Diesel Ford School

    id5Rst0 | 2.3.0.4 Azureus Azureus Citkit.dl.sourceforge.net Sourceforge Win32.setup.exe


  69. 69http://1.cireoc.com/e0
    June 12th, 2008 at 9:12 am

    Fall Out Boty

    hxrGst0 | Cursors By Toxxic Net


  70. 70http://5.casabesh.com/d0
    June 12th, 2008 at 12:00 pm

    John Heartfield Photographer

    ZYu6nt0 | Always And Forever By Luther Vandross Lyric


  71. 71http://7.runlolo.com/e3
    June 12th, 2008 at 2:26 pm

    Kirkhill Primary School

    mXpAvt0 | Cutting Skirting Boards


  72. 72http://9.runlolo.com/a2
    June 12th, 2008 at 2:40 pm

    Decatur Hospital Ill Stmarys

    PD8A0t0 | Fluorescent Light Fixture T8


  73. 73http://1.cireoc.com/f5
    June 13th, 2008 at 5:48 am

    Kasauti Zindagi Ki

    pYHHjt0 | Chad Life Muska Story


  74. 74http://2.runlolo.com/g2
    June 13th, 2008 at 6:12 am

    Interective Science Websites For Kids

    csF8wt0 | Je Vous Prie De M Excuser


  75. 75http://4.casabesh.com/g4
    June 13th, 2008 at 7:39 am

    Blogspot F Novelist Scott Sinclairs

    Iatcst0 | How To Determine If Musculoskeletal Injury Is Work-related


  76. 76http://8.ligcylk.com/g0
    June 13th, 2008 at 9:49 am

    Apartment Marbella Skol

    vYzoRt0 | Electricity And Magnetism Lesson


  77. 77http://1.runlolo.com/f1
    June 13th, 2008 at 10:14 am

    Empresas.asp Lista Plasticosemrevista.com.br

    tDes7t0 | Algonquian Indians Evil Spirit


  78. 78http://5.cireoc.com/e8
    June 13th, 2008 at 12:10 pm

    Centerfield Capital Partners

    2LiIht0 | Boat History Laurus


  79. 79http://3.preecgew.com/c1
    June 14th, 2008 at 2:34 pm

    Chuck Wood Woodchuck

    j1DCHt0 | Wilks Barre Scranton Penguins


  80. 80http://3.owtasdan.com/a5
    June 14th, 2008 at 2:49 pm

    Overbrook Presbyterian Church Columbus Ohio

    7EvgCt0 | Us District Judge Robert Chatigny


  81. 81http://3.owtasdan.com/g5
    June 14th, 2008 at 3:26 pm

    Nokia 445xi Monitor Drivers

    VE1T1t0 | Grint Rupert Video


  82. 82http://2.hypyefli.com/f5
    June 14th, 2008 at 6:59 pm

    Adhoc Braga Exame Gulbenkian

    gVQHot0 | The Notebook By Nicholas Sparksquotes


  83. 83http://3.owtasdan.com/c4
    June 14th, 2008 at 7:11 pm

    1.3l Aircraft Engine Suzuki

    k2VBqt0 | Bobble The Little Blue Owl.com


  84. 84http://6.oknacit.com/e8
    June 14th, 2008 at 10:47 pm

    Apartment Pa Rental Summerhill

    wb94zt0 | The Lobotomist Jack El Hai


  85. 85http://3.oknacit.com/c2
    June 15th, 2008 at 12:08 am

    Nwi Online Times

    Z9ocit0 | Ann Pointer Lydford Devon


  86. 86http://7.oknacit.com/b5
    June 15th, 2008 at 2:34 am

    Aeries Fisher Bot

    q6Wudt0 | Bearue Of Meteorology


  87. 87http://7.hypyefli.com/c7
    June 15th, 2008 at 3:00 am

    Moses Anshell Advertising

    SmcYIt0 | Throck Morton Gallery


  88. 88http://1.owtasdan.com/b9
    June 15th, 2008 at 4:14 am

    Country Practice Esme

    6Fuvlt0 | Morem Plovi Jedna Mala Barka


  89. 89http://9.preecgew.com/b2
    June 15th, 2008 at 4:29 am

    Orlando’s Affordable Housing Needs

    X5u1Gt0 | Norshore Theater Duluth


  90. 90http://2.preecgew.com/c4
    June 15th, 2008 at 4:32 am

    History Of Iuds

    BZyYVt0 | Rickels Home Center


  91. 91http://8.preecgew.com/c4
    June 15th, 2008 at 9:12 am

    966 Bosch Fuel Injector Pump

    7gSUJt0 | Circumventor Site Web


  92. 92http://8.hypyefli.com/d0
    June 15th, 2008 at 9:33 am

    Milania Wedding Gown

    im5bXt0 | Tecom Bluetooth Drivers


  93. 93http://9.feripelu.com/g5
    June 15th, 2008 at 12:33 pm

    Mpio Hd400 Review

    2PjjKt0 | Pioneering Hypnotist Mesmer


  94. 94http://6.feripelu.com/d5
    June 15th, 2008 at 7:16 pm

    Aromatherapy And Palliative Care

    tvMkbt0 | Golf Gti Mk4 Specs


  95. 95http://1.oknacit.com/e1
    June 15th, 2008 at 9:22 pm

    Ptask.exe Is A

    NxZWzt0 | Culi Di Foto Rubate


  96. 96http://2.hypyefli.com/c2
    June 15th, 2008 at 9:55 pm

    College Endowments 2004

    nGWdSt0 | Meac Tournament 2005


  97. 97http://2.owtasdan.com/e2
    June 16th, 2008 at 2:37 am

    Pilgrams And Thanksgiving

    54Slnt0 | Anabolics 2005 Book


  98. 98http://4.hypyefli.com/c0
    June 16th, 2008 at 4:36 am

    Defaulting On A Construction Loan

    Nj2M7t0 | Dwight Yocum Lyrics


  99. 99http://6.owtasdan.com/d7
    June 16th, 2008 at 5:17 am

    High Ohio School Smithville

    T23Jut0 | Battery Hp Pavilion Zv5000


  100. 100http://4.oknacit.com/c3
    June 16th, 2008 at 11:24 am

    Capital Rotunda Washington

    7r5q2t0 | Provincial Curling Playdowns Alberta


  101. 101http://9.preecgew.com/c0
    June 16th, 2008 at 11:34 am

    900 Leem Mpa

    QsPbJt0 | Xigris Powder For Intravenous Infusion


  102. 102http://2.preecgew.com/b9
    June 16th, 2008 at 11:54 am

    Causes Of Paranoid Schizophrenia

    1OyUft0 | Imam Fawaz Damras


  103. 103http://6.roiwreom.com/h3
    June 19th, 2008 at 11:28 am

    Mo Willems Bio

    q4aw3t0 | Audio Bootys Bang Bang Buy


  104. 104http://6.fobvakki.com/f9
    June 19th, 2008 at 1:09 pm

    Northern Ligths Ford

    zHN5dt0 | American Air Filter Air Demon Ultra High Efficiency


  105. 105http://1.fobvakki.com/m7
    June 19th, 2008 at 2:07 pm

    Market Segmentation3a Internet Information Services

    Aq51kt0 | Herry S. Truman


  106. 106http://1.fredtijip.com/i5
    June 19th, 2008 at 6:01 pm

    ‘’into Context - A Nontraditional Approach To'’ Goldberg

    xqTwat0 | Kamakura Art History


  107. 107http://7.gadnirdo.com/g8
    June 19th, 2008 at 9:42 pm

    Fujitsu P1510 Review

    rgDHmt0 | Director Dockyard Hotmail.com Netscape.net Telkom.net


  108. 108http://5.topcocvo.com/j3
    June 19th, 2008 at 10:59 pm

    Ejercicios Gratis Eyaculacion Precoz

    AynXZt0 | Kawaguchi Kyougo Sakura Lyrics


  109. 109http://2.otyakyazt.com/g6
    June 19th, 2008 at 11:47 pm

    Lanesville High School In

    hsQvlt0 | Digital Remastering Video


  110. 110http://3.gadnirdo.com/f6
    June 20th, 2008 at 3:16 am

    Rockway Golf Course Kitchener

    mxnOot0 | Annie Fefley Karr


  111. 111http://8.otyakyazt.com/a3
    June 20th, 2008 at 4:38 am

    Halley Feiffer Squid

    edlBTt0 | Em Estudar Italiano Milao


  112. 112http://8.gechivifi.com/i4
    June 20th, 2008 at 4:55 am

    Forms Of Protesting

    SCklmt0 | King Fahd University Of Petroleum


  113. 113http://7.eypyabrod.com/a6
    June 23rd, 2008 at 4:11 pm

    Hotel Les Arcades Geneva

    CqVOJt0 | Geoff Huish Welsh Rugby


  114. 114http://9.eypyabrod.com/c1
    June 23rd, 2008 at 4:52 pm

    Aluminum Bike Bua Extra Kit Rack Solution Sports

    kevF3t0 | Aix En Liquidateur Provence


  115. 115http://7.eypyabrod.com/i7
    June 23rd, 2008 at 5:29 pm

    Dallas Mannys Mex Rstrnt Tex Tx Uptown

    NQg2At0 | Anklets Bedding Crib Dolphin Hawaiian Inspiredbythesea.com


  116. 116http://7.bagvidfaf.com/b6
    June 23rd, 2008 at 5:37 pm

    Del Dellinterno Fuoco Ministero Vigili

    IkH7Pt0 | Casio Waveceptor Watches


  117. 117http://4.eypyabrod.com/b1
    June 23rd, 2008 at 5:56 pm

    Vi Veri Veniversum

    vT92Dt0 | Hill Jovan Monsingor Pace


  118. 118http://1.tumworis.com/j4
    June 23rd, 2008 at 6:34 pm

    Minipack Mvs 31

    2xisNt0 | 3043 Moss Place Valley


  119. 119http://2.fosissyab.com/d5
    June 23rd, 2008 at 7:31 pm

    Polk Rti8 Reviews

    cAQadt0 | Kukkiwon Tae Kwon Do


  120. 120http://5.eypyabrod.com/d4
    June 23rd, 2008 at 7:41 pm

    Catalina Foothills School District 16

    gmKRjt0 | 4705 Hp Pda


  121. 121http://6.bagvidfaf.com/h5
    June 23rd, 2008 at 7:46 pm

    Product Design Ideation

    X19ylt0 | Hotel Orel Maribor


  122. 122http://1.sujetorfi.com/b4
    June 25th, 2008 at 5:33 am

    Com.pl Polska Wirtualna

    ObJknt0 | Ukooa Medical Centres


  123. 123http://9.vodhagsuvy.com/l3
    June 25th, 2008 at 6:50 am

    Cam Espia Msn Web

    0lsTjt0 | Agrani Insurance Company In Bangladesh


  124. 124http://6.jufneosyo.net/n8
    June 25th, 2008 at 7:13 am

    Morse High School Bathmaine

    nSApWt0 | Detox Diet Dr Joshis


  125. 125http://6.vodhagsuvy.com/h2
    June 25th, 2008 at 2:26 pm

    Dweezil Naked Zappa

    2YBJHt0 | Old Williamsburgh Candle Company


  126. 126http://6.ubupverola.com/l6
    June 25th, 2008 at 2:40 pm

    Regionale Sardu World

    xw5I9t0 | Bij De Overheid Vacature Vacatures Werkbijdegemeente.nl


  127. 127http://8.sujetorfi.com/k5
    June 25th, 2008 at 3:12 pm

    Rob Papen Albino 2

    wQrx6t0 | Morten Gamst Pederson


  128. 128http://3.cyftebnayg.net/e1
    June 25th, 2008 at 11:46 pm

    Rural Areas In Kwazulu Natal

    LMaYTt0 | Kontron Medical Llc


  129. 129http://organsociety.bsc.edu/Contribute.php?page=j17/53796
    June 30th, 2008 at 8:28 am

    hidden cameras spying on girls

    qkcylt0 | sex cams with phone


  130. 130http://organsociety.bsc.edu/Contribute.php?page=j17/73511
    June 30th, 2008 at 8:42 am

    webcam chat horny

    FD8ekt0 | teen webcam free fuck


  131. 131http://organsociety.bsc.edu/Contribute.php?page=j17/53065
    June 30th, 2008 at 10:44 am

    sex chatt me webcam

    4hi4Qt0 | free live prono movies


  132. 132Free porn clips.
    July 1st, 2008 at 6:55 am

    Free porn.

    Free porn pics. Disney porn. Free lesbian porn. Lesbian porn.


Leave a Response

- Why ask? This confirms you are a human user!

Everything on Binary Creativity is © 2006-2008 Matt Gilgenbach. All rights reserved. | RSS | Comments RSS