Controllers have come a long way since the days of the joystick. The standard today features buttons on the right, d-pad on the left, analogs in the center left and center right, two sets of shoulder buttons at the top left and top right, and start and select somewhere in the middle.
Things weren't always this simple, however. Back in the fifth gen, Nintendo came out with the Nintendo 64 and, alongside it, a controller so baffling it almost looked like it was meant to be held with three hands.
The Nintendo 64's controller could have very easily been a nuisance, but this was circumvented due to Nintendo's foresight with it. The controller's design was convoluted, yes, but it was necessary for all the games they were making. There's no doubt that Super Mario 64 and The Legend of Zelda: Ocarina of Time feel better on a standard eight gen controller today, but it doesn't feel nearly as bad as it should to go bust out a Nintendo 64 and hold that controller to play games that were made with the controller in mind.
It was a different era back then, games were designed with the hardware in mind more often than not and while this resulted in developers not being able to fully realize their games, it also forced them to do things they normally would not have done. It was a challenge that no doubt pushed developers to try harder and think outside the box for creative results. Nowadays, that's not the case.
Thanks to the standard controller format that every major console abides to, there's really no pressure to adapt a game to the controller that the players will be using. Even Nintendo's Wii U controller, the most diverse of the current controllers on the markets, follows the format very closely only taking loose liberties. For consoles, this allows for easy and simple development. Multi platform games can just assume that each system has the right controller, because they do. For PC games, that's a different story altogether.
It took a while to get there, but most indie games coming out on Steam have full controller support. It used to be that the keyboard was the only way to play most indie game, even games that needed a controller. When Super Meat Boy made its way to the PC, it was a complicated mess to get a controller working on it due to how shoddily controller support was integrated. Keyboard play was out of the question as the game was too reflex based to justify using WASD or the arrow keys for fast, high level play.
Even with controller support from indie games, it doesn't feel quite the same as it did back in previous generations. Instead of games being made with a controller in mind, they're made with binding instead. Most PC games nowadays can be easily rebinded for a more personal level of play. Admittedly, this is something everyone should take advantage of. While developers did used to design their games with the controller in mind, giving the player a modicum of control is a great way of creating a more comfortable experience.
Another big reason for key binding options in indie games is simply that an indie developer can't know what kind of controller their user base will be using, if they'll even use one. In a way, they're also keeping the controller in mind, albeit in a much different way. Design choices have to be made carefully since alienating someone who exclusively uses controllers or exclusively uses a keyboard would ultimately result in lost sales and poor notoriety. Whether they know it or not, the indie industry still abides to the rules of old paving the way for the next batch of indie developers to design their games with a controller, or lack of one, in mind.