I saw this and thought it was the typical, flippant, light-grey comment that ends up in newbie downvote hell at the bottom of every HN story. Then I thought a bit more: it's better than that. The Ribbon and the predictive bar in Mathematica are actually quite similar in concept: both attempt to figure out what you're doing and present you with contextually relevant choices.
The difference is that I absolutely detest the ribbon in Office. I find it much easier to remember the path to a particular function in a menu or static toolbar, rather than be presented with an ever-changing soup of psuedo-relevant options; the ribbon denies me the chance to build muscle memory for activating common tasks. Conversely, the predictive bar in Mathematica works very well and I've been using it much more than I expected.
I think this is because Office is a massively limited system compared to Mathematica; it's easy to imagine it as a physical object with knobs and switches for every function, like a really complicated power tool. Mathematica is a gigantic programming language, so large that even its creator admits to having an incomplete understanding of its scope. An intelligent assistant that can show you some natural next steps in your calculation actually makes a lot of sense here.
Imagine if your IDE came with this sort of stuff! You've just added a UIToolbar to your UIView. Do you want to set up matching outlets in the associated view controller? You've just declared an AUGraph; click a button to put method calls in for setting it up and adding a few nodes.
If you want to know all of the math and functions involved in pushing individual pixels to the screen and building something along the lines of a Quake 2-level engine in software, this book is a pretty good introduction to it all:
Note that this is the type of programming now implemented in hardware GPUs, and in libraries such as DirectX and OpenGL. If you were to write a modern game, you would do it on top of one of these hardware-accelerated libraries, and you wouldn't be writing this type of code in software anymore. But if you really want to learn how to do these things from the "ground up", this book can help you build that foundation