I live in the New York area, and I've been working on a game that I'd like to either demo for people (show it off, show a little gameplay) or let people demo themselves (basically mini playtesting). I want to see how people respond to the idea, and hopefully get some attention.
I've noted that there are some clubs on meetup.com that are pretty big in New York (So many members they have to sell limited tickets to meetings). The clubs usually have a policy for letting local startups present their product ideas. I could potentially talk my way in. Are there any other more typical places I'm skipping over, though? I know there are events like PAX EAST next year, and other gaming conventions (probably no more this year, right?) but those are a last resort, since they typically cost hundreds to secure a spot in, and take place everywhere but New York.
I started learning OpenGL ES a few days ago (I'm exclusively an Android developer), and I stopped when I suddenly realized that there's no way the most complicated games on the App Store are done 100% by hand like this. There's way too much going on, even if you have a team of 5 people. But now that I think about it, why would you do even a simple 3D game by hand all in straight OpenGL? I'm not sure, but I think people also often use Android's NDK to write native C++ code when they do graphics work. Why in God's name would I do that to myself instead of just using something like Unity (mostly free), Shiva (free), or some open-source 3D engine?
I'm not trying to sound facetious. If you write OpenGL code for games, why? Reasons why you do it are preferred over reasons why someone might do it. If you prefer an engine over hand-written code, why?
I always hear from professional programmers (especially on forums) that in school, students rarely learn how to use real world tools and techniques for better code like Version Control.
Aside from that, what are other things you use in the real world that students generally don't learn? Maybe some things you had to learn about when you started working, but knew nothing about in school. Below is what I've heard from others already:
Profiling (Don't know what this is)
Unit Testing (Don't know what this is)
The most interesting concepts are things that can be done alone to improve code, like Unit Testing and Profiling. I'd prefer concrete things like that rather than the sort of general tips you might find in a Joel Spoelsky blog. Sorry if this question has been asked before. I couldn't find it on Google.