python + nosql in animations

51
官順暉 in Anima’ons NoSQL Python +

Upload: shuen-huei-guan

Post on 27-Jun-2015

6.505 views

Category:

Technology


0 download

DESCRIPTION

"Python + NoSQL in Animations", a talk I gave in PyConTW 2013.

TRANSCRIPT

Page 1: Python + NoSQL in Animations

官順暉

in  Anima'ons  NoSQL  

Python  +  

Page 2: Python + NoSQL in Animations

What  can  you  expect?  

One  man's  journey  of  learning  python  in  anima'on  industry.  

Page 3: Python + NoSQL in Animations

http://www.flickr.com/photos/nidalm/3523404908/

Conf. Room #2: Sphinx Documentation Conf. Room #1: Pyramid Pro

Page 4: Python + NoSQL in Animations

•  In  Gaming,  anima*on,  VFX  industry?  

• Coding  in  Autodesk  Maya?  

http://imperialphoenix.files.wordpress.com/2011/05/hands-up.jpg

http://inequalitybyinteriordesign.wordpress.com/2012/03/09/glitterbomb/

Page 5: Python + NoSQL in Animations

NoSQL?      CouchDB?    MongoDB?  

http://commons.wikimedia.org/wiki/File:Core-repository_hg.jpg

Page 6: Python + NoSQL in Animations

官順暉  (Drake)  R&D  Manager,  Digimax  Inc.  

@drakeguan  

Page 7: Python + NoSQL in Animations

http://hohobear.wordpress.com/2010/12/19/1161/

Page 8: Python + NoSQL in Animations

http://blog.codility.com/2012/05/codility-on-acm-icpc.html

Page 9: Python + NoSQL in Animations

http://www.nakuz.com/bbs/viewthread.php?action=printable&tid=4352983&sid=3XQfMO

Page 10: Python + NoSQL in Animations

Peregrine  /  Brilliance  Studio  

Page 11: Python + NoSQL in Animations
Page 12: Python + NoSQL in Animations

•  太極影⾳音 (Digimax Inc.) •  Animation Studio / Post-production •  ~100 employees •  artist : engineer = 70% : 10%

Page 13: Python + NoSQL in Animations

Digimax  Produc'on  

Page 14: Python + NoSQL in Animations
Page 15: Python + NoSQL in Animations

Rookies!  Let's  build    our  anima'on  pipeline!  

http://paceaustralia.wordpress.com/2011/03/01/the-difference-between-a-sales-funnel-and-a-sales-pipeline/

Page 16: Python + NoSQL in Animations
Page 17: Python + NoSQL in Animations
Page 18: Python + NoSQL in Animations

A  project  for  coding  in  Python  

http://www.wallscorner.com/matrix-coding-wallpapers.html

Page 19: Python + NoSQL in Animations

GUI  Programming  is  King  

http://www.joelonsoftware.com/uibook/fog0000000249.html

Page 20: Python + NoSQL in Animations

PyGTK,  PyQt  or  WxPython?  

http://commons.wikimedia.org/wiki/File:WxPython-logo.png http://www.pygtk.org/ http://aralbalkan.com/1675/

Page 21: Python + NoSQL in Animations

http://blog.narendrasisodiya.com/2011/04/learn-wxpython-using-example-wxpython.html

Page 22: Python + NoSQL in Animations
Page 23: Python + NoSQL in Animations

• Version  control  for  ar'sts  • Meaningful  color/layout  • All-­‐in-­‐one  >>  separated  • GUI  +  mul'threading  

http://misswargoenglish.wikispaces.com/Dracula

Page 24: Python + NoSQL in Animations

Let's  talk  about  anima'on  

Page 25: Python + NoSQL in Animations
Page 26: Python + NoSQL in Animations
Page 27: Python + NoSQL in Animations

Programming  in  Maya  

Page 28: Python + NoSQL in Animations
Page 29: Python + NoSQL in Animations
Page 30: Python + NoSQL in Animations
Page 31: Python + NoSQL in Animations

Python  in  Maya!  

http://usa.autodesk.com/adsk/servlet/item?linkID=9242256&id=13587662&siteID=123112

Page 32: Python + NoSQL in Animations
Page 33: Python + NoSQL in Animations
Page 34: Python + NoSQL in Animations
Page 35: Python + NoSQL in Animations
Page 36: Python + NoSQL in Animations

Ever  wondering    users'  behaviors?  

Page 37: Python + NoSQL in Animations
Page 38: Python + NoSQL in Animations

Logging  first  name value

level DEBUG

user stella

host pc0111

ip 192.168.101.111

os posix

pid 12039

timestamp 2011-12-22T16:46:55Z

klass CinemaSelectorController

function OnModelUpdateShots

params (['sh0010', 'sh0020', 'sh0030', 'sh0040', 'sh0050'], )

filename src/core/controller/CinemaSelectorController.py

Page 39: Python + NoSQL in Animations

The  most  clicked  bu\ons  (func'ons)?  

http://commons.wikimedia.org/wiki/File:Panic_button.jpg

Page 40: Python + NoSQL in Animations

http://couchdb.apache.org/

Page 41: Python + NoSQL in Animations

The  most  clicked  bu\ons  (func'ons)?  

Page 42: Python + NoSQL in Animations

Pre-­‐defined  behavior  analysis  

l  The  crash  rate  of  this  app?  l  Who  and  how  many  people  works  in  weekend?  l  The  heartbeat  of  the  produc*on  team?  l  ….  

Page 43: Python + NoSQL in Animations

Behavior  logging/mining  in  CouchDB  

• 秒殺  • 易⽤用  •  JSON  loves  Dict  

Cons  

•  View  by  MapReduce  • 第⼀一次產⽣生  View  超慢  •  Disk  monster  •  Javascript?!  

Pros  

Page 44: Python + NoSQL in Animations

Structured?      Database  in  anima'on!  

http://www.archello.com/sites/default/files/imagecache/media_image/story/media/09-12-15_Close_Up_IMAGIC_WEAVE_(26)(1).jpg

Page 45: Python + NoSQL in Animations
Page 46: Python + NoSQL in Animations
Page 47: Python + NoSQL in Animations

http://blog.prowork.me/post/41349307980/inserts-and-the-new-mongodb-php-driver-1-3

Page 48: Python + NoSQL in Animations

http://www.guardian.co.uk/news/datablog/2013/apr/25/forget-big-data-small-data-revolution

We risk overlooking the much more important story here, the real revolution, which is the mass democratisation of the means of access, storage and processing of data. This story isn't about large organisations running parallel software on tens of thousand of servers, but about more people than ever being able to collaborate effectively around a distributed ecosystem of information, an ecosystem of small data.

Page 49: Python + NoSQL in Animations

Asset  management  for  crea've  environment  

• DB  schema?  • Query  performance?  •  JIT  dev/deploy?  

http://www.flickr.com/photos/bluishorange/6327156918/

Page 50: Python + NoSQL in Animations

Takeaway  

• Version  control  for  non-­‐programmer  is  an  un-­‐explored  area.  

• Python  dominates  anima*on/VFX  industry.  

• Anyone  can  benefit  from  NoSQL  and  other  cloud  techniques.  

http://pennywize.co/takeaway-rather-fakeaway/boxed-lunch-2/

Page 51: Python + NoSQL in Animations