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

I am certainly willing to entertain the notion that async models do not map naturally to most peoples' brains and as a consequence the callback style of concurrency might just be really difficult to handle. On the other hand the writer admits it may just be them not being able to understand it, which I think is also reasonable given that many people have managed to do more complicated stuff in much less than 2 months.

This post is a land of contrasts, in short.




You can interpret the question of whether an abstraction “map naturally to most people's brains” in two different ways:

(0) Is it easy to understand how the abstraction works in principle?

(1) Is it easy to actually use the abstraction to build large robust systems?

Clearly, (0) is a necessary precondition for (1). But it's not sufficient. Pointer arithmetic is an example of an abstraction that's easy to understand “in principle”, yet hard to use right (for “most people”, anyway). I'm afraid the same is true of explicit continuation (“callback”) passing. Programming with tools that only work “in principle” is hell.


Not sure, why this is getting downvoted.. It's very sensible and the poster provides a valid example.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: