
Russ Cox: Go, Open Source, Community - agonzalezro
http://blog.golang.org/open-source
======
EdiX
I agree that a code of conduct is a great idea but I'm really bummed to read
that the Django CoC is going to be adopted by golang.

1\. The Django CoC uses very vague language on what it is forbidden and
explicitly tells you that "this isn’t an exhaustive list of things that you
can’t do" just to be extra vague in what constitutes unacceptable behaviour.

2\. It does not define what process will be used to address CoC violations,
being ejected from an OS project for violating the CoC can be a serious thing
with personal and professional ramifications but an accused is not given the
right to face their accuser nor the right to an impartial jury (which would be
hard to do anyway since the accusation could be something like "he's making me
anxious")

3\. It overextends itself "violations of this code outside these spaces may
affect a person's ability to participate within them" which means that not
only you are under the scrutiny of the kangaroo court when you are posting on
golang spaces but everywhere else: ycombinator, reddit, your personal blog,
etc. Honestly I feel like just writing this criticism is painting a target on
my forehead, talk about safe spaces.

I wouldn't be making this comment if CoCs hadn't already been used in bad
faith to attempt to character assassinate OS contributors (for exmaple the
Kubuntu debacle or this [1])

[1]
[https://igurublog.wordpress.com/2015/06/04/](https://igurublog.wordpress.com/2015/06/04/)

~~~
danieldk
There was a lengthy discussion on a CoC on the golang-nuts list it was
concluded that (3) would should probably not be included for the time being.

[https://groups.google.com/forum/#!msg/golang-nuts/sy-
YcVPADj...](https://groups.google.com/forum/#!msg/golang-nuts/sy-
YcVPADjg/bcO6LAr29EIJ)

~~~
EdiX
I've only read the first page and I already saw a problematic statement from
A. Gerrand (which seems to be in charge of this CoC proposal).

User Peter Kleiweg raises this concern "Who gets to decide what is racist? And
even whether or not racist is a bad thing?" and while I disagree with him on
this particular issue the answer that Gerrand gives is very problematic:

"If it's speech that makes people feel unwelcome and discriminated against,
then I personally believe that's a bad thing."

the problem with this is that, for example, an open display of support for gay
marriage will make some catholics (for example) unwelcome and discriminated
against. This isn't even theoretical, this is an argument that actually
happens in the real world, just not in the bubble inhabited by Gerrand,
apparently.

~~~
odiroot
Where is Voltaire where you need him?

"I disapprove of what you say, but I will defend to the death your right to
say it."

(And yes, I am aware he didn't say these exact words himself.)

~~~
d215
Maybe the spirit of Voltaire's work is captured in this proverb, but Voltaire
never actually said or wrote this anywhere.

Apparently it's a phrase from a biography of Voltaire by Evelyn Beatrice Hall.

~~~
odiroot
See the last line of my comment then.

------
egeozcan
> At the same time, Go's static typing avoids much of the repetition of
> traditional statically typed languages

As a happy user of Go, I usually find myself writing slightly more code than
C#. Maybe it's because of the lack of generics or maybe it's because that I
have 10x more experience in C#. To me, it's interesting to read this.

~~~
krat0sprakhar
I believe Russ is alluding to Go's type inference which Java / C++ / C# dont
have.

~~~
aikah
Go has type inference but having to declare types everywhere hardly make a
language more "verbose".

The problem with Java(lang) is the culture.

Instead of writing programs in a pragmatic way, Java devs feel the need to
forcefully over architecture code bases, because there are afraid that a
colleague looking at their code will not find it JEEish enough.

Obviously Go doesn't have the same culture since it doesn't force developers
into writing classes everywhere. So it's easier to hack something quickly with
a bunch of functions and variables, like in most dynamic languages.

~~~
agentgt
> The problem with Java(lang) is the culture.

Maybe 8 years ago. Other than Oracle itself the language, the libraries and
the culture has changed rather substantially over the last few years.

> Instead of writing programs in a pragmatic way, Java devs feel the need to
> forcefully over architecture code bases, because there are afraid that a
> colleague looking at their code will not find it JEEish enough.

Much of the over-design in older Java has to do with ancient methodologies of
writing massive specs and having review committees. It has nothing to do with
not being JEEish or whatever abuse of keywords you want to make.

> Obviously Go doesn't have the same culture...

Actually I'm starting to see many many Java programmers use golang because
many Java programmers are system-like programmers (middleware or whatever its
called these days). I guess their behaviors will magical change right?

> So it's easier to hack something quickly with a bunch of functions and
> variables, like in most dynamic languages.

Well that is true but writing classes in Java is not exactly hard. If it helps
you can think of the classes as modules or just files you put your code in.
You don't have to write OOP in Java and some would argue most of Java is not
OOP.

------
0xdeadbeefbabe
Does the political climate in CA demand that people ignore subtle nuances
about inclusiveness?

Linus said, "...I've literally had developers who were working on things that
I didn't really like, but I didn't shut down early enough. They worked on it
for a long time; they felt that it was ready, they submitted it to me, and I
said "no this was horrible" because at that point I had to make a decision.
And at least in one of those cases I had some other friends basically email me
later and saying "the guy is suicidal"."
[http://opensource.stackexchange.com/questions/395/how-do-
i-d...](http://opensource.stackexchange.com/questions/395/how-do-i-deal-with-
enthusiastic-contributors-who-damage-more-than-they-help)

I think you imply a CoC, and Russ's style needs no improving. If you must
adopt a CoC why don't you assume people will behave badly and provide a
workaround instead of relying on virtue.

------
codemac
Was pleasantly surprised to see the veritably (at times) acidic rsc
championing a code of conduct. Definitely will be beneficial to the community.
I haven't heard about any incident that has lead to a CoC being necessary,
which is awesome.

~~~
AYBABTME
It's interesting that you say that, from my little interaction at Gophercon
with him, he was a very nice and genuine person. In the parent article, he
also mentions:

    
    
       For example, I have learned that when I am pressed for 
       time I tend to write fewer words, with the end result that 
       my emails seem not just hurried but blunt, impatient, even 
       dismissive. That's not how I feel, but it's how I can come 
       across, and that impression can be enough to make people 
       think twice about using or contributing to Go. I realized 
       I was doing this when some Go contributors sent me private 
       email to let me know. Now, when I am pressed for time, I 
       pay extra attention to what I'm writing, and I often write 
       more than I naturally would, to make sure I'm sending the 
       message I intend.
    

which might relate to your point of view.

~~~
throwaway999666
Perhaps we should question the proliferation of coaxing more and more in
smilies and pleasantries, when all that is really needed is a straightforward,
factual answer.

Smilies and pleasantries are fine, if they come up naturally. But why do
people get slighted when someone replies to them with a straightforward – not
rude, not crass, not sarcastic, just straightforward – answer?

I've caught myself getting slighted at people I know who reply to texts or
messages in a direct way. Now that everyone uses smilies for personal
communication, the direct to-the-point style feels cold and dismissive. But
then I realize that they might be perfectly kind and pleasant people in
reality. They just have a different text/message _style_.

------
issaria
Maybe Rob Pike can say something about this CoC thing. Don't really like the
way Russ does things.

~~~
rsc
I'm sorry for that, but can you elaborate? If something I'm doing bothers
people, I'd really like to know what it is so that I can try to address it.
Thanks.

~~~
issaria
You did a great job improving the language.

For me, CoC is where programming meets politics. Whom gained benefit from
their current position is likely to impose those rules to protect their now
interest.

Pretty much there is a soul behind each language, Ricky Hicky for Clojure,
Guido van Rossum for Python, Matz for Ruby, and Rob Pike for Go. Those people
are not insecure, and I never felt them to be so aggressive.

~~~
rsc
FWIW, I'm sorry you see the code of conduct as an attempt to impose rules to
protect "my" or "our" current position. It is very much an attempt to bring as
many new people as possible into the Go community, not to exclude people.

~~~
issaria
Thanks for taking time to respond to my doubt. Would like to talk to you more.

~~~
rsc
Please feel free to mail me at rsc@swtch.com and we can continue the
conversation in whatever medium works for you.

