I’m planning to build a computer primarily for programming and want to ensure it’s upgradeable for the future. Here are a few specific questions I have: Are there any specific features I should look for in a motherboard or CPU? What additional hardware (like firewalls) would you recommend for security and privacy ? Hardware with opensource drivers support
I used to think a lot about up-gradability before but often find that when a cpu is too slow then it is also so old that I have to change the motherboard and ram too for compatibility reasons.
Same thing with the motherboard, if it fails I’ve never had it be new enough that I can bring my cpu and ram with me to my next motherboard (unless buying an older motherboard second hand).
And many of my disks will be old enough that I want to replace them too, at least if they have anything important on them.
Only things I’ve brought with me when upgrading desktops have been my case (including fans), psu, gpu and (some) disks.
Having a quiet and dust proof case that is easy to build in and a good psu that cultists.network/140/psu-tier-list/ endorses has become higher priority to me since then, as I know they might last me more than one build.
Kit@lemmy.blahaj.zone 2 months ago
It depends highly on what you will be programming.
unknown_user@lemmy.ml 2 months ago
Low level programming C, rust and Machine Learning programming with Python. No need of huge graphics card.
Mihies@programming.dev 2 months ago
I’m not sure that serious ML doesn’t need a huge graphics card.
huginn@feddit.it 2 months ago
ML means you need a beefy GPU. That could always be a secondary addition though - add it in later as an external GPU and call it good.
sga@lemmy.world 2 months ago
well even a raspberry pi would be enough, except for ML
depending on what exactly in ML, and what our the sizes of datasets involved?, like i did some work, but for me 8 GiB RAM was enough, but if you want to do larger databases, you would need somewhat good GPU (essentially large matrix multipliers) with plenty of VRAM
mozz@mbin.grits.dev 2 months ago
Could be pretty much any computer
Need a lot of memory (8-16 GB) if you are planning on dissecting any existing projects
Start with colab / huggingface and get a feel for what level of hardware you need for the stuff you’re doing before you start buying stuff
If you want just a general high quality system with upgradability etc, frame.work or System76 are supposed to be good high end providers.