So... uhm, I disagree in few points...
1.) Technology changes, and 100 hours is not nearly enough to be good programmer. It is good for start (and to start making games), but I've spent a lot more in different languages (and even in terms of paradigm) - yet I know I should program more to be better. Also OO-only programmers tend to make bad code. Don't get me wrong, not all of them, but for most of the time Carmacks comment here is right - http://harmful.cat-v.org/software/OO_programming/
2.) Numbers isn't key to success, will to finish project and actually finishing it is. Numbers can make also project go apart (too many people - too many brains - too many different ideas -> result is dead project), also more people on code = messy code (it never happened in plain C to me - all multi-ppl projects were clean and nice, again only in OOP land - the theoretical principles really don't work that well in praxis).
3.) Nobody wants old COD style game? Then why CODs are still top-sales? This point is invalid.
4.) Also not right, I'm one of those that creates his own engine for a reason - performance (Unity is just slow as hell to do the stuff I have to do); And note that they are definitely NOT free (maybe free to use in the start, but once you start selling, you're paying). Using an engine is option if it is affordable, available (e.g. it exists) and you don't want to use in-house technology.
5.) That doesn't count just for games, this counts for everything.