Live data from Hacker News

List of minimalist frameworks

github.com

51–60 of 95 posts

Re: List of minimalist frameworks

#52

I know this issue has been brought up many times before, but to some extent the existence of a framework suggests a lack of composability in the language being discussed. This gets discussed a lot in the context of Clojure, where people new to Clojure often ask, "Where are the frameworks?" The more meta-programming that a language allows, the more its functions will tend to be composable. The more composable it is, t…

That's not a uniform trend; five years ago in Python you put together a lot of small pieces (and e.g. Turbogears was a nominal framework that was actually a lot of small libraries being composed together). Nowadays Django has a lot more mindshare, and many of those libraries are abandoned. I'm not sure why you're comparing Rails with Struts, which never seemed particularly popular in my experience; Rails certainly feels heavier than spring-webmvc/wicket/tapestry (e.g. it reaches down to the ORM layer, while the Java frameworks expect you to handle that yourself) which is what I saw in use. Many of the Javascript libraries that are coming out are "micro" oriented, but we're also seeing the rise of Angular which is much more of a heavyweight framework.

I think you can get the advantages of both if your big framework is built on smaller pieces that make sense in themselves. So in Scala land I'm very pleased to hear that Play is moving to be built on top of Spray (which is a microframework I'm using at the moment - and itself is built out of pieces like spray-json that can be sensibly used in isolation).

Re: List of minimalist frameworks

#53

I know this issue has been brought up many times before, but to some extent the existence of a framework suggests a lack of composability in the language being discussed. This gets discussed a lot in the context of Clojure, where people new to Clojure often ask, "Where are the frameworks?" The more meta-programming that a language allows, the more its functions will tend to be composable. The more composable it is, t…

There is no trend towards lighter frameworks. Frameworks were originally being developed by people with high-end needs. They are then also adopted by people with low-end needs, who conclude that the framework is too big and complicated for them, and start developing/adopting more light weight frameworks. This market is still young, so there are no dominant players like Rails, Django or Symfony yet. It's more a matter…

As a Django user, I hear a lot of people rant about microframeworks, and I have to ask, why? I was amazed at the productivity gains and organization Django brought to my code.

If all that bloat is getting in the way, why not go back to CGI? That must be the most minimal of frameworks.

Re: List of minimalist frameworks

#54
post #36

Earlier quoted context omitted.

A fantastic example of this (in javascript) is trending right now on hackernews – myth. https://news.ycombinator.com/item?id=6923141 Look at this implementation: it's just a composition of a bunch of other libraries. no logic at all. This is how it should be: https://github.com/segmentio/myth/blob/master/index.js#L37-L...

Wow. that's brilliant. As we would say on tumblr " This is why we can have nice things". I'm actually experimenting with `scotty` for haskell now. Though a tad limited (getting sessions to work is a bit whiney) I had a decently working URL-shortener up and running in an hour of composing haskell modules and writing a max of 20 lines of code. This whole micro-framework thing is getting close to my view of the ideal wa…

Not surer I understand the popularity of microframeworks, over fuller frameworks.

Using a large framework like Django should allow you to use "as much reusable components" at any time, plus you have the advantage of knowing that they will play nicely together, and should have some sort of consistency between them. Yes you get a bigger download, but it will be stored on the server, not downloaded each time a user clicks a link. Less dependencies, as more is included out of the box.

Re: List of minimalist frameworks

#56

Isn't "minimalist framework" a contradiction? It seems like if you were going for minimalism you would not use a framework.

As far a web stuff is concerned, I wouldn't call anything other than pure HTML minimalist. Maybe I'd suggest a table is a minimalist framework.

But judging by the other comments, Im the weirdo. Which is fair enough.

Re: List of minimalist frameworks

#58
post #9
post #5

Earlier quoted context omitted.

Not necessarily. It's minimalism in terms of a framework (though in more objective terms I guess you would be right.) To me that means having not much more than a url router and a way to do MVC - no asset management, no HTML helpers, no ORM, no default templating language. I'm surprised Slim Framework isn't listed under PHP though, is that not considered minimalist?

> no HTML helpers, [...] no default templating language Flask has HTML helpers and uses Jinja2 as its template language, though...

But you can pip install any other templating language and use it in flask. jinja is just the default.

Re: List of minimalist frameworks

#59
post #7

Isn't "minimalist framework" a contradiction? It seems like if you were going for minimalism you would not use a framework.

I agree. Having just finished a project with Flask, I ended up using no less than 8 million dependencies that I'd never heard of. "BYO everything" frameworks would be more appropriate, but even then, Flask brings with it an entire basement of sub-frameworks that I would argue make it so that you might as well just use a full-fledged framework like Django.

That's how it works with micro-frameworks, you pay for what you use. Now, it's not necessarily a problem, last time I checked, there was a decent list of functional Flask components. What do you feel is the advantage of having a huge 'contrib' folder, as long as the extensions are maintained? Because the advantage of not having an ORM bundled per default, and easily switching something like the templating language are pretty clear to me.

Re: List of minimalist frameworks

#60
post #47

What is Log4J doing there? It's an incredibly complex framework for doing something incredibly simple - logging. It's the exact opposite of a minimalist framework.

Yeah, I still wonder if it is a joke inclusion or not. Log4j is probably larger than all other frameworks on that page, and it just handles logging.
Post reply on HN