Someone on Twitter asked this question and people loved to weigh in. Most answered: “No, just get an old $200 laptop.” While not wrong, this answer misses the point. Coding, here, apparently means reading and writing code. For that, indeed, any cheap computer will do. However, being able to read and write code does not mean you will be able to build and ship systems, which is what customers pay for.
First, systems building certainly means coding, but also putting your code together with other people’s code, mostly open source these days. That’s more coding, but then also building: Automatically compiling, testing, and assembling a system. If I were to ask my team to give back their developer laptop with 16GB or 32GB of memory and other bells and whistles in exchange for an old $200 laptop, I’d quickly be out of a team. Systems building does involve computationally intensive tasks for which you need the appropriate power. You may be able (and should) offload it from laptops to dedicated build systems, local, or in the cloud, but most devs will still want to be able to fully build and test locally. Hence you need a powerful laptop.
Second, being able to read and write code may get you an entry level job, but more learning only starts then. Now you are building software in a team, and that’s a whole different game from single-person coding. That’s why I said the original question misses the point.
Thus, for learning the basics of coding, a cheap laptop will do, but for systems development in a team at a company you’ll usually be grateful for a more powerful machine.