Hacker News new | comments | show | ask | jobs | submit login

IMHO the event model / callback spaghetti / what-have-you is tricky precisely because it operates at a high level of abstraction.

Memory management, by comparison, is conceptually simpler because... well... the concept is simple. Allocating and de-allocating resources, while tricky at scale, is something for which everyone (including non-programmers) probably have existing mental models for.

Event driven programming, on the other hand, is a slippery high level concept. There are relatively few analogues for it in the "real world", and therefore requires additional mental gymnastics to internalize and understand.

Essentially, we need to 1) follow the execution pattern of event driven code (annoying), while at the same time 2) "visualizing" or conceptualizing a fairly un-natural manner of abstraction.

You do event driven programming every time an alarm wakes you up or you set an egg timer.

And you do neural networks every time you think and aolve differential equations every time you catch a baseball.

That doesn't make it any less difficult.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact