How to improve teaching in programming

The way that schools currently teach programming is usually limited to various practical activities. The students get to experiment with programming, but they gain no general understanding of how technical devices in everyday ...