To start this off, consider the following scenario:
- 50% of my work is web or mobile app development
- another 50% is training ML and deep learning models (currently on a cluster, but I'd prefer do it on my notebook of course)
- I also do raw photo editing work, as a hobby
In this case, what specs would you choose for your Mac? Specifically:
- M1 Pro with [14, 16] GPU cores, [8, 10] CPU cores, and [16, 32] GB of unified memory
- M1 Max with [24, 32] GPU cores, 10 CPU cores, and [32, 64] GB of unified memory
I'd say that this is more than enough power to hold me off from upgrading for the next few years, so fortunately for you I'd say if you can, the RAM upgrade may be more important than the actual CPU upgrade.
You don't need to spring for extra storage, stick a 1TB SD card in the slot.
I know it's not a great experience on my current 16-inch MBP with AMD Radeon Pro 5500M 8GB.
The full GPU would help for ML training only if that actually works.