Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Frameworks happen when you've written your nontrivially big program, you've successfully abstracted out all of the mechanisms in effect in that program, and actually rebuilt your original spaghetti mess on top of those abstractions, everything is working nicely, you've carved out most of the cruft you at this point know you won't need, and then you get the killer idea that the next time you—or someone else!—need to write a similar program it will be much less work if you turn your existing program into a framework for writing similar programs.

Nobody ever does and you never do.

And if you did, you'd be several steps ahead of yourself at that point and you would do it all very differently because you know more now.

Frameworks are just reflections of a single program: a framework is essentially extrapolating from one data point.

Simple modules or interfaces can be turned into genuinely reusable libraries. They'll become orthogonal tools that can be used with other libraries, and often without any of the libraries it was developed with. A big software project always contains several libraries originally written for the project. But what you think is a framework of code that contains several modules or libraries for doing XYZ-ely things and that is used to implement program XYZ is actually the program XYZ itself.



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

Search: