Games.greggman.com: Gamedev, Games, Coding
 
I found out a couple amazing artists I had the good fortune to work with have websites.

The first is Paul Sullivan who goes by Pencil Primate. His gallery is here

http://www.pencilprimate.com/

and he runs a blog as well.

The second is Josh Tiefer. His site is here.

http://tempsketches.blogspot.com/

Josh needs some encouragement to post more stuff.

Both of them are extremely talented.
2008-07-18
 
 
My friend Omar has been working on this game forever and it's finally out.


 
 
You might have known this but I just found this out yesterday.

I knew std::remove doesn't actually remove anything. The way it is used goes something like this.

std::vector<int> int_array;
 
int_array.push_back(1);
int_array.push_back(1);
int_array.push_back(1);
int_array.push_back(2);
int_array.push_back(3);
int_array.push_back(4);
 
// call remove to remove all the elements that equal 1
// remove reorders all elements so that the things you
// want removed are at the end of the vector
std::vector<int>::iterator erase_from = std:remove(int_array.begin(), 
                                                   int_array.end(),
                                                   1);
 
// actually erase the elements at the end
std::erase(erase_from, int_array.end());
Those comments are how I understood it to work. But that's not the entire story.

It turns out if you actually check the contents of the vector after the std::remove above but before the erase it will be

2,3,4,2,3,4
In fact the stl docs state that the contents of the range between erase_from and int_array.end() are undefined!

Why is this important? Well, a couple of things

 
 
This topic seems almost too basic to even discuss but I've run into these issues fairly often so appearently they do need discussion

When coding somethings to keep in mind, how can we code both efficiently and defensively. In other words, how can we get things done faster and with less bugs.

Here's a few ideas. They might seem obvious but like I said, I see lots of code that doesn't follow these ideas and so I'm bringing them up.

#1) If you do something a lot, figure out a way to make it easier to do.

 
 
I was searching for photos on flickr and I stumbled on these images by some guy who goes by the name of Skinny Coder

Click for larger image

 
 
Tom Russel is writing a quarterly magazine about video games. The first issue, available here, is 74 pages long, 28 of which are about M.C.Kids.

I can't claim to be unbiased since I made the game but I really enjoyed reading his reviews, deconstruction and thoughts.
2008-02-16
 
 
I have SOOO wanted to find this short animation for YEARS!!



I was totally inspired by that as a kid and in many ways I still am.
2008-02-11
 
 
I'm not familiar with more than a few debuggers, but, the ones I use generally have an issue with single line member functions.
 
 
I'm not sure any of these videos are legitimately supposed to be on Youtube but while they are there here are a few videos from groups that make 8bit based music.



House Watch by Consumers
 
 
What's your experience? Lots of management books etc say that private offices are super important for software engineers. The basic argument usually goes that engineers need to concentrate and be uninterrupted. That it takes them 30-45 minutes to get "in the zone". If they are interrupted for anything (phone call, conversation, question, distraction from the cube next to them, someone else's cell phone ringing) they don't just lose the 5 to 10 minutes for the interruption, they instead need another 30-45 minutes to get back into "the zone". To get their mind back around the problem they were solving. So, if they are constantly or even often interrupted they will never get in the zone and never really get any real work done.