I published my first article of 2024 🎉
It contains all my ideas for the informal session of the Django roadmap for 2024, proposed by the new DSF board member, Thibaud Colas @thibaudcolas 🚀
Thanks for the hint 🙏
I published my first article of 2024 🎉
It contains all my ideas for the informal session of the Django roadmap for 2024, proposed by the new DSF board member, Thibaud Colas @thibaudcolas 🚀
Thanks for the hint 🙏
@paulox @thibaudcolas The `Rapid application development` section reads like RoR scaffolding (https://www.rubyguides.com/2020/03/rails-scaffolding/) which seems like it might be useful.
Laravel starter kits (https://laravel.com/docs/10.x/starter-kits) are a similar approach, but provide even more (at the risk of being more opinionated).
I think newer #Django devs would especially benefit from these approaches because it reduces the time from `pip install django` to a simple application that does _something_.
@adamghill @paulox @thibaudcolas This is excellent. There are so many good things other frameworks are doing, like Laravel.
I'm also impressed, while originally having mixed feelings about some of Datasette's cli options like install and uninstall. In hindsight, this makes Datasette more approachable to its audience. With Python packaging starting to land on pyproject.toml as the default standard, I wonder if Django could pull this off. 🤔
@webology @paulox @thibaudcolas re: install and uninstall, I spent some time a few years ago playing with runtime patching of Django trying to figure out how to reduce the number of steps to install a third-party package. Basically, an even less hands-on version of https://django-app-enabler.readthedocs.io/.
My goal was to make installing a third-party package as easy as installing a Wordpress plugin and remove anything manual. I have a PoC somewhere, but I gave up at some point. 😂
@adamghill @paulox @thibaudcolas sounds like we have worked on similar things.
If `install` did a `pip install {package}` and added `{package}` to `pyproject.toml` that might be a nice win. Same for priting some info for settings + url.py conf.
If you want to really reach for the stars, we'd add something ilke Pluggy to Django and drop signals. That would give us some hooks for things like maybe post_install which could be interesting.
@webology @paulox @thibaudcolas The runtime patching aspect is probably too much, but I think improving integrating third-party packages would be useful.
e.g. looking at https://www.django-rest-framework.org/#installation, it'd be nice to do:
1. pip install django djangorestframework
2. python manage.py install djangorestframework (add to INSTALLED_APPS, add defaults to settings, add default urls, etc)
3. python manage.py scaffold account
4. Go localhost/api/ and have RESTful endpoints for all models in the account app
@adamghill @webology @paulox @thibaudcolas people often come to django-cms in the hope (expectation) that we have plugins and themes that install at runtime like WordPress.
That would be a very cool Django feature but I've always considered it too difficult.
@markwalker @webology @paulox @thibaudcolas Personally, I think it depends on who your end user is. Wordpress allows non-technical users to start a blog and add any functionality they might need. All of the Django CMSes require tech folks to be involved AFAIK. Just different sets of trade offs IMO.
@adamghill @webology @paulox @thibaudcolas yeah that's basically my point of view. You can't get a Django project going without a developer to build it and deploy it. So those same people are needed to add to it.
I think there's a good chance the people coming through and asking these questions are non-technical and it's those people who would perhaps have experience with WordPress
@markwalker that all being said… the closer to the “Wordpress experience” Django can get, the wider the market gets. 🤷♂️
@markwalker @adamghill @webology @paulox killer for me would be a way to try out a package in the browser like https://wordpress.github.io/wordpress-playground/. I don’t mind installing a package if it’s good, but the first time I want to go from README to a demo site in one click and 10s rather than 10 CLI commands 2-3 minutes
@thibaudcolas @markwalker @adamghill @webology @paulox like this https://absurd-django.vercel.app/ Thibaud?
Haha, you should talk with @patrick and @wilhelmklopp 😄
@sabderemane @markwalker @adamghill @webology @paulox @patrick @wilhelmklopp Yes :) I built a similar one for Django Templates: https://django-templates-live.vercel.app/
It’s not that much work to do a PoC, lots of work (I imagine) to do a polished one
@thibaudcolas I still want to make a playground that works well and works for django, fastapi and other frameworks
@adamghill absolutely. But it's tough because of the flexibility we have in everything in the projects.