5 ms·
Is it really necessary to have over 16GB on a developer's machine? I know 16GB is not enough when one is into heavy data mining, but to write a code even if tha
by fpoling 10y ago
Is it really necessary to have over 16GB on a developer's machine? I know 16GB is not enough when one is into heavy data mining, but to write a code even if that requires to run several VMs? For example, I do occasional development on MacBook and 8GB is very OK.
- grzm 10y agoWhether or not someone needs it depends on their circumstances. You may argue that a dev shouldn't, but that doesn't mean that some do. Whether or not Apple produces a laptop with more than 16GB is up to them and what tradeoffs they make.
- ricw 10y agoEasily done if you have a couple of VMs, a couple of IDEs with big projects, a SQL editor, 50 chrome tabs as well as the standard suite of programs (audio, calendar, email etc). That's what I'm using right now. 16GB may be just about fine for this, but in a couple of years it would be nice to have 32GB just to be on the safe side..
- ryanbertrand 10y agoHave you ever ran Xcode? :)
- coo1k 10y agoI have macbook air 13" with 4 gb RAM. I use it for app development using XCode.
- fgpwd 10y agoMe too.
- cableshaft 10y agoI've heard that the SSD drive makes it the XCode experience more tolerable when it has to hit the swap disk. Personally on my iMac without an SSD and 4GB it was unbearably slow, but it improved a lot when I upgraded to 20GB of RAM and no longer had to hit the swap disk.
- skykooler 10y agoI've used Xcode on my Asus EeePC with 2 GB RAM. It uses most of the free memory, but it doesn't crash or slow down.
- mahyarm 10y agoI would look at how much memory it consumes. It takes about 2-3gb on my large 300kloc project.
- rickyc091 10y agoJust wanted to point this blog article out. https://www.zdziarski.com/blog/?p=6355 https://www.zdziarski.com/blog/?p=6355 The author tested Xcode and ran "four production Objective-C projects, all cleaned and rebuilt."
- jonknee 10y agoSame guy also says you shouldn't use Chrome or Slack because they use lots of RAM (I guess it sucks to be the developer that has to use both of these). Apple's new "Pro" machines have similar specs to their three year old pro machines. They are a lot thinner, but that's not a Pro feature. > A couple apps you won’t see on this list are Chrome and Slack. Both of these applications have widespread reports of being memory pigs, and in my opinion you should boycott them until the developers learn how to write them to play nicer with memory. I got my 2013 Macbook Pro with 16GB of RAM and I'm happy I did, it has aged well. Will a 2016 MBP age similarly well? I guess we'll find out.
- ryanbertrand 10y agoWith projects which are purely code, Xcode works fine. Projects with large Storyboard files make the dev experience painful.
- ash_gti 10y agoAt the moment on my machine, I have 16 GB of RAM but I've already got 3.91 GB of swap being used. I'm on a MBP Early 2015 with the upgraded i7 CPU. Xcode is currently using 4.15 GB of RAM (3.20 GB Compressed), its definitely my biggest memory hog. lldb-rpc-server is using 680.4 MB (387 MB Compressed), so that doesn't help with my memory usage. I often watch for when my computer will start swapping so I can know to close some of the higher memory usage apps to reduce the swap death effect.
- s_q_b 10y agoMy 2012 MacBook Air has 8GB of RAM, drives three displays, with nine virtual desktops, and I'm usually running with Windows and Debian VMs simultaneously. I do some heavy data mining, but any problem that won't fit in RAM gets offloaded to a cluster on AWS.
- maccard 10y agoI write c++ and regularly run out of memory on my workstation with 32GB ram. Mind you, I'm not in the market for a laptop to do this on. If I had to compile my work projects on Mac, I'd be buying a Mac Pro. My pc at home has 8GB, I use mostly for games. It's more and more commonly not quite enough.
- ksk 10y agoI don't think products are designed on what's necessary. They have a core set of features designed for the 'mainstream' and a more specific set designed for the 'long tail'. Apple probably thinks the long tail is not so long or that their product is not competitive in that segment - which it isn't. >I do occasional development on MacBook and 8GB is very OK. What sort of development?
- fpoling 10y agoI use my MacBook 2015 mostly for my personal projects with few VMs running copies of web sites, compilers, QtCreator and Eclipse. This works nicely. On the other hand with things like Jupyter notebooks at work 16 GB is clearly a bare minimum when running algorithms on 100GB dataset..
- jamie_ca 10y agoNot parent, but I'm working on a late '13 MBP, 8GB ram. I spend basically all day doing Rails development, with MySQL, ElasticSearch, background job processing, etc. I'd be happier with 16gb, but tbh memory isn't the thing stalling my work (even with a lot of chrome tabs open) - it's usually waiting for my app to load to run some tests, or reloading my dev server.
- ksk 10y agoI do mostly C++ dev work in Visual Studio, and occasionally run CAD/Engineering tools, in addition to processing large data files. ALso, I usually have 1-2 VMs running in the background (but they dont see much use). I used to think 16GB was enough, till I upgraded to 32GB. A lot of the benefit is derived from the fact that I never shutdown my PC, and so the cached data tends to stick around for a long time (last time I rebooted was around 75 days ago). I've run perfmon over the course of a week and watched my page faults drop as more and more stuff gets cached. I won't say its going to be the same for you but IMHO its worth a shot. You could at the very least test how much time you're spending on page faults over the course of a week or so since per-day savings would probably be minimal.
- epalmer 10y agoMy MBP drives a 32in display and these apps open on startup - 3 IDEs (Java, PHP, Python), excel, chrome, firefox, iterm2, sublime, slack, hipchat, oxygenxml, sqldeveloper. The above open in desktops (Misson Windows). I do not do heavy data analysis. I never run low on memory with 16GB. Performance is not a problem. I do open 1 VM form time to time and again no problem.
- alasdair_ 10y agoThe VMs are a killer. I fairly often wish to debug our mobile app. This ends up involving spinning up both the client and server (which is a collection of VMs) plus both IntelliJ and Unity. 16GB isn't really enough to do this without being very careful about memory.
- fpoling 10y agoIf VMs are Linux, try to activate zram there, it allows to reduce VM's memory significantly. With typical compression factor of above 2 this allows to shrink VMs by at least 30% with tolerable loss of performance.
- atmosx 10y agoDeveloper? I guess not. For a DevOps engineer? Probably yes. It's not impossible but having to spin up/down virtual and/or complex docker-compose configs to release RAM would slow you down considerably.
- slowmovintarget 10y agoEven for a developer... When I'm in the middle of development I'm running two or three Vagrant / VirtualBox instances on my laptop, along with a handful of Visual Studio instances and that can easily chew up more than 16GB of RAM. Doing Node development... Not such a big deal.
- iMiiTH 10y agoOn top of that, they have the fastest SSDs in a laptop. It's not optimal, but swap is still extremely viable. Also, doesn't macOS have memory compression on top of that?
- fpoling 10y agoWith my workflow the memory compression on macos does not help much. zram in Linux works much better. For example, few years ago I could run a couple of Eclipse instances and a browser with a few opened tabs on 2GB Chromebook, but 4GB Macbook Air with Yosemite struggled to run a browser, IDE and 1.7GB VM. It turned out that bumping VM size to 2.2 GB, activating zram there and running IDE inside VM lead to much more responsive setup. And it seems Sierra has not changed the picture, https://forums.developer.apple.com/thread/52779 https://forums.developer.apple.com/thread/52779
- elsurudo 10y agoI'm an iOS and Rails stack developer, and 8GB on my last-gen MBP is just fine. Sure, now I do regret not making the upgrade to 16GB, but that's just thinking about the future, not the now. That being said, I don't do microservices/many VMs/containers, etc.