Personal, idiosyncratic, incomplete notes from the diversity discussion at GopherCon '16

Apologies in advance for not knowing everyone’s names. Corrections welcome.
These notes may or may not accurately express the opinions or intent of the speakers. When in doubt, please ask.

  • Go Bridge
  • Women Who Go
    • Sarah Adams, I think
    • Help women who Go feel more comfortable at Go events
    • Hold women-only Go events
    • 10 chapters around the world, 5 in the US, 5 elsewhere
    • If you know a woman that writes Go, get her to contact Sarah
    • Help women who Go keep doing Go: be welcoming, etc
    • WomenWhoGo.org
  • How to get more women / more diversity?
  • Recap: state of Go 2016 survey
    • No diversity information
    • Discussion
  • Johnny Boursiquot
    • The guy I had lunch with on Monday
    • Workshop co-organizer(?)
    • Do something uncomfortable
    • Go to schools, communities, etc, and build a program
      • Go to them
  • Cassandra
    • Not a programmer! Oh noes! :slight_smile:
    • Doing proactive outreach is great. Probably long term, though
    • Short term: how acceptable is Go as a first language?
  • ??
    • Go skews towards more experienced programmers
    • Hard to be more diverse than the programming community at large
  • Discussion of Ruby and “why”(?) or _y (?)
    • Whimsy
    • ergo, very approachable
  • Rails solves a problem lots of people have: build a website
    • Go, not so much. “You can write a load balancer …”
    • Nothing Go is good at resonates with non-technical people
    • Maybe something a little friendlier and whimsical than the Go Tour
  • Leverage Go Mobile?
  • Rob Griesemer
    • Easy access to graphics. Go doesn’t have that.
    • Visual feedback!
  • Katrina
    • Whimsicality examples: turkey bacon(?)
  • ??
    • From the Python community
    • Python diversity chairman stats …
    • 40% of all python talks given by women. Huge growth over the past few years.
    • Big commitment from the Python foundation to promote women and so on
  • Rob Pike
    • Go elite?
    • Well, yes.
    • Best way to get people to use a programming language, is: Get Them Early.
    • Get them in school. In college or earlier.
    • Some universities are using Go, but not many
    • The Go team has no traction or visibility in schools, basically
    • Again: Go a good first programming language? Maybe.
    • So: Get Go into schools.
    • But, the Go core team doesn’t know how to do that.
    • Every few years, universities reevaluate what language to teach to undergrads
    • In 98 it was Java
    • Maybe more recently, it was Python
    • Maybe we could get people to choose Go, instead
  • Dave Cheney
    • Discussion of who he chose to put on stage? Or something? Couldn’t hear exactly.
    • Who was in the audience?
    • 75% new GopherCon speakers
    • But high pressure here. Big meeting, big audience, Go luminaries.
    • Representation in the audience. Cost is a factor.
    • Bring the conference to people
  • ??
    • Worked with CodeNow
    • Went various places and taught people Ruby
    • We need a “Why’s poignant guide” – funny. Whimsical.
    • Python and Ruby are easy to get started in.
    • Other points.
    • Talk to him to reach out to CodeNow
  • Peggy Li
    • Pulled some stats from Women Who Go Twitter feed
    • Basically: stats on our female speakers are not terrible. Good growth.
  • ??
    • 5 yrs ago working with a robotics team in an underserved community
    • Teenagers really love robotics
    • Corporate sponsorship? Grants? Funds?
    • More robotics?
    • Make Go easier?
    • Turtle language? (Logo?)
  • Katrina
  • ??
    • Emulator for robots? Physical robots are expensive
    • There are, but they’re hard to install and get going. Like, 12 hours of work over 4 days. (Wow)
  • ??
    • More on robots
    • People coding on Linux boards on the robots … (or something?)
  • Johnny Boursiquot
    • Don’t underestimate the power of exposure
    • People have to at least know about Go!
  • Sarah Adams
    • Would like some Go tutorials to add to her list
    • Videos?
  • Nathan ??
    • Working on a book called Learn Go
    • Challenging to attract / appeal to beginners
    • Everything works from the Go playground
  • Robert Griesemer again
    • Would like to promote Go as a first language more
    • Story about his wife …
    • Assembler was easier for his wife than her Java programmers
    • Assembler is pretty dense. Java less so.
  • Francesc Campoy
    • Go could be a better language for beginners
    • Go out to under-served communities and teach Go
    • Teach kids, teach women, etc
    • Gather diversity from the world, not from the tech community
    • Work together
    • Go Bridge. Women who Go
  • Andrew Gerrand
    • Code Of Conduct
    • The CoC working group continues to exist
    • You can still report things that happen or that happen to you, or problematic things, or whatever
    • Not a lot of reports
    • Some were spurious and trolls (sigh). Some were real.
    • The “death by 1000 cuts” tends to turn people away from the community
      • Can you say, micro aggressions? :slight_smile:
    • There needs to be a venue to discuss these ideas and improve and take action
      • Go Bridge?
  • Back to Francesc
    • Thanks
    • Thanks for sharing
    • He’ll be sending some emails. :slight_smile:

See also https://www.evernote.com/shard/s13/sh/c460794e-6bbe-4a79-bf45-d8c9a53b9119/0c4c81203df38368

3 Likes

One way that the Go community is sort of whimsical is with the Go Gopher. The character of it was one of the first things that stood out to me, and a friend who is learning Go as their first programming language was attracted for that reason also. Maybe we can build on that.

1 Like

I think the number of Go programmers can be doubled in a year if Go had an easy to use GUI library out of the box. A native GUI may not be essential for most serious projects nowadays, but for most beginers nothing beats the joy of making a window with big buttons, icons and different color and size fonts appear on the screen. The language that gives them that is the one that they are going to learn.

I’ve been pondering writing a book on beginning programming using Go, and the lack of graphics is definitely an issue. Some Qt could maybe solve that.

A thought on graphics: I know everybody likes native graphics. But it seems to me that, for a teaching tool, at least, we could go a long way with a library that maps GUI widgets to web objects, opens a web browser, and stays up just long enough to serve the webpage, and then dies. With this idea, you wouldn’t need to know html, css, or any web tech at all, just enough Go to say:

func guiMain() {
    gui.Label("Hello, world!")
}

It wouldn’t even have to open an external browser. Just(?) embed Chromium and update it live. As near as I can tell, lots of actual “native” apps do just this.

1 Like

I have found a decent number of people haven’t known of this book. https://golang-book.com/books/intro It appears to be a great introduction to programming and uses Go, and even starts as simple as what a file is, what a directory is, and how to open the terminal / command line.

Hi,

I said a few other things. Learn Go is very incremental. For example, it doesn’t use pointers until it teaches them. I suggested that this approach could be applied to free resources. Perhaps we could make the current tour the “advanced tour” and add a beginner one that working programmers could skip.

Regarding graphics, check out the work Anthony Starks has been doing.

I imagine something could be done with GopherJS as well. Maybe Go Tour meets processing.js meets GopherJS?

Here are my own (incomplete) notes from the discussion.

Go diversity discussion
GoBridge

Women Who Go
Less than 10 women at GoSF of 100+. Scared to even consider speaking.
support network. women exclusive events, then bring into larger Go community

Go Census?

comfortable in the Go community. why not?

Johnny Bourisquot
push out (reach out to them) instead of pulling/attracting into our community

Cassandra Gil (runs GoSF) content/curriculum for beginners
_why whimsical approachable resources

Go uses cases not resonating with less technical people (i want to build a website)
relate to curriculum

tour is great for working programmer, but mystifying if you’re not
graphics, visual feedback. GopherJS tour?
Gobot.io, robot emulators?

PyCon up to 40% women giving talks (GopherCon up to 20% now)
PyLadies 40 chapters, very active
representation in the core team

Andy Walker: statically typed, why it’s cool, the power of the approach

Johnny: exposure. opened the possibility of a different future.

women who go website resources

a program that fits on the screen. information in our head.

Go Teach Go
reach the world, not just the existing tech community

Hmmm. Maybe we need to create something like http://shoesrb.com/ for Go… shiny is probably at the point where it could support something like that.

I also pointed out that coding school outreach seems to be promising. We have been giving a very beginner-focused Go workshop at Holberton School (which itself is highly diverse) and the feedback was awesome. I have been invited a couple of times to talk more about Go and willing to give a workshop about including Go into the hardware projects later this month.

There was a mention of FIRST Robotics Competition. I was able to talk to a person on the first day that he wants to propose Go as a language to work with. They have a custom microprocessor that runs Linux, so it is highly promising that Go might be already running on it. I gave him my contact details and looking forward to hear more from that project.

I do believe that focusing on IoT could be promising. There are periods of big buzzy moments in tech. It happened with Web, mobile and is now happening with IoT. If we make Go an ideal language for this field, we can attract many people who are trying to get into programming to get things done in this field quickly. This is also the main motivator why I started https://golang.org/x/exp/io/.

Additionally, I would like to add a few other points. Even though we talked about the “pipeline” problem, that is not the only problem we are facing. We need to keep track of the progress of the existing minorities in the community and see if they are achieving more and taking leadership positions. If you have any ideas where we should start, please contribute to the discussion here or email me at jbd@golang.org if you need to talk privately.

Thanks Larry for taking and posting these notes. They’re very helpful.

That was me, and you’re welcome. Glad to help out.

Oh my, I am so sorry. I commingled my memory of someone telling me they were going to post this thread, and this thread. :dizzy_face:

1 Like

sorry if i’m wrong asking here but is there any place where GopherCon 2016 can be watched?

The claim is that the videos will be posted on YouTube in a couple of weeks.

2 Likes

I wanted to add Peggy’s notes to this thread as well, fwiw: https://docs.google.com/document/d/1ulhG9vinpuWdQILLTsJ4_09oTW_yixz1MjPeoJMQhzI/edit

2 Likes

I would just like to say that I think Peggy took better notes than I did. Well done!

I’m very glad that multiple people took notes and we ended up with all of this info!

at last, first clips from GopherCon 2016 have been released :smile:

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.