Gautam is the co-founder of Josh Software, an avid Rubyist and a budding Gopher. He loves to talk - need we say anymore?
He speaks at various conferences across the world and is core member of the organizing teams for RubyConf India, Deccan Ruby and Gophercon India and a host of other meetups.
In his spare time, when he’s not with his wife and daughter, he plays football and basketball.
He always ready to give you company for a beer and loves to talk about life, universe and everything.
Brad Fitzpatrick loves to travel, hack on fun projects, make things, learning languages [poorly], scuba dive, {bi,motor}cycle, run, eat, drink. Dorky stuff he has created or worked on: LiveJournal, Danga, memcached, MogileFS, Perlbal, Gearman, OpenID, PubSubHubbub, Android performance/framework, WebFinger, Go, ...
Friday 19th February, 2016 10:15 am to 10:40 am (IST)
Are you using interfaces effectively? Interfaces are one of the most powerful language features that Go provides, yet Go programmers often under-utilize existing interfaces in their code. Even many advanced Gophers rarely write their own interfaces, or write interfaces that are less powerful than they could be.
This talk provides a behind-the-scenes look at the two most ubiquitous interfaces of them all: the humble "io.Reader" and "error". These interfaces are simple in nature, yet hold the key to writing powerful code. In this talk, we will learn how to design our own interfaces in Go that are simple yet powerful – just like "io.Reader" and "error". We will learn how to correctly identify the places where writing interfaces will improve our code, and the specific steps to ensuring that our interfaces - and therefore our programs - are as powerful as they can be.
Aditya is an engineer at Stripe and has been a full-time Go developer since 2012. He is the main developer for gitgo, a pure Go implementation of Git; Anaconda, the Twitter client library for Go; and gojson, a tool for generating Go struct definitions from JSON. He has also contributed to a number of Go projects, big and small, ranging from Goat, a bittorrent tracker, to the Go project itself.
Aditya studied statistics at Columbia and computer science at Cornell, and spends his free time playing German-style board games and listening to embarrassing music.
Friday 19th February, 2016 10:40 am to 11:05 am (IST)
80% of software development can be taken up by maintenance and this is where all your sins during early development will come back to bite you. Interfaces make change easier and can help to fight the maintenance burden.
But if you want to learn how to use interfaces effectively in Go, you’re in for a lot of disappointment. The existing resources tell you a lot about what an interface is and how to use one, but they fall short in explaining the more important Why and When to use one.
To learn this, you would need to spend hours digging through OOP design pattern books and reading hundreds of lines of Java, C++ or Objective-C code.
It’s your lucky day! I have already done this for you.
Come to this talk to gain a better understanding of when it make sense to grab in your toolbox for the interface. We will also look through some code to see how the Go masters are using them best. Let’s tell those ducks how to walk and how to talk.
Aaron lives in the suburbs of Vienna, Austria but is a native of the suburbs of Seattle. In his former life he was a shepherd, a cheesemaker and a sous chef. Now he is freelancing, building native iOS and Android apps and their respective API's. In his spare time, he organizes a range of user groups in Vienna. If you get him started talking about food, he may never stop. He spoke at GopherConIndia 2015.
Friday 19th February, 2016 11:30 am to 11:55 am (IST)
The golang.org/x/mobile repository offers tools and packages that aid Go mobile app development. In this talk, I will present the 'gobind' and 'gomobile bind' tools that turn a Go package into a library for mobile apps. I will demonstrate how to use the tools and also discuss technical challenges behind their development.
Hana Kim is a software engineer on the Go team at Google and working on the Go mobile project. Before joining the project, she worked on various internal Google projects for distributed tracing, large-scale cluster monitoring and alerting technologies, and google-wide Go process performance monitoring and debugging.
Friday 19th February, 2016 11:55 am to 12:20 pm (IST)
Go language is still in its embryonic stage, and it has yet to find prevalent real-world use or upkeep. Nonetheless, it appears like a mounting tryout, and I thought if it could have a future in game development. I haven't been able to discover much game-specific applications in Go anywhere, and figured a presentation and discussion may be appropriate on a platform like GopherConIndia. The foremost intention to come out with this explicit topic for the conference was to answer the recurring questions - do you think there is a future of game programming with Go? What is better than a hands-on confirmation to answer the questions. I haven’t been a crackerjack game developer, but I do have a tad of longing for the actual programming for developing the games. And thus the idea of "scrabble" came in to the picture.
Now you may ask why scrabble? Many board games have come and gone, scrabble is undoubtedly the game that has survived the test of time. This board game has been around for roughly 65 years. The game of scrabble is a household favorite that can be played by young or old alike. This game integrates all of the elements of edutainment.
I love Go for server code in my working day job, so why not? It has modest, overhead GLbindings; neat facilities for bit-banging, and swift compile times.
However the game is not a standalone game developed in Golang. We have used iOS for the front end. Back-end part, we are using Golang as API service.
Kedarnag is from Bangalore but currently living in Mysore, working with Qwinix Technologies as a software developer. He likes to travel, photography, when it comes to programming not language specific and likes to learn new technologies. He has been working in Golang for the past 8-10 months. He has created a couple of applications, some stand-alone and a few API services. He loves to play a lot of PC games, MMORPG. He always has had an interest in creating a game, but couldn't until now.
Friday 19th February, 2016 12:20 pm to 12:45 pm (IST)
In this talk I'll share my experience building a real-life Android product with Go and Java from the ground up, focusing on the trade-offs that long time Android developers have to make, but also the concrete benefits that developers can find during the practical implementation, beyond the theoretical features and lang specs that Go developers are already familiar with.
Verónica is a mobile and back-end developer currently working at Ardan Labs. Previously, she was a data structures researcher, the lead mobile developer of Mexico's tax collection service (SAT), and led the back-end team of an advertising digital agency, where she began using Go. She is also an Android instructor, a very active community member, and runs the Mexico City Go Meetup, which is the largest Go community in Latin America.
Perform better - Using Golang benchmark and profiling in everyday coding to make you optimize your code
Friday 19th February, 2016 12:45 pm to 1:10 pm (IST)
There are various scenarios where programmers find it difficult to make a choice based on performance of code. Scenarios like, whether to choose Data structure A or B ?? Or logic A performs better than logic B ?? Is it better to Unmarshal the post body request into a map or into a struct ?? Or Need to tune the code for performance benefits ? Dont worry, with Go Benchmark and profiling it's really easy. Explore the ease of use of Go Benchmarks and profiling in everyday Golang coding to make your code perform better.
Karthic is a passionate programmer, keyboardist and a foss activist. He's the founding engineer of the Santa Clara based startup called Adori Labs. He primarily works on Full Stack Development of the product with Golang as the webserver stack. In the meantime, he performs for various bands as a keyboardist, writes tech blogs, speaks at various engineering institutions across the state related to different Open Source and Foss technologies and gets involved with various communities as part of the Free Software Movement Karnataka (FSMK).
Friday 19th February, 2016 2:10 pm to 2:35 pm (IST)
The talk will introduce the concept of HTTP middleware, and will demonstrate how to use HTTP middleware in Go web applications. The talk will also demonstrate real-world usage of HTTP middleware in Go web applications using with third-party package "Negroni".
Shiju Varghese is a Solutions Architect focused on building highly scalable Cloud solutions with a special interest in APIs, Microservices, Containerized Apps and Distributed Systems. He currently specializes in Go, Google Cloud, Microsoft Azure and Docker. Shiju is passionate on building scalable backend systems and Microservices in Go. Before Go, he has extensively worked on .Net and Node.js stacks. He is a pragmatic minimalist, who focuses on real-world practices for architecting solutions.
Friday 19th February, 2016 2:35 pm to 3:00 pm (IST)
The talk will introduce RESTFul service, and will demonstrate how to create a web service in Go. The talk will also demonstrate securing and testing the web service.
Uttam has over 12 years of experience as a software developer. He has experience in C, C++ and Python. He is currently employed as a Tech Lead at Synerzip, Pune. He has recent experience in Go, Node.js, MongoDB and InfluxDB.
Addressing Microservices architecture patterns with Gilmour
Friday 19th February, 2016 3:00 pm to 3:25 pm (IST)
Microservices have rapidly evolved over the years as a popular way of developing applications. Let's explore the common characteristics and design patterns used while designing, developing, maintaining and governing distributed systems. We will also talk about common Unix philosophies and how we kept those in mind while we designed Gilmour: a framework to write and maintain effective microservices that exchange data over non-HTTP transports. Finally, we will go through some code samples demonstrating how Gilmour is used to address the above discussed design patterns.
Piyush Verma is a Platform and Infrastructure Engineer with Datascale.io. He is an ex-KDE developer and codes for Coffee and House music. He likes Multiprocessing, Distributed systems, APIs and automating everything. Previously, he created Siminars and when not coding he can be found running or cycling around the town.
Friday 19th February, 2016 3:55 pm to 4:20 pm (IST)
This talk is intended for people interested in the topic of testing Go programs. It will provide an introduction to testing concepts in general, as well as specific to Go. Attendees will learn about common testing techniques, such as mocking interfaces and functions, as well as tips and tricks when using the "testing" package from the standard library.
Gabriel has been programming since the early 90s, starting out with Pascal and C which are still two of his favorite languages to day. Soon thereafter, he started exploring the web development world with various languages and eventually became specialized in JavaScript. When Go was released, it revived his passion for programming and he was instantly hooked. Go was the perfect combination of his favorite programming languages from the past. During his career, Gabriel worked on a contractual basis for various companies in Romania, Denmark, United Kingdom and the USA.
Comparative Analysis of Automation Frameworks (Testing)
Friday 19th February, 2016 4:21 pm to 4:45 pm (IST)
The talk will include usage and benefits of different Automation and Performance Testing Frameworks. I will also include a comparative analysis of frameworks built using GoLang v/s other languages.
Dushyant is QA Automation expert with 8+ years of experience. Java, Ruby, GoLang, NodeJS are few of the names from his list of technical skill set. He has successfully helped the organizations like QuickOffice (aquired by Google), CloudOn (aquired by DropBox), Prezi to make their products bug-free and most-optimized in a way to cater millions of users. He is an active member of "The Document Foundation" and has presented a talk in LibreOffice Conference at Bern, Switzerland in 2014. He spends his free time learning new technologies, playing Counter-Strike and watching movies.
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, www.metacasts.tv
Saturday 20th February, 2016 9:15 am to 9:40 am (IST)
The talk will focus on Go's Context Library and its use in a fairly complex distributed system. Specifically, it will try explaining the need for context handling, how Go's context library helps implement the same, and how best it may be leveraged. A few real-world scenarios shall also be discussed.
Smita Vijayakumar
Smita Vijayakumar graduated with a Masters in Computer Sciences under the guidance of Prof. Gagan Agrawal at The Ohio State University. Their work on resource management on cloud environments is published as a book. Smita worked in the San Francisco bay area for networking giants before relocating to Bangalore. Presently at Exotel as an engineer, she developed interest in Go and is excited about exploring and applying this for efficient solutions to problems on hand at Exotel.
Saturday 20th February, 2016 9:40 am to 10:05 am (IST)
Complexity science is the study of complex systems, systems with many parts that interact to produce global behaviour that cannot easily be explained in terms of interactions between the individual parts. Complexity science includes many different areas of study, including game theory, emergence, network science and others. This is a basic talk that provide a sample of ideas in complexity science, and dives into a couple of well-known areas using agent-based modeling.
Sau Sheong Chang is the Director of Global Consumer Engineering for PayPal, managing teams that deliver consumer-focused products for PayPal. Previously, he was the Director of HP Labs Singapore, responsible for managing a team of research scientists and engineers focusing on researching and developing cloud computing and Big Data technologies for HP. Before joining HP, he was the Chief Technology Officer for Garena and Director of Engineering for Yahoo! Southeast Asia. Sau Sheong has been doing software development for 20 years, mostly in web application development. He is active in the Ruby and Go developer communities have have contributed to open source projects and spoke at meetups and conferences. Sau Sheong has also published 3 programming-related books, mostly on Ruby and is working on a 4th book titled "Go Web Programming".
Saturday 20th February, 2016 10:05 am to 10:30 am (IST)
As the world is getting increasingly global, applications need to handle an increasingly large number of human languages. Internationalization support in Go has been designed to optimize the typical Go server use case, meaning static binaries, streaming text handling, and multiple users. I will show some of the key features of Go's internationalization support and how to use it in your applications.
Marcel van Lohuizen
Marcel van Lohuizen is a longtime Googler who works on the Go team, where he now focuses on expanding Go's text processing capabilities. With a background in natural language processing, he started at Google on the search team. Here, among other things, he worked on a deployment system, which segued into his involvement in the development of Borg, Google's large-scale cluster manager. After his move to Zürich he helped grow the local office and went on a multi-year management stint. He ultimately reunited with some old colleagues on the Go team.
Saturday 20th February, 2016 11:00 am to 11:25 am (IST)
Go's simplicity belies some powerful and unique language features. Let's delve into how some of these unique features can be applied effectively in production.
A former lawyer and a self-taught programmer from the beautiful city of Singapore, Audrey became interested in the world of programming and computer science. She picked up front-end programming in April 2014 before learning Go as her first backend language in July 2014. She's since moved to programming full-time as her career at Nitrous.IO in SFO, USA.
Saturday 20th February, 2015 11:25 am to 11:50 pm (IST)
How is the cloud built? We will go into detail how we write microservices that run the cloud at scale. With tens of the thousands of customers, and 10+ datacenters. We will talk about how we write, monitor and deploy the microservices that run the cloud you use.
Matthew Campbell is a Microservices scalability expert at DigitalOcean where he builds the future of cloud services. He wrote a book called "Microservices in Go" for O'Reilly. He recently presented at GothamGO, Velocity NYC, and GopherCon India, and blogs at kanwisher.com. Matthew was a founder of Errplane and Langfight. In the past he worked at Thomson Reuters, Bloomberg, Gucci, and Cartoon network.
Exploiting Your Powerful Cloud Servers with GoLang's Concurrency
Saturday 20th February, 2016 11:50 am to 12:15 pm (IST)
As computer hardware becomes more powerful with multiple processors and the number of users who need to be served within fractions of a second multiply, individuals and companies wrongly assume that investing in costlier hardware will automatically provide greater throughput. Provisioning costly machines is not useful until your programming language and programs can utilize it. In this talk Sathish VJ will demonstrate with small code examples how Go can be used to fully exploit your provisioned hardware and thus deliver greater throughput to your end users.
Sathish VJ is currently a software architect at a startup. His projects are typically full stack projects, and has been using Go as the primary backend language since he recognized it's significant advantages to development even while in its beta stages. He has been independently evangelizing Go at various forums including conducting workshops and training sessions as part of many technology forums.
Saturday 20th February, 2016 12:15 pm to 12:40 pm (IST)
IPFS is a distribution protocol that enables the creation of completely distributed applications through content addressing. A very ambitious open source project in Go, IPFS adopts a peer-to-peer hypermedia protocol to protect against a single point of failure. This presentation aims to highlight the design and ideas of IPFS and also touches upon a real world use case.
Siva Chandran
Siva is a software architect at Real Image Media Technologies. Starting off with embedded application development in C/C++ more than decade ago, he has contributed to open source projects such as GStreamer and log4cplus. Having gained extensive experience in digital cinema, back end development with Go is what has captured his imagination now.
Saturday 20th February, 2016 1:40 pm to 2:05 pm (IST)
We have been hard at work in Aerospike to build our own service platform in Go. In addition to building the platform around a micro-service architecture, we have built quite a lot of infrastructure using Go. In this talk, I'll discuss how we have used Go's abstraction idioms via channels and interfaces to build a flexible engine to allow general purpose data processing and reporting for a nosql database.
Sunil Sayyaparaju, Director of Product and Technology at Aerospike, has over 10 years experience working on different types of SQL RDBMS solutions, such as single machine (monolithic), in-memory, distributed shared-disk, and distributed shared-nothing architectures with emphasis in transaction management, storage, access, performance tuning, and recovery areas. Sunil currently leads Aerospike's Bangalore office, working on their distributed shared-nothing NoSQL solution. Aerospike is a high-performance, self-balancing, immediately consistent, distributed NoSQL database. Aerospike also has an add on product for replication across data-centers over WAN which supports different complex topologies.
Saturday 20th February, 2016 2:05 pm to 2:30 pm (IST)
I will start things off with a brief introduction of SoStronk and what it does (everyone confuses us for a game building company). Then jump right in into the meaty Go bits.
The next part of the talk will be about how we make the various components tick in Go (the architecture). A distributed system (in this case a product) always makes a fun read. Splitting the architecture between AppEngine (the backend) and the real hardware (the wild wild west) was also a interesting journey and I will lay it out for the audience in the most interesting way possible.
I am going to dedicate sometime on how we have sometimes made mistakes along the way (betting on things too BETA for our own good) and how we have learnt from heros in the Go community (like the awesome inconshreveable) and made the overall product better by just paying good attention to the detail.
Google has been a big factor in making this startup happen and I believe in giving credit where it's due. So I would conclude the talk by highlighting the power what is possible through AppEngine-Go and how we leveraged almost every part of it in our journey.
Karan Misra is the CTO (and co-founder) of the Bangalore based eSports startup SoStronk. He has been in love with programming since he got his hands on his (read: his father’s) first computer and has never looked back ever since. He rediscovered programming when he came across the awesome Go Tutorial and feel in love with the language. Since then, he has been busy building his startup. He created the popular Go IoT framework EMBD.io, helped co-organise the first iteration of GopherConIndia and runs the Golang Bangalore meetup group. In his spare time, he enjoys talking about Go and a game of squash/Diablo 3/CSGO!
Saturday 20th February, 2016 2:30 pm to 2:55 pm (IST)
Minio is an Amazon S3 compatible cloud storage server written in Go and released under Apache License v2. Original prototype was written in C++ with JavaScript extensibility, amongst other choices including Rust, Haskell, C with Guile and C with Python. This talk touches upon specific reasons on why Go was chosen over others. Then further dives into 1 year of real world experience of implementing a storage system in Go.
Anand Babu (AB) Periasamy is a long time contributor to free software, most notably GlusterFS, GNU FreeIPMI and GNU Freetalk. His recent project is an Amazon S3 compatible object storage written in Go language. AB also serves on the board of Free Software Foundation India and an investor / advisor to Nexus Venture Partners and few startups.
Saturday 20th February, 2016 3:30 pm to 4:15 pm (IST)
In this talk I will share my experience with the Go community, and how Go's language design has had direct impact on the shape of the communities, both online and offline. I will talk about how I have benefited by being part of the community, as well as how to give back.
Cory LaNou is a full stack web developer and entrepreneur with over 17 years of experience. After 11 years of being a successful serial entrepreneur, he has joined the InfluxDB team, working on building an open source time series database, written in Go. He is active in the Go community, leading the Denver Gophers meetup, as well as mentoring students in his free time. Prior to joining InfluxDB, Cory was with gSchool, Galvanize, SupportLocal, LocalLaunch, Pulsity and Computer Discount Warehouse.
4.15 PM
Vote of Thanks
Sponsors
Platinum and Technology Sponsor
Gold Sponsors
Silver Sponsors
Special Sponsor
Delegate Badges Sponsor
Woman Speaker Sponsor
Associate Sponsors
Supporters
Talk Schedule
This schedule is subject to change as speaker availability changes.
Gautam is the co-founder of Josh Software, an avid Rubyist and a budding Gopher. He loves to talk - need we say anymore?
He speaks at various conferences across the world and is core member of the organizing teams for RubyConf India, Deccan Ruby and Gophercon India and a host of other meetups.
In his spare time, when he’s not with his wife and daughter, he plays football and basketball.
He always ready to give you company for a beer and loves to talk about life, universe and everything.
Brad Fitzpatrick loves to travel, hack on fun projects, make things, learning languages [poorly], scuba dive, {bi,motor}cycle, run, eat, drink. Dorky stuff he has created or worked on: LiveJournal, Danga, memcached, MogileFS, Perlbal, Gearman, OpenID, PubSubHubbub, Android performance/framework, WebFinger, Go, ...
Friday 19th February, 2016 10:15 am to 10:40 am (IST)
Are you using interfaces effectively? Interfaces are one of the most powerful language features that Go provides, yet Go programmers often under-utilize existing interfaces in their code. Even many advanced Gophers rarely write their own interfaces, or write interfaces that are less powerful than they could be.
This talk provides a behind-the-scenes look at the two most ubiquitous interfaces of them all: the humble "io.Reader" and "error". These interfaces are simple in nature, yet hold the key to writing powerful code. In this talk, we will learn how to design our own interfaces in Go that are simple yet powerful – just like "io.Reader" and "error". We will learn how to correctly identify the places where writing interfaces will improve our code, and the specific steps to ensuring that our interfaces - and therefore our programs - are as powerful as they can be.
Aditya is an engineer at Stripe and has been a full-time Go developer since 2012. He is the main developer for gitgo, a pure Go implementation of Git; Anaconda, the Twitter client library for Go; and gojson, a tool for generating Go struct definitions from JSON. He has also contributed to a number of Go projects, big and small, ranging from Goat, a bittorrent tracker, to the Go project itself.
Aditya studied statistics at Columbia and computer science at Cornell, and spends his free time playing German-style board games and listening to embarrassing music.
Friday 19th February, 2016 10:40 am to 11:05 am (IST)
80% of software development can be taken up by maintenance and this is where all your sins during early development will come back to bite you. Interfaces make change easier and can help to fight the maintenance burden.
But if you want to learn how to use interfaces effectively in Go, you’re in for a lot of disappointment. The existing resources tell you a lot about what an interface is and how to use one, but they fall short in explaining the more important Why and When to use one.
To learn this, you would need to spend hours digging through OOP design pattern books and reading hundreds of lines of Java, C++ or Objective-C code.
It’s your lucky day! I have already done this for you.
Come to this talk to gain a better understanding of when it make sense to grab in your toolbox for the interface. We will also look through some code to see how the Go masters are using them best. Let’s tell those ducks how to walk and how to talk.
Aaron lives in the suburbs of Vienna, Austria but is a native of the suburbs of Seattle. In his former life he was a shepherd, a cheesemaker and a sous chef. Now he is freelancing, building native iOS and Android apps and their respective API's. In his spare time, he organizes a range of user groups in Vienna. If you get him started talking about food, he may never stop. He spoke at GopherConIndia 2015.
Friday 19th February, 2016 11:30 am to 11:55 am (IST)
The golang.org/x/mobile repository offers tools and packages that aid Go mobile app development. In this talk, I will present the 'gobind' and 'gomobile bind' tools that turn a Go package into a library for mobile apps. I will demonstrate how to use the tools and also discuss technical challenges behind their development.
Hana Kim is a software engineer on the Go team at Google and working on the Go mobile project. Before joining the project, she worked on various internal Google projects for distributed tracing, large-scale cluster monitoring and alerting technologies, and google-wide Go process performance monitoring and debugging.
Friday 19th February, 2016 11:55 am to 12:20 pm (IST)
Go language is still in its embryonic stage, and it has yet to find prevalent real-world use or upkeep. Nonetheless, it appears like a mounting tryout, and I thought if it could have a future in game development. I haven't been able to discover much game-specific applications in Go anywhere, and figured a presentation and discussion may be appropriate on a platform like GopherConIndia. The foremost intention to come out with this explicit topic for the conference was to answer the recurring questions - do you think there is a future of game programming with Go? What is better than a hands-on confirmation to answer the questions. I haven’t been a crackerjack game developer, but I do have a tad of longing for the actual programming for developing the games. And thus the idea of "scrabble" came in to the picture.
Now you may ask why scrabble? Many board games have come and gone, scrabble is undoubtedly the game that has survived the test of time. This board game has been around for roughly 65 years. The game of scrabble is a household favorite that can be played by young or old alike. This game integrates all of the elements of edutainment.
I love Go for server code in my working day job, so why not? It has modest, overhead GLbindings; neat facilities for bit-banging, and swift compile times.
However the game is not a standalone game developed in Golang. We have used iOS for the front end. Back-end part, we are using Golang as API service.
Kedarnag is from Bangalore but currently living in Mysore, working with Qwinix Technologies as a software developer. He likes to travel, photography, when it comes to programming not language specific and likes to learn new technologies. He has been working in Golang for the past 8-10 months. He has created a couple of applications, some stand-alone and a few API services. He loves to play a lot of PC games, MMORPG. He always has had an interest in creating a game, but couldn't until now.
Friday 19th February, 2016 12:20 pm to 12:45 pm (IST)
In this talk I'll share my experience building a real-life Android product with Go and Java from the ground up, focusing on the trade-offs that long time Android developers have to make, but also the concrete benefits that developers can find during the practical implementation, beyond the theoretical features and lang specs that Go developers are already familiar with.
Verónica is a mobile and back-end developer currently working at Ardan Labs. Previously, she was a data structures researcher, the lead mobile developer of Mexico's tax collection service (SAT), and led the back-end team of an advertising digital agency, where she began using Go. She is also an Android instructor, a very active community member, and runs the Mexico City Go Meetup, which is the largest Go community in Latin America.
Perform better - Using Golang benchmark and profiling in everyday coding to make you optimize your code
Friday 19th February, 2016 12:45 pm to 1:10 pm (IST)
There are various scenarios where programmers find it difficult to make a choice based on performance of code. Scenarios like, whether to choose Data structure A or B ?? Or logic A performs better than logic B ?? Is it better to Unmarshal the post body request into a map or into a struct ?? Or Need to tune the code for performance benefits ? Dont worry, with Go Benchmark and profiling it's really easy. Explore the ease of use of Go Benchmarks and profiling in everyday Golang coding to make your code perform better.
Karthic is a passionate programmer, keyboardist and a foss activist. He's the founding engineer of the Santa Clara based startup called Adori Labs. He primarily works on Full Stack Development of the product with Golang as the webserver stack. In the meantime, he performs for various bands as a keyboardist, writes tech blogs, speaks at various engineering institutions across the state related to different Open Source and Foss technologies and gets involved with various communities as part of the Free Software Movement Karnataka (FSMK).
Friday 19th February, 2016 2:10 pm to 2:35 pm (IST)
The talk will introduce the concept of HTTP middleware, and will demonstrate how to use HTTP middleware in Go web applications. The talk will also demonstrate real-world usage of HTTP middleware in Go web applications using with third-party package "Negroni".
Shiju Varghese is a Solutions Architect focused on building highly scalable Cloud solutions with a special interest in APIs, Microservices, Containerized Apps and Distributed Systems. He currently specializes in Go, Google Cloud, Microsoft Azure and Docker. Shiju is passionate on building scalable backend systems and Microservices in Go. Before Go, he has extensively worked on .Net and Node.js stacks. He is a pragmatic minimalist, who focuses on real-world practices for architecting solutions.
Friday 19th February, 2016 2:35 pm to 3:00 pm (IST)
The talk will introduce RESTFul service, and will demonstrate how to create a web service in Go. The talk will also demonstrate securing and testing the web service.
Uttam has over 12 years of experience as a software developer. He has experience in C, C++ and Python. He is currently employed as a Tech Lead at Synerzip, Pune. He has recent experience in Go, Node.js, MongoDB and InfluxDB.
Addressing Microservices architecture patterns with Gilmour
Friday 19th February, 2016 3:00 pm to 3:25 pm (IST)
Microservices have rapidly evolved over the years as a popular way of developing applications. Let's explore the common characteristics and design patterns used while designing, developing, maintaining and governing distributed systems. We will also talk about common Unix philosophies and how we kept those in mind while we designed Gilmour: a framework to write and maintain effective microservices that exchange data over non-HTTP transports. Finally, we will go through some code samples demonstrating how Gilmour is used to address the above discussed design patterns.
Piyush Verma is a Platform and Infrastructure Engineer with Datascale.io. He is an ex-KDE developer and codes for Coffee and House music. He likes Multiprocessing, Distributed systems, APIs and automating everything. Previously, he created Siminars and when not coding he can be found running or cycling around the town.
Friday 19th February, 2016 3:55 pm to 4:20 pm (IST)
This talk is intended for people interested in the topic of testing Go programs. It will provide an introduction to testing concepts in general, as well as specific to Go. Attendees will learn about common testing techniques, such as mocking interfaces and functions, as well as tips and tricks when using the "testing" package from the standard library.
Gabriel has been programming since the early 90s, starting out with Pascal and C which are still two of his favorite languages to day. Soon thereafter, he started exploring the web development world with various languages and eventually became specialized in JavaScript. When Go was released, it revived his passion for programming and he was instantly hooked. Go was the perfect combination of his favorite programming languages from the past. During his career, Gabriel worked on a contractual basis for various companies in Romania, Denmark, United Kingdom and the USA.
Comparative Analysis of Automation Frameworks (Testing)
Friday 19th February, 2016 4:21 pm to 4:45 pm (IST)
The talk will include usage and benefits of different Automation and Performance Testing Frameworks. I will also include a comparative analysis of frameworks built using GoLang v/s other languages.
Dushyant is QA Automation expert with 8+ years of experience. Java, Ruby, GoLang, NodeJS are few of the names from his list of technical skill set. He has successfully helped the organizations like QuickOffice (aquired by Google), CloudOn (aquired by DropBox), Prezi to make their products bug-free and most-optimized in a way to cater millions of users. He is an active member of "The Document Foundation" and has presented a talk in LibreOffice Conference at Bern, Switzerland in 2014. He spends his free time learning new technologies, playing Counter-Strike and watching movies.
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, www.metacasts.tv
Saturday 20th February, 2016 9:15 am to 9:40 am (IST)
The talk will focus on Go's Context Library and its use in a fairly complex distributed system. Specifically, it will try explaining the need for context handling, how Go's context library helps implement the same, and how best it may be leveraged. A few real-world scenarios shall also be discussed.
Smita Vijayakumar
Smita Vijayakumar graduated with a Masters in Computer Sciences under the guidance of Prof. Gagan Agrawal at The Ohio State University. Their work on resource management on cloud environments is published as a book. Smita worked in the San Francisco bay area for networking giants before relocating to Bangalore. Presently at Exotel as an engineer, she developed interest in Go and is excited about exploring and applying this for efficient solutions to problems on hand at Exotel.
Saturday 20th February, 2016 9:40 am to 10:05 am (IST)
Complexity science is the study of complex systems, systems with many parts that interact to produce global behaviour that cannot easily be explained in terms of interactions between the individual parts. Complexity science includes many different areas of study, including game theory, emergence, network science and others. This is a basic talk that provide a sample of ideas in complexity science, and dives into a couple of well-known areas using agent-based modeling.
Sau Sheong Chang is the Director of Global Consumer Engineering for PayPal, managing teams that deliver consumer-focused products for PayPal. Previously, he was the Director of HP Labs Singapore, responsible for managing a team of research scientists and engineers focusing on researching and developing cloud computing and Big Data technologies for HP. Before joining HP, he was the Chief Technology Officer for Garena and Director of Engineering for Yahoo! Southeast Asia. Sau Sheong has been doing software development for 20 years, mostly in web application development. He is active in the Ruby and Go developer communities have have contributed to open source projects and spoke at meetups and conferences. Sau Sheong has also published 3 programming-related books, mostly on Ruby and is working on a 4th book titled "Go Web Programming".
Saturday 20th February, 2016 10:05 am to 10:30 am (IST)
As the world is getting increasingly global, applications need to handle an increasingly large number of human languages. Internationalization support in Go has been designed to optimize the typical Go server use case, meaning static binaries, streaming text handling, and multiple users. I will show some of the key features of Go's internationalization support and how to use it in your applications.
Marcel van Lohuizen
Marcel van Lohuizen is a longtime Googler who works on the Go team, where he now focuses on expanding Go's text processing capabilities. With a background in natural language processing, he started at Google on the search team. Here, among other things, he worked on a deployment system, which segued into his involvement in the development of Borg, Google's large-scale cluster manager. After his move to Zürich he helped grow the local office and went on a multi-year management stint. He ultimately reunited with some old colleagues on the Go team.
Saturday 20th February, 2016 11:00 am to 11:25 am (IST)
Go's simplicity belies some powerful and unique language features. Let's delve into how some of these unique features can be applied effectively in production.
A former lawyer and a self-taught programmer from the beautiful city of Singapore, Audrey became interested in the world of programming and computer science. She picked up front-end programming in April 2014 before learning Go as her first backend language in July 2014. She's since moved to programming full-time as her career at Nitrous.IO in SFO, USA.
Saturday 20th February, 2015 11:25 am to 11:50 pm (IST)
How is the cloud built? We will go into detail how we write microservices that run the cloud at scale. With tens of the thousands of customers, and 10+ datacenters. We will talk about how we write, monitor and deploy the microservices that run the cloud you use.
Matthew Campbell is a Microservices scalability expert at DigitalOcean where he builds the future of cloud services. He wrote a book called "Microservices in Go" for O'Reilly. He recently presented at GothamGO, Velocity NYC, and GopherCon India, and blogs at kanwisher.com. Matthew was a founder of Errplane and Langfight. In the past he worked at Thomson Reuters, Bloomberg, Gucci, and Cartoon network.
Exploiting Your Powerful Cloud Servers with GoLang's Concurrency
Saturday 20th February, 2016 11:50 am to 12:15 pm (IST)
As computer hardware becomes more powerful with multiple processors and the number of users who need to be served within fractions of a second multiply, individuals and companies wrongly assume that investing in costlier hardware will automatically provide greater throughput. Provisioning costly machines is not useful until your programming language and programs can utilize it. In this talk Sathish VJ will demonstrate with small code examples how Go can be used to fully exploit your provisioned hardware and thus deliver greater throughput to your end users.
Sathish VJ is currently a software architect at a startup. His projects are typically full stack projects, and has been using Go as the primary backend language since he recognized it's significant advantages to development even while in its beta stages. He has been independently evangelizing Go at various forums including conducting workshops and training sessions as part of many technology forums.
Saturday 20th February, 2016 12:15 pm to 12:40 pm (IST)
IPFS is a distribution protocol that enables the creation of completely distributed applications through content addressing. A very ambitious open source project in Go, IPFS adopts a peer-to-peer hypermedia protocol to protect against a single point of failure. This presentation aims to highlight the design and ideas of IPFS and also touches upon a real world use case.
Siva Chandran
Siva is a software architect at Real Image Media Technologies. Starting off with embedded application development in C/C++ more than decade ago, he has contributed to open source projects such as GStreamer and log4cplus. Having gained extensive experience in digital cinema, back end development with Go is what has captured his imagination now.
Saturday 20th February, 2016 1:40 pm to 2:05 pm (IST)
We have been hard at work in Aerospike to build our own service platform in Go. In addition to building the platform around a micro-service architecture, we have built quite a lot of infrastructure using Go. In this talk, I'll discuss how we have used Go's abstraction idioms via channels and interfaces to build a flexible engine to allow general purpose data processing and reporting for a nosql database.
Sunil Sayyaparaju, Director of Product and Technology at Aerospike, has over 10 years experience working on different types of SQL RDBMS solutions, such as single machine (monolithic), in-memory, distributed shared-disk, and distributed shared-nothing architectures with emphasis in transaction management, storage, access, performance tuning, and recovery areas. Sunil currently leads Aerospike's Bangalore office, working on their distributed shared-nothing NoSQL solution. Aerospike is a high-performance, self-balancing, immediately consistent, distributed NoSQL database. Aerospike also has an add on product for replication across data-centers over WAN which supports different complex topologies.
Saturday 20th February, 2016 2:05 pm to 2:30 pm (IST)
I will start things off with a brief introduction of SoStronk and what it does (everyone confuses us for a game building company). Then jump right in into the meaty Go bits.
The next part of the talk will be about how we make the various components tick in Go (the architecture). A distributed system (in this case a product) always makes a fun read. Splitting the architecture between AppEngine (the backend) and the real hardware (the wild wild west) was also a interesting journey and I will lay it out for the audience in the most interesting way possible.
I am going to dedicate sometime on how we have sometimes made mistakes along the way (betting on things too BETA for our own good) and how we have learnt from heros in the Go community (like the awesome inconshreveable) and made the overall product better by just paying good attention to the detail.
Google has been a big factor in making this startup happen and I believe in giving credit where it's due. So I would conclude the talk by highlighting the power what is possible through AppEngine-Go and how we leveraged almost every part of it in our journey.
Karan Misra is the CTO (and co-founder) of the Bangalore based eSports startup SoStronk. He has been in love with programming since he got his hands on his (read: his father’s) first computer and has never looked back ever since. He rediscovered programming when he came across the awesome Go Tutorial and feel in love with the language. Since then, he has been busy building his startup. He created the popular Go IoT framework EMBD.io, helped co-organise the first iteration of GopherConIndia and runs the Golang Bangalore meetup group. In his spare time, he enjoys talking about Go and a game of squash/Diablo 3/CSGO!
Saturday 20th February, 2016 2:30 pm to 2:55 pm (IST)
Minio is an Amazon S3 compatible cloud storage server written in Go and released under Apache License v2. Original prototype was written in C++ with JavaScript extensibility, amongst other choices including Rust, Haskell, C with Guile and C with Python. This talk touches upon specific reasons on why Go was chosen over others. Then further dives into 1 year of real world experience of implementing a storage system in Go.
Anand Babu (AB) Periasamy is a long time contributor to free software, most notably GlusterFS, GNU FreeIPMI and GNU Freetalk. His recent project is an Amazon S3 compatible object storage written in Go language. AB also serves on the board of Free Software Foundation India and an investor / advisor to Nexus Venture Partners and few startups.
Saturday 20th February, 2016 3:30 pm to 4:15 pm (IST)
In this talk I will share my experience with the Go community, and how Go's language design has had direct impact on the shape of the communities, both online and offline. I will talk about how I have benefited by being part of the community, as well as how to give back.
Cory LaNou is a full stack web developer and entrepreneur with over 17 years of experience. After 11 years of being a successful serial entrepreneur, he has joined the InfluxDB team, working on building an open source time series database, written in Go. He is active in the Go community, leading the Denver Gophers meetup, as well as mentoring students in his free time. Prior to joining InfluxDB, Cory was with gSchool, Galvanize, SupportLocal, LocalLaunch, Pulsity and Computer Discount Warehouse.