Thanks a lot, I am glad you enjoyed it. Let's go a bit deeper on some of your points. I really tried to keep things short and on point on the article, generally for each example a lot more could be said. Le tme add some short notes to your questions:
a) rotating the sprites: There are countless games which have sprites drawn in 8 or 16 directions. Both retro games and modern indie games. Usually you see it with things like arrows or other projectiles which are used a lot, where you then jgot 8 or 16 sprites for them.
Yes you don't have to clean them "necessarily" up, you could get away with a single picture. but still usually a set of multiple cleaned up sprites is used, of which then each direction gets rotated with a smaller distortion of the rotation. but the wording is chosen the way it is to emphasize the point.
b) Games which first render to a low res and then are scaled up:
THat's generally the "low-resolution setup" as described later in the article.
if you render to a low resolution first and then scale this up you also run into problems with laptop screens or any hardware which is not an integer-scaling multiple of the small resolution you have
c) There is however no agreement if the user then stretches the view."
developers understand soemthing as pixel-perfect for their game. And some end-users understand soemthing as pixel-perfect which has more to do with what options to choose. Let's say you got a game like Cross-Code (568x329 px native resolution) or Blazing Chrom (427x240px native resolution) - just by the setup the programming side chose here there is no way to ever show those with nice integer scaling on most screens. So if the end user just chooses "full-screen" for them, you end up with a slightly blurred/stretched image. Generally as a developer you can provide options for your user and you can choose a basic resolution, but the user might not display the game you intented as a developer. And a lot of users also talk about "pixel-perfect" games, just by the way of the options they chose to display them.
1.) I also like this option, but it really depends on the original system system. If you want to code something like this you go with the "low resolution-setup" and add the shaders on top.
It's however hard to put all of the specific retro choices into a simplified term because the tech-limitations of each retro system differ.
2.) That's exactly what the "high-resolution setup" provides.