I think that, all things considered, the Spark Maxes and Neo motors have great potential. And I think that technical support from Rev has been great.
Pros: The Spark Maxes have examples in all of the major programming languages (Java, C++, LabView), they have current limiting, closed loop positional control, and many other control features similar to the Talon SRX. All in all, when the Spark Maxes work as intended, they are a spiffy little motor controller. However, because this is the Spark Max’s maiden voyage into the FRC world, bits and pieces of its functionality always seem to act buggy from time to time.
Cons: Aside from having several technical difficulties with the ever changing software (like I said, I don’t think anyone has had a problem yet that Rev wasn’t willing and eager to help solve in a timely manner), the things that I really don’t like about the Sparks would be,
Not having mounting holes (as others have mentioned)
Having the power and encoder cables come out of the top side of the Neos (not too big of an issue, but it does make the cables more prone to damage)
And I really wish that they would use a more robust connector for the encoders on the Neos. The connector they use right now is a jst connector with really thin wires, and if that connector were to break (which I have heard other teams have done), it isn’t a very easy fix.
All in all, I’ve personally been fairly pleased with the software side of the Spark Maxes with the Neo motors, but there is still some buggy behavior that I hope will continue to be resolved as time goes on.