Download - Tops for Lean Startup
TIPS FOR LEAN STARTUP How we use google cloud platform to achieve cost efficiency
David Chen @ TAGTOO
TAGTOO INTRODUCTION
• appWorks first batch.
• Focus on providing EC advertisement solution
• Built Modern Ad Service to Taiwan Market
• Real Time Bidding (RTB)
• Demand Side Platform (DSP)
• http://www.tagtoo.com.tw/
TAGTOO SNAPSHOT
LEAN STARTUP
LEAN STARTUP
減少浪費(Eliminate Waste) 品質優先(Build Quality In) 創造知識(Create Knowledge) 延遲承諾(Defer Commitment) 快速交付(Deliver Fast) 尊重員⼯工(Respect People) 整體最佳化(Optimize The Whole)
The Machine That Changed the World : The Story of Lean Production
WE LOVE GOOGLE & PYTHON
• App Engine • Handle (huge) Requests
• Compute Engine • Web Crawler (Scrapy)
• Cloud SQL • Dashboard (django admin)
• Big Query • Log Analysis
App Engine
Compute
Cloud SQL
Big Query
MapReduce
Datastore
Blobstore
PRICE
• AppEngine Not free anymore, but still great for startup:
• 28hr free quota for Frontend Instance Hour (class F1)
• Serve 7 * 60 * 60 * 28 ~ 0.7 millions requests for free
• 9hr free quota for Backend Instance Hour
• Discount instance hour (37.5% OFF)
• Charged by month (start at 2013~)
THANK YOU
GOOGLE APP ENGINE • Google Cloud Platform
!
• Google App Engine (PaaS)
• “Google Quality”
• Charged by Instance Hour + rpc API
• Easy to Scale, Force to Scale
• Service, Learn how to use them
• taskqueue, memcache, blobstore, CloudEnd...
GOOGLE APP ENGINE ISSUES
• Platform update roadmap
• https://developers.google.com/appengine/docs/features#Roadmap_Features
• Document (and sample)
• EX: mapreduce DatastoreInputReader
• https://developers.google.com/appengine/docs/python/dataprocessing/readers_writers#DatastoreInputReader
• http://code.google.com/p/appengine-mapreduce/source/browse/trunk/python/src/mapreduce/input_readers.py
WHERE TO FIND HELP?
• Issue Tracking • http://code.google.com/p/googleappengine/issues/list
• Source Code • http://code.google.com/p/appengine-mapreduce/
• Stackoverflow • Nick Johnson • #lucemia
WANTED!!• Position:
• Python Developer • Frontend Developer
• CSS, jQuery, HTML • Website Designer
• Soft Skill: • English reading • Problem solving
• mailto: [email protected]
NEXT MONTH
• How to use google app engine easier/cheaper/smarter
COMPILE JS WITH DOT.PY
• doT.js • the fastest + concise js template engine • http://olado.github.com/doT/index.html • work with node.js
• doT.py • the python implementation of dot.js • Template > Js Function
EXAMPLE OF DOT.PY <input id=”name”> {{=it.value}} </input> <input id=”address”> {{=it.address}} </input>
x.thtml
<script type="text/javascript" src="doT.js"></script><script type=”text/javascript”>$.ajax(‘x.thtml’, function(data) { var tempfn = doT.template(data); $(“#form”)[0].innerHTML = tempfn(value);}); </script>
page.html
<html> <div id=”form”> </div> </html>
!!
page.html
EXAMPLE OF DOT.PY <input id=”name”> {{=it.value}} </input> <input id=”address”> {{=it.address}} </input>
x.thtml
<script type=‘text/javascript’> var pagefn = {{ js_template(“x.thtml”) }}; document.body.innerHTML = pagefn(value); </script> !
page.html
<html> <div id=”form”> </div> </html>
!!
page.htmlfunction anonymous(it) { var out='<input id=”name”> '+(it.value)+'</input><input id=”address”> '+(it.address)+'</input>';return out; }