The Recorder / Player combo has been there for a long time (long before the FeatureWriter) and I've used them quite a bit for debugging purposes. Notably, they are very handy if you're struggling with an issue in the middle of a very time consuming translation and you want to isolate a certain behavior without having to run the entire workspace every time. Another example, let's say your workspace reads from a webservice or a very slow database. In that case you can connect a Recorder straight after the readers to quickly make a local copy of the dataset and then using the Player for subsequent testing, removing them before going into production. Finally, they can be very handy when communicating support issues to Safe as you can remove external dependencies in your workspace by supplying ffs files from the Recorder.
Regarding compression, that is always something that adds a lot of overhead, as it is an extra step that's quite heavy on math. With today's cheap disk space I hardly ever use compression, it simply isn't worth it, I find, unless I intend to send data to someone and the network performance is noticably worse than the time it takes to compress/decompress the dataset.
As for how I see it:
- FeatureWriter is to write the results of your workspace
- Recorder / Player is for debugging purposes