I have been a programmer since 1978, going the "long way" (all the way from Fortran/Cobol). Learning new languages as they come, creating some of my own. But the main interest has always been games programming. In the later part of 2010 I thought, why not do a MMORPG, to make some use of the experience I have? Boy, I was in for a very rough ride! It turned out that MMOPRGs need competence in just about every computer science:
C++11, Google Go (a new language for the server programming), NoSQL, client/server, web design (+session management, dynamic page generation, css), web server (did it myself), TCP/IP, real time systems, multi threading, Linux server management, MinGW, OpenGL (+lighting theories), Blender+animations, Gimp, a load of design patterns I didn't know existed (after first doing it the wrong way), UI design (using themes), safe login using encryption, git, subversion, apt-get, dpkg, Boost, Doxygen, GitHub, etc.
I knew some of this already, but maybe half of the complete effort was OpenGL, of which I knew nothing when I started.
Will I make money from this game? Probably not.
Was it worth the effort? Absolutely, I haven't had this much fun in many years. It is fun to learn.