I had an original Mac Pro that I got for a song so it became my primary machine. Over the years I added a big screen, drives, GPUs, memory, etc. It was not until 2014 that I considered an "upgraded" because I needed to move to 64bit in order to keep running Xcode. That left me with the decision of buying the top of the line iMac, or a Mac Pro. I went the later because I could keep my monitor, which I love. The price difference if you ignored the monitor was a couple of hundred bucks, so why not?
But quite frankly, the machine sucks. Oh, it's fast, and small, and very very quiet. And it looks good. But really, those are it's only good points. And there are lots of bad points...
1) You get two GPUs, one for rendering and one for calculations. However, I never (?) do GPU-hosted calculations, so that GPU is idle. I am certainly not alone in needing a single GPU. I would be happy if the second GPU could be used for rendering in a CrossFire-like way, but no one is bothering with that. So I have an expensive GPU doing nothing. Worse, it can't be used as a backup, as I understand it, so if the display GPU fails, my machine is dead.
2) There is a single "drive slot". It is non-standard (although such a standard did not really exist at the time). It also sprouts from one of the two GPUs, which is ridiculous. So Apple has to make two different GPU cards, one with and one without the SSD slot.
3) You may say it needs only one drive slot because you'll use external drives... right? Well here's the problem with that: most external drives are so much slower than the internal SSD that the machine is fully booted before the external is up and running (its FAST). Since you'll probably put your user account on that drive... odd things happen. Like your account is read-only. Or you get a sort of guest-like account. The only solution is to reboot.
4) It has FOUR USB ports. That isn't enough for anyone. Ever. All of them are on the back. So every time you want to plug in a USB key, you have to spin the machine. I gave up and left it back-to-front, so everyone gets to see my cable spaghetti.
5) It has SIX Thunderbolt. I have exactly one TB device, the screen.
6) All the ports are at the top of the machine, so the cables hang down and bend at the strain relief. If anything heavy ever falls on the cables, they're going to break. This is just bad design.
The good news is we can fix it all, easily:
1) put in at least two M2/U2 ports, preferably four. I shouldn't HAVE to use an external drive, and I shouldn't have to throw away the drive it came with if I want a larger option.
2) alternately, add a bay for a single (or two) conventional SATA laptop drives. You can get 1.5TBs for reasonable prices. It would make the case *slightly* larger, but who cares?
3) 10 USB-C, two of them on the front.
4) either move the ports down, or angle them downward to release the strain on the cables.
5) allow the system to run with a single GPU. And allow us to swap them! There's a number of small-form-factor GPU slots out there, and surely one of the companies you deal will with make one that can be mounted to the cooling block somehow.
Its shocking its taken this long.