Profile photo for Kostadis Roussos

Having programmed at very low levels, back at Silicon Graphics (company) and NetApp, and then at very high levels at Zynga (company), the difference between high and low level programmers is their appreciation for how hardware works.

High level programming languages create a virtual machine that doesn't actually behave the way the hardware does. And as a result high level programmers are typically unaware of the impact of their coding choices on the performance of their code. And more importantly, on the cost of the resources of their code.

In an environment where resources are plentiful and latency and throughput are satisfied, this is not an issue. High level programmers are profligate with their use of resources and the virtual machine they program to is able to run reasonably efficiently on the underlying real hardware.

Where high level programmers flail is when the performance of their code or system is unacceptable and more hardware resources are not an option. The high level programmer begins to fight the abstractions the virtual machine provides to try and force the virtual machine to map to a machine they don't actually understand.

The low level programmer, because she understands how the underlying hardware works, is able to reason through the higher level language abstractions, and the virtual machine and understand how to modify the higher level code to map to the lower level code.

For example, higher level languages don't provide explicit memory management whereas lower level languages do. When the performance problem is tied to how memory is getting created and destroyed or worse automatically managed by the underlying virtual machine, the high level programmer has to explicitly manage his memory. And then as he tries to explicitly manage the memory has to get an intuition of exactly how memory gets managed by the underlying OS, the virtual machine and his programming language ...

Ultimately higher level languages allow programmers to ignore the reality of their hardware, and that is a wonderful thing – except when it's not and then it really pays to understand how hardware works.

View 100+ other answers to this question
About · Careers · Privacy · Terms · Contact · Languages · Your Ad Choices · Press ·
© Quora, Inc. 2025