+ All Categories
Home > Technology > Pinax Presentation at DjangoCon 2008

Pinax Presentation at DjangoCon 2008

Date post: 08-May-2015
Category:
Upload: jtauber
View: 3,186 times
Download: 2 times
Share this document with a friend
Description:
A talk on the Pinax platform at DjangoCon 2008 by James Tauber.
47
history, state and vision James Tauber
Transcript
Page 1: Pinax Presentation at DjangoCon 2008

history, state and vision

James Tauber

Page 2: Pinax Presentation at DjangoCon 2008

Russ Keith-Magee

Page 3: Pinax Presentation at DjangoCon 2008

idea realisation

Page 4: Pinax Presentation at DjangoCon 2008

when is it okay to reinvent the wheel?

Page 5: Pinax Presentation at DjangoCon 2008

web technologistvs

web site creator

Page 6: Pinax Presentation at DjangoCon 2008

Leonardo

Page 7: Pinax Presentation at DjangoCon 2008

Leonardo

Python Python

Django

Leonardo

Page 8: Pinax Presentation at DjangoCon 2008

why layer?

• portability

• reusability

• efficiency through compromise

Page 9: Pinax Presentation at DjangoCon 2008

Quisition

• currently has:• announcements• sign up• deck searching and sort• user analytics

• want to add:• rating, tagging and commenting

on decks• groups, friendships• membership levels• notifications

Page 10: Pinax Presentation at DjangoCon 2008

PyCon 2007:The Birth of the (second)Hotclub of France

• reusable apps

• app conventions

• mailing list

• some discussion but never got far

Page 11: Pinax Presentation at DjangoCon 2008

•django-tagging•django-voting•django-registration

Page 12: Pinax Presentation at DjangoCon 2008

Potter Predictions

• send invitations• connect to friends• make comments on

predictions• tag prediction• mass mailout to

users

Page 13: Pinax Presentation at DjangoCon 2008

| I vi | ii V | I vi | ii V || I I7 | IV iv | I V | I || III7 | III7 | VI7 | VI7 || II7 | II7 | V7 | V7 |

Page 14: Pinax Presentation at DjangoCon 2008

rhythm changes

contrafacts

Page 15: Pinax Presentation at DjangoCon 2008

•django-friends•django-notification•django-mailer•django-things

Page 16: Pinax Presentation at DjangoCon 2008

PyCon 2008:The Birth of Tabula Rasa

If you want to build a ship, don’t drum up the men to gather wood, divide the work and give orders.

Instead, teach them to yearn for the vast and endless sea.

– Antoine de Saint-Exupéry

build a dummy site to guidedevelopment of apps

Page 17: Pinax Presentation at DjangoCon 2008

Tony Hauber’sSummer of Code

Page 18: Pinax Presentation at DjangoCon 2008

PinaxSo far it's just my new django-email-confirmation app tied together with password change and reset, login/logout, with the beginnings of a tab-style UI. There's a ton more I want to refactor out of my existing websites to put into it as well as adding support for OpenID and the stuff I'm starting to do for django-friends.

Even if one doesn't use Pinax as the starting point of a website, I'm hoping it will prove very useful for another goal, namely a "host" project to develop and tryout reusable apps.

– blog post 10th May 2008

proposed by Orestis Markou

Page 19: Pinax Presentation at DjangoCon 2008

starting point for new projects

scaffolding for developing new apps

app conventions

reusable apps

+

Page 20: Pinax Presentation at DjangoCon 2008

Memorial DayWeekend...

Page 21: Pinax Presentation at DjangoCon 2008

•django-friends•django-notification•django-mailer•django-email-confirmation

Page 22: Pinax Presentation at DjangoCon 2008

•user profile pages•gravatars•user-to-user messages

•via django-messages

•announcements•a new app, django-announcements

•OpenID support•invitations to join

Page 23: Pinax Presentation at DjangoCon 2008
Page 24: Pinax Presentation at DjangoCon 2008

•translations into German, Spanish and Swedish•a new design / logo•auto-completion on message receipt field•a basic Twitter clone•OEmbed support in tweets•the beginnings of tribes (i.e. groups)

Page 25: Pinax Presentation at DjangoCon 2008

•63% reusable apps•10% local apps•13% templates•8% localization•5% media•1% util

Page 26: Pinax Presentation at DjangoCon 2008

•localization into Brazilian Portuguese and Hebrew•timezone localization•external blog aggregation•wikis•threaded discussions•bookmarks with voting•contact import•blogs with tagging and threaded comments

By 4th July...

...and 1,000 users on the demo site

Page 27: Pinax Presentation at DjangoCon 2008
Page 28: Pinax Presentation at DjangoCon 2008

It is becoming clear that what was originally intended to be a demo site is a useful site in its own right, irrespective of whether you care or even know about the Pinax platform underlying it. So it will be moving over to a new site with a new identity soon.

– blog post 2nd July 2008

Page 29: Pinax Presentation at DjangoCon 2008
Page 30: Pinax Presentation at DjangoCon 2008

{ n | available(“cloud<n>.com”), n < 30 }=

{ 14, 26, 27, 28 }

Page 31: Pinax Presentation at DjangoCon 2008

a platform for website development

conventions for reusable apps

collection of reusable apps

starting point for new projects

scaffolding for developing new apps

Page 32: Pinax Presentation at DjangoCon 2008
Page 33: Pinax Presentation at DjangoCon 2008
Page 34: Pinax Presentation at DjangoCon 2008
Page 35: Pinax Presentation at DjangoCon 2008

Your Project

Django Django

Pinax

Your Project

Python Python

Page 36: Pinax Presentation at DjangoCon 2008

Django

Pinax

Your Project

the trade off:

how much to fix?how much to make configurable?how much to leavecompletely to site developer?

Page 37: Pinax Presentation at DjangoCon 2008

•openid support•emai l ver i ficat ion•password management•site announcements•a noti ficat ion framework•user-to-user messaging•fr iend invitat ion (both

internal and external to the s ite)

•a basic twitter clone•oembed suppor t•gravatar suppor t

Features

•interest groups (cal led tr ibes)

•projects with basic task and issue management

•threaded discussions•wikis with mult iple markup

suppor t•blogging•bookmarks•tagging•contact impor t (from vCard,

Google or Yahoo)•photo management

Page 38: Pinax Presentation at DjangoCon 2008

•external apps•local apps•libraries•pinax project

Structure of SVN repos

Page 39: Pinax Presentation at DjangoCon 2008

External apps

• all on Google Code Project Hosting• use of svn:externals• half were written independently of Pinax• avoiding “rhythm section apps”• do one thing

Page 40: Pinax Presentation at DjangoCon 2008

External apps

• django-email-confirmation• django-command-extensions• django-robots• django-dbtemplates• django-friends• django-notification• django-mailer• django-messages• django-announcements• django-logging• django-oembed• django-pagination• django-threadedcomments• django-wikiapp

• django-timezones• django-feedutil• django-app-plugins• django-voting• django-tagging• django-bookmarks• django-ajax-validation• django-crashlog• django-photologue• django-avatar• django-gravatar• django-arcade• swaps from django-social-economics• django-locations

Page 41: Pinax Presentation at DjangoCon 2008

Local apps•some core•many are just incubated here

• about• account• analytics• authsub• bbauth• blog• core• django-openidconsumer• django-openidauth• friends_app

• games• lifestream• photos• profiles• projects• tag_app• things• tribes• zwitschern

Page 42: Pinax Presentation at DjangoCon 2008

Libraries

•batteries included•except for PIL•makes for a huge checkout

• dateutil• diff-match-patch• django-atompub (format)• docutils-0.4• feedparser-4.1• gdata.py-1.0.13• geopy-trunk• markdown-1.7• pownce-api-0.2

• python-openid-2.1.1• python-twitter-0.5• python-yadis-1.1.0• pytz-2008b• simplejson-1.9.1• textile-2.0.11• vobject-0.6.6• ybrowserauth

Page 43: Pinax Presentation at DjangoCon 2008

try:    from notification import models as notificationexcept ImportError:    notification = None

if notification:    notification.send(...)

Optional Apps

should really rely on INSTALLED_APPS not path!

Page 44: Pinax Presentation at DjangoCon 2008

we wanted to be part of the reason people upgraded to 1.0, not one of the reasons people didn't need to

Tracking Trunk

Page 45: Pinax Presentation at DjangoCon 2008

Django

Pinax

Social Networks

site

Internets Learning Management Systems

site

site

site

site

site

site

site

site

site

site

site

Django Contrib

Page 46: Pinax Presentation at DjangoCon 2008

http://pinaxproject.com/

Page 47: Pinax Presentation at DjangoCon 2008

One More Thing...


Recommended