I have been using
ZZ for many years and then I've switched to
Leor which I think is a step forward.
Leor is ZZ with the first two steps reversed: Left block first (à la Roux) then EO-line.
For me,
Leor has many advantages over ZZ:
1) You take profit of pieces already in good place for a quick first block.
2) After step 1, there are no L moves until the last layer. At leat no L-moves during F2L.
3) During step 2 (EO-line), you may influence step 3 (right block); or sometimes a large part of the right block is done.
See:
example 1,
example 2.
4) The method is very flexible: you may start to orient the edges at the end of step 1; you may start to build the right block during step 2; you may do a partial EO-line, then complete the right block, then finish EO-line... You adapt to the situation.
5) Leor works very well for 4x4 too. See:
four examples.
For the last layer, I've found that building the right block minus 1 edge then doing COLL + L5EPLL is more efficient (thanks to Justin Taylor), because L5EPLL adds only 24 algs over EPLL (12 for each edge FR and BR, but many are obvious mirrors) but they are not longer than EPLL algs and sometime they are shorter. Moreover Right block -1 edge is easier to perform (when building a complete right block is easy, I do it, of course).
It takes time to become accustomed to the different way to do the EO-line. It needs a lot of practice to find some tricks.
Overall, the ergonomics is better than ZZ, with a lot of possible optimizations.
And the method is fun because all 4 steps are very different.
You can find many examples I've posted in the 3x3x3 example solves thread.