Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
COSCUP 2016
Project 52
Golang
Evan Lin @ LinkerNetworks
http://www.slideshare.net/EvansLin/coscup-2016-project-52-for-gola...
About Me
• Cloud Architect @ Linker
Networks
• Top 10 Taiwan Golang open
source contributor (github
award)
• Developer, Cu...
!
http://www.slideshare.net/yuyuopop/coscup-24906600
?
https://speakerdeck.com/jeffersonlam/reflections-from-52-weeks-52-projects
https://speakerdeck.com/jeffersonlam/reflections-from-52-weeks-52-projects
What is Pokemon Go?
What is Go(lang)
• Create by Google
• Design by
• Ken Thompson
• Rob Pike
• Robert Griesemer,
• Feature:
• Compiled
• Stat...
Why Golang?
Why Golang
• GO Fast!
• Compile Fast!
• Run Fast!
Go is Fast
Why Golang
• Make programming
fun again.
gofmt / goimport
After file save..
GoRoutine:
Multiple Thread in C
GoRoutine:
Multiple Thread in Go
Golang - HTTPS Server
Golang - HTTPS Server
Supported
HTTP/2
After Go 1.6
Golang - Built-In Test
Golang - Built-In Benchmark Test
GoMobile
Original Work Flow
Golang
Sample Console
Sometime Failed
Work
Failed on Some Model
GoMobile
Using Golang in Mobile
Golang
GoMobile
Package


Golang
Sample Console
Project 52
https://github.com/kkdai/project52
Project 52
Constraint
• The project could be small or
big, but it should be something
new not just refactoring an old
proj...
Let’s start Project 52
1. goFBPages
github.com/kkdai/project52
2. goInstagram
Github: http://github.com/kkdai/goInstaram
3. iloveptt
Github: http://github.com/kkdai/iloveptt
4. webpic
Github: http://github.com/kkdai/iloveptt
Write what your interest
first
Github https://github.com/tzangms/iloveck101
Learn from Good Code
Tools
5. ms translator
Github: https://github.com/kkdai/mstranslator
6. jsonop
Github: https://github.com/kkdai/jsonop
7. twitter
Github: https://github.com/kkdai/twitter
8. photomgr GoMobile
Github: https://github.com/kkdai/photomgr
8.5: iOS
Github: https://github.com/kkdai/PhotoViewer
9. youtube
Github: https://github.com/kkdai/youtube
10. oxford-face
Github: https://github.com/kkdai/oxford-face
11. oxford-face-cli
Github: https://github.com/kkdai/oxford-face-client
12. oxford-emotion
Github: https://github.com/kkdai/oxford-emotion
13. Slack-console
Github: https://github.com/kkdai/slack-console
Other tools
14. A github notification (starred, follower, followed) RSS feed in Golang
15. A simple Github Status RSS feede...
Algorithms &&
Data Structure
17. KMP
Algorithms &&
Data Structure
Gorilla
FB: Time Series DB
Maglev
Google: Maglev : A Fast and Reliable
Software Network Load Balancer
Algorithms &&
Data Structure
18. PAXOS
Algorithms &&
Data Structure
PubSub
Bloom Filter
Radix Tree
jsonop
Skip List
Consistent Hashing
Trigram
Ngram
React-Diff
A...
Coursera
Automata
cykdfa
e-nfa
nfa
re2epsnfa
PCP
(Post Correspondence Problems )
Turing Machine
Network Related
DiskQueue
CoAPMQ
CoAP PubSub
Raft
Raft RPCRaft
Useful Tool?
Line Bot Template
LineBot PetNeedYou
?
Project52
?
Trello
Project 52
Project 52
Project 52
Project 52
?
?Code
?
?
Go
Call For Speaker
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
Upcoming SlideShare
Loading in …5
×

COSCUP 2016: Project 52 每週一個小專案來學習 Golang

4,371 views

Published on

Slide for COSCUP 2016. A talk to why I start and complete Project 52 and why I choose Golang

http://coscup.org/2016/schedules.html#H06

Published in: Software
  • Be the first to comment

COSCUP 2016: Project 52 每週一個小專案來學習 Golang

  1. 1. COSCUP 2016 Project 52 Golang Evan Lin @ LinkerNetworks http://www.slideshare.net/EvansLin/coscup-2016-project-52-for-golang
  2. 2. About Me • Cloud Architect @ Linker Networks • Top 10 Taiwan Golang open source contributor (github award) • Developer, Curator, Blogger
  3. 3. !
  4. 4. http://www.slideshare.net/yuyuopop/coscup-24906600
  5. 5. ?
  6. 6. https://speakerdeck.com/jeffersonlam/reflections-from-52-weeks-52-projects
  7. 7. https://speakerdeck.com/jeffersonlam/reflections-from-52-weeks-52-projects
  8. 8. What is Pokemon Go?
  9. 9. What is Go(lang) • Create by Google • Design by • Ken Thompson • Rob Pike • Robert Griesemer, • Feature: • Compiled • Statically Typed • Garbage Collection
  10. 10. Why Golang?
  11. 11. Why Golang • GO Fast! • Compile Fast! • Run Fast!
  12. 12. Go is Fast
  13. 13. Why Golang • Make programming fun again.
  14. 14. gofmt / goimport
  15. 15. After file save..
  16. 16. GoRoutine: Multiple Thread in C
  17. 17. GoRoutine: Multiple Thread in Go
  18. 18. Golang - HTTPS Server
  19. 19. Golang - HTTPS Server Supported HTTP/2 After Go 1.6
  20. 20. Golang - Built-In Test
  21. 21. Golang - Built-In Benchmark Test
  22. 22. GoMobile Original Work Flow Golang Sample Console Sometime Failed Work Failed on Some Model
  23. 23. GoMobile Using Golang in Mobile Golang GoMobile Package 
 Golang Sample Console
  24. 24. Project 52 https://github.com/kkdai/project52
  25. 25. Project 52 Constraint • The project could be small or big, but it should be something new not just refactoring an old project. • The Programming language is not limited, feel free to write any language you have just learnt. • Don't need to create brand new project, you could rewrite some exist project. (but on your own way, not allow to fork and refine.)
  26. 26. Let’s start Project 52
  27. 27. 1. goFBPages github.com/kkdai/project52
  28. 28. 2. goInstagram Github: http://github.com/kkdai/goInstaram
  29. 29. 3. iloveptt Github: http://github.com/kkdai/iloveptt
  30. 30. 4. webpic Github: http://github.com/kkdai/iloveptt
  31. 31. Write what your interest first Github https://github.com/tzangms/iloveck101
  32. 32. Learn from Good Code
  33. 33. Tools
  34. 34. 5. ms translator Github: https://github.com/kkdai/mstranslator
  35. 35. 6. jsonop Github: https://github.com/kkdai/jsonop
  36. 36. 7. twitter Github: https://github.com/kkdai/twitter
  37. 37. 8. photomgr GoMobile Github: https://github.com/kkdai/photomgr
  38. 38. 8.5: iOS Github: https://github.com/kkdai/PhotoViewer
  39. 39. 9. youtube Github: https://github.com/kkdai/youtube
  40. 40. 10. oxford-face Github: https://github.com/kkdai/oxford-face
  41. 41. 11. oxford-face-cli Github: https://github.com/kkdai/oxford-face-client
  42. 42. 12. oxford-emotion Github: https://github.com/kkdai/oxford-emotion
  43. 43. 13. Slack-console Github: https://github.com/kkdai/slack-console
  44. 44. Other tools 14. A github notification (starred, follower, followed) RSS feed in Golang 15. A simple Github Status RSS feeder server in Golang 16. plurk-makerserver: IFTTT Twitter Plurk
  45. 45. Algorithms && Data Structure 17. KMP
  46. 46. Algorithms && Data Structure
  47. 47. Gorilla FB: Time Series DB
  48. 48. Maglev Google: Maglev : A Fast and Reliable Software Network Load Balancer
  49. 49. Algorithms && Data Structure 18. PAXOS
  50. 50. Algorithms && Data Structure PubSub Bloom Filter Radix Tree jsonop Skip List Consistent Hashing Trigram Ngram React-Diff Aho–Corasick Algorithm
  51. 51. Coursera Automata cykdfa e-nfa nfa re2epsnfa PCP (Post Correspondence Problems ) Turing Machine
  52. 52. Network Related DiskQueue CoAPMQ CoAP PubSub
  53. 53. Raft Raft RPCRaft
  54. 54. Useful Tool?
  55. 55. Line Bot Template LineBot PetNeedYou
  56. 56. ?
  57. 57. Project52
  58. 58. ?
  59. 59. Trello
  60. 60. Project 52
  61. 61. Project 52
  62. 62. Project 52
  63. 63. Project 52
  64. 64. ?
  65. 65. ?Code ? ?
  66. 66. Go Call For Speaker

×