No Bad Pony¶
by Dr. Russell Keith-McKee
What he does¶
- wotnows.com.au - blogs
- wearehunter.com- music
How is pony formed?¶
- Russell said pony about a silly requirement request
- Cal Henderson said he wanted a magic pony
Bad pony is:¶
- ideas that are just plain wrong (not following pep 8, stupidity)
- impractical ideas (problems that don’t exist, changes design contracts, architecture astronauting)
- Design mismatch (DTL to Jinja, ORM with SQLAlchemy, test framework with Nose)
- Ignores the philosophy (Add GROUP BY HAVING to ORM, Add variables/callables to template language, Add AJAX to forms)
- Just a setting (less is good)
- Wrong direction (feature creep, make dev server multithreaded, add connection pooling)
- Add a backend (more work, hard to test, they provide APIs anyway)
- The community
- The core doesn’t have to do everything
- In fact, the core can’t do anything
- Community has an essential role
- Blessing by core doesn’t make code better
- Add X to contrib
- django-comments
- django-tagging
- Process ponies
- write more blog posts
- have a weekly news summary
- have a nightly tarball download
- Have a continuous build
- Have a precompiled PDF documentation
Massive Features¶
- Support for multiple database connections
- schema evolution
- Support for non-SQL data stores
Some popular tickets¶
- Better related objects admin UI
- Multiple database support
- ModelValidation
- FOR UPDATE in querysets
- Extendable user auth module
- Custom app_label/verbose_name
- Support clearing FileFields
- Identity mapper
- Binary DB fields
- Session-based messages
How do you get your Pony?¶
- Don’t be an ass.
- Offer to help out
- Help out!
- Advocate
- Document
- Write some code
- But follow the process
Earn some trust from the core team!