6 ms·
I think the manifesto (https://github.com/frameworkless-movement/manifesto https://github.com/frameworkless-movement/manifesto) would be vastly improved if it d
by zomglings 6y ago
I think the manifesto (https://github.com/frameworkless-movement/manifesto https://github.com/frameworkless-movement/manifesto) would be vastly improved if it defined what a framework was.
It seems to distinguish between frameworks and dedicated libraries, so I think we can apply a react test here: Is react a framework?
- charlysl 6y agoQuoting one of the authors: Yes ... the declarative pattern is a part of React’s way. Where there is a “framework’s way” of doing things, there is a framework.
- pnako 6y agoAccording to the dictionary, a framework is "an essential supporting structure of a building, vehicle, or object". In software it's the same thing. The framework defines the structure, you just fill in the blanks like you would fit floors, add wheels, etc. The pro is that it's an easy way if you want to build an application that closely follows an existing type of application. But it's too constraining if you want to be able to customize the structure down the line; all of a sudden, you realize that it's defined outside, in a technology that is not your own and you don't understand.
- zenhack 6y agoBack when I was doing a lot of Python work I was a big fan of Flask. The reason is that it really just provided an integration layer for existing stand alone libraries; it didn't feel like I was buying in to some massive framework, just leaning on Flask to get rid of some of the boilerplate glue code that is otherwise need to write to e.g. find a jinja2 template, render data with it and then turn that into an http response. Just `return render_template(...)`. But if there wiring became inappropriate it's ultimately not doing that much, and it's easy enough to take that template and use it in a different context.
- jb_gericke 6y agoIs openSSL? How much domain knowledge should developers be expected to have across the broad array of capabilities modern apps require? Should we be implementing our own tcp stacks? Frameworks catalyse development. It's much easier for a new team member to read the very rich and well explained Django documentation than to pour through reams of poorly documented code for a custom mvc for instance. This feels like both tilting at windmills and irrational expectations on devs who for the vast majority need to turn out features, not core libraries.
- bdcravens 6y agoI think a better definition is: Has the term "{library_name} developer" been adopted as a title? "react developer": yes. "moment.js developer": no. "rails developer": yes. "devise developer": no.
- zomglings 6y agoOho! I really like this! :) Very clever!
- CraftThatBlock 6y agoNode developer. Web developer. Doesn't really work fully.
- bdcravens 6y agosure, that's why I was limiting it to {library_name}, though arguably node could be that.
- woutr_be 6y agoI kind of disagree with that, a lot of companies will use terms like "react developer" or "react native developer" because they're looking for specific skill sets, only targeting those skills by explicitly naming their role after it. A lot of bigger companies also usually higher through recruiters, who usually are non-technical and will make up those names. In reality, you'll most likely be a software engineer specialised in react development.
- hinkley 6y agoI guess I never really considered jQuery a framework, and yet that was an adjective.
- bdcravens 6y agoI did, simply because it became the defacto interaction layer, with its ecosystem of first- and third-party plugins. Perhaps a plugin ecosystem is another defining characteristic: I think the "all batteries included" property most people associate with frameworks seems a bit limiting.
- veeralpatel979 6y agoI'd define framework as something that dictates your file structure. I don't view React to be a framework; Rails definitely is.
- rodorgas 6y agoYour code uses libraries, while frameworks uses your code.
- travisgriggs 6y agoI don't know how others see it, because the distinction between frameworks and libraries can get fuzzy. For me when I Inter operate with the software in the same way I would any of the tools in my garage, that's a library. When the software feels more like a service that someone provides, then that's a framework.
- TheStrazz 6y agoHi, I'm one of the founders of the movement. We talked about that a lot but it's not easy to define a framework in a specific way. For example, React is a library. But I think that most of the time people use it as a Framework. If you have some ideas on how to express this thing in the manifesto PR are welcome!
- kilburn 6y agoI like the "your code calls libraries, frameworks call your code" description. React is a library because you can have websites with as many render roots as you want. You can use it only for small parts of the site/app, control all of the props from the outside, etc. People use it as a framework because they take the SPA route with a single root. Usually a bundler even generates the HTML file for them, tying the entire app to a single render call.