This talk explores how future programmers may reflect on Go's achievements.
Australia's Dave Cheney has been a leader in the Go community for many years. He is a regular, and early, contributor to the language, focusing on Go on ARM processors. He recently introduced gb, a project-based build tool for the Go language.
Dave writes frequently about Go on his blog, The Acme of Foolishness , and often contributes to the Go blog . He also speaks frequently all over the world — full details can be found on his web site's about page.
Together with Andrew Gerrand, Dave runs the Sydney Go Users group.
Our journey from Ruby to Go as intermediate developers. We focus on the major challenges we faced in the application we have been building over the past few months, which is a tool to roll features out incrementally to users and collect data about their progress. Those two (language-switch-driven) hurdles were the difficulty in adapting our architecture to a non-MVC design, and our use of Go tools that weren't appropriate (concurrency patterning), which create bloat and confusion while developing the service.
Brittany Wald is a software engineer at Paperless Post, where she has been working with Go on the site's microservice architecture for the past few months. Originally a Ruby developer, she learned Go for last year's GothamGo and is excited to share some of her experiences (and code) from this transition. Brittany's greatest contributions to the internet thus far are her Harry Potter fan theory (which you can find at dracomalfoyisawerewolf.com), and a successful Kickstarter campaign to launch a potato into near-space.
Jen Eisenberg is a software engineer at Paperless Post where she works on the Internal Tools team to improve and build systems for other devs. Over the past few months she has been learning and using Go to architect an internal microservice, though she also stays near her Ruby roots. Before Go and Paperless Post, Jen studied linguistics at UMichigan and today she takes hip hop dance classes regularly. No demonstrations.
Most applications today require a persistent datastore, and most often it is a database. Even if your Go application is able to able handle an increasing amount of transactions, are you confident your database will be able to perform, scale out as needed and be reliable? I am going to present how to develop high performance applications using Go and Aerospike, an open-source high-performance database that can handle millions of transactions per second while scaling with your increased workloads – without having to rewrite your application, to compensate for your database.
Chris Stivers is a principal engineer at Aerospike, developing core features of the database, client libraries and tools. With Aerospike going open-sourced this past summer, Chris is passionately spreading the word about Aerospike, and helping to break barriers in adoption. Chris was previously an engineer at Earthlink and an architect at Yahoo!, developing systems and infrastructure to support millions of users. He enjoys learning and employing new programming languages and technology.
So what's a mutex? A mutex is an object that allows multiple threads to use the same resource but not simultaneously. This talk will be on debugging various race conditions we discovered while building Docker and how we use mutexes and locks.
Jessie Frazelle is a member of the Docker core team, maintaining and contributing to the open source project that is written in Go. She previously worked at Yhat, a platform for deploying analytical models into production. After migrating Yhat's infrastructure to Go, she became instantly hooked on the language. She recently moved from New York to San Francisco, but her heart remains in New York, except in the winter.
We all want to write web apps in Go, and why not? Go is fast, concurrent, easy to maintain and deploy, but where to start? What router should you use? Rendering package? Templating? Session management? Should you use a full-fledged framework, or piece it all together yourself? There’s a lot of questions, and I’m here to help answer and demystified them.
We’ll look at a few of the more popular frameworks and examine their pros and cons. We’ll then cover each section of a web app stack and we’ll look at what packages to consider, and what packages to steer clear of.
Mark Bates is the founder and chief architect of the Boston, MA based consulting company, Meta42 Labs. Mark spends his days focusing on new application development and consulting for his clients. At night he writes books, raises kids, and occasionally he forms a band and “tries to make it”. Mark is the author of three books, “Distributed Programming with Ruby” (2009), “Programming in CoffeeScript” (2012), and “Conquering the Command Line” (2014). He also runs the weekly Golang screencast site, metacasts.tv.