SlideShare une entreprise Scribd logo
1  sur  32
Télécharger pour lire hors ligne
How Opensource / Open
Technology could help on
your Project / Startup
wanleung - 19th Oct 2013
updated - 1st Mar 2014,12th Apr 2014
This talk is for Who?
• Newbie in the Open source world
• Startups
• For those who want to start a new
software project
!
• For those who want to work into the
software development field.
This talk is for Who?
For those, Who think writing Software is
just a piece of cake,
!
something like just clicking a button,
!
a Facebook clone or Whatsapp clone will
be come out
in 60 seconds =P
(joking)
About Me
● Vice-Chairman of the HKLUG
● Vice-President of HKCOTA
● Over 10 years experience on Linux
● Experience on Backend services,
website, web API development
● Experience on virtualization and Cloud
Farm building
● http://about.me/wanleung
!
About Me
● Co-founder of LinkOmnia
● http://www.linkomnia.com
● Providing services on Consultancy and
Customized Products
● Strengths on Cloud Computing and Big
Data
What is Open Source?
In production and development, open
source as a development model promotes
!
a) universal access via free license to a
product's design or blueprint, and
!
b) universal redistribution of that design or
blueprint, including subsequent
improvements to it by anyone.
Why use Opensource?
● Free Licenses (MIT, Apache, LGPL...)
● Cost effective
● existing solutions / similar solutions -
need not to reinvent the wheel
● Have Rights to modify and fit into the
business models / the requirement of
the clients.
● Helps are all over the world
What can we use?
Database:
• (SQL) PostgreSQL, MySQL...
• (NoSQL) Redis, Cassandra,
MongoDB...
• (Graph DB) neo4j, Rexster…
!
File base:
SQLite, BDB...
What can we use?
Common Web / API Frameworks:
• Dancer, Catalyst... (Perl)
• Django, Grok, Pylons, TurboGears...
(Python)
• Kohana, cakephp… (Php)
• Revel, go-restful... (Go lang)
• Ruby on Rails (Ruby)
• mojito, blueprint (node.js)
What can we use?
• Nginx, Apache, Tomcat (webserver,
reverse proxy)
• haproxy, pound (reverse proxy)
• squid (web proxy)
• ImageMagick, GIMP, OpenCV...(Image
Processing)
• RabbitMQ, ActiveMQ (Message
Queue)
• Postfix, exim (Mail Server), dovecot
What can we use?
• LibreOffice, KOffice, Abiwords,
Numeric(Office Tools)
• VSFTPD, ProFTPD (FTP Server)
!
Bootstrap (CSS), jQuery (Javascript),
Prototype (Javascript)
Git, JMeter…
!
And More, and more...
What can we use?
Arduino, Raspberry Pi… (open hardware)
!
AeroQuad (Multicoptor open source
project)
!
RepRap (open 3D Printing)…
!
And More, and more...
What can we use?
• Google is your good friend
• Github is your good friend
• Forums are also your good friends
• Join the local Open source
communities
!
Please Don’t hesitate to ask questions
And
Please Don’t hesitate to answer questions
How to use them Right?
What is the aim of the project?
What is the scope of the project?
How many time or stages to commit?
How many users you want to support on
each stage?
How to use them Right?
Does the product need servers?
Does the servers need high-availability?
How important of the data?
How frequent of the data update?
How frequent of the data request?
How large of the data set?
What is the relations between each data?
How many dimensions?
How to use them Right?
Think about the behaviour of the user.
!
How many request and update on the
user on each time using?
!
Does the user accept the down time?
How long?
How to use them Right?
The user has to see the update
“Instantly”.
The other users also have to see the
update “Instantly”.
What is the meaning of “Instantly/Now/
Present”?
Does the user accept delay?
!
What will happen if the user saw an Error
How to use them Right?
Those questions you have to ask yourself
before you start your project.
Software is not totally virtual, Software is
also limited by the physical hardwares.
!
Different Answers will affect the use of
technology, tools, design, UX,
Development Time & Cost.
How to use them Right?
Security is Important. Do it first. It is hard
to change afterward.
Hacking is everywhere.
Don’t think small site won’t get attack.
Beware SQL injection, API/CGI injection
!
Use the Right security method, especially
in Password store and Password
Recovering.
How to use them Right?
System Design: Think Large
But execute in small scope first.
!
!
Large system = many components
= complicate
= Time
= Money
How to use them Right?
Think Large = Prepared how to scale up
!
Start in small scope = few components
= Less code
= Less bug
= easy to fix
How to use them Right?
Less is More
!
Get feedback from users and change
much easier.
!
Time == Money
How to use them Right?
Database is not just a Data bin.
A good data structure
= better organise
= better indexing
= better performance
= faster
Repacation == High availability
Backup == Data Recovery
How to use them Right?
Web server:
Concurrency User
Connection Pool
Proxy
Cache
Message Queue
Deployment tools
Monitoring tools
How to use them Right?
How to use them Right?
Source Code Version Controlling
- Git, SVN, CVS…
!
- Use branch on development
- Use branch on Testing
- Use Tag for Production
!
- Any Bug Fixing, use branch and merge
How to use them Right?
Example
How to use them Right?
• Google is your good friend
• Github is your good friend
• Forums are also your good friends
• Join the local Open source
communities
!
Please Don’t hesitate to ask questions
And
Please Don’t hesitate to answer questions
Q & A
Thanks.

Contenu connexe

Similaire à How Open Source / Open Technology Could Help On Your Project

Flow: A living full-stack framework for the web
Flow: A living full-stack framework for the webFlow: A living full-stack framework for the web
Flow: A living full-stack framework for the websebastian sastre
 
Tech Thursdays: Building Products
Tech Thursdays: Building ProductsTech Thursdays: Building Products
Tech Thursdays: Building ProductsHayden Bleasel
 
Mortar: Hadoop-as-a-Service + Open Source Framework | AWS re: Invent public …
Mortar: Hadoop-as-a-Service + Open Source Framework | AWS re: Invent public …Mortar: Hadoop-as-a-Service + Open Source Framework | AWS re: Invent public …
Mortar: Hadoop-as-a-Service + Open Source Framework | AWS re: Invent public …mortardata
 
Turning huge ships - Open Source and Microsoft
Turning huge ships - Open Source and MicrosoftTurning huge ships - Open Source and Microsoft
Turning huge ships - Open Source and MicrosoftChristian Heilmann
 
The spirit of Opensource - lets plan to contribute ! @JWC16
The spirit of Opensource - lets plan to contribute ! @JWC16The spirit of Opensource - lets plan to contribute ! @JWC16
The spirit of Opensource - lets plan to contribute ! @JWC16Parth Lawate
 
Michael Widenius
Michael WideniusMichael Widenius
Michael WideniusCodeFest
 
Stapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San FranciscoStapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San FranciscoChristian Heilmann
 
Info Session GDSC USICT
Info Session GDSC USICTInfo Session GDSC USICT
Info Session GDSC USICTDSCUSICT
 
Full stack conference talk slides
Full stack conference talk slidesFull stack conference talk slides
Full stack conference talk slidesSameer Al-Sakran
 
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
 
Contributing to an Open Source Project 101
Contributing to an Open Source Project 101Contributing to an Open Source Project 101
Contributing to an Open Source Project 101POSSCON
 
How do we drive tech changes
How do we drive tech changesHow do we drive tech changes
How do we drive tech changesJaewoo Ahn
 
SIM RTP Meeting - So Who's Using Open Source Anyway?
SIM RTP Meeting - So Who's Using Open Source Anyway?SIM RTP Meeting - So Who's Using Open Source Anyway?
SIM RTP Meeting - So Who's Using Open Source Anyway?Alex Meadows
 
The State of Frontend
The State of FrontendThe State of Frontend
The State of FrontendJimit Shah
 
Surviving a Hackathon and Beyond
Surviving a Hackathon and BeyondSurviving a Hackathon and Beyond
Surviving a Hackathon and Beyondimoneytech
 
The front end toolkit
The front end toolkitThe front end toolkit
The front end toolkitsamuel-holt
 
Systems Monitoring with Prometheus (Devops Ireland April 2015)
Systems Monitoring with Prometheus (Devops Ireland April 2015)Systems Monitoring with Prometheus (Devops Ireland April 2015)
Systems Monitoring with Prometheus (Devops Ireland April 2015)Brian Brazil
 

Similaire à How Open Source / Open Technology Could Help On Your Project (20)

Ice dec05-04-wan leung
Ice dec05-04-wan leungIce dec05-04-wan leung
Ice dec05-04-wan leung
 
Flow: A living full-stack framework for the web
Flow: A living full-stack framework for the webFlow: A living full-stack framework for the web
Flow: A living full-stack framework for the web
 
Tech Thursdays: Building Products
Tech Thursdays: Building ProductsTech Thursdays: Building Products
Tech Thursdays: Building Products
 
Mortar: Hadoop-as-a-Service + Open Source Framework | AWS re: Invent public …
Mortar: Hadoop-as-a-Service + Open Source Framework | AWS re: Invent public …Mortar: Hadoop-as-a-Service + Open Source Framework | AWS re: Invent public …
Mortar: Hadoop-as-a-Service + Open Source Framework | AWS re: Invent public …
 
Turning huge ships - Open Source and Microsoft
Turning huge ships - Open Source and MicrosoftTurning huge ships - Open Source and Microsoft
Turning huge ships - Open Source and Microsoft
 
The spirit of Opensource - lets plan to contribute ! @JWC16
The spirit of Opensource - lets plan to contribute ! @JWC16The spirit of Opensource - lets plan to contribute ! @JWC16
The spirit of Opensource - lets plan to contribute ! @JWC16
 
Michael Widenius
Michael WideniusMichael Widenius
Michael Widenius
 
Stapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San FranciscoStapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San Francisco
 
Info Session GDSC USICT
Info Session GDSC USICTInfo Session GDSC USICT
Info Session GDSC USICT
 
Full stack conference talk slides
Full stack conference talk slidesFull stack conference talk slides
Full stack conference talk slides
 
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!
 
Contributing to an Open Source Project 101
Contributing to an Open Source Project 101Contributing to an Open Source Project 101
Contributing to an Open Source Project 101
 
How do we drive tech changes
How do we drive tech changesHow do we drive tech changes
How do we drive tech changes
 
SIM RTP Meeting - So Who's Using Open Source Anyway?
SIM RTP Meeting - So Who's Using Open Source Anyway?SIM RTP Meeting - So Who's Using Open Source Anyway?
SIM RTP Meeting - So Who's Using Open Source Anyway?
 
2014 Picking a Platform by Anand Kulkarni
2014 Picking a Platform by Anand Kulkarni2014 Picking a Platform by Anand Kulkarni
2014 Picking a Platform by Anand Kulkarni
 
The State of Frontend
The State of FrontendThe State of Frontend
The State of Frontend
 
Surviving a Hackathon and Beyond
Surviving a Hackathon and BeyondSurviving a Hackathon and Beyond
Surviving a Hackathon and Beyond
 
The front end toolkit
The front end toolkitThe front end toolkit
The front end toolkit
 
Systems Monitoring with Prometheus (Devops Ireland April 2015)
Systems Monitoring with Prometheus (Devops Ireland April 2015)Systems Monitoring with Prometheus (Devops Ireland April 2015)
Systems Monitoring with Prometheus (Devops Ireland April 2015)
 
From open source labs to ceo methods and advice by sysfera
From open source labs to ceo methods and advice by sysferaFrom open source labs to ceo methods and advice by sysfera
From open source labs to ceo methods and advice by sysfera
 

Plus de Wan Leung Wong

用Flutter 開發Linux Desktop Application
用Flutter 開發Linux Desktop Application用Flutter 開發Linux Desktop Application
用Flutter 開發Linux Desktop ApplicationWan Leung Wong
 
iOS Development, with Swift and XCode
iOS Development, with Swift and XCodeiOS Development, with Swift and XCode
iOS Development, with Swift and XCodeWan Leung Wong
 
HTML, Javascript and AJAX
HTML, Javascript and AJAXHTML, Javascript and AJAX
HTML, Javascript and AJAXWan Leung Wong
 
Package Management Systems on GNU/Linux
Package Management Systems on GNU/LinuxPackage Management Systems on GNU/Linux
Package Management Systems on GNU/LinuxWan Leung Wong
 
Tinyboy Project - A 3D Printer for Education
Tinyboy Project - A 3D Printer for EducationTinyboy Project - A 3D Printer for Education
Tinyboy Project - A 3D Printer for EducationWan Leung Wong
 
HKCOTA 海外見聞錄 - 思考香港IT未來發展 - HKOSCON 2015
HKCOTA 海外見聞錄 - 思考香港IT未來發展 - HKOSCON 2015HKCOTA 海外見聞錄 - 思考香港IT未來發展 - HKOSCON 2015
HKCOTA 海外見聞錄 - 思考香港IT未來發展 - HKOSCON 2015Wan Leung Wong
 
Ecosystem of IT Industry - Sitcon x HK - 2016
Ecosystem of IT Industry - Sitcon x HK - 2016Ecosystem of IT Industry - Sitcon x HK - 2016
Ecosystem of IT Industry - Sitcon x HK - 2016Wan Leung Wong
 
Hacking Saturday 2018-05 - flutter
Hacking Saturday 2018-05 - flutterHacking Saturday 2018-05 - flutter
Hacking Saturday 2018-05 - flutterWan Leung Wong
 
What is IT - Sitcoin x HK 2018
What is IT - Sitcoin x HK 2018What is IT - Sitcoin x HK 2018
What is IT - Sitcoin x HK 2018Wan Leung Wong
 
Hacking Saturday - 2018-05
Hacking Saturday - 2018-05Hacking Saturday - 2018-05
Hacking Saturday - 2018-05Wan Leung Wong
 
中國曆法 Barcamphk - 2017
中國曆法 Barcamphk - 2017中國曆法 Barcamphk - 2017
中國曆法 Barcamphk - 2017Wan Leung Wong
 
Ecosystem of IT Industry - Sitcon x HK - 2017
Ecosystem of IT Industry - Sitcon x HK - 2017Ecosystem of IT Industry - Sitcon x HK - 2017
Ecosystem of IT Industry - Sitcon x HK - 2017Wan Leung Wong
 
Security Solution - Luckey Application on Crypto-currency and Personal Bankin...
Security Solution - Luckey Application on Crypto-currency and Personal Bankin...Security Solution - Luckey Application on Crypto-currency and Personal Bankin...
Security Solution - Luckey Application on Crypto-currency and Personal Bankin...Wan Leung Wong
 
Tinyboy, A 3D Printer for Student
Tinyboy, A 3D Printer for StudentTinyboy, A 3D Printer for Student
Tinyboy, A 3D Printer for StudentWan Leung Wong
 
Tinyboy Updates on 1st quarter of 2015
Tinyboy Updates on 1st quarter of 2015Tinyboy Updates on 1st quarter of 2015
Tinyboy Updates on 1st quarter of 2015Wan Leung Wong
 
Tinyboy Project - A 3D printer for student
Tinyboy Project - A 3D printer for studentTinyboy Project - A 3D printer for student
Tinyboy Project - A 3D printer for studentWan Leung Wong
 
Some cases of open source products that have great impact in recent years
Some cases of open source products that have great impact in recent yearsSome cases of open source products that have great impact in recent years
Some cases of open source products that have great impact in recent yearsWan Leung Wong
 
Virtualization - Kernel Virtual Machine (KVM)
Virtualization - Kernel Virtual Machine (KVM)Virtualization - Kernel Virtual Machine (KVM)
Virtualization - Kernel Virtual Machine (KVM)Wan Leung Wong
 

Plus de Wan Leung Wong (20)

用Flutter 開發Linux Desktop Application
用Flutter 開發Linux Desktop Application用Flutter 開發Linux Desktop Application
用Flutter 開發Linux Desktop Application
 
iOS Development, with Swift and XCode
iOS Development, with Swift and XCodeiOS Development, with Swift and XCode
iOS Development, with Swift and XCode
 
HTML, Javascript and AJAX
HTML, Javascript and AJAXHTML, Javascript and AJAX
HTML, Javascript and AJAX
 
Package Management Systems on GNU/Linux
Package Management Systems on GNU/LinuxPackage Management Systems on GNU/Linux
Package Management Systems on GNU/Linux
 
Tinyboy Project - A 3D Printer for Education
Tinyboy Project - A 3D Printer for EducationTinyboy Project - A 3D Printer for Education
Tinyboy Project - A 3D Printer for Education
 
HKCOTA 海外見聞錄 - 思考香港IT未來發展 - HKOSCON 2015
HKCOTA 海外見聞錄 - 思考香港IT未來發展 - HKOSCON 2015HKCOTA 海外見聞錄 - 思考香港IT未來發展 - HKOSCON 2015
HKCOTA 海外見聞錄 - 思考香港IT未來發展 - HKOSCON 2015
 
Ecosystem of IT Industry - Sitcon x HK - 2016
Ecosystem of IT Industry - Sitcon x HK - 2016Ecosystem of IT Industry - Sitcon x HK - 2016
Ecosystem of IT Industry - Sitcon x HK - 2016
 
Hacking Saturday 2018-05 - flutter
Hacking Saturday 2018-05 - flutterHacking Saturday 2018-05 - flutter
Hacking Saturday 2018-05 - flutter
 
What is IT - Sitcoin x HK 2018
What is IT - Sitcoin x HK 2018What is IT - Sitcoin x HK 2018
What is IT - Sitcoin x HK 2018
 
Hacking Saturday - 2018-05
Hacking Saturday - 2018-05Hacking Saturday - 2018-05
Hacking Saturday - 2018-05
 
中國曆法 Barcamphk - 2017
中國曆法 Barcamphk - 2017中國曆法 Barcamphk - 2017
中國曆法 Barcamphk - 2017
 
Ecosystem of IT Industry - Sitcon x HK - 2017
Ecosystem of IT Industry - Sitcon x HK - 2017Ecosystem of IT Industry - Sitcon x HK - 2017
Ecosystem of IT Industry - Sitcon x HK - 2017
 
Security Solution - Luckey Application on Crypto-currency and Personal Bankin...
Security Solution - Luckey Application on Crypto-currency and Personal Bankin...Security Solution - Luckey Application on Crypto-currency and Personal Bankin...
Security Solution - Luckey Application on Crypto-currency and Personal Bankin...
 
Tinyboy, A 3D Printer for Student
Tinyboy, A 3D Printer for StudentTinyboy, A 3D Printer for Student
Tinyboy, A 3D Printer for Student
 
Tinyboy Updates on 1st quarter of 2015
Tinyboy Updates on 1st quarter of 2015Tinyboy Updates on 1st quarter of 2015
Tinyboy Updates on 1st quarter of 2015
 
Tinyboy Project - A 3D printer for student
Tinyboy Project - A 3D printer for studentTinyboy Project - A 3D printer for student
Tinyboy Project - A 3D printer for student
 
Some cases of open source products that have great impact in recent years
Some cases of open source products that have great impact in recent yearsSome cases of open source products that have great impact in recent years
Some cases of open source products that have great impact in recent years
 
Virtualization - Kernel Virtual Machine (KVM)
Virtualization - Kernel Virtual Machine (KVM)Virtualization - Kernel Virtual Machine (KVM)
Virtualization - Kernel Virtual Machine (KVM)
 
DIY Gateway
DIY GatewayDIY Gateway
DIY Gateway
 
Raspberry pi workshop
Raspberry pi workshopRaspberry pi workshop
Raspberry pi workshop
 

Dernier

Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....ShaimaaMohamedGalal
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 

Dernier (20)

Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 

How Open Source / Open Technology Could Help On Your Project

  • 1. How Opensource / Open Technology could help on your Project / Startup wanleung - 19th Oct 2013 updated - 1st Mar 2014,12th Apr 2014
  • 2. This talk is for Who? • Newbie in the Open source world • Startups • For those who want to start a new software project ! • For those who want to work into the software development field.
  • 3. This talk is for Who? For those, Who think writing Software is just a piece of cake, ! something like just clicking a button, ! a Facebook clone or Whatsapp clone will be come out in 60 seconds =P (joking)
  • 4. About Me ● Vice-Chairman of the HKLUG ● Vice-President of HKCOTA ● Over 10 years experience on Linux ● Experience on Backend services, website, web API development ● Experience on virtualization and Cloud Farm building ● http://about.me/wanleung !
  • 5. About Me ● Co-founder of LinkOmnia ● http://www.linkomnia.com ● Providing services on Consultancy and Customized Products ● Strengths on Cloud Computing and Big Data
  • 6. What is Open Source? In production and development, open source as a development model promotes ! a) universal access via free license to a product's design or blueprint, and ! b) universal redistribution of that design or blueprint, including subsequent improvements to it by anyone.
  • 7. Why use Opensource? ● Free Licenses (MIT, Apache, LGPL...) ● Cost effective ● existing solutions / similar solutions - need not to reinvent the wheel ● Have Rights to modify and fit into the business models / the requirement of the clients. ● Helps are all over the world
  • 8. What can we use? Database: • (SQL) PostgreSQL, MySQL... • (NoSQL) Redis, Cassandra, MongoDB... • (Graph DB) neo4j, Rexster… ! File base: SQLite, BDB...
  • 9. What can we use? Common Web / API Frameworks: • Dancer, Catalyst... (Perl) • Django, Grok, Pylons, TurboGears... (Python) • Kohana, cakephp… (Php) • Revel, go-restful... (Go lang) • Ruby on Rails (Ruby) • mojito, blueprint (node.js)
  • 10. What can we use? • Nginx, Apache, Tomcat (webserver, reverse proxy) • haproxy, pound (reverse proxy) • squid (web proxy) • ImageMagick, GIMP, OpenCV...(Image Processing) • RabbitMQ, ActiveMQ (Message Queue) • Postfix, exim (Mail Server), dovecot
  • 11. What can we use? • LibreOffice, KOffice, Abiwords, Numeric(Office Tools) • VSFTPD, ProFTPD (FTP Server) ! Bootstrap (CSS), jQuery (Javascript), Prototype (Javascript) Git, JMeter… ! And More, and more...
  • 12. What can we use? Arduino, Raspberry Pi… (open hardware) ! AeroQuad (Multicoptor open source project) ! RepRap (open 3D Printing)… ! And More, and more...
  • 13.
  • 14.
  • 15.
  • 16. What can we use? • Google is your good friend • Github is your good friend • Forums are also your good friends • Join the local Open source communities ! Please Don’t hesitate to ask questions And Please Don’t hesitate to answer questions
  • 17. How to use them Right? What is the aim of the project? What is the scope of the project? How many time or stages to commit? How many users you want to support on each stage?
  • 18. How to use them Right? Does the product need servers? Does the servers need high-availability? How important of the data? How frequent of the data update? How frequent of the data request? How large of the data set? What is the relations between each data? How many dimensions?
  • 19. How to use them Right? Think about the behaviour of the user. ! How many request and update on the user on each time using? ! Does the user accept the down time? How long?
  • 20. How to use them Right? The user has to see the update “Instantly”. The other users also have to see the update “Instantly”. What is the meaning of “Instantly/Now/ Present”? Does the user accept delay? ! What will happen if the user saw an Error
  • 21. How to use them Right? Those questions you have to ask yourself before you start your project. Software is not totally virtual, Software is also limited by the physical hardwares. ! Different Answers will affect the use of technology, tools, design, UX, Development Time & Cost.
  • 22. How to use them Right? Security is Important. Do it first. It is hard to change afterward. Hacking is everywhere. Don’t think small site won’t get attack. Beware SQL injection, API/CGI injection ! Use the Right security method, especially in Password store and Password Recovering.
  • 23. How to use them Right? System Design: Think Large But execute in small scope first. ! ! Large system = many components = complicate = Time = Money
  • 24. How to use them Right? Think Large = Prepared how to scale up ! Start in small scope = few components = Less code = Less bug = easy to fix
  • 25. How to use them Right? Less is More ! Get feedback from users and change much easier. ! Time == Money
  • 26. How to use them Right? Database is not just a Data bin. A good data structure = better organise = better indexing = better performance = faster Repacation == High availability Backup == Data Recovery
  • 27. How to use them Right? Web server: Concurrency User Connection Pool Proxy Cache Message Queue Deployment tools Monitoring tools
  • 28. How to use them Right?
  • 29. How to use them Right? Source Code Version Controlling - Git, SVN, CVS… ! - Use branch on development - Use branch on Testing - Use Tag for Production ! - Any Bug Fixing, use branch and merge
  • 30. How to use them Right? Example
  • 31. How to use them Right? • Google is your good friend • Github is your good friend • Forums are also your good friends • Join the local Open source communities ! Please Don’t hesitate to ask questions And Please Don’t hesitate to answer questions