Form follows function is incredibly undetermined. Multiple divergent designs can execute/allow the same functionality to the same degree.
This is especially true in software. Some additional constraints must be put on to narrow down on a single design. Maybe the constraint is developer familiarity, or developer laziness, or fashion, or whatever.
While there can clearly be 'too much' fashion, its not quite a given that current trends lie in that area, any more than previous trends have.