# Suggestion: use PEP-like process for changes

**URL:** https://discourse.julialang.org/t/suggestion-use-pep-like-process-for-changes/63494
**Category:** Internals & Design
**Tags:** suggestions
**Created:** [June 23, 2021, 4:14pm UTC](https://discourse.julialang.org/t/suggestion-use-pep-like-process-for-changes/63494 "2021-06-23T16:14:44Z")
**Posts on this page:** 1
**Showing post:** 10

<div class="post-metadata">

### Author: ![oxinabox](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/oxinabox/32/206603_2.png) [@oxinabox](https://discourse.julialang.org/u/oxinabox)
#### Post date: [June 24, 2021, 12:15pm UTC](https://discourse.julialang.org/t/suggestion-use-pep-like-process-for-changes/63494/10 "2021-06-24T12:15:08Z")

</div>

> [@paulmelis](#):
>
> I’m not saying copy Python’s PEP process, but what’s wrong with having _a_ process to suggest, discuss and decide on changes that currently can lead to lots of unstructured discussion?

My reading of “[Suggestion: use PEP-like process for changes](https://discourse.julialang.org/t/suggestion-use-pep-like-process-for-changes/63494)”  
Was that you were suggesting we used a process that was (very much) like PEP for changes.

> [@paulmelis](#):
>
> The process would force more structure. Instead of having an open discussion about “something” it would force the creation of a (draft) proposal first to some level of concreteness which can then can be discussed and decided upon.

I see where you are coming from with this.

As the counter to this, sometimes things just need a many month long unstructured discussion to settle on something that is good.  
_before_ a concrete proposal can be written.  
And then at the time such a proposal can be written there is less point writing it, as you have all the answers.

Examples

- [Taking vector transposes seriously](https://github.com/julialang/julia/issues/4774)
- Taking Complex Autodiff Seriously in ChainRules. [GitHub1](https://github.com/JuliaDiff/ChainRulesCore.jl/issues/159), [GitHub2](https://github.com/JuliaDiff/ChainRules.jl/pull/196), [Discourse](https://discourse.julialang.org/t/taking-complex-autodiff-seriously-in-chainrules/39317)

You might say: _“These are exactly what we want to avoid”_.  
But they are not a waste of time:  
**They are not overhead blocking important work: they are the important work.**  
No one person could have come to the conclusions with the robustness that that long unstructured discussion has, because it is dealing with the intersection of multiple different fields requirements and expertise. (Its a cool thing that the julia community can bring to bear on a problem: combined centuries of expertise from dozens of fields)

We have to be careful to balance the notion of anyone being able to contribute ideas and understand what is being talked about, and having a clear focused proposal,  
against experts being able to discuss vigorously between themselves, ranging across wide areas, to determine what should be proposed.

---

_[View the full topic](https://discourse.julialang.org/t/suggestion-use-pep-like-process-for-changes/63494)._
