What desktop components are most important to a software developer?
>not software development
An SSD is an active storage device. Meaning that its purpose is best utilized as a task oriented device, while it is absolute garbage as a long term storage device for archiving.
An HDD is a long term storage device. Meaning that its purpose is best utilized as an archiving oriented device due to the nature in which it stores data that doesn't require it to be plugged into a power-source to "charge" it frequently in order to retain all the data on it unlike an SSD. It also has a vastly longer durability in terms of data dissipation and this fact will never ever change between the SSD an HDD. Meanwhile, the HDD is garbage sewer shit for task oriented purposes due to shitty speed, and has less physical durability because its a mechanical device that stores data physically.
A tape drive is the same as an HDD, except the speeds are 1000 times worse, but data retention and durability is on a much higher level.
Cloud is for dumb cuck faggots who prefer not to have direct 24/7 access to their data and like paying a service to hold their data hostage.
this is your reminder that elon musk used to be bald.
CPU and RAM.
Good keyboard too.
If you want to do some light gaming you can do that on the integrated GPU too.
If you dont listen to the retard talking about a 4k screen beeing important to coding.
A keyboard with ctrl, alt, super, and shift on each side
You do not need a numpad
No mouse, mice are fucking shit, stop taking your hand and moving a mile away from the keyboard you dumb fuck only gamer faggots need mice for their precision noscope 360 headshots. All you need is a track-pad/ball/point, since all you'll ever do is switch windows, click fuckhuge gooey buttons, and select arbitrary text when you're too lazy to /pattern in vim/emacs (or use vim/emacs). Keep that shit close to the keyboard, or built in to it.
Core 2 duo, 2gb RAM minimum (only gayme devs need more)
A minimum of 80 columns and 25 lines of text
The more 80x* columns you can fit on your screen the better. Do not go over 80 columns. Do not use languages and programming conventions that encourage going over 80 columns. Some of us want to read two files at once without going home and turning on three monitors (or toting around a 21" laptop).
If you're not working on a code base as large as Linux or Chromium (and you fizzbuzz plebs don't), having a high-end PC is completely uneccesary. In fact I think most of the software today would be in a far better state if programmers were forced to use 5 year old HW.
>If it's not my way then its the wrong way.
A powerful CPU (to not have to wait hours for something to finish compiling) and a monitor with decent resolution (to be able to put at least two decent sized windows side by side for reference)
Everything else is just a matter of preference
a fucking CPU fast enough to compile your shit without having the time to make a nap (basically, most of them).
a fucking decent amount of ram because you're probably a retard that will make a mistake and fill your ram in less than 10 seconds.
A fucking HDD with linux installed. SSD are fucking useless and you'll gain nothing having one.
A fucking GPU because good luck to use your computer without one.
A fucking monitor that haven't a fucking retarded ratio like 16:9. Or at least a screen that you can spin so you can actually read more than 10 fucking line of code.
A fucking keyboard that is comfy for you.