SlideShare a Scribd company logo
William Chong
Trying to run a startup with open source
culture in mind
@likecoin
- William Chong
- (former) Game Developer
- Fullstack developer of LikeCoin
- Mainly contributes to crypto
and web related oss project,
e.g. Metamask, Nuxt.js, lunie
- Hong Kong based startup
- Public blockchain for content
monetization, attribution and
distribution
- Media partners include Standnews,
Matters, HKcnews, Inmediahk
- 69,000+ Likers, 247,000+ contents by
9,600+ creators on 1000+ media
@June
https://like.co/
https://commits.top/hong_kong.html
- “公司 d code open source 同放上 github”
should be a more common practice
- Not only opening source code, but open in
culture and workflow.
- what we did to be open
- how we minimize extra overhead
- what trouble we encountered
- Making every single work or tool we use is
open, without considering trade off
- Suggesting any silver bullets solution
- Internet product startup
- Crowdfunding projects
- Blockchain/crypto projects
(requires extra trust from your users)
-
- Gain trust
- Gain loyalty (IKEA effect)
- Get feedback from fans
-
- Get technical feedback
- Open source contribution
- User, developer and employer brand
JONO HEY, SKETCHPLANATIONS, CC BY NC
- Customers / user community
- Technical and developer community
- Also Internally!
- Like technical debt, transforming from closed to
open is costly
- Your community might surprise you
One day when I was
committing
LICENSE.md...
- Community update & sharing
- Public internal knowledge sharing
- Community participation
- DAO - Decentralized Autonomous
Organization
- Open repository
- Gitcoin bounties
- Open API
- Documentation and code samples
- Hackathons
- Keep community
updated
- Allow basis for
community participation
- Let people know you are
still alive!
- Zoom for weekly meeting,
why not make it public?
- Statistic graph and work log
for progress synchronization,
why not make it public?
- 第一次參加LikeCoin 星期一週
會感受
- Timezone
- Language
- Privacy
- Be careful with
your mouth!
- Zoom is bad! How
about Jitsi?
- Internal knowledge
sharing is interesting
to external too
- Content marketing /
brand building
Simple sharing on Github Action
- Engage in conversation
with your community
- Slack / discord / telegram
or other online
community
- We have #likecoin on
Matters
- Governance system of
LikeCoin chain
- Not all comments will be supportive, some will be
skeptical, some will be antagonistic
- A good chance to clarify concepts, understand
common misconception, and what the concerns of
community are
- Affected by how well did you update your community
- LikeCoin ecosystem is not
governed solely by
LikeCoin Foundation, but a
group of validators
- Validators are public,
assigned according to
amount of LIKE delegated
by users
- They have power to
propose and vote on the
future of the ecosystem
- Proposal
- Discussion
- Actual voting
- Open Source repository allows
user to read, understand and
contribute your code
- Forced good software
engineering practice like
decouple and proper git
message usage
- Open standard allow other
parties to join: ISCN
- We use GitHub
- Use public Issue tracker
for internal issue report,
allow a unified flow for
bug reporting
- Use Github Project or
Trello board to manage
issues
- Don’t leak your secret, consider
GitGuardian to monitor secret
leak (GCP has built in detector)
- Timezone and communication
overhead on issues, be async
- Management and triage overhead
- Make sure you have a good linter,
tests and CI system to avoid
unneeded time spent on
reviewing minor code changes.
- https://gitcoin.co/explorer
Example
- Modern web/app development
uses front/backend separation
pattern
- So your probably have
Restful/GraphQL API ready
anyway…
- Why not open your API using
open OAuth 2.0 standard?
- When designing your API, use JWT for
authentication token
- Try to classify your API into different
scope and permissions
- Build a OAuth 2.0 authentication server
and authentication flow
- Tada! You now have an open API
- Write your API documentation properly,
we use Postman for develop -> testing
-> documentation cycle
- Designing proper OAuth scope
and developer console is hard
- Reviewing sensitive scope is
time consuming human process
- Be careful not to make another
Cambridge Analytica
- Security audit
https://blog.yorkxin.org/2013/09/30/oauth2-imple
mentation-differences-among-famous-sites.html
Yu-Cheng Chuang’s Blog
- We use Postman and documentor for API
develop cycle
- Sample codes are committed for future
reference. We also use codepen &
codesandbox.
- User guide and developer
documentation are written in Gitbook, PR
can be made to the repo for correction
- Translation would be possible in future
using Github integration tool
LikeCoin API Sharing
- https://matters.news/@likecoin/%E8%AE%9A%E5%AE%A2%E6%9D%BE-likerthon-2020-lik
e-coin-%E7%8B%82%E6%83%B3%E6%9B%B2%E5%BE%8C%E7%BA%8C-bafyreiemfrqhcn6cy3gny6o
v6rv2lxiccr7cuh2keeyrx5qtja62p545tm
- This is just our experience, there may be many
better ideas.
- Ideas might not fit 100% to you, but do begin
somewhere and try to be open!
- Many of our methods are made possible via
blockchain. Blockchain is not only about fintech,
join LikeCoin in slack, telegram and facebook to
know more!
Day 2 (2020-06-13)
10:00 am
Hall B
https://hkoscon.org/2020/topics/
decentralized-content-registry-e
xpanding-ipfs-functionality-cosm
os-based-blockchain
Liker Land
WordPress
Facebook
Telegram
Twitter
Matters
Github

More Related Content

Similar to HKOSCON 2020 - Open by default

Identifying and solving enterprise problems
Identifying and solving enterprise problems  Identifying and solving enterprise problems
Identifying and solving enterprise problems
Vasu Jain
 
Social Applications made easy with the new Social Business Toolkit SDK
Social Applications made easy with the new Social Business Toolkit SDKSocial Applications made easy with the new Social Business Toolkit SDK
Social Applications made easy with the new Social Business Toolkit SDK
IBM Connections Developers
 
NTU Workshop: 01 What Is Open Design
NTU Workshop: 01 What Is Open DesignNTU Workshop: 01 What Is Open Design
NTU Workshop: 01 What Is Open Design
Massimo Menichinelli
 
Case study
Case studyCase study
Case study
karan saini
 
How & why i started contributing to open source as an undergrad
How & why i started contributing to open source as an undergradHow & why i started contributing to open source as an undergrad
How & why i started contributing to open source as an undergrad
akshesh doshi
 
How Open Source / Open Technology Could Help On Your Project
How Open Source / Open Technology Could Help On Your ProjectHow Open Source / Open Technology Could Help On Your Project
How Open Source / Open Technology Could Help On Your Project
Wan Leung Wong
 
LikeCoin SDK and API sharing
LikeCoin SDK and API sharingLikeCoin SDK and API sharing
LikeCoin SDK and API sharing
William Chong
 
Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...
Jody Garnett
 
Chat Bots and how to build a Slack bot
Chat Bots and how to build a Slack botChat Bots and how to build a Slack bot
Chat Bots and how to build a Slack bot
Vasu Jain
 
RockYou at Girls in Tech Developer Forum
RockYou at Girls in Tech Developer ForumRockYou at Girls in Tech Developer Forum
RockYou at Girls in Tech Developer Forum
themix
 
02_07_2018_«El valor de blockchain en el registro de la actividad académica: ...
02_07_2018_«El valor de blockchain en el registro de la actividad académica: ...02_07_2018_«El valor de blockchain en el registro de la actividad académica: ...
02_07_2018_«El valor de blockchain en el registro de la actividad académica: ...
eMadrid network
 
IDAS Workshop: 01 What Is Open Design
IDAS Workshop: 01 What Is Open DesignIDAS Workshop: 01 What Is Open Design
IDAS Workshop: 01 What Is Open Design
Massimo Menichinelli
 
How to get started in Open Source!
How to get started in Open Source!How to get started in Open Source!
How to get started in Open Source!
Pradeep Singh
 
scraplr presentation
scraplr presentationscraplr presentation
scraplr presentation
anggikrisna
 
BP 308 - The Journey to Becoming a Social Application Developer
BP 308 - The Journey to Becoming a Social Application DeveloperBP 308 - The Journey to Becoming a Social Application Developer
BP 308 - The Journey to Becoming a Social Application Developer
Serdar Basegmez
 
Michael Widenius
Michael WideniusMichael Widenius
Michael Widenius
CodeFest
 
infoShare 2013: Alan Bird - The Web is Changing the World. Are you READY?
infoShare 2013: Alan Bird - The Web is Changing the World. Are you READY?infoShare 2013: Alan Bird - The Web is Changing the World. Are you READY?
infoShare 2013: Alan Bird - The Web is Changing the World. Are you READY?
Infoshare
 
Top 5 Tips for Building Viral Social Web Applications and Sites
Top 5 Tips for Building Viral Social Web Applications and SitesTop 5 Tips for Building Viral Social Web Applications and Sites
Top 5 Tips for Building Viral Social Web Applications and SitesJonathan LeBlanc
 
Global Open Source Development 2011-2014 Review and 2015 Forecast
Global Open Source Development 2011-2014 Review and 2015 ForecastGlobal Open Source Development 2011-2014 Review and 2015 Forecast
Global Open Source Development 2011-2014 Review and 2015 Forecast
Sammy Fung
 

Similar to HKOSCON 2020 - Open by default (20)

Ice dec05-04-wan leung
Ice dec05-04-wan leungIce dec05-04-wan leung
Ice dec05-04-wan leung
 
Identifying and solving enterprise problems
Identifying and solving enterprise problems  Identifying and solving enterprise problems
Identifying and solving enterprise problems
 
Social Applications made easy with the new Social Business Toolkit SDK
Social Applications made easy with the new Social Business Toolkit SDKSocial Applications made easy with the new Social Business Toolkit SDK
Social Applications made easy with the new Social Business Toolkit SDK
 
NTU Workshop: 01 What Is Open Design
NTU Workshop: 01 What Is Open DesignNTU Workshop: 01 What Is Open Design
NTU Workshop: 01 What Is Open Design
 
Case study
Case studyCase study
Case study
 
How & why i started contributing to open source as an undergrad
How & why i started contributing to open source as an undergradHow & why i started contributing to open source as an undergrad
How & why i started contributing to open source as an undergrad
 
How Open Source / Open Technology Could Help On Your Project
How Open Source / Open Technology Could Help On Your ProjectHow Open Source / Open Technology Could Help On Your Project
How Open Source / Open Technology Could Help On Your Project
 
LikeCoin SDK and API sharing
LikeCoin SDK and API sharingLikeCoin SDK and API sharing
LikeCoin SDK and API sharing
 
Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...
 
Chat Bots and how to build a Slack bot
Chat Bots and how to build a Slack botChat Bots and how to build a Slack bot
Chat Bots and how to build a Slack bot
 
RockYou at Girls in Tech Developer Forum
RockYou at Girls in Tech Developer ForumRockYou at Girls in Tech Developer Forum
RockYou at Girls in Tech Developer Forum
 
02_07_2018_«El valor de blockchain en el registro de la actividad académica: ...
02_07_2018_«El valor de blockchain en el registro de la actividad académica: ...02_07_2018_«El valor de blockchain en el registro de la actividad académica: ...
02_07_2018_«El valor de blockchain en el registro de la actividad académica: ...
 
IDAS Workshop: 01 What Is Open Design
IDAS Workshop: 01 What Is Open DesignIDAS Workshop: 01 What Is Open Design
IDAS Workshop: 01 What Is Open Design
 
How to get started in Open Source!
How to get started in Open Source!How to get started in Open Source!
How to get started in Open Source!
 
scraplr presentation
scraplr presentationscraplr presentation
scraplr presentation
 
BP 308 - The Journey to Becoming a Social Application Developer
BP 308 - The Journey to Becoming a Social Application DeveloperBP 308 - The Journey to Becoming a Social Application Developer
BP 308 - The Journey to Becoming a Social Application Developer
 
Michael Widenius
Michael WideniusMichael Widenius
Michael Widenius
 
infoShare 2013: Alan Bird - The Web is Changing the World. Are you READY?
infoShare 2013: Alan Bird - The Web is Changing the World. Are you READY?infoShare 2013: Alan Bird - The Web is Changing the World. Are you READY?
infoShare 2013: Alan Bird - The Web is Changing the World. Are you READY?
 
Top 5 Tips for Building Viral Social Web Applications and Sites
Top 5 Tips for Building Viral Social Web Applications and SitesTop 5 Tips for Building Viral Social Web Applications and Sites
Top 5 Tips for Building Viral Social Web Applications and Sites
 
Global Open Source Development 2011-2014 Review and 2015 Forecast
Global Open Source Development 2011-2014 Review and 2015 ForecastGlobal Open Source Development 2011-2014 Review and 2015 Forecast
Global Open Source Development 2011-2014 Review and 2015 Forecast
 

More from William Chong

SEO 門外漢入門
SEO 門外漢入門SEO 門外漢入門
SEO 門外漢入門
William Chong
 
Disneyland: details in imagineering
Disneyland: details in imagineeringDisneyland: details in imagineering
Disneyland: details in imagineering
William Chong
 
5 年後還是新手 - WordPress Plugin 開發大冒險 - GOTY
5 年後還是新手 - WordPress Plugin 開發大冒險 - GOTY5 年後還是新手 - WordPress Plugin 開發大冒險 - GOTY
5 年後還是新手 - WordPress Plugin 開發大冒險 - GOTY
William Chong
 
Writing NFT - POAP for Content
Writing NFT - POAP for ContentWriting NFT - POAP for Content
Writing NFT - POAP for Content
William Chong
 
Game Design 9up
Game Design 9upGame Design 9up
Game Design 9up
William Chong
 
Expecto Patronum! Stable Diffusion!
Expecto Patronum! Stable Diffusion!Expecto Patronum! Stable Diffusion!
Expecto Patronum! Stable Diffusion!
William Chong
 
Introduction to data visualization
Introduction to data visualizationIntroduction to data visualization
Introduction to data visualization
William Chong
 
Introducing Vtuber LikeCoin chan - Vtuber culture and how to
Introducing Vtuber LikeCoin chan - Vtuber culture and how toIntroducing Vtuber LikeCoin chan - Vtuber culture and how to
Introducing Vtuber LikeCoin chan - Vtuber culture and how to
William Chong
 
Road to cloud hero
Road to cloud heroRoad to cloud hero
Road to cloud hero
William Chong
 
LikeCoin SDK 及 API 分享
LikeCoin SDK 及 API 分享LikeCoin SDK 及 API 分享
LikeCoin SDK 及 API 分享
William Chong
 
Intro to Github Actions @likecoin
Intro to Github Actions @likecoinIntro to Github Actions @likecoin
Intro to Github Actions @likecoin
William Chong
 

More from William Chong (11)

SEO 門外漢入門
SEO 門外漢入門SEO 門外漢入門
SEO 門外漢入門
 
Disneyland: details in imagineering
Disneyland: details in imagineeringDisneyland: details in imagineering
Disneyland: details in imagineering
 
5 年後還是新手 - WordPress Plugin 開發大冒險 - GOTY
5 年後還是新手 - WordPress Plugin 開發大冒險 - GOTY5 年後還是新手 - WordPress Plugin 開發大冒險 - GOTY
5 年後還是新手 - WordPress Plugin 開發大冒險 - GOTY
 
Writing NFT - POAP for Content
Writing NFT - POAP for ContentWriting NFT - POAP for Content
Writing NFT - POAP for Content
 
Game Design 9up
Game Design 9upGame Design 9up
Game Design 9up
 
Expecto Patronum! Stable Diffusion!
Expecto Patronum! Stable Diffusion!Expecto Patronum! Stable Diffusion!
Expecto Patronum! Stable Diffusion!
 
Introduction to data visualization
Introduction to data visualizationIntroduction to data visualization
Introduction to data visualization
 
Introducing Vtuber LikeCoin chan - Vtuber culture and how to
Introducing Vtuber LikeCoin chan - Vtuber culture and how toIntroducing Vtuber LikeCoin chan - Vtuber culture and how to
Introducing Vtuber LikeCoin chan - Vtuber culture and how to
 
Road to cloud hero
Road to cloud heroRoad to cloud hero
Road to cloud hero
 
LikeCoin SDK 及 API 分享
LikeCoin SDK 及 API 分享LikeCoin SDK 及 API 分享
LikeCoin SDK 及 API 分享
 
Intro to Github Actions @likecoin
Intro to Github Actions @likecoinIntro to Github Actions @likecoin
Intro to Github Actions @likecoin
 

Recently uploaded

Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
UiPathCommunity
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 

Recently uploaded (20)

Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 

HKOSCON 2020 - Open by default

  • 1. William Chong Trying to run a startup with open source culture in mind @likecoin
  • 2. - William Chong - (former) Game Developer - Fullstack developer of LikeCoin - Mainly contributes to crypto and web related oss project, e.g. Metamask, Nuxt.js, lunie
  • 3. - Hong Kong based startup - Public blockchain for content monetization, attribution and distribution - Media partners include Standnews, Matters, HKcnews, Inmediahk - 69,000+ Likers, 247,000+ contents by 9,600+ creators on 1000+ media @June https://like.co/
  • 5. - “公司 d code open source 同放上 github” should be a more common practice - Not only opening source code, but open in culture and workflow.
  • 6. - what we did to be open - how we minimize extra overhead - what trouble we encountered
  • 7. - Making every single work or tool we use is open, without considering trade off - Suggesting any silver bullets solution
  • 8. - Internet product startup - Crowdfunding projects - Blockchain/crypto projects (requires extra trust from your users)
  • 9.
  • 10. - - Gain trust - Gain loyalty (IKEA effect) - Get feedback from fans - - Get technical feedback - Open source contribution - User, developer and employer brand JONO HEY, SKETCHPLANATIONS, CC BY NC
  • 11. - Customers / user community - Technical and developer community - Also Internally! - Like technical debt, transforming from closed to open is costly - Your community might surprise you
  • 12. One day when I was committing LICENSE.md...
  • 13. - Community update & sharing - Public internal knowledge sharing - Community participation - DAO - Decentralized Autonomous Organization - Open repository - Gitcoin bounties - Open API - Documentation and code samples - Hackathons
  • 14. - Keep community updated - Allow basis for community participation - Let people know you are still alive!
  • 15. - Zoom for weekly meeting, why not make it public? - Statistic graph and work log for progress synchronization, why not make it public? - 第一次參加LikeCoin 星期一週 會感受
  • 16. - Timezone - Language - Privacy - Be careful with your mouth! - Zoom is bad! How about Jitsi?
  • 17. - Internal knowledge sharing is interesting to external too - Content marketing / brand building Simple sharing on Github Action
  • 18. - Engage in conversation with your community - Slack / discord / telegram or other online community - We have #likecoin on Matters - Governance system of LikeCoin chain
  • 19.
  • 20. - Not all comments will be supportive, some will be skeptical, some will be antagonistic - A good chance to clarify concepts, understand common misconception, and what the concerns of community are - Affected by how well did you update your community
  • 21. - LikeCoin ecosystem is not governed solely by LikeCoin Foundation, but a group of validators - Validators are public, assigned according to amount of LIKE delegated by users - They have power to propose and vote on the future of the ecosystem
  • 22. - Proposal - Discussion - Actual voting
  • 23. - Open Source repository allows user to read, understand and contribute your code - Forced good software engineering practice like decouple and proper git message usage - Open standard allow other parties to join: ISCN
  • 24. - We use GitHub - Use public Issue tracker for internal issue report, allow a unified flow for bug reporting - Use Github Project or Trello board to manage issues
  • 25. - Don’t leak your secret, consider GitGuardian to monitor secret leak (GCP has built in detector) - Timezone and communication overhead on issues, be async - Management and triage overhead - Make sure you have a good linter, tests and CI system to avoid unneeded time spent on reviewing minor code changes.
  • 27. - Modern web/app development uses front/backend separation pattern - So your probably have Restful/GraphQL API ready anyway… - Why not open your API using open OAuth 2.0 standard?
  • 28. - When designing your API, use JWT for authentication token - Try to classify your API into different scope and permissions - Build a OAuth 2.0 authentication server and authentication flow - Tada! You now have an open API - Write your API documentation properly, we use Postman for develop -> testing -> documentation cycle
  • 29. - Designing proper OAuth scope and developer console is hard - Reviewing sensitive scope is time consuming human process - Be careful not to make another Cambridge Analytica - Security audit https://blog.yorkxin.org/2013/09/30/oauth2-imple mentation-differences-among-famous-sites.html Yu-Cheng Chuang’s Blog
  • 30. - We use Postman and documentor for API develop cycle - Sample codes are committed for future reference. We also use codepen & codesandbox. - User guide and developer documentation are written in Gitbook, PR can be made to the repo for correction - Translation would be possible in future using Github integration tool LikeCoin API Sharing
  • 32. - This is just our experience, there may be many better ideas. - Ideas might not fit 100% to you, but do begin somewhere and try to be open! - Many of our methods are made possible via blockchain. Blockchain is not only about fintech, join LikeCoin in slack, telegram and facebook to know more!
  • 33. Day 2 (2020-06-13) 10:00 am Hall B https://hkoscon.org/2020/topics/ decentralized-content-registry-e xpanding-ipfs-functionality-cosm os-based-blockchain