Well, regarding the firepiston I can tell you it is a very reliable fire starter with an infinite number of lights.
Although mine needs its lubrication to be renewed from time to time.
But then again, everything must be learned, no excuse to knock firepistons for that. But still, many people have opinions based on nothing whatsoever.

I thought the main reason for knocking a firepiston is its physical size. They tend to be large because you need a large volume of air to compress to make the heat.