-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathconfig.toml
445 lines (385 loc) · 24.8 KB
/
config.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
baseurl = "https://2017.gophercon.sg/"
languageCode = "en-us"
title = "GopherCon Singapore"
theme = "hugo-creative-theme"
[params]
# You can use Markdown syntax for urls [text](//url.to/source) for
# most longer texts.
# All icons using Fontawesome's icon font. Look at http://fontawesome.io/icons/
# for more icons. The icons are represented by their corresponding
# CSS class.
# All projects of the portfolio are defined in their own files.
# You can find example projects at 'exampleSite/data/projects'. Copy the 'projects'
# folder into the 'data' directory at the root of this Hugo site.
# For more information take a look at the README.
# To provide some metadata for search engines feel free to add some
# information about you and your website.
name = "GopherCon Singapore"
description = "GopherCon Singapore is a Go programming language (Golang) conference in Southeast Asia."
# The path must be relative to the static folder
favicon = "favicon.ico"
# Navigation
[params.navigation]
brand = "GopherCon Singapore"
[params.navigation.links]
speakers = "Speakers"
talks = "Talks"
venue = "Venue"
workshop = "Workshop"
team = "Team"
conduct = "Conduct"
# Hero section
[params.hero]
# To change the background of the hero section, replace the 'header.jpg' at './static/img' with your own.
buttonText = "SOLD OUT"
# About section
[params.about]
headline = "The inaugural Go conference in Singapore!"
# Speakers section
[params.speakers]
[params.speakers.speaker]
profile = "Robert-Griesemer.jpg"
name = "Robert Griesemer"
fragmentid = "robertgriesemer"
brand = "https://github.com/griesemer"
keynote = "‐ keynote speaker ‐"
caption = "Google"
bio = "Robert is one of the creators of the Go programming language. Before Go, he was involved in the design and implementation of Google's V8 JavaScript engine, the domain-specific language Sawzall, the Java HotSpot virtual machine, and Strongtalk, a high-performance Smalltalk system. Once upon a time, he built a vectorizing compiler for the iconic Cray X-MP. Robert works at Google in Mountain View, California, and loves energy-efficient things that \"just work\"."
title = "Exporting Go"
[params.speakers.speaker1]
profile = "dave_cheney.jpg"
name = "Dave Cheney"
fragmentid = "dave-cheney"
brand = "https://twitter.com/davecheney"
caption = "Atlassian"
bio = "David is a programmer, public speaker, and author from Sydney, Australia. David has been a contributor to the Go project since February 2011 and is an organiser of GopherCon Denver. David currently works at Atlassian building Kubernetes infrastructure for their internal platform as a service."
title = "Concurrency made easy"
[params.speakers.speaker2]
profile = "bill.jpg"
name = "William Kennedy"
fragmentid = "william-kennedy"
brand = "https://twitter.com/goinggodotnet"
caption = "GoingGo.net, GoBridge"
bio = "William Kennedy is a managing partner at Ardan Studio in Miami, Florida, a mobile, web, and systems development company. He is also a co-author of the book Go in Action, the author of the blog [GoingGo.Net](http://goinggo.net), and a founding member of [GoBridge](https://golangbridge.org/) which is working to increase Go adoption through diversity."
title = "Go Concurrency Live"
[params.speakers.speaker3]
profile = "ajey-gore.jpg"
name = "Ajey Gore"
fragmentid = "ajey-gore"
keynote = "‐ keynote speaker ‐"
brand = "https://twitter.com/AjeyGore"
caption = "Go-Jek"
bio = "Ajey is the Group CTO of [Go-Jek](https://www.go-jek.com/). With 17 years of experience in building core technology strategy across diverse domains, Ajey has helped several businesses through technology transformations at [ThoughtWorks](https://www.thoughtworks.com/) and [CodeIgnition](https://twitter.com/codeignition). Ajey is the founder of CodeIgnition and an active influencer in the technology community."
title = "Go get go-jek"
[params.speakers.speaker_talk_a]
profile = "huy-do.png"
name = "Huy Do"
fragmentid = "huy-do"
brand = "https://twitter.com/dxhuy"
caption = "LINE Corporation"
bio = "Huy is a programmer working in Tokyo. He also co-founded kipalog.com, a social blogging platform targeting Vietnamese software engineers, and a core member of Ruby Vietnam community. Huy works at LINE corp building monitoring platform and any tools that can make engineers' lives better."
title = "Engineering Efficiency powered by Go"
[params.speakers.speaker_talk_b]
profile = "chewxy.jpg"
name = "Chewxy"
fragmentid = "chewxy"
brand = "https://twitter.com/chewxy"
bio = "Xuanyi co-founded a startup that uses natural language to perform data science analysis."
title = "Writing Efficient Generic Multidimensional Slices"
[params.speakers.speaker_talk_c]
profile = "matthewcampbell.png"
name = "Matthew Campbell"
fragmentid = "matthew-campbell"
brand = "https://twitter.com/kanwisher"
caption = "DigitalOcean"
bio = "Matthew Campbell is a Microservices scalability expert at DigitalOcean where he builds the future of cloud services. He is writting a book called “Microservices in Go”. He recently presented at GoLang UK, PromConf Berling, and Surge India, and blogs at [kanwisher.com](http://kanwisher.com). Matthew was a founder of [Errplane](http://errplane.com/) and [Langfight](http://www.langfight.com). In the past he worked at Thomson Reuters, Bloomberg, Gucci, and Cartoon network."
title = "Distributed Scheduler Hell"
[params.speakers.speaker_talk_d]
profile = "daveappleton.png"
name = "Dave Appleton"
fragmentid = "dave-appleton"
brand = "https://twitter.com/AppletonDave"
bio = "Dave Appleton has been messing around with things since sometime before the dawn of time. Mentored by people with more technical expertise than interpersonal skills and business sense, Dave started programming in 1968 in FORTRAN, building audio systems about the same time and messing with digital logic in 1976. In the intervening time he has built world beating test systems, co-designed award winning products, run his own instrumentation company for over fifteen years, learned and actually used more than two dozen programming languages at a professional level, and taught courses from hobby to degree level on subjects as diverse as IOT, e-commerce and Image Processing. For the last three years he has been working on crypto currencies and financial technology."
title = "Getting started on Ethereum for Go programmers"
[params.speakers.speaker_talk_e]
profile = "ryanlaw.jpg"
name = "Ryan Law"
fragmentid = "ryan-law"
brand = ""
caption = "Grab"
bio = "As one of the pioneering engineers in Grab, Ryan has built some of Grab's early production systems which later faced problems at scale. He now uses his experience to work as a Site Reliability Engineer to help identify and pre-empt similar issues."
title = "Distributed Tracing in Grab"
[params.speakers.speaker_talk_f]
profile = "ent.jpg"
name = "V N Nikhil Anurag"
fragmentid = "ent"
brand = "https://github.com/last-ent/"
bio = "Nikhil is a developer who has worked in multiple domains - ranging from Physics Simulation Models to Ad Tech. In his spare time he tinkers with different programming languages & concepts always trying to better under who things work."
title = "Runtime & Concurrency in Go."
[params.speakers.speaker_talk_g]
profile = "manishraijain.jpg"
name = "Manish Rai Jain"
fragmentid = "manish-rai-jain"
brand = "https://twitter.com/manishrjain"
caption = "Dgraph"
bio = "Manish is the founder of Dgraph, a distributed graph database built for production. He got thrust into distributed systems right out of college, working on real-time web indexing system at Google. He then led various projects to consolidate and serve knowledge graph right behind web search. Implementing GTD and Zero Waste practices, Manish is into efficient and minimalist living. He loves cycling, swimming and ultra-light traveling."
title = "Dgraph - A distributed graph database written in Go"
[params.speakers.speaker_talk_h]
profile = "chewchoonkeat.jpg"
name = "Choon Keat"
fragmentid = "choon-keat"
brand = "https://twitter.com/choonkeat"
caption = "SP Group"
bio = "Started the Singapore Ruby Brigade, worked at Slideshare, believes strongly in and contributes to open source. Now available in Go."
title = "TDD for those who don't need it"
[params.speakers.speaker_talk_i]
profile = "kennethshaw.jpg"
name = "Kenneth Shaw"
fragmentid = "kenneth-shaw"
brand = "https://github.com/knq"
caption = "Brankas"
bio = "Kenneth “Ken” Shaw is a veteran systems developer, technologist, and entrepreneur and has worked with a number of companies/startups to build out large-scale Go applications, their associated architecture, automation, and deployments. Ken is the former CTO of Multiply.com, and previously built and sold two different tech companies. Currently, Ken is the Founder/CTO of Brankas, a company aiming to change the way banking is done in South East Asia."
title = "chromedp: A New Way to Drive the Web"
[params.speakers.speaker_talk_j]
profile = "ian-lewis.png"
name = "Ian Lewis"
fragmentid = "ian-lewis"
talkid = "google"
brand = "https://github.com/IanLewis"
caption = "Google"
bio = "Ian is a Developer Advocate for Google Cloud Platform based Tokyo, Japan. Ian is a Python and Go developer who is passionate about developer communities. He previously co-founded PyCon JP, the largest Python event in Japan. Ian loves learning about how systems work end-to end and spends his time writing and deploying distributed web apps to his favorite container orchestrator (Kubernetes)."
title = "Native Go Development on GCP with the Context Package"
[params.speakers.speaker_talk_k]
profile = "shilin.jpg"
name = "Shilin Wu"
fragmentid = "shilin-wu"
talkid = "google"
brand = ""
caption = "Google"
bio = "Shilin is a Strategic Customer Engineer for Google Cloud Platform based in Singapore. Shilin works with strategic Google Cloud customers in APAC. He was Java and Go programer and specialize in Data Analytics and Engineering."
title = "Native Go Development on GCP with the Context Package"
[params.speakers.speaker_talk_l]
profile = "aditya.png"
name = "Aditya Mukerjee"
fragmentid = "aditya-mukerjee"
brand = "https://adityamukerjee.net/"
caption = "Stripe"
bio = "Aditya is an engineer at Stripe on the Risk team, based in New York City. He studied statistics at Columbia and computer science at Cornell, and has been writing Go professionally for the past four years. When not defending users against online fraudsters, he spends his free time playing German-style board games and listening to embarrassing music."
title = "The Hidden Power of Humble Interfaces"
[params.speakers.speaker_talk_m]
profile = "lakshan.jpg"
name = "Lakshan Perera"
fragmentid = "lakshan-perera"
brand = "http://laktek.com"
caption = "Pragma Labs"
bio = "Lakshan Perera is the founder of Pragma Labs. Previously, he was at Atlassian and Nitrous. He's using Go since 2012 and used to run Singapore Gophers meetup."
title = "Building CLI apps with Go"
# --------------------------------------
[params.events]
headline = "We've got what you need!"
description = "[Lorem](//google.com) ipsum dolor sit amet, consectetur adipisicing elit. Praesentium similique eos eligendi error veritatis harum, sed aliquid totam, quam minus neque enim est architecto, ad. Maiores, aliquid, vitae!"
buttonText = "Get started!"
# Talks section
[params.conference]
header = "Conference"
date = "Friday, 26th May"
type = "Talks"
[params.conference.talks]
[params.conference.talks.talk01]
title = "$GOPHERCONSG/doors/open"
class = "timeline-mono-header"
timerange = "8.00am"
talk = "Registration & Breakfast Reception"
[params.conference.talks.talk02]
title = "Opening Remarks"
class = "timeline-sub-header"
timerange = "9.00am"
profile = "Chang-Sau-Sheong.jpg"
name = "Chang Sau Sheong"
[params.conference.talks.talk03]
title = "Opening Keynote: Exporting Go"
class = "timeline-sub-header"
timerange = "9.10am"
profile = "Robert-Griesemer.jpg"
name = "Robert Griesemer"
fragmentid = "robertgriesemer"
talk = "From inception, Go has been designed to scale from the small to the very large; Go packages together with import and export are key language features for achieving that software scalability. Sprinkled with historic tidbits, this talk explains the inner workings of import and export, and how these mechanisms enable robust separate compilation of packages. We conclude with a discussion of how our design trade-offs affect scalability."
[params.conference.talks.talk04]
title = "Go Concurrency Live"
class = "timeline-sub-header"
timerange = "9.40am"
profile = "williamkennedy.jpg"
name = "William Kennedy"
fragmentid = "william-kennedy"
talk = "Go is known for its powerful concurrency primitives but why? Why is concurrency in Go so powerful and an important aspect of future software development? In this talk we will discuss the importance of having languages that provide concurrency support and see how Go’s constructs make it easy to use and reason about for modern software"
[params.conference.talks.talk05]
title = " Engineering Efficiency powered by Go"
class = "timeline-sub-header"
timerange = "10.05am"
profile = "huy-do.png"
name = "Huy Do"
fragmentid = "do-xuan-huy"
talk = "In LINE engineering efficiency team, we solve organization scale problem by building tools which improve engineer productivity and unified processes. In this talk, we discover how small tools and automation of development process can help improve your company engineering efficiency, reduce repeatable work and stresses."
[params.conference.talks.talk06]
title = "$GOPHERCONSG/teabreak"
class = "timeline-mono-header"
timerange = "10.30am"
talk = "Coffee and snacks"
[params.conference.talks.talk07]
title = "Writing Efficient Generic Multidimensional Slices"
class = "timeline-sub-header"
timerange = "11.00am"
profile = "chewxy.jpg"
name = "Chewxy"
fragmentid = "chewxy"
talk = "Go has no generics. That makes things a lot harder. Or does it? This talk looks at various attempts in creating multidimensional arrays (think matrices and tensors) which are useful in deep learning and mathematics heavy applications. Even better - making them generic so they can take any type."
[params.conference.talks.talk08]
title = "Distributed Scheduler Hell"
class = "timeline-sub-header"
timerange = "11.25am"
profile = "matthewcampbell.png"
name = "Matthew Campbell"
fragmentid = "matthew-campbell"
talk = "Containers are the future for all Microservice based apps. Where do you deploy them? How do you manage them? This talk will walk the audience through how distributed schedulers are built, and how the popular ones work. We will drill into details of how to build a distributed scheduler."
[params.conference.talks.talk09]
title = "Native Go Development on GCP with the Context Package"
class = "timeline-sub-header"
timerange = "11.50am"
talk = "Ian and Shilin will tag team in this presentation. The talk will demonstrate(via Kubernetes) how well golang is supported in Cloud Platforms from development, API integration to deployment and operations. In addition, a deep dive into Golang context package and best practices in high concurrency programming will also be covered."
fragmentid = "google"
[params.conference.talks.talk09.speakers]
[params.conference.talks.talk09.speakers.ian]
profile = "ian-lewis.png"
name = "Ian Lewis"
fragmentid = "ian-lewis"
[params.conference.talks.talk09.speakers.shilin]
profile = "shilin.jpg"
name = "Shilin Wu"
fragmentid = "shilin-wu"
[params.conference.talks.talk10]
title = "$GOPHERCONSG/lunch/time"
class = "timeline-mono-header"
timerange = "12.30pm"
talk = "Food for the brain"
[params.conference.talks.talk11]
title = "Distributed Tracing in Grab"
class = "timeline-sub-header"
timerange = "1.50pm"
profile = "ryanlaw.jpg"
name = "Ryan Law"
fragmentid = "ryan-law"
talk = "When we migrated from our Rails monolith to multiple smaller Go apps, one of the things that we missed the most was the ability to trace a request, a feature that has in the past helped us pinpoint problems quickly. In this talk, I will be sharing how we are bringing this feature back into our Go apps."
[params.conference.talks.talk12]
title = "Runtime & Concurrency in Go."
class = "timeline-sub-header"
timerange = "2.15pm"
profile = "ent.jpg"
name = "V N Nikhil Anurag"
fragmentid = "ent"
talk = "Goroutines are amazing - They work across multiple cores and spawn multitude of threads. While we all love to use the Goroutines, I feel not much time has been spent in explaining upon what concepts they are built - Green Threads & Coroutines. This talk is an attempt to bridge that gap by discussing the above mentioned topics in great detail. The talk will cover Lifecycle of a Go binary GIL (or lack thereof), Green Threads, event loops and Coroutines as well as goroutine gotchas"
[params.conference.talks.talk13]
title = "TDD for those who don't need it"
class = "timeline-sub-header"
timerange = "2.40pm"
profile = "chewchoonkeat.jpg"
name = "Chew Choon Keat"
fragmentid = "choon-keat"
talk = "For the longest time, I didn’t write tests. Writing tests is a chore, a waste of time, and doesn’t GTD. The snobbery of the test community only turned me off even more; discouraging good developers from trying TDD. Now, I write tests first. This talk explains what clicked for me (and maybe it will for you too)"
[params.conference.talks.talk14]
title = "The Hidden Power of Humble Interfaces (lightning talk)"
class = "timeline-sub-header"
timerange = "3.05pm"
profile = "aditya.png"
name = "Aditya Mukerjee"
fragmentid = "aditya-mukerjee"
talk = "Learn how to design your own interfaces in Go that are simple yet powerful – just like io.Reader and error. Discover the techniques for correctly identifying the places where interfaces will improve our code, and the specific steps to ensuring that our interfaces are as powerful as they can be."
[params.conference.talks.talk15]
title = "$GOPHERCONSG/teabreak"
class = "timeline-mono-header"
timerange = "3.20pm"
talk = "Coffee and snacks"
[params.conference.talks.talk16]
title = "Building CLI apps with Go (lightning talk)"
class = "timeline-sub-header"
timerange = "3.50pm"
profile = "lakshan.jpg"
name = "Lakshan Perera"
fragmentid = "lakshan-perera"
talk = "Writing and managing cross-platform CLI applications are hard. Thanks to varying configurations and dependencies every single installation and update can be flaky. Diagnosing causes, reproducing them and applying fixing are usually a time sink. In this talk, you will learn how Go can help to alleviate many of those pains with its statically compiled binaries."
[params.conference.talks.talk17]
title = "Dgraph - A distributed graph database written in Go"
class = "timeline-sub-header"
timerange = "4.05pm"
profile = "manishraijain.jpg"
name = "Manish Rai Jain"
fragmentid = "manish-rai-jain"
talk = "Dgraph is a native and distributed graph database written entirely in Go. Efficient distributed joins is a hard problem and Dgraph tackles it head on. Since v0.1 release in Dec’15, Dgraph has seen a lot of activity, reaching close to 2000 Github stars and featuring on the front page of Hacker News multiple times."
[params.conference.talks.talk18]
title = "chromedp: A New Way to Drive the Web"
class = "timeline-sub-header"
timerange = "4.30pm"
profile = "kennethshaw.jpg"
name = "Kenneth Shaw"
fragmentid = "kenneth-shaw"
talk = "Introduction to chromedp: a faster, simpler way to drive browsers in Go using the Chrome Debugging Protocol (for Chrome, Edge, Safari, etc) without external dependencies. Includes overview of using chromedp to rapidly author complex task hierarchies for scraping and unit testing/profiling web apps."
[params.conference.talks.talk19]
title = "Getting started on Ethereum for Go programmers"
class = "timeline-sub-header"
timerange = "4.55pm"
profile = "daveappleton.png"
name = "Dave Appleton"
fragmentid = "dave-appleton"
talk = "Learn how a Go programmer can get started with the hottest blockchain technology on the block with an easy tutorial that will demonstrate creating a simple smart contract and accessing it from a Go server as well as an Ethereum Wallet."
[params.conference.talks.talk20]
title = "Concurrency made easy"
class = "timeline-sub-header"
timerange = "5.20pm"
profile = "dave_cheney.jpg"
name = "Dave Cheney"
fragmentid = "dave-cheney"
talk = "Go's headline feature is its simple, lightweight concurrency, but most Go programmers that stick with the language for a while tend to look back on their early efforts and say things like \"wow, I really went overboard with channels\" or \"I went crazy with goroutines, it was impossible to understand what the program did\". Clearly there is a disconnect between the concurrency primitives that the language offers, and the expectations of many why come to Go for exactly those features. This talk will explore some strategies for using with concurrency in Go without the pitfalls."
[params.conference.talks.talk21]
title = "Closing Keynote: Go get go-jek"
class = "timeline-sub-header"
timerange = "5.45pm"
profile = "ajey-gore.jpg"
name = "Ajey Gore"
fragmentid = "ajey-gore"
[params.conference.talks.talk22]
title = "Closing Remarks"
class = "timeline-sub-header"
timerange = "6.15pm"
profile = "Chang-Sau-Sheong.jpg"
name = "Chang Sau Sheong"
[params.conference.talks.talk23]
title = "GOODBYE"
class = "timeline-mono-header"
timerange = "6.30pm"
[params.conference.talks.talk24]
title = "$GOPHERCONSG/after/party/🎉"
class = "timeline-mono-header"
timerange = "7.00pm to 11.00pm"
# Workshop section
[params.workshop]
timerange = "9.00am to 5.30pm"
title = "Ultimate Go Workshop"
date = "Thursday, 25th May"
venue = "Amara Hotel, Singapore. Level 3 Ballroom."
address = "165 Tanjong Pagar Road, Singapore 088539"
venueinfo = "Lunch is provided"
type = "Workshop"
instructor = "William Kennedy"
profile = "bill.jpg"
twitterbrand = "https://twitter.com/goinggodotnet"
bio = "William Kennedy is a managing partner at Ardan Studio in Miami, Florida, a mobile, web, and systems development company. He is also a co-author of the book Go in Action, the author of the blog [GoingGo.Net](http://goinggo.net), and a founding member of [GoBridge](https://golangbridge.org/) which is working to increase Go adoption through diversity."
mapiframeurl = "https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2693.1584223899836!2d103.8425121069146!3d1.2751553583432227!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x31da196b5e5476ad%3A0x704037babfd69375!2sAmara+Singapore!5e0!3m2!1sen!2ssg!4v1494946423537"
# Venue section
[params.venue]
headline = "The Venue"
# Partners section
[params.partners]
headline = "Partners"
description = "Interested in becoming a partner? [Get in touch](mailto:hello@gophercon.sg)"
# Footer section
[params.credits]
description = "hello@gophercon.sg"