diff --git a/themes/gophercon/layouts/index.html b/themes/gophercon/layouts/index.html index a9a9435..765372d 100644 --- a/themes/gophercon/layouts/index.html +++ b/themes/gophercon/layouts/index.html @@ -26,12 +26,12 @@
-
-
-
-
-
-
+
+
+
+
+
+
@@ -99,7 +99,7 @@

Give a talk and your ticket, flight, and stay are free!

+ +
+
+
+
+

Speakers

+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Francesc Campoy Flores

+ Understanding nil +

Is it a constant? + A variable? + Where is it defined? + What is its type? + It has no type? + It has all the types? Those are usual questions that people learning Go ask and this talk answers all of them and more.

+

The talk covers the different contexts where nil is used, what it means, the gotchas to be aware of, and some patterns where nil becomes essential.

+

In parallel to the exploration of how nil can be used I will also discuss the origin and history of nil in those contexts.

+
+

Francesc Campoy Flores is a Developer Advocate for Go and the Cloud at Google. He joined the Go team in 2012 and since then he has written some considerable didactic resources and traveled the world attending conferences, organizing live courses, and meeting fellow gophers.

+

He joined Google in 2011 as a backend software engineer working mostly in C++ and Python, but it was with Go that he rediscovered how fun programming can be.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

José Carlos

+ Go Mobile as the backbone of Lantern for Android +

Lantern is a circumvention tool that people can use to access the Open Internet without restrictions. Lantern uses Go on its desktop client, server infrastructure and on its Lantern Mobile application for phones.

+

We'll focus on Lantern Mobile: this talk begins with our experiences working with Go Mobile and ends on a list of gotchas and suggestions on how can you start writing backends for mobile apps as well.

+
+

José is a Mexican gopher who loves Open Source (https://github.com/xiam). + He helps coordinating the local Go users group (https://www.meetup.com/GophersMX/), works on different projects as a contractor and helps local students learn new technologies through a scholarship (https://menteslibres.io/).

+

The most popular Open Source project he has contributed to is Lantern (https://getlantern.org/). Lantern is a circumvention tool that people can use to access Internet without restrictions.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Ivan Danyliuk

+ Visualizing Concurrency in Go +

Concurrency in Go has been explained many times in a variety of articles, but there is time to explain it visually using the power of 3D modeling and animations.

+

I've built a tool that can visually represent concurrent Go programs using WebGL in a browser.

+

We'll watch common concurrency patterns in real time 3D animations and will learn visually how does parallelism differ from concurrency.

+
+

10+ years C/C++ developer, 3 years Go developer. presenter of Golangshow podcast, organizer of Ukrainian Golang Meetups.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Alan Donovan

+ Navigating unfamiliar code with the Go Oracle +

In this talk, I will present the Go oracle, an "editor-integrated tool for code comprehension and navigation".

+

This tool provides traditional editors such as Emacs, Vim, Sublime, and Atom with code navigation features not usually found outside a heavyweight IDE.

+

I'll demonstrate how to use it to answer the kinds of questions that come up all the time during a typical day of coding.

+
+

Alan Donovan is a Staff Engineer in Google's infrastructure division, specializing in software development tools.

+

Since 2012, he has been working on the Go team, designing libraries and tools for static analysis.

+

He is the author of the oracle, godoc -analysis, eg, and gorename tools and, with Brian Kernighan, the book The Go Programming Language (Addison-Wesley, 2015).

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Renee French

+ The Go Gopher: A Character Study +

Everyone is familiar with the Go Gopher but who is he really? + What is he thinking about? + What gets him motivated in the morning? + And how does he hold that Champagne glass?

+ +

Come to this talk and find out.

+
+

Creator and designer of the Go Gopher. +instagram.com/reneefrench

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Emily Gu

+ The Power and Elegance of Reflection +

Developers are often told reflection is bad and should be avoided. + However, when reflection can help reduce the amount of code needed to solve a problem, it should be considered.

+

Reducing complexity while preserving maintainability must always be a priority. + Reflection can be a tool that helps makes this possible.

+

In this talk I am going to show you the power and elegance of the reflection package.

+
+

Emily Gu currently works for Intel Corporation as a cloud software engineer in the Software Defined Infrastructure (SDI-X) group and is a graduate from East Carolina University.

+

Emily has been a software developer for over 15 years working on various system level projects. She has experience with Cloud and Big Data systems.

+

When Emily is not writing code, she can be found traveling the world looking for and indulging in tea.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Kelsey Hightower

+ Building microservices with gRPC - A practical introduction +

gRPC is a general RPC framework focused on performance and interoperability across a wide range of programming environments.

+ +

In this session we will demonstrate, through a series of live demos and code walkthroughs, how to design, build, and deploy a collection of microservices using gRPC from the ground up.

+

Key gRPC concepts will be covered including authenticating gRPC services and clients, service discovery, monitoring, and troubleshooting.

+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

John Leon

+ Packet Capture, Analysis, and Injection with Go +

Learn about packet capturing, analysis, manipulation and injection using the gopacket package. Useful for port scanning, monitoring, routing, and ensuring your network is secure.

+

The gopacket package provides several interfaces that let you work with existing network layers as well as the power to create your own layers.

+
+

John "NanoDano" Leon is currently an Application Security Architect with a background in software engineering.

+

His passion is creating practical tools related to the information security field as well as writing tutorials to help others on his website www.devdungeon.com.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Jack Lindamood

+ Practical advice for Go library authors +

This talk will go in depth into the decisions popular existing libraries make about how to structure their code for users and the tradeoffs of different solutions.

+

Included is advice on the best way to write public libraries that are easy to use, test, configure, and extend.

+
+

Jack is a software engineer with over 7 years experience building and running large scale distributed services.

+

Starting at Facebook and currently at SignalFx, Jack now leads SignalFx's Go codebase and works on metrics instrumentation and ingest.

+

He has presented his work on Go debugging at GoSF and other meetups in the past.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Marcel van Lohuizen

+ Handling Text from Around the World in Go +

Human languages are more often than not messy, inconsistent, and full of surprises. + Although this can make languages interesting, it is not something you want to deal with in your code.

+

The golang.org text repository provides a collection of packages for dealing with the intricacies of human languages at a high level.

+

This tutorial teaches the basic principles of dealing internationalization and localization in Go code and presents many of the high-level concepts you need to know.

+
+

Marcel van Lohuizen is a longtime Googler who works on the Go team, where he focuses on expanding Go’s text processing capabilities.

+

In the past he worked on search and Borg (Google’s large-scale cluster manager), among other things.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Michael Matloob

+ CONTRIBUTING: The Talk +

Interested in contributing to the Go Programming Language open source project, but don't know where to start? + Come learn how you can get involved and find something to work on.

+

If you're already contributing, come learn how to more effectively review CLs and help make the contribution process smoother for others.

+
+

Michael Matloob works on the Go team at Google in New York.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Bill O'Farrell

+ Porting Go to the IBM z Architecture +

At the IBM Linux on z Systems Open Source Ecosystem team, we have ported the Go language tooling (compiler, assembler, linker) to the Linux on z platform.

+

This tutorial will cover both the process we followed in doing so, some of the challenges we faced, and some of the performance hiccups and opportunities we encountered along the way.

+

The challenges included bootstrapping a compiler and runtime themselves written in the target language, designing a strategy for relocation, and finding ways to exploit z architecture strengths.

+
+

Bill O'Farrell is a member of the IBM Linux on z Systems Open Source Ecosystem, and team lead for the port of the Go compiler and tools to the z platform.

+

Bill has had a number of technical positions in IBM covering a range of technology. +He has a Ph.D. in Computer Science from Syracuse University.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Wisdom Omuya

+ Go vendoring deconstructed +

Vendoring has been a major struggle for Go developers. Many of us have had to vendor packages to build dependences into our projects - usually by performing ugly rewrites of import paths.

+

Go 1.5 introduced the GO15VENDOREXPERIMENT environment variable which simplifies this process and avoids those rewrites.

+

In this talk, I'll demonstrate why and how we switched to the vendor experiment at MongoDB, and I'll give practical advice on how you can use this feature in your projects.

+
+

Wisdom Omuya is a software engineer at MongoDB and has been using Go since 2013.

+

He has worked on a number of large scale projects using Go, an open-source continuous integration tool, Evergreen, and the MongoDB server tools.

+

Wisdom holds a Masters degree in Computer Science from Columbia University.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Katrina Owen

+ Mind the Gap +

How do you learn Go? First do the tour. +Then read the language spec. +Then write a lot of code.

+

This works for a lot of people, but for some the gap between the tour and the spec is a vast chasm.

+ +

In his GopherCon 2015 keynote, Russ Cox said: Go needs everyone's help, and everyone isn't here.

+

This talk draws on two years of iterative exploration. It examines one way to bridge this gap, aiming to make Go accessible to a broader audience.

+
+

Katrina accidentally became a developer while pursuing a degree in molecular biology.

+

When programming, her focus is on automation, workflow optimization, and refactoring.

+

She works primarily in Go and Ruby, contributes to several open source projects, and is the creator of exercism.io.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Rob Pike

+ The Design of the Go Assembler +

The Go assembler was rewritten for the 1.5 release, replacing a suite of C programs, one per architecture, with a single binary, written in Go, that supports all architectures.

+

The usual variables, GOOS and GOARCH, are sufficient to configure it for any environment.

+ +

This talk will explain how this extreme portability is achieved for such a non-portable problem.

+

The answer lies in the structure and origin of the Go compilation tool chain, a mostly machine-independent input language, and a lot of automation.

+

Even for non-assembling Gophers, there are lessons in the design.

+
+

Rob Pike works at Google and is a co-creator of Go.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Keith Randall

+ Inside the Map Implementation +

Ever wondered how maps work in Go? + This talk will describe the current Go map implementation in detail and discuss some of the design tradeoffs.

+

I'll compare Go maps with maps in other languages, comparing the guarantees they provide and how that affects the implementations.

+
+

Keith Randall has been on the Go team at Google since 2013.

+

He's worked on Go maps, stack copying, compilers, and various performance issues.

+

Previously, Keith was the tech lead for Google Ads. Keith has a PhD in Computer Science from MIT.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Bernerd Schaefer

+ Go without the operating system +

Go lets you to compile your program into stand-alone binaries which can be safely shared across systems without worrying about a missing dependency.

+

But there's one thing even a stand-alone executable depends on: the operating system. What if you could remove that dependency, too?

+ +

AtmanOS is a project built to explore that question.

+

It allows you to compile ordinary Go programs and run them on cloud providers like Amazon's EC2, without a traditional operating system.

+ +

Let's explore how it works, how to use it, and some considerations for putting it into production.

+
+

Bernerd leads the team at thoughtbot in Portland, where he helps clients build great digital products.

+

He prefers to spend his nights and weekends hiking in Forest Park and cooking up tasty meals at home, as well as hacking on personal projects like AtmanOS.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Raphael Simon

+ goa: a new approach to microservice development in Go +

This tutorial introduces a novel approach to building microservices in Go that uses code to describe the design of the service API.

+

The design is then fed to generation tools that produce not only actual service modules but also other outputs such as client Go packages, command line tools, Javascript and documentation via Swagger specifications and JSON schemas.

+ +

In this tutorial we will use goa to build a microservice from scratch complete with UI, client tool and documentation.

+

We’ll also take a look at how to leverage the goa request context at runtime to implement the API endpoint.

+
+

Raphael Simon is a Systems Architect at RightScale where he’s been designing many of the systems that make up the platform for the past 8 years.

+

Prior to that role Simon worked as a lead engineer at Eiffel Software on the Eiffel language compiler and libraries and as a principal engineer at Citrix on the GoTo line of products.

+

Simon received his MS in Computer Science and Applied Mathematics at ENSEEIHT, France.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Cindy Sridharan

+ Hwyman, a building an origin cache for images +

At Imgix, our multitiered caching layer forms one of the most important components of our real­time image processing and delivery service.

+

Hwyman is the origin cache that we built using Go.

+

While the talk will shed some light on our architecture and what necessitated this system in the first place, the main thrust of the talk will be about our experience introducing the first Go based service at a very small company.

+
+
+
+
+
+
+
+ Speaker +
+
+
+
+ +
+

George Tankersley

+ Go crypto for developers +

You've heard don't implement your own crypto! and taken it to heart. Great!

+

Go has very robust crypto packages. But even the standard library offers plenty of ways to make mistakes.

+

We'll talk you through the options and explain the right answers.

+
+

Reverse engineer turned pentester turned startup founder turned crypto dev.

+

Security at CoreOS by day; privacy tech by nights, weekends, and the occasional federal holiday.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Takuya Ueda

+ Go for Mobile Games +

Go Mobile (golang.org/x/mobile) is a project which shows new possibilities for mobile apps development.

+

Especially, for mobile games which requires high performance processing, Go can be expected to be an alternative to C and C++.

+

This session explains how to develop game apps using some packages such as app, event and sprite provided by Go Mobile project.

+

Furthermore the session introduces a way to call Android API from Go codes, and solutions for some problems which occurs when we distribute apps on Google Play.

+

I would like to show current capabilities and future potentials of Go Mobile.

+
+

Game Developer in Japan. I love Go and Gopher.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Filippo Valsorda

+ cgo: safely taming the beast +

cgo is a powerful tool, but using it right becomes subtle when memory starts to be shared between C and Go.

+

Thankfully since Go 1.6 the rules to follow are clear and the cgo behavior well defined.

+ +

In this talk we will look at cgo's capabilities and functioning, understand the issues related to memory management and garbage collection, and learn to develop safely around them to build bindings, but also static binaries and even C libraries.

+
+

Filippo Valsorda does cryptography and systems engineering at CloudFlare.

+

He's the main developer of the pure-Go CloudFlare DNS server, and wrote its DNSSEC implementation.

+

He often writes about Go on the company blog, talks about security and programming, and builds small Go demos like the Heartbleed test and the whoami SSH server.

+

He once wrote about building Python modules in Go, and got the memory allocations wrong.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Carolyn Van Slyck

+ Grow your users from an unlikely source: Windows developers +

You may not realize it but there are a lot of Windows developers moving into your neighborhood.

+

They are using and contributing to open source projects, even those that aren't just for Windows.

+

But here's the rub: Often tools are written Unix first, shoehorning Windows support in later. This approach can shut out potential users.

+ +

Lucky for us, Go has strong support for cross-platform development. So let's start writing cross-platform first and welcome our Windows neighbors.

+

Learn some of the Windows quirks that you should take into account, and the Go goodies to help you conquer them.

+
+

Carolyn is a software developer from Chicago, though one day she hopes to escape to the Pacific Northwest in search of faster internet, free-range kittens and respite from snow blowers.

+

She loves all things automation, developer tools and anything that will make her fellow developers lives easier; so she's found a good home at Rackspace on the Developer Experience team.

+

Like a grafted bonsai, her roots come from many places: happily developing C# applications on a Mac and deploying to Linux.

+
+
+
+
+ +
+
+
+
+ Speaker +
+
+
+
+ +
+

Daniel Whitenack

+ Go for data science +

Trending languages for data science/engineering work are python and R, but can Go provide something special and relevant in this developing space?

+

The answer is definitely yes.

+

In this session, I will discuss several major go-based efforts in the field of data science and use cases for Go over python/R in a data processing context.

+

I will also discuss go-based data science workflows and tools, including Go notebooks, to help your get your feet wet.

+
+

Daniel is a Ph.D. trained data scientist and engineer who loves to utilize Go and who is super interested to helping Go become a go to language for data science and data engineering.

+

As a data scientist with Telnyx, a next gen telephony company, he develops Go services that automate pricing, customer/vendor management, track company metrics, and populate visualizations.

+

In addition to this, he consults on other data science/engineering related projects and develops things like gophernotes.

+
+
+
+
+
+
+ + +
+
+
+
+

Proudly sponsored by

+
+
+ +
+
+
+ +
+ +
+ +
+ +
+ +
+
+
+ +
+
+
+ +
+ +
+ +
+
+
+ +
+
+
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+
+
+ +
+
+
+ +
+ +
+ +
+
+
+ +
+
+ Interested in becoming a sponsor? Get in touch +
+
+
+