http://gameprogrammingpatterns.com/ (http://gameprogrammingpatterns.com/) (also on GitHub (https://github.com/munificent/game-programming-patterns))
The author, Bob Nystrom, apparently worked (works?) for EA and created the Magpie programming language (http://magpie-lang.org/) so I'm pretty sure he knows his stuff. It's pretty hardcore, though, and also deals with game programming aspects that theoretically may already be taken care of for Sphere users by the engine itself, so don't go in expecting a read aimed at novice devs.
That's not to say it's not useful for Sphere users or even the few of us here developing/maintaining Sphere-compatible engines. Basically, if you have an interest in learning how a game development professional recommends organizing task-specific sections of code it will be a useful read, especially if you're a fan of the book Design Patterns: Elements of Reusable Object-Oriented Software.
Especially early on, it's common to write code that you know you'll throw away.
Loved this statement.
Also his Data > Code section in "Bytecode" under Behavioral Patterns is great. I oftentimes hardcode spells and enemies when they should have existed as data.
I keep coming from the mindset of small demo games and tend to forget when you go big your architecture has to develop past that 48 hour compo type of coding that I tend to employ. It's the driving motivation for my RadLib library which I use in all of my games past 2007/8.