6 ms·
I would bet my horse on https://trypyramid.com/ https://trypyramid.com/ when it comes to API consistency, I've updated my applications from 0.9 to 1.7 and that
by ergo14 10y ago
I would bet my horse on https://trypyramid.com/ https://trypyramid.com/ when it comes to API consistency, I've updated my applications from 0.9 to 1.7 and that was a breeze. Over the years it was exceptionally great experience.
- tangue 10y agoPyramid is great, but for years they had a ridiculous Iron Maiden- heavy metal like branding [0] which make it hard to sell it in the corporate world. I'm glad they evolved on this point. [0] http://keitheis.github.io/use-pyramid-like-a-pro/?full#Cover http://keitheis.github.io/use-pyramid-like-a-pro/?full#Cover
- dkns 10y agoNot gonna lie, that cover(?)/artwork(?) looks pretty sweet. But I'm probably biased because I really like Iron Maiden.
- deleted 10y ago[deleted]
- vog 10y agoI don't mind the artwork (and actually like it), but I think the real issue is the text: Use Pyrapid Like a Pro "Like a pro(fessional)" implies that you, the target audience, are not "professionals". However, if you use it in the corporate world, you do use it as a professional. This makes it sound like an advanced toy rather than a bullet-proof work of engineering you can rely on. Which is really a pity, because Pyramid _is_ a framework you can rely on.
- mangeletti 10y agoI agree, but you know what; I think the new branding is worse :( It's a shame, because I've wanted to try Pyramid since I watched their talk at PyCon 2011, but the branding (including the new 99 Designs looking logo / theme) has always made me think, "This will never really take off."
- bpicolo 10y agoNot to mention, a few parts / typical components of pyramid are kind of nuts, like auth. Colander is also a struggle to use. Still my go-to framework though. The websauna framework linked above might be something I have to try. As I build more and more side projects I find myself wishing pyramid were just a bit more opinionated so I could get the basics up and running a tad faster. At this point I mostly cut up old projects and port them to each next one, heh
- Yuioup 10y agoOne of the off-putting remarks I get is, "what is this, a pyramid scheme?". I don't like the name, they should have stuck with Pylons.
- smnscu 10y agoIf like me you really liked the slides, this is the framework/engine https://github.com/shower/shower https://github.com/shower/shower The theme is one of the included ones, Ribbon.
- bradmwalker 10y agoWebSauna looks promising: https://websauna.org/docs/narrative/background/intro.html https://websauna.org/docs/narrative/background/intro.html Offers Django feature parity with best of breed components.
- miohtama 10y agoYou'll get Django parity with Pyramid modern design patterns. If you have any questions please pop into the chat http://gitter.im/websauna/websauna http://gitter.im/websauna/websauna
- mangeletti 10y agoI always expected Pyramid to offer some performance benefits over Django, given the origins (taking the best of framework X and Y), esp given that you can choose your own ORM (e.g., SQLAlchemy), etc. However, once you're out of the unrealistic scenarios (single query benchmarks, etc.), it doesn't do that well[1]. It's not prohibitively slow, but to make the jump from something as well documented and with as large a community as Django, most developers would need to see major gains in one or more areas; performance, docs, community, coding efficiency, etc. Pyramid doesn't offer these gains. It only makes promises about maintainability, which are hard to verify, unless you personally know somebody that you trust as a skilled developer, and who has worked on a sufficiently large enough project in Pyramid to make such claims... it's easy to see how this creates a hole that Pyramid has to dig itself out of. Also, Pyramid still talks about "supporting your decisions", like Jinja2, etc., as if that's a problem people are still dealing with. Django supports Jinja2 even in the admin now, let alone being able to use whatever you want elsewhere. As a side note, I don't see many Python developers wanting to use anything other than Django templates (for simplicity and separation of concerns) or Jinja2 (for speed and flexibility) these days. If the argument, in response to the aforementioned difficulty in verifying claims about maintainability, is "well, it's up to you; Pyramid stays out of the way", then the immediate response is that you're better off using Flask or Falcon; the former if you need third-party tools, and the latter if you need maximum raw speed, but still want Python. Both of those frameworks will drastically outperform Pyramid and stay out of your way. IOW, I don't think Pyramid fills any reasonably sized and easily understood market gap. 1. https://www.techempower.com/benchmarks/#section=data-r13&hw=ph&test=query&l=4ftgjj&f=zik0zb-zik0zj-v2qiv3-zik0zj-zik0zj-zik0zj-3j https://www.techempower.com/benchmarks/#section=data-r13&hw=...
- SEJeff 10y agoFlask was an April fools joke from Armin that became a serious thing. The thread locals hacks and use of globals is pretty horrible. I do quite like Falcon however if I want something != Django. http://lucumr.pocoo.org/2010/4/3/april-1st-post-mortem/ http://lucumr.pocoo.org/2010/4/3/april-1st-post-mortem/ http://mitsuhiko.pocoo.org/flask-pycon-2011.pdf http://mitsuhiko.pocoo.org/flask-pycon-2011.pdf
- linsomniac 10y agoI've been talking to some of the developers on FreeNode about their support of old releases. In particular, related to statements about "Once 1.8 comes out, 1.6 will no longer receive patches". 1.7 came out 9 months ago and 1.8 is in beta. In other words, they don't really have a LTS process. And the developers seem to think this is totally ok. In my experience, anything that doesn't have a commitment to at least fixing security issues for ~5 years, isn't a good choice for business. Businesses don't want to tie their internal development and release cadence to an external development team with less than 3 year cycles, ideally 5+. I've seen it time and again over dozens of companies. There is no time to qualify apps for new major/minor releases. Anything that doesn't have a LTS release story is just not something I can feel good about deploying in my business.
- mmerickel 10y ago> And the developers seem to think this is totally ok. To be clear the core maintainer-ship of pyramid is about 2-3 people. We would love more contributors to the core codebase, but with that level of commitment we're obviously not able to provide a comparable level of support to a project with more contributors. This is the nature of open source and it is the rare exception to the rule to find packages / projects that have grown to be able to offer such a level of support.
- linsomniac 10y agoSure, but this is in a thread that starts with "Django has a new release", so I do think it is relevant considering that Django DOES have LTS releases. (Aside: mmerickel is the developer I was talking to in Freenode) Honestly, I didn't know that Pyramid had such a small amount of manpower behind it. It presents itself and has a reputation in the Python community, at least in my experience, of a bigger project. But, as far as not being able to commit to security releases for old versions: it's obviously a choice in where to spend the available resources, not one of the size of those resources. Choosing new development over providing critical fixes of older releases is a choice, it's just one I need to understand before I commit to using a component. I understand why one would make either of those choices, I just need to know which one has been selected. It is great for people who want to choose forward development focus, I'm just not one of them.
- danpalmer 10y agoMy problem with Pyramid (although having never used it in production) is the same as my problem with Flask. They say "Start small, finish big", and push the fact that Pyramid scales from a single file codebase, up to many files. This is something that I just haven't seen in practice. A Django project requires quite a few files, so it's never a great answer when the total amount of business logic is <100, or maybe even <1000 lines of code. However, a 10k line Django site and a 100k line Django site basically look the same in my experience, and that is hugely valuable. The biggest red flag from Pyramid for me is their point: "Use Pyramid as a "framework framework" to craft your own special-purpose, domain-specific web system". In my experience, this means that every project is a special snowflake of a project that works in a very different way to other projects. With Django you have a tried and tested architecture, with Flask and Pyramid, it often seems that you have to create your own architecture in some ways, and that results in each project being really quite different.
- ergo14 10y agoWell, for what its worth 1.7 ships with new default scaffolds that that have better separation between models,views and templates - and now is a very decent starting point with everything preconfigured for you (certainly much better than starting with flask from scratch in my opinion if you are not really experienced). You do not start with a single file codebase anymore - if you have a moment try it again you might like it.