Hi Emil,

I agree that there perhaps needs to be a more "pull" here than just making
a third party app, but I feel I can speak from a good place when I say
third party apps can absolutely prove core Django features in a way that
gives them much faster release cycles and freedom from things like LTS
commitments initially, so they can be rapidly improved upon before being
deemed worth merging. The alternative is either merging something into core
that's not ready, dooming it to a slow release cycle and perhaps community
pushback, or developing it as a parallel branch which is not something
that's going to be long-term sustainable.

This problem has been something I've been wanting to tackle for a while now
- I've always felt that the next step for Django is to start moving away
from being so married to the request-response cycle of traditional HTTP -
and I've been formulating a plan over the last few months about how to
tackle it. It's relatively ambitious, but I think entirely achievable and
would be almost completely backwards-compatible. Unfortunately, it's taken
a while to get over the 1.7 release cycle and migrations work being
slightly overwhelming, or it would have been sooner.

I'm sounding out some of the ideas here at DjangoCon Europe, and hopefully
come to the list with an initial proposal or implementation soon - I think
the best way to approach this is to sit down and design the API and core
code architecture, start proving it's possible, and then present that,
because in my experience having code examples can really make a proposal a
lot easier to understand. Of course, I'm also fully prepared for people to
shoot down my ideas - being a core team member doesn't give me some magical
ability to push through changes.

Andrew

On Mon, Jun 1, 2015 at 11:11 PM, Emil Stenström <e...@kth.se> wrote:

> Thanks for you reply Andrew,
>
> On Monday, 1 June 2015 13:05:34 UTC+2, Andrew Godwin wrote:
>>
>> Just to chime in here - I've long been in favour of some kind of support
>> for event-driven stuff inside Django, but as Curtis is saying, there's
>> nothing here that couldn't be done in a third party app first and then
>> proven there before any possible merge into core.
>>
>
> That seems to be the argument for all my three suggestions: Build it as a
> third party app, and if you get everyone using your three apps we might
> consider adding them to Django. I was hoping for a more "product driven"
> approach, where we look at the world around us, see that Django is lagging
> behind in a major area for modern apps, and start playing around with
> different ways of tackling the problem. Given that there are people that
> agree this is a problem for Django, I was hoping for more of a "pull" from
> the community. "We want something that solves this problem, this way,
> without doing this".
>
> I also don't think that this proposal goes far enough, in a way - any push
>> for a system that allows asychronous calling like this should be available
>> to the request-response cycle as well as websocket/push clients (I want the
>> ability to make my database calls in parallel with my external API calls,
>> perhaps). I have some ideas down this path, but even those are the sort of
>> thing that need a couple of changes to Django to make things work smoothly
>> but the bulk can be implemented outside.
>>
>
> I agree that this would be great, but given that Django won't be rewritten
> to support async everything any time soon I think this will be a far to big
> first step. In my experience, starting small and iterating is a much better
> way to get great things going. And my subset of server->client message
> passing is just that.
>
> If there's specific things Django needs changed to support this properly,
>> I'm all ears, but I'm not sure we should just lump a certain pattern of
>> socket worker in core straight away.
>>
>
> "Lumping something in" is not something in is not something I've
> suggested. I'm fully prepared that this will take time and effort.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Django developers (Contributions to Django itself)" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to django-developers+unsubscr...@googlegroups.com.
> To post to this group, send email to django-developers@googlegroups.com.
> Visit this group at http://groups.google.com/group/django-developers.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/django-developers/4bbf9e68-b1b8-4701-bca7-eb062626e94b%40googlegroups.com
> <https://groups.google.com/d/msgid/django-developers/4bbf9e68-b1b8-4701-bca7-eb062626e94b%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers  (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-developers+unsubscr...@googlegroups.com.
To post to this group, send email to django-developers@googlegroups.com.
Visit this group at http://groups.google.com/group/django-developers.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-developers/CAFwN1urSpH%2BS9xa4TofskfKMdw-pP0__oARaiz94-hzHwMJQpQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to