Jump to content

What computer is satisfactory for programming?

  • 3 weeks later...

To be fair, the Hardware depends on what you want to achieve.

 

If you want fast compile times, check if the language can be compiled on multiple threads (there are some special cases). If so, go for at least a 4+ core with minimum 2.4Ghz. More is always better is you want better compile times.

 

If you are beginning your journey, go for more clock speed instead of core/threadcount as threading an application is a topic for itself and nothing you should takle at the beginning.

 

If you'r software is RAM hungry (java for example) the absolute minimum I would suggest is 8GB, more is always better. Dev machines usually go for 32GB. especially if you want to dabble into containerization like Docker or K8s (Kubernetes). RAM speed is also a factor, the higher the better. Usually DDR3 default clock speed should be enough if you can afford the extra 10-30% wait times.

 

For storage, SSD is always better, but will slow down compile times after a couple thousand resource heavy compiles... (The developers of Factorio made a blog post about that one if you are interested). HDD also does the job, just slower. If you want something that sits around for 20+ years, go for 4x 1TB+ raid1. Better safe than sorry. 😉

 

Input devices: Keyboard dows not really matter, but a mouse needs the 2 extra side buttons for faster code navigation (jumping back and forth between the files/block positions -> really handy)

 

For monitors, I am fine with 3 cheap 1080p75 monitors. Does the job. 2 should be the absolute minimum, this way you can browse code and documentation at the same time.

 

The operating system does not really matter but there are some edge cases: NPM and Mac on an M1 has some issues. You can go for windows, but there are some caviats when setting everything up for development, most of the issues can be circumvented by using docker development containers wich let you develop on a lunix kernel inside a container. Love that feature.

 

Language specifics: Java should not need more than 4x3Ghz, GO/GOLANG on the other hand loves more cores and the speed increase is noticable. Python is slow either way. 😛 For web stuff, the same rule as java does apply. GameDev does need a lot more ressources and GPU should not be cheap (greatly depends on the project tho).

 

Bonus: if you want to go the "chad"/"souls" route and create programs with certain limitations you can also use a raspberry pi or Pine64. There are some of those out there. 😉

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×