Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Roboconf: Django on Conference Holding

Roboconf: Django on Conference Holding

2014/05/18 Talk @ PyCON APAC 2014, Academia Sinica, Taipei, Taiwan.

Poren Chiang

May 18, 2014
Tweet

More Decks by Poren Chiang

Other Decks in Technology

Transcript

  1. Roboconf
    Django on Conference Holding
    RSChiang @ PyCON APAC 2014

    View Slide

  2. RSChiang
    ๏Freshman at NTU College of Law
    ๏SITCON ’13, ’14 Lead Administrator
    ๏Open source developer & advocate
    ๏You can reach me at poren.tw
    *except legal inquiries

    View Slide

  3. Outline
    ๏ The origins of Roboconf
    ๏ How does it work
    ๏ Workarounds & Challenges
    ๏ Future aspects

    View Slide

  4. What’s Roboconf?

    View Slide

  5. Students’ Information Technology Conference

    View Slide

  6. Diverse Staff
    = Difficult to Track
    *As an admin

    View Slide

  7. Mailing flood
    15 mails, 1.57 issues avg. each day

    View Slide

  8. ACL Hell
    200+ folders to lock & archive

    View Slide

  9. Jun 11, 2013
    soon after 1st year’s SITCON

    View Slide

  10. View Slide

  11. Roboconf
    a.k.a. ⥏⡨ॲ

    View Slide

  12. SITCON
    SITCON Internal Tracking & Conf. Op. Net.

    View Slide

  13. …each staff would be found with their work done too. (evil smirk)
    “Each reddish finds its own pit.”
    ƪʫϪ⢗➰ʫϪࢻơƫ

    View Slide

  14. Features
    ๏ Issue tracking (with serious notification)
    ๏ Personnel administration
    ๏ Centralized document control
    ๏ Collaborative agenda

    View Slide

  15. Architecture
    “Core” templates, settings, shared code
    Notification 

    queue
    Phased ACL
    Revision-based
    document model
    HTML frontend
    Ajax API

    View Slide

  16. Phased ACL
    Effective 

    Previlege
    “Deny” declaration 

    restricts permission gain
    “Allow” declaration 

    assigns permission
    Permission won’t be assigned 

    unless explicitly granted

    View Slide

  17. Document model
    File
    Revision
    Text blob
    Tracks file system attributes
    (name, stars, permissions…)
    Records commit data & locality
    (enables remote linking)
    Typed content storage

    (not necessary in DB)

    View Slide

  18. Notifications

    View Slide

  19. — Administrators with joy
    “Staff never ignore mails again.
    ‘cause they just can’t get rid of it.”

    View Slide

  20. Results &
    Applications

    View Slide

  21. Issue tracker

    View Slide

  22. Document control

    View Slide

  23. Staff information

    View Slide

  24. me.SITCON
    Side project of
    Creative & Web Team
    (Angular.js x Django)

    View Slide

  25. Challenges
    ๏ Narrow gap between development & production
    • Admin team is constantly on-call to fix bugs
    • Daily new features with 726 commits over 10 months
    ๏ Diverse languages choices in staff members
    • Need to work with Angular.js etc. -> Set forth API

    View Slide

  26. Future aspects
    ๏ Theming & template generalization
    ๏ Fluid, ajax-based rewritten frontend
    ๏ Clear & easy installation instructions
    ๏ Integrated client push notification app

    View Slide

  27. Repository
    github.com/sitcon-tw/staff.sitcon.org

    View Slide

  28. Repository
    github.com/sitcon-tw/staff.sitcon.org
    We’ll rename it soon 

    after generalization!

    View Slide

  29. Thanks!
    RSChiang @ PyCON APAC 2014

    View Slide