This class is an introduction to intensive software development. In order to become a productive and efficient software developer, it is essential that you have a sufficiently capable hardware. For example, if it takes 30 seconds for your interactive development environment to load, you will be tempted to take a “shortcut” and use a less functional text editor instead. The more you use a vanilla editor rather than the IDE, the less skilled you become using the IDE, and the less productive you are. The cumulative effect of inappropriate hardware will eventually prevent you from reaching your full potential, and worse yet, may negatively influence your success in this course.
Fortunately, a “developer-level” computer is not too expensive. I recommend the following:
A laptop. You will be developing software in almost every class, so having a laptop is essential.
2+ Ghz processor. For Macs, this means the “Pro” series or a recent (2016+) MacBook.
16+ GB RAM. Insufficient RAM is one of the major reasons for your laptop not running developer tools effectively. 32GB would be even better.
Solid State Disk Drive. Perhaps the most significant way to increase the speed of builds and compilations on your laptop is to use a solid state disk drive (i.e. “SSD”). They are standard on the new MacBooks, an upgrade on most other machines.
10” or greater screen. The smaller the screen, the greater your disadvantage as you cannot see as much of your program at once.
Recent version of the Linux, MacOS, or Windows operating systems. Note: if you’re using Windows, you must use Windows 10 or 11. If you don’t have Windows 10, you can install it for free through the ICS Department. Contact me for details.
You can purchase a Dell or Macintosh laptop for $1000-$1300 that satisfies these specifications. If you are serious about software development, and do not have a laptop with these capabilities, please consider upgrading now. I am confident you will not regret this investment.