> we should add Python code style guides to it
> 
Strongly agree. We're hurting ourselves by treating our python as a 2nd class 
citizen.

> if we should avoid making method parameters and local variables `final` - 
> this is inconsistent over the code base, but I'd prefer not having them. If 
> the method is large enough that we might mistakenly reuse 
> parameters/variables, we should probably refactor the met
Why not both (i.e. use final where possible and refactor when at length / doing 
too much)? The benefits of immutability are generally well recognized as are 
the benefits of keeping methods to reasonable lengths and complexity.


On Mon, Mar 14, 2022, at 7:59 AM, Marcus Eriksson wrote:
> Looks good
> 
> One thing that might be missing is direction on if we should avoid making 
> method parameters and local variables `final` - this is inconsistent over the 
> code base, but I'd prefer not having them. If the method is large enough that 
> we might mistakenly reuse parameters/variables, we should probably refactor 
> the method.
> 
> /Marcus
> 
> On Mon, Mar 14, 2022 at 09:41:35AM +0000, bened...@apache.org wrote:
> > Our style guide hasn’t been updated in about a decade, and I think it is 
> > overdue some improvements that address some shortcomings as well as modern 
> > facilities such as streams and lambdas.
> > 
> > Most of this was put together for an effort Dinesh started a few years ago, 
> > but has languished since, in part because the project has always seemed to 
> > have other priorities. I figure there’s never a good time to raise a 
> > contended topic, so here is my suggested update to contributor guidelines:
> > 
> > https://docs.google.com/document/d/1sjw0crb0clQin2tMgZLt_ob4hYfLJYaU4lRX722htTo
> > 
> > Many of these suggestions codify norms already widely employed, sometimes 
> > in spite of the style guide, but some likely remain contentious. Some 
> > potentially contentious things to draw your attention to:
> > 
> > 
> >   *   Deemphasis of getX() nomenclature, in favour of richer set of 
> > prefixes and more succinct simple x() to retrieve where clear
> >   *   Avoid implementing methods, incl. equals(), hashCode() and 
> > toString(), unless actually used
> >   *   Modified new-line rules for multi-line function calls
> >   *   External dependency rules (require DISCUSS thread before introducing)
> > 
> > 
> > 
> 

Reply via email to