SlideShare a Scribd company logo
How to master a programming
language: a Golang example"
LINE Developer Relations
Evan Lin
2020.11
Evan Lin
• LINE Developer Relations
• Google Developer Expert
LINE Technology Evangelist
How to learn a new
programming language!
Hold Up
As a cloud computing developer
• Data processing
• Python
• R
• Microservices
• Node.js
• Rust
• Golang
• CI/CD
• Makefile (?)
• YAML (!)
What is Golang
What is Go • Create by Google
• Design by
• Ken Thompson
• Rob Pike
• Robert Griesemer
• Feature:
• Compiled
• Statically Typed
• Garbage Collection
What is Go • Create by Google
• Design by
• Ken Thompson
• Rob Pike
• Robert Griesemer
• Feature:
• Compiled
• Statically Typed
• Garbage Collection
Let’s playing Golang
https://play.golang.org/p/HmnNoBf0p1z
“Go tour”
https://tour.golang.org/welcome/1
Write a Go CLI
https://github.com/kkdai/youtube
”go test” save your time for testing
https://play.golang.org/p/pJLWBwuiCeY https://play.golang.org/p/T64C3IOplsi
Write testing case for Skip List
https://github.com/kkdai/skiplist/blob/master/skiplist_test.go
“godoc” help you build documentation
https://pkg.go.dev/github.com/kkdai/youtube?tab=doc
That’s all
Hold Up
Goroutine: https://play.golang.org/p/rjT7yXqft_C
Unbuffered Channel: https://play.golang.org/p/zaNUS8IhzfT
Buffered Channel:
• https://tour.golang.org/concurrency/3
• https://tour.golang.org/concurrency/4
Goroutine: https://play.golang.org/p/rjT7yXqft_C
Unbuffered Channel: https://play.golang.org/p/zaNUS8IhzfT
Buffered Channel:
• https://tour.golang.org/concurrency/3
• https://tour.golang.org/concurrency/4
The best way to mastering a
Programming Language
Just write everything
Writing everything by Go
https://github.com/kkdai/project52
You might have questions for me..
Q1: Why you want to write blog?
https://evanlin.com/
How to write more blog posts
• Not for anyone, just for yourself.
• Start from learning note.
• TIL (Today I learn) is the best practice.
• Writing is the best way to learn deeper.
Q2: Why suggest write chatbot?
What is LINE Chatbot
Create LINE Bot within 5 mins
•Request channel for LINE Bot
•Deploy LINE Bot server on Heroku
•Change related setting on Channel
•Go ! Online (video)
•How to modify it? (video)
Build advanced Chatbot in Go
https://youtu.be/B9m_6brhkdchttps://github.com/kkdai/LineBotPetNeedMe
SHARE! SHARE! SHARE!!
• Meetup/Conference approach learning
• Share >>> Learn
• Open mind
How to master a programming language: a Golang example"
Q3: How to become GDE?
How to become a Expert?
Crafting Blogging Communicate Sharing
Q4: Want to learn more in a short time?
LINE TECH FRESH
https://engineering.linecorp.com/zh-hant/blog/tech-fresh-2020/ 34
How to master a programming language: a Golang example"
Q&A

More Related Content

PPTX
How I become Go GDE
PDF
Golang taipei #45 10th birthday
PDF
iThome Chatbot Day: 透過 Golang 無痛建置機器學習聊天機器人
PDF
如何透過 Golang 與 Heroku 來一鍵部署 臉書機器人與 Line Bot
PDF
iTHome Gopher Day 2017: What can Golang do? (Using project 52 as examples)
PDF
Project52
PDF
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
PDF
Kotlin react bkk 3.0.0
How I become Go GDE
Golang taipei #45 10th birthday
iThome Chatbot Day: 透過 Golang 無痛建置機器學習聊天機器人
如何透過 Golang 與 Heroku 來一鍵部署 臉書機器人與 Line Bot
iTHome Gopher Day 2017: What can Golang do? (Using project 52 as examples)
Project52
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
Kotlin react bkk 3.0.0

What's hot (20)

PDF
Git for Beginners
PPTX
Git Going w/ Git
PDF
Modern Web 2016: Using Golang to build a smart IM Bot
PPTX
JAZOON'13 - Andres Almiray - Rocket Propelled Java
PPTX
Introduction to GoLang
PPTX
5 loaded guns Go hapily aims at your feet
PDF
Hacktoberfest - An Open Source Story
PPTX
Git & Github
PDF
componentDidCatch and Error Boundaries in React v16+
PPTX
Building a Portable Testing Rig with GoConvey and Docker
PPTX
Practical Git - Philly.NET Code Camp
PPTX
Git and git workflow best practice
PDF
Odo improving the developer experience on OpenShift - hack & sangria
PDF
Improving the developer experience on OpenShift - devconf-india-18
PDF
G*Magazineを読もう
ODP
Boston Ruby Group - Devops Pipeline
PDF
Vapor london March 2018
PPTX
Stable master workflow with Gerrit Code Review
PPTX
GerritHub.io - present, past, future
PDF
What we use to build Android apps at Silicon Straits
Git for Beginners
Git Going w/ Git
Modern Web 2016: Using Golang to build a smart IM Bot
JAZOON'13 - Andres Almiray - Rocket Propelled Java
Introduction to GoLang
5 loaded guns Go hapily aims at your feet
Hacktoberfest - An Open Source Story
Git & Github
componentDidCatch and Error Boundaries in React v16+
Building a Portable Testing Rig with GoConvey and Docker
Practical Git - Philly.NET Code Camp
Git and git workflow best practice
Odo improving the developer experience on OpenShift - hack & sangria
Improving the developer experience on OpenShift - devconf-india-18
G*Magazineを読もう
Boston Ruby Group - Devops Pipeline
Vapor london March 2018
Stable master workflow with Gerrit Code Review
GerritHub.io - present, past, future
What we use to build Android apps at Silicon Straits
Ad

Similar to How to master a programming language: a Golang example" (20)

PDF
Golang skills session1: introduction
PPTX
Golang introduction
PPT
Introduction to Go ProgrammingLanguage.ppt
PPTX
go language- haseeb.pptx
PPTX
Golang - Overview of Go (golang) Language
PPTX
Lab1GoBasicswithgo_foundationofgolang.pptx
PDF
Introduction to Go
PPTX
Golang presentaion-2018-07-26
PDF
PPTX
Go Programming language, golang
PPT
A First Look at Google's Go Programming Language
PPT
Google's Go Programming Language - Introduction
PDF
Go language presentation
PDF
A gentle intro to Golang and the Go-universe
PPTX
Go fundamentals
PPTX
A Very Brief Intro to Golang
PDF
An introduction to programming in Go
PPTX
The Go Programing Language 1
PDF
Lets Go - An introduction to Google's Go Programming Language
PDF
Let's Go: Introduction to Google's Go Programming Language
Golang skills session1: introduction
Golang introduction
Introduction to Go ProgrammingLanguage.ppt
go language- haseeb.pptx
Golang - Overview of Go (golang) Language
Lab1GoBasicswithgo_foundationofgolang.pptx
Introduction to Go
Golang presentaion-2018-07-26
Go Programming language, golang
A First Look at Google's Go Programming Language
Google's Go Programming Language - Introduction
Go language presentation
A gentle intro to Golang and the Go-universe
Go fundamentals
A Very Brief Intro to Golang
An introduction to programming in Go
The Go Programing Language 1
Lets Go - An introduction to Google's Go Programming Language
Let's Go: Introduction to Google's Go Programming Language
Ad

More from Evan Lin (13)

PDF
好書分享: 一人公司 Company Of One
PDF
iThome Modern Web 2018: 如何打造高效的機器學習平台
PPTX
Kubernetes secret introduction
PDF
Consistent hashing algorithmic tradeoffs
PDF
GTG30: Introduction vgo
PDF
Kubernetes v.s. mesos
PDF
iThome Cloud Summit: The next generation of data center: Machine Intelligent ...
PDF
Google APAC Machine Learning Expert Day
PDF
Use go channel to write a disk queue
PDF
Gopher Taiwan Gathering #16: Build a smart bot via Golang
PDF
Docker swarm introduction
PDF
Docker introduction in Hardware Company
PDF
Host Line Bot with Golang
好書分享: 一人公司 Company Of One
iThome Modern Web 2018: 如何打造高效的機器學習平台
Kubernetes secret introduction
Consistent hashing algorithmic tradeoffs
GTG30: Introduction vgo
Kubernetes v.s. mesos
iThome Cloud Summit: The next generation of data center: Machine Intelligent ...
Google APAC Machine Learning Expert Day
Use go channel to write a disk queue
Gopher Taiwan Gathering #16: Build a smart bot via Golang
Docker swarm introduction
Docker introduction in Hardware Company
Host Line Bot with Golang

Recently uploaded (20)

PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
MYSQL Presentation for SQL database connectivity
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPTX
A Presentation on Artificial Intelligence
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Empathic Computing: Creating Shared Understanding
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
KodekX | Application Modernization Development
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Encapsulation theory and applications.pdf
PDF
cuic standard and advanced reporting.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
Dropbox Q2 2025 Financial Results & Investor Presentation
Unlocking AI with Model Context Protocol (MCP)
MYSQL Presentation for SQL database connectivity
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Understanding_Digital_Forensics_Presentation.pptx
A Presentation on Artificial Intelligence
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Digital-Transformation-Roadmap-for-Companies.pptx
Spectral efficient network and resource selection model in 5G networks
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
20250228 LYD VKU AI Blended-Learning.pptx
Empathic Computing: Creating Shared Understanding
The Rise and Fall of 3GPP – Time for a Sabbatical?
KodekX | Application Modernization Development
The AUB Centre for AI in Media Proposal.docx
NewMind AI Monthly Chronicles - July 2025
Encapsulation theory and applications.pdf
cuic standard and advanced reporting.pdf
Encapsulation_ Review paper, used for researhc scholars

How to master a programming language: a Golang example"