how open source / open technology could help on your project
TRANSCRIPT
![Page 1: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/1.jpg)
How Opensource / Open Technology could help on your Project / Startupwanleung - 19th Oct 2013 updated - 1st Mar 2014,12th Apr 2014
![Page 2: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/2.jpg)
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.
![Page 3: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/3.jpg)
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)
![Page 4: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/4.jpg)
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 !
![Page 5: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/5.jpg)
About Me● Co-founder of LinkOmnia ● http://www.linkomnia.com ● Providing services on Consultancy and
Customized Products ● Strengths on Cloud Computing and Big
Data
![Page 6: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/6.jpg)
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.
![Page 7: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/7.jpg)
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
![Page 8: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/8.jpg)
What can we use?Database: • (SQL) PostgreSQL, MySQL... • (NoSQL) Redis, Cassandra,
MongoDB... • (Graph DB) neo4j, Rexster… !File base: SQLite, BDB...
![Page 9: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/9.jpg)
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)
![Page 10: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/10.jpg)
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
![Page 11: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/11.jpg)
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...
![Page 12: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/12.jpg)
What can we use?Arduino, Raspberry Pi… (open hardware) !AeroQuad (Multicoptor open source project) !RepRap (open 3D Printing)… !And More, and more...
![Page 13: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/13.jpg)
![Page 14: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/14.jpg)
![Page 15: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/15.jpg)
![Page 16: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/16.jpg)
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
![Page 17: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/17.jpg)
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?
![Page 18: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/18.jpg)
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?
![Page 19: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/19.jpg)
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?
![Page 20: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/20.jpg)
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
![Page 21: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/21.jpg)
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.
![Page 22: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/22.jpg)
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.
![Page 23: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/23.jpg)
How to use them Right?System Design: Think Large But execute in small scope first. !!Large system = many components = complicate = Time = Money
![Page 24: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/24.jpg)
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
![Page 25: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/25.jpg)
How to use them Right?Less is More !Get feedback from users and change much easier. !Time == Money
![Page 26: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/26.jpg)
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
![Page 27: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/27.jpg)
How to use them Right?Web server: Concurrency User Connection Pool Proxy Cache Message Queue Deployment tools Monitoring tools
![Page 28: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/28.jpg)
How to use them Right?
![Page 29: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/29.jpg)
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
![Page 30: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/30.jpg)
How to use them Right?Example
![Page 31: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/31.jpg)
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
![Page 32: How Open Source / Open Technology Could Help On Your Project](https://reader030.vdocuments.mx/reader030/viewer/2022032420/55a4fc4e1a28ab762e8b46c6/html5/thumbnails/32.jpg)
Q & A Thanks.