diff options
Diffstat (limited to 'content')
-rw-r--r-- | content/gopherchina.article | 154 | ||||
-rw-r--r-- | content/gopherchina/image00.jpg | bin | 0 -> 49484 bytes | |||
-rw-r--r-- | content/gopherchina/image01.jpg | bin | 0 -> 77096 bytes | |||
-rw-r--r-- | content/gopherchina/image02.jpg | bin | 0 -> 34777 bytes | |||
-rw-r--r-- | content/gopherchina/image03.jpg | bin | 0 -> 68209 bytes | |||
-rw-r--r-- | content/gopherchina/image04.jpg | bin | 0 -> 60109 bytes | |||
-rw-r--r-- | content/gopherchina/image05.jpg | bin | 0 -> 57922 bytes | |||
-rw-r--r-- | content/gopherchina/image06.jpg | bin | 0 -> 98385 bytes |
8 files changed, 154 insertions, 0 deletions
diff --git a/content/gopherchina.article b/content/gopherchina.article new file mode 100644 index 0000000..d1fc66e --- /dev/null +++ b/content/gopherchina.article @@ -0,0 +1,154 @@ +GopherChina Trip Report +1 Jul 2015 + +Robert Griesemer +gri@golang.org + +* Introduction + +We have known for some time that Go is more popular in China than in any other +country. +According to Google Trends, most [[https://www.google.com/trends/explore#q=golang][searches for the term “golang”]] come from The People’s Republic than anywhere else. +[[http://herman.asia/why-is-go-popular-in-china][Others]] have speculated on +the same observation, yet so far we have had +[[https://news.ycombinator.com/item?id=8872400][sparse concrete information]] +about the phenomenon. + +The first Go conference in China, [[http://gopherchina.org/][GopherChina]], +seemed like an excellent opportunity to explore the situation by putting some +Western Gopher feet on Chinese ground. An actual invitation made it real and I +decided to accept and give a presentation about gofmt’s impact on software +development. + +.image gopherchina/image04.jpg + +_Hello,_Shanghai!_ + +The conference took place over an April weekend in Shanghai, in the +[[https://www.google.com/maps/place/Puruan+Bldg,+Pudong,+Shanghai,+China][Puruan Building]] +of the Shanghai Pudong Software Park, easily reachable by subway within an hour +or less from Shanghai’s more central parts. +Modelled after [[http://www.gophercon.com][GopherCon]], the conference was +single-track, with all talks presented in a conference room that fit about 400 +attendees. +It was organized by volunteers, lead by [[https://github.com/astaxie][Asta Xie]], +and with robust sponsorship from major industry names. According to the +organizers, many more people were hoping to attend than could be accommodated +due to space constraints. + +.image gopherchina/image01.jpg + +_The_welcoming_committee_with_Asta_Xie_(2nd_from_left),_the_primary_organizer._ + +Each attendee received a bag filled with the obligatory GopherChina t-shirt, +various sponsor-related informational brochures, stickers, and the occasional +stuffed “something” (no fluffy Gophers, though). At least one 3rd party vendor +was advertising technical books, including several original (not translated +from English) Go books. + +.image gopherchina/image05.jpg + +_Go_books!_ + +On first impression, the average attendee seemed pretty young, which made for +an enthusiastic crowd, and the event appeared well run. + +With the exception of my talk, all presentations were given in Mandarin and +thus were incomprehensible to me. Asta Xie, the primary organizer, assisted +with a few simultaneous translations whispered into my ear, and the occasional +English slide provided additional clues: “69GB” stands out even without any +Mandarin knowledge (more on that below). Consequently, I ended up listening to +a handful of presentations only, and instead spent much of my time talking with +attendees outside the main conference room. Yet judging from the slides, the +quality of most presentations seemed high, comparable with our experience at +GopherCon in Denver last year. Each talk got a one hour time slot which allowed +for plenty of technical detail, and many (dozens) of questions from an +enthusiastic audience. + +As expected, many of the presentations were about web services, backends for +mobile applications, and so on. Some of the systems appear to be huge by any +measure. +For instance, a talk by [[http://gopherchina.org/user/zhouyang][Yang Zhou]] +described a large-scale internal messaging system, used by +[[http://www.360.cn/][Qihoo 360]], a major Chinese software firm, all written +in Go. The presentation discussed how his team managed to reduce an original +heap size of 69GB (!) and the resulting long GC pauses of 3-6s to more +manageable numbers, and how they run millions of goroutines per machine, on a +fleet of thousands of machines. A future guest blog post is planned describing +this system in more detail. + +.image gopherchina/image03.jpg + +_Packed_conference_room_on_Saturday._ + +In another presentation, [[http://gopherchina.org/user/guofeng][Feng Guo]] from +[[https://www.daocloud.io/][DaoCloud]] talked about how they use Go in their +company for what they call the “continuous delivery” of applications. DaoCloud +takes care of automatically moving software hosted on GitHub (and Chinese +equivalents) to the cloud. A software developer simply pushes a new version on +GitHub and DaoCloud takes care of the rest: running tests, +[[https://www.docker.com/][Dockerizing]] it, and shipping it using your +preferred cloud service provider. + +Several speakers were from well-recognized major software firms (I showed the +conference program to non-technical people and they easily recognized several +of the firm’s names). Much more so than in the US, it seems Go is not just +hugely popular with newcomers and startups, but has very much found its way +into larger organizations and is employed at a scale that we are only starting +to see elsewhere. + +Not being an expert in web services myself, in my presentation I veered off the +general conference theme a bit by talking about +[[https://golang.org/cmd/gofmt/][gofmt]] and how its widespread use has started +to shape expectations not just for Go but other languages as well. +I presented in English but had my slides translated to Mandarin beforehand. Due +to the significant language barrier I wasn’t expecting too many questions on my +talk itself. +Instead I decided the keep it short and leave plenty of time for general +questions on Go, which the audience appreciated. + +.image gopherchina/image06.jpg + +_No_social_event_in_China_is_complete_without_fantastic_food._ + +A couple of days after the conference I visited the 4-year-old startup company +[[http://www.qiniu.com/][Qiniu]] (“Seven Bulls”), at the invitation of its +[[http://gopherchina.org/user/xushiwei][CEO]] Wei Hsu, facilitated and +translated with the help of Asta Xie. Qiniu is a cloud-based storage provider +for mobile applications; Wei Hsu presented at the conference and also happens +to be the author of one of the first Chinese books on Go (the leftmost one in +the picture above). + +.image gopherchina/image02.jpg +.image gopherchina/image00.jpg + +_Qiniu_lobby,_engineering._ + +Qiniu is an extremely successful all-Go shop, with about 160 employees, serving +over 150,000 companies and developers, storing over 50 Billion files, and +growing by over 500 Million files per day. When asked about the reasons for +Go’s success in China, Wei Hsu is quick to answer: PHP is extremely popular in +China, but relatively slow and not well-suited for large systems. Like in the +US, universities teach C++ and Java as primary languages, but for many +applications C++ is too complex a tool and Java too bulky. In his opinion, Go +now plays the role that traditionally belonged to PHP, but Go runs much faster, +is type safe, and scales more easily. He loves the fact that Go is simple and +applications are easy to deploy. He thought the language to be “perfect” for +them and his primary request was for a recommended or even standardized package +to easily access database systems. He did mention that they had GC problems in +the past but were able to work around them. Hopefully our upcoming 1.5 release +will address this. For Qiniu, Go appeared just at the right time and the right +(open source) place. + +According to Asta Xie, Qiniu is just one of many Go shops in the PRC. Large +companies such as Alibaba, Baidu, Tencent, and Weibo, are now all using Go in +one form or another. He pointed out that while Shanghai and neighboring cities +like [[https://www.google.com/maps/place/Suzhou,+Jiangsu,+China][Suzhou]] are +high-tech centres, even more software developers are found in the Beijing area. +For 2016, Asta hopes to organize a larger (1000, perhaps 1500 people) +successor conference in Beijing. + +It appears that we have found the Go users in China: They are everywhere! + +_Some_of_the_GopherChina_materials,_including_videos,_are_now_available_alongside_Go_coursework_on_a_ [[http://www.imooc.com/view/407][_3rd_party_site_]]. + diff --git a/content/gopherchina/image00.jpg b/content/gopherchina/image00.jpg Binary files differnew file mode 100644 index 0000000..991badb --- /dev/null +++ b/content/gopherchina/image00.jpg diff --git a/content/gopherchina/image01.jpg b/content/gopherchina/image01.jpg Binary files differnew file mode 100644 index 0000000..b42545e --- /dev/null +++ b/content/gopherchina/image01.jpg diff --git a/content/gopherchina/image02.jpg b/content/gopherchina/image02.jpg Binary files differnew file mode 100644 index 0000000..4ee3446 --- /dev/null +++ b/content/gopherchina/image02.jpg diff --git a/content/gopherchina/image03.jpg b/content/gopherchina/image03.jpg Binary files differnew file mode 100644 index 0000000..4b8af5d --- /dev/null +++ b/content/gopherchina/image03.jpg diff --git a/content/gopherchina/image04.jpg b/content/gopherchina/image04.jpg Binary files differnew file mode 100644 index 0000000..42ca71d --- /dev/null +++ b/content/gopherchina/image04.jpg diff --git a/content/gopherchina/image05.jpg b/content/gopherchina/image05.jpg Binary files differnew file mode 100644 index 0000000..b3529a7 --- /dev/null +++ b/content/gopherchina/image05.jpg diff --git a/content/gopherchina/image06.jpg b/content/gopherchina/image06.jpg Binary files differnew file mode 100644 index 0000000..f4ec470 --- /dev/null +++ b/content/gopherchina/image06.jpg |