GopherChina2017 as a lecturer to participate in the inspiration

Source: Internet
Author: User
Tags gopher
This is a creation in Article, where the information may have evolved or changed.

Time Flies The 2016 Beijing Gopherchina Conference is still vivid in the picture, 2017 Shanghai Gopherchina Conference is also the same.

First, impressions

This is my second year in a row to attend the Gopherchina conference organized by Astaxie. And unlike last year, I was involved as a lecturer this time. Although the conference venue is different, my role is different, but the same as the vast majority of Gophers to go language of great enthusiasm.

This is also the third session of the Gopherchina Conference. With the rapid evolution of the go language itself and the rapid growth of Go's application in various industries in China, the Gopherchina Congress has a growing influence in greater China: it has received more sponsorship from its inner circle sponsors and has received great attention from Gophers. There are a lot of Gophers are gopherchina the General Assembly of the successive participants, some gopher even participated in three consecutive sessions, I personally saw a lot of last year in the Beijing Conference met at the Gophers. This allows the main venue, which accommodates nearly 1500 spectators, to be nearly full. Organizing and participating in a technical conference at this level is a test for both the organizer and the audience. Simply, under the tireless efforts of matchmaker and related staff, the two-day conference was a very successful, compact and orderly assembly. And on the first night of the technology party, the bearded Dave Cheney also brought us "Gopher puzzlers". This gave the technology party the atmosphere of a climax.

Second, the topic of consideration

Since this is a conference attended as a lecturer, it is not intended to be reviewed by other lecturers and their presentation as of last year (for comments, you can move to a post that is open to the small partner). Here I mainly talk about my topic of this session and the individual's understanding of what the technical conference like Gopherchina should say.

At the beginning of the year, matchmaker asked me if I would like to share at the Gopherchina conference this year, when Gopherchina topic was recruited. To tell the truth I really want to share, I am also a love to share the person. But sharing what topic is really a problem. I studied go earlier, but there was no full-time go until last year when I started to become full-time go. And his own idea of the theme shared by Gopherchina is the hope that the General Assembly, like the Gophercon Congress in Denver, will have more topic on the go language itself. So I had myself to share a topic about the go language itself, and Xie da had to communicate with the support of the big thanks. The following topic preliminary description reflects my thought plan for slide:

* "2016 Go language wins the annual language of Tiobe programming language, proves the trend of the go language in the world, more and more developers will join the ranks of Gophers." Go is known for its simple syntax, low threshold, and quick start. But after getting started, many people find it hard to write authentic code that follows go thinking. To this end, in this share, the author will combine the go team's talk material, reference and refining go standard library and mainstream go Open source project of the essence of source style and idioms, and everyone to explore the "go coding in the go way" approach. ” *

On such a subject, my mind is also disturbed, the heart of a kind of bright: This topic some big AH! There must have been a lot of work on reading the code, collecting and collating the material, so I started some data collection early.

Initially my topic was biased toward go idiomatic tricks or best practice, but as the preparation went on, there were a few questions in my mind: Go was born for so many years, go idiomatic tricks or best Practice has been known, but a lot of questions are not conclusive, can I discuss it? For example: How is Go's programming thinking formed? Why go easy, write idiomatic code difficult? Can I get to the bottom of the idiomatic tricks or best practice these icebergs on the previous level? At this time coincided with the domestic release of the "Advent" of the American blockbuster, after watching movies in the cinema, I thought about the film's theoretical Core: "The Wolf hypothesis" and fell into meditation.

So that night I had a new idea about topic, which was to explore the things behind go programming thinking. But considering how to use programming thinking to write go code, I read a lot of Go stdlib, kubernetes code, trying to find in the code "Go language Programming thinking" application examples and add slide. So the general structure of the slide comes out:

铺垫    - “萨丕尔-沃夫假说” 作为引子,说明语言与思维的联系    - 针对一个问题的三个语言版本实现,说明编程语言对编程思维的影响    - 提出:语言价值观是语言影响思维的根本(一个阐述模型)价值观    - Go语言的价值观的形成和价值观内容    - 每种价值观下的语言设计    - 每种价值观主导下的Go编程思维    - 这写Go编程思维的具体运用实例

With the deepening of data preparation, the content Architecture (outline) of values ("Comprehensive simple", "orthogonal combination" and "preference concurrency") and programming thinking is completed gradually:

   Overall Simplicity        - short naming thought        - minimal thought   Orthogonal Composition        - vertical composition thought        - small interface thought        - horizontal composition thought    Preference in Concurrency        - concurrency thought

In fact, in this material preparation process, my personal understanding of the go language has also been a certain sublimation, but also more understanding of Go designers in the original design language to make some choices, and feel in the face of actual business problems, code design, more Youdao can follow.

Close to the Convention and start writing slide. In the ^_^ of present in the go way, I prefer the go present tool support. Slide format document, and finally form a document of nearly pages. I also felt a lot of pages and timed out every time I went through the rehearsal myself. However, the logical fastening between pages, arbitrarily delete a page and worry about thinking jump, not easy to understand the whole, so the bite-bullet will be all the content to the last.

Three, presentation analysis

But the actual presenting process, I still timed out: (, the whole presentation process is not smooth.)

    • First of all, the General Assembly screen resolution seems to have some problems, the title of the slide is not shown at all, which leads directly to the gopher in the audience can not see my thinking system, the content of people feel abrupt. It is like knowing the general "criticism" of ezbuy Weng: "I do not know why we say variable statistics".
    • Second, have to admit that they speaking in front of thousands of people, indeed nervous tension ah, especially in the early stage, the rhythm is slow, some things did not speak out, may let the audience feel the idea of jumping;
    • Again, perhaps Gopher are more concerned about the specific display of programming thinking, that is, the code part behind, but because the front rhythm control is not good, the cushion part is a bit more, occupy a lot of time, and led to the code part explained very quickly.
    • Again, the gopher of each venue is different, and some gopher may prefer the topic of solutions to the problems they are currently experiencing, such as "micro-service combat."
    • Finally, the topic is big enough to focus. The experience of preparing for the topic of such a scale is still inadequate. Even speaking the language itself should be focused, just like Dave Cheney or Francesc Campoy topic, just to tell the ins and outs of a thing.

Throughout the first two sessions of the Gopherchina Congress, people say that the topic of the go language itself is low, and can even be described as rare. More topic focus on the product, architecture, principles and engineering practices of a particular business area. I am not saying that these topic are not good, after all, the size of a conference like Gopherchina needs topic diversity. Just this one I want to challenge myself, although the result is not so ideal.

However, even if the trough, in fact, there is nothing to explain and excellent go lecturers compared to their own indeed there is a gap. There are gaps on the effort to make up. If there is a chance to share the next session, I will also share the topic related to the go language, just to learn from experience and focus more.

Iv. reply to The Spit Groove

Here also reply a few gopher of The Spit Groove:

1, "Over-hyped go"

I can't imagine why this gopher could have this idea.

First of all, at the Gopher conference, saying go must be no problem. I've always said that go is a great language, but never say go is the best language.
As for the so-called rise to the "value" of the level, it is a programming language in the nature of the discussion, is the go code design thinking of the source of thinking, not flattering or not flattering.
Any programming language has a designer's own understanding and choices that can rise to values.

But what I can't deny is that the rise to the level of programming language values requires a certain amount of programming language to accumulate. So it is normal for beginners to experience it. Take it slow:)

2. "Some ambiguous conclusions"

I don't know if the reason for this "spit" is because I said a few modest words at the beginning of the talk. But modesty does not mean ambiguity. All the conclusions in slide are the result of my thinking, this thing is subjective, this is not mathematics, need to have a sophisticated proof process. But I have always been steadfast in expressing these views. I wonder if the gopher-wolf hypothesis is an ambiguous conclusion in this mind.

I do hope that this topic can be a "catalyst", so that the vast number of gopher together in-depth understanding of the intentions of language designers and go design process of some considerations and cognition, can let us better use the go language. You can add that you can refute a point of view, but you have to take out your thinking process. If you can persuade me to persuade everyone, then I agree. This time sharing is my thinking process, is not ambiguous.

Summary

Finally, thank Astaxie very much, no gopherchina! without him Hope that the future Gopherchina Congress better and better, I hope the GO Foundation is bigger!

Gopherchina 2017 the slide of all lecturers has been released and can be downloaded here.

My personal talk slide can be downloaded here.


Gopherchina beautiful scenery around the venue


Photo with Gopherchina mascot


In the speech

Weibo: @tonybai_cn
Public Number: Iamtonybai
Github.com:https://github.com/bigwhite

, Bigwhite. All rights reserved.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.