Rapid Prototyping with
Python
Renyi Khor!
@renyikhor
!
@pyconmy #pyconmy2015
Ace Ed-Venture Studio
Chemcaper!
A Chemistry Role-playing Game
(http://chemcaper.com)
Ace Ed-Venture Pixel
SchoolHub!
A Cloud-base School Management System
(http://360schoolhub.com)
What’s prototyping ?
• “A prototype is an early sample, model, or release
of a product built to test a concept or process or
to act as a thing to be replicated or learned from.” 

- Wikipedia
• Prototype means “primitive form” in Greek
Why is prototyping important ?
• Fail Early & Cheaper Iterations
• Proof of Concept & Requirements Gathering
• Communications & Testing Team’s Capabilities
• Minimum Viable Product (M.V.P.)
Why Python ?
• Python is easy to learn
• Python focus on speed of development
• Python Standard Library is extensive (Batteries
included)
• PyPi - Python Package Index (Kitchen sink here)
• Language Interoperability (C++ - Cython/boost,
Lisp - CLPython, Prolog - PyLo, Java - Jython, etc.)
The Prototype
• Prototype an E-Shop with REST API and Mobile App.
• Django 

A high-level Python Web Framework
• REST API

Django REST Framework
• Mobile App

Kivy: Cross-platform Python Framework for NUI
Development
Why Django ?
• Django is python - Works well with python libraries
• Django is open source - Works well with open
source tools (Nginx, Redis, etc.)
• ORM*
• Auto-admin
• Built in schema migration that supports multiple
databases
Why Kivy ?
• Kivy is python
• *Kivy language (Similar to Nokia’s QML)
• OpenGL ES 2.0 (Yes, you can build games)
• Crossplatform - Develop on Linux, Windows or OSx
• Bulldozer - Automate build for Linux, Windows,
IOS/OSx, Android.
DEMO
Thank You.
@renyikhor
!
https://www.djangoproject.com/
http://www.django-rest-framework.org/
http://kivy.org/

Rapid Prototyping with Python

  • 1.
    Rapid Prototyping with Python RenyiKhor! @renyikhor ! @pyconmy #pyconmy2015
  • 2.
    Ace Ed-Venture Studio Chemcaper! AChemistry Role-playing Game (http://chemcaper.com)
  • 3.
    Ace Ed-Venture Pixel SchoolHub! ACloud-base School Management System (http://360schoolhub.com)
  • 4.
    What’s prototyping ? •“A prototype is an early sample, model, or release of a product built to test a concept or process or to act as a thing to be replicated or learned from.” 
 - Wikipedia • Prototype means “primitive form” in Greek
  • 5.
    Why is prototypingimportant ? • Fail Early & Cheaper Iterations • Proof of Concept & Requirements Gathering • Communications & Testing Team’s Capabilities • Minimum Viable Product (M.V.P.)
  • 6.
    Why Python ? •Python is easy to learn • Python focus on speed of development • Python Standard Library is extensive (Batteries included) • PyPi - Python Package Index (Kitchen sink here) • Language Interoperability (C++ - Cython/boost, Lisp - CLPython, Prolog - PyLo, Java - Jython, etc.)
  • 7.
    The Prototype • Prototypean E-Shop with REST API and Mobile App. • Django 
 A high-level Python Web Framework • REST API
 Django REST Framework • Mobile App
 Kivy: Cross-platform Python Framework for NUI Development
  • 8.
    Why Django ? •Django is python - Works well with python libraries • Django is open source - Works well with open source tools (Nginx, Redis, etc.) • ORM* • Auto-admin • Built in schema migration that supports multiple databases
  • 9.
    Why Kivy ? •Kivy is python • *Kivy language (Similar to Nokia’s QML) • OpenGL ES 2.0 (Yes, you can build games) • Crossplatform - Develop on Linux, Windows or OSx • Bulldozer - Automate build for Linux, Windows, IOS/OSx, Android.
  • 10.
  • 11.