Furthermore, I found that solutions which couldn't be successfully worked on with <16GB RAM were basically architecturally unsound. Not being able to scale the workload on demand or control peak demand. Extra RAM just hid poor developers from their non-scalable solutions - or just increased their downtime till they got an OUT OF MEM error. The issues were only exacerbated at scale - failing even with 128+ GB in RAM.
Basically, when the difference between a dev sample and a prod sample is 3+ orders of magnitude, your ability to scale the process up/down, fail gracefully, even battery life, etc. are far more important than having large swathes of memory to fail on. Especially on the go.
If you do deal with production (big) data, you're ssh'ed in to some always-on, process-maintained hardware if only for the sake of latency and interruptions. And you better have the toolset to do it. How much memory does a terminal take?
For graphics, I understand - but then you're definitely not working on a surface pro or on the go at all really.
ie I'm running Rails, MySQL, Elastic, Redis, Nginx, Memcached, and in some cases, multiple instances (dev, test, and multiple shards)
And then the usual OS requirements - Vim, 250 browser tabs, Slack, Hangouts, etc.
I'm sure there are all manner of optimisations and assumptions that could cut things down, but I'd rather the big manufacturers upgrade their RAM capacity every few years so I can focus on a dev environment that's a good approximation for prod.
Also, 250 tabs? dayum. I don't know how anyone could effectively use that many tabs. I don't think thats what browsers/laptops are designed for. My mind memory of just the tabs would be saturated long before the laptop's.
I do work in graphics/rendering, I work on laptops often and plan to get a surface pro, 16 GBs is the most painful part of working on a laptop for sure. It is the primary reason I spend most of my day on the 128GB ram desktop whenever I'm close. But even 32GB would go a long way for me.
AFAIK, the reason ultrabooks have LPDDR3 is because it is very low profile when soldered. If thin is your thing, you want LPDDR3. My t460p has a smaller footprint than a MBP, but it is as thick as a whole stack of them.
The difference between LPDDR3 and DDR3 isn't dramatic in actual operation; LPDDR3 uses about 70% of the power of DDR3.
It becomes a bigger deal when the machine is in standby, however; LPDDR3 uses 10% the power of DDR3. This would be a big deal for Apple, which also insists on using LPDDR3, and has historically sold machines with standby times measured in weeks or months. Not sure if people have particular expectations of standby times from Surface Pros, but if they're used like tablets you'd want it to be decent. Keeping the memory powered is nearly the only power used when a computer's in standby, so 10x the power usage would be a huge deal.
It's common to run several types of server in production, these all need to be run on localhost for development purposes. Also virtual environments so server architecture can easily be scripted.
16GB works for me, but is far from ideal. I was hoping MS would one-up Apple here, but not yet.