[prog] Joel on Software: Leaky Abstractions

Jimen Ching jching at flex.com
Wed Apr 16 01:35:43 EST 2003

On Wed, 16 Apr 2003, Mary wrote:
>The idea is that, say, a ASP programmer (Spolsky works with Windows by
>and large) now needs to know HTML, ASP, Visual C++, C++ and the Windows
>API because of the leaks in each abstraction.
>The idea of abstraction is meant to be that you don't need to care about
>what's underneath, but it turns out to be any good at, say, ASP, you
>really need to know all the underlying abstractions too. Hence, you need
>to know *more* language details than you would if you were a C++

Can you have different abstractions?  I.e. abstraction A hides detail X,
while abstraction B hides detail Y.  Of course, both abstractions would be
considered leaky for someone who wants to hide both X and Y.  But can you
just not use either abstraction and develop another one?  Of course, if
you create an abstraction that hides both X and Y, then that will obsolete
these two.  Is this possible?  Or is the article saying you can't develop
your own abstraction that hides what you want?

Jimen Ching (WH6BRR)      jching at flex.com     wh6brr at uhm.ampr.org

More information about the Programming mailing list