If I don't know what Python or Pinax is, why should I care? First slide needs to grab attention. Make a statement: "here's what Django can do for you!"
What is a Modern Framework? HOw does that help me? Here's where a diagrem might help.
something like this. I am sure this isn't accurate but a comparison would be great. Perhaps followed by a software diagram for both. How about a workflow showing the steps to building an application old school versus Django?
Good, its important to name drop to establish credibilty and continuity.
Does this mean the underpinings are already done? How does this improve my need to deploy and maintain a teller application? How does this lower the cost of your company's product? I like this, I think most CIO's would know what a MVC is. How about a contrast of MVC vs MVT?
Again, I think a workflow diagram showing how a developer goes about developing with C++. Visual Basic, verus Python Django would be helpful. Also, a diagram showing the interdependence on Python, Django and Pinax.
I think we need some kind of schematic of the hardware layout: where does the logic reside (local server, central servier, workstation). Is it browser based? Smart clent? Disaster recovery? Version control? Can I run two different versions at the same time (conversions)?
Good, is this where object orientation or SOA resides? So, PInax are pre-assembled objects, DJango is the framework and Python is what? Can that be shown graphically, in some kind of picture?
Again, this needs to be tied back to a CIO's needs: version control, central administration, security, agility, scalability, reliability. etc.
Django, What is it, Why is it cool? - Presentation Transcript
Django, What is it, Why is it cool? 'Cause it is built on Python and has Pinax on top, and they are all Open Source http://oswco.com
Why do I care?
Open Source
Low cost
Platform Agnostic
No vendor lock in
High Performance
Modern architecture
Standards Compliant
Highly Modular
Widely supported
Internationalization support LtR language support
http://oswco.com
Django Is a Python Framework Not just a Web framework What is Python? http://oswco.com
Traditional Approach vs. Django
Build Data Dictionary
Build Data Base Interface
Build Authoring Tools
Build Logic
Paint Templates
Build Data Flow
Done Done Done Done Done Done Traditional Model Django http://oswco.com
Python
An Interpreted Language with extensive corporate usage and sponsorship
Inherently Multiplatform Linux, Windows, Mac (some others)
Inherently Multi Language (multi character support also)
Many "packages" covering a wide variety of domains
Math : scipy
Image Recognition
Corporate sponsorship:
Google
Microsoft (Iron Python)
Sun (Jython)
http://oswco.com
Django
Lots of users:
Google
NASA
PBS
Bit-Bucket
Newspapers
http://oswco.com
Django as a framework
An MVC type framework (Called MVT in Django)
M= Model, The database interface
V= View, Logic for getting stuff in and out of the database
T= Template, The display logic
Closest competitor is Ruby on Rails Microsoft playing catch up in MVC frameworks still almost Beta Java examples are Grails, Spring, Struts or Java Server Faces PHP has dozens Symfony, CodeIgniter
For the Web MVT (or MVC) is as important a concept as "Structured Programming" and dates back to 1979.
Enables easier maintenance and independent development of functional modules with different skill sets
http://oswco.com
Django layers (MVT)
Model ..View...Template
Model
Database interface an abstraction
Supports:
Mysql
MSsql
Oracle
Postgre Sql
IBM Db2
Sql lite
In general: change the DataBase and don't touch your code
Define model, Admin gets generated automatically
So does the database
Most data editing
http://oswco.com
Django View
Most Business logic
edits, calculations
permissions
many libraries available
Context processors:
More advanced business logic
http://oswco.com
Template
Simple template language
Css is separate
designed for non technical users such as designers
Easily able to use other Template models (Jinga)
Can be used with most advanced front end tools:
Ajax
Jquery
Pyjamas (an upcoming Python Web Presentation tool)
Flash
Adobe Air
http://oswco.com
Other Django features
Unique in being built on standard language and able to take advantage of libraries developed for other purposes, Imaging, graphics, scientific calculations and many more.
Extensive configuration file
Different Databases
Different sites
Different operating systems
Different Caching frameworks
Structure allows site optimization across specialized servers
Static media
Media
And now also Pinax which is a collection of pre-configured applications written in Django
http://oswco.com
Other Django features continued
Loosely coupled
Alternative Model layer, Sql Alchemy
Alternative Template layer, Jinga, Jinga2
Many users constantly adding modules and features
http://oswco.com
Pinax
Pre-assembled Django Applications
Permissions
Blog
Social site
Project site
Sales site
http://oswco.com
Tools
Python
Python Debug tools
Django debug toolbar
Eclipse Pydev
Pylint
Pytest Doc test Unit test
Embedded documentation via Sphinx
Change control done with Distributed change control tool GIT (used by the Linux development team)
This text presentation attempts to hit on the highl more
This text presentation attempts to hit on the highlight features and structure of Django and its ecco-system. It is intended as an introduction for those who are curious about , what is it? less
1 comments
Comments 1 - 1 of 1 previous next Post a comment