SlideShare a Scribd company logo
Python Web Frameworks
Kat Chuang
@katychuang
Talk given at NYC Python Meetup - 7/9/2013 1
About me
• Recent PhD Graduate
• Experience with
python:
– Mainly for research
– Web development the
last year in Python
• Freelanced quite a bit
with web development.
– I often worked with non
technical people.
Talk Given at NYC Python Meetup 7/9/2013 2
http://meetup.com/NYC-Pyladies
Btw, there’s a group for lady pythonistas…
Talk Given at NYC Python Meetup 7/9/2013 3
Outline
• Why I’m giving this talk
• Server-Client Architecture
• The User Interface (UI)
• The Wireframe as a boundary object
– Boundary objects are used for communicating
between two distinct groups.
• DRY Principle: “Don’t repeat yourself”
Talk Given at NYC Python Meetup 7/9/2013 4
Why I’m giving this talk
• There’s a lot of people who want a website
– A lot of these people don’t know how to build
websites
A. Some of these people want to learn
B. Some of these people don’t
• This talk is for developers who work for
those without technical knowledge.
Talk Given at NYC Python Meetup 7/9/2013 5
Types of People in Web Development
A. Wants
to learn
B. Do not
want to
learn
Web
developers
Different ways of communicatingTalk Given at NYC Python Meetup 7/9/2013 6
Server-Client Architecture
<Web framework goes here: python>
<User Interface: html/css/javascript>
<Database Queries>
Talk Given at NYC Python Meetup 7/9/2013 7
Navigation Paths
This could be a lot of
html pages.
a.html
b.html
c.html
d.html
e.html
f.html
g.html
h.html
….
Talk Given at NYC Python Meetup 7/9/2013 8
Wireframes
Talk Given at NYC Python Meetup 7/9/2013 9
Spatial Representation
Talk Given at NYC Python Meetup 7/9/2013 10
Document Object Model
This is what the
computer
understands.
Talk Given at NYC Python Meetup 7/9/2013 11
Example: Pydata.Org
Interaction with client: I was given this one
image file. My task was to convert it to
templates, and give the final website at
pydata.org.
Interaction with python: I specified styling and
template tags for each page.
About PyData:
PyData is a community for developers and users
of Python data tools. You can join at pydata.org
Talk Given at NYC Python Meetup 7/9/2013 12
I’ll show you how I
created this part
It is a list of news items that
come from the database.
http://pydata.org
Talk Given at NYC Python Meetup 7/9/2013 13
{% for item in news %}
<div class="news_item">
<b>
<a href="/{{ item.conference }}/news#{{ item.id
}}">
[{{ item.conference }}] {{ item.title }}</a></b>
<div class="pub_date”>
{{ item.date|date:'M d, Y' }}
</div>
{{ item.content|striptags|truncatechars:180 }}
</div>
{% endfor %}
Template Tags
Talk Given at NYC Python Meetup 7/9/2013 14
Template system is a nested hierarchy
Page
Head
Stylesheets
Fonts
Header
Container
Banners
News Section
News Item
News Item
…
Footer
Javascripts Analytics
Talk Given at NYC Python Meetup 7/9/2013 15
Demo
Django note: you can run a local development version:
$ python manage.py runserver
Then view the site in your browser at http://localhost:8000
Talk Given at NYC Python Meetup 7/9/2013 16
THANK YOU.
Kat Chuang, Ph.D.
Contact: @katychuang on twitter | katychuang@gmail.com
Talk Given at NYC Python Meetup 7/9/2013 17

More Related Content

What's hot

Protostrap
ProtostrapProtostrap
Protostrap
Memi Beltrame
 
Seven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloSeven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC Oslo
Christian Heilmann
 
Chrome Extensions Slides Gtugna Kick Off Meeti
Chrome Extensions Slides Gtugna Kick Off MeetiChrome Extensions Slides Gtugna Kick Off Meeti
Chrome Extensions Slides Gtugna Kick Off Meeti
Stephan Linzner
 
The Metro Developer User Group: July 2012 Meetup
The Metro Developer User Group: July 2012 MeetupThe Metro Developer User Group: July 2012 Meetup
The Metro Developer User Group: July 2012 MeetupSam Basu
 
BYOWHC823
BYOWHC823BYOWHC823
BYOWHC823
Thinkful
 
Drupal 8 update: April 2014. Introduction. Modules.
Drupal 8 update: April 2014. Introduction. Modules.Drupal 8 update: April 2014. Introduction. Modules.
Drupal 8 update: April 2014. Introduction. Modules.
Vladimir Roudakov
 
Frontend Crash Course
Frontend Crash CourseFrontend Crash Course
Frontend Crash Course
Aaron Lamphere
 
(WS11) Saša Matijašić (LogIT internet usluge): Quo Vadis, Browser?*
(WS11) Saša Matijašić (LogIT internet usluge): Quo Vadis, Browser?*(WS11) Saša Matijašić (LogIT internet usluge): Quo Vadis, Browser?*
(WS11) Saša Matijašić (LogIT internet usluge): Quo Vadis, Browser?*Web::Strategija
 
Introduction to bootstrap
Introduction to bootstrapIntroduction to bootstrap
Introduction to bootstrap
RaBar Sdiq
 
Building a Moodle theme with bootstrap
Building a Moodle theme with bootstrapBuilding a Moodle theme with bootstrap
Building a Moodle theme with bootstrap
Bas Brands
 

What's hot (10)

Protostrap
ProtostrapProtostrap
Protostrap
 
Seven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloSeven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC Oslo
 
Chrome Extensions Slides Gtugna Kick Off Meeti
Chrome Extensions Slides Gtugna Kick Off MeetiChrome Extensions Slides Gtugna Kick Off Meeti
Chrome Extensions Slides Gtugna Kick Off Meeti
 
The Metro Developer User Group: July 2012 Meetup
The Metro Developer User Group: July 2012 MeetupThe Metro Developer User Group: July 2012 Meetup
The Metro Developer User Group: July 2012 Meetup
 
BYOWHC823
BYOWHC823BYOWHC823
BYOWHC823
 
Drupal 8 update: April 2014. Introduction. Modules.
Drupal 8 update: April 2014. Introduction. Modules.Drupal 8 update: April 2014. Introduction. Modules.
Drupal 8 update: April 2014. Introduction. Modules.
 
Frontend Crash Course
Frontend Crash CourseFrontend Crash Course
Frontend Crash Course
 
(WS11) Saša Matijašić (LogIT internet usluge): Quo Vadis, Browser?*
(WS11) Saša Matijašić (LogIT internet usluge): Quo Vadis, Browser?*(WS11) Saša Matijašić (LogIT internet usluge): Quo Vadis, Browser?*
(WS11) Saša Matijašić (LogIT internet usluge): Quo Vadis, Browser?*
 
Introduction to bootstrap
Introduction to bootstrapIntroduction to bootstrap
Introduction to bootstrap
 
Building a Moodle theme with bootstrap
Building a Moodle theme with bootstrapBuilding a Moodle theme with bootstrap
Building a Moodle theme with bootstrap
 

Viewers also liked

Dissertation defense
Dissertation defenseDissertation defense
Dissertation defenseKat Chuang
 
NYC Pyladies talk May 2, 2013
NYC Pyladies talk May 2, 2013NYC Pyladies talk May 2, 2013
NYC Pyladies talk May 2, 2013
Kat Chuang
 
Comparison of supportive interactions
Comparison of supportive interactionsComparison of supportive interactions
Comparison of supportive interactions
Kat Chuang
 
Insight DE project
Insight DE projectInsight DE project
Insight DE project
Kat Chuang
 
Introduction to Python and Web Programming
Introduction to Python and Web ProgrammingIntroduction to Python and Web Programming
Introduction to Python and Web Programming
David Neiss
 
Snakes on the Web
Snakes on the WebSnakes on the Web
Snakes on the Web
Jacob Kaplan-Moss
 
Python and the Web
Python and the WebPython and the Web
Python and the Web
pycontw
 
Why Python Web Frameworks Are Changing the Web
Why Python Web Frameworks Are Changing the WebWhy Python Web Frameworks Are Changing the Web
Why Python Web Frameworks Are Changing the Web
joelburton
 
Спецификация WSGI (PEP-333)
Спецификация WSGI (PEP-333)Спецификация WSGI (PEP-333)
Спецификация WSGI (PEP-333)
lectureswww lectureswww
 
An Introduction to Twisted
An Introduction to TwistedAn Introduction to Twisted
An Introduction to Twisted
sdsern
 
Зоопарк python веб-фреймворков
Зоопарк python веб-фреймворковЗоопарк python веб-фреймворков
Зоопарк python веб-фреймворков
PyNSK
 
Чем Python плох для стартапа?
Чем Python плох для стартапа?Чем Python плох для стартапа?
Чем Python плох для стартапа?
PyNSK
 
Asynchronous Python with Twisted
Asynchronous Python with TwistedAsynchronous Python with Twisted
Asynchronous Python with Twisted
Adam Englander
 
Framework Battle: Django vs Flask vs Chalice
Framework Battle: Django vs Flask vs ChaliceFramework Battle: Django vs Flask vs Chalice
Framework Battle: Django vs Flask vs Chalice
STEP Computer Academy (Zaporozhye)
 
LvivPy - Flask in details
LvivPy - Flask in detailsLvivPy - Flask in details
LvivPy - Flask in details
Max Klymyshyn
 
Async Web Frameworks in Python
Async Web Frameworks in PythonAsync Web Frameworks in Python
Async Web Frameworks in Python
Ryan Johnson
 
Web Scraping with Python
Web Scraping with PythonWeb Scraping with Python
Web Scraping with Python
Paul Schreiber
 
Scraping the web with python
Scraping the web with pythonScraping the web with python
Scraping the web with python
Jose Manuel Ortega Candel
 

Viewers also liked (18)

Dissertation defense
Dissertation defenseDissertation defense
Dissertation defense
 
NYC Pyladies talk May 2, 2013
NYC Pyladies talk May 2, 2013NYC Pyladies talk May 2, 2013
NYC Pyladies talk May 2, 2013
 
Comparison of supportive interactions
Comparison of supportive interactionsComparison of supportive interactions
Comparison of supportive interactions
 
Insight DE project
Insight DE projectInsight DE project
Insight DE project
 
Introduction to Python and Web Programming
Introduction to Python and Web ProgrammingIntroduction to Python and Web Programming
Introduction to Python and Web Programming
 
Snakes on the Web
Snakes on the WebSnakes on the Web
Snakes on the Web
 
Python and the Web
Python and the WebPython and the Web
Python and the Web
 
Why Python Web Frameworks Are Changing the Web
Why Python Web Frameworks Are Changing the WebWhy Python Web Frameworks Are Changing the Web
Why Python Web Frameworks Are Changing the Web
 
Спецификация WSGI (PEP-333)
Спецификация WSGI (PEP-333)Спецификация WSGI (PEP-333)
Спецификация WSGI (PEP-333)
 
An Introduction to Twisted
An Introduction to TwistedAn Introduction to Twisted
An Introduction to Twisted
 
Зоопарк python веб-фреймворков
Зоопарк python веб-фреймворковЗоопарк python веб-фреймворков
Зоопарк python веб-фреймворков
 
Чем Python плох для стартапа?
Чем Python плох для стартапа?Чем Python плох для стартапа?
Чем Python плох для стартапа?
 
Asynchronous Python with Twisted
Asynchronous Python with TwistedAsynchronous Python with Twisted
Asynchronous Python with Twisted
 
Framework Battle: Django vs Flask vs Chalice
Framework Battle: Django vs Flask vs ChaliceFramework Battle: Django vs Flask vs Chalice
Framework Battle: Django vs Flask vs Chalice
 
LvivPy - Flask in details
LvivPy - Flask in detailsLvivPy - Flask in details
LvivPy - Flask in details
 
Async Web Frameworks in Python
Async Web Frameworks in PythonAsync Web Frameworks in Python
Async Web Frameworks in Python
 
Web Scraping with Python
Web Scraping with PythonWeb Scraping with Python
Web Scraping with Python
 
Scraping the web with python
Scraping the web with pythonScraping the web with python
Scraping the web with python
 

Similar to Python talk web frameworks

C4ainaction-Introduction to the Pyramid Web Framework
C4ainaction-Introduction to the Pyramid Web FrameworkC4ainaction-Introduction to the Pyramid Web Framework
C4ainaction-Introduction to the Pyramid Web Framework
Francis Addai
 
Samsung SDS OpeniT - The possibility of Python
Samsung SDS OpeniT - The possibility of PythonSamsung SDS OpeniT - The possibility of Python
Samsung SDS OpeniT - The possibility of Python
Insuk (Chris) Cho
 
Python and Jupyter: Your Gateway for Learning
Python and Jupyter: Your Gateway for LearningPython and Jupyter: Your Gateway for Learning
Python and Jupyter: Your Gateway for Learning
Carol Willing
 
Accessibility, Automation and Metadata
Accessibility, Automation and MetadataAccessibility, Automation and Metadata
Accessibility, Automation and Metadata
lisbk
 
Django
DjangoDjango
Building Data Apps with Python
Building Data Apps with PythonBuilding Data Apps with Python
Building Data Apps with Python
Benjamin Bengfort
 
Prototyping Workshop - Wireframes, Mockups, Prototypes
Prototyping Workshop - Wireframes, Mockups, PrototypesPrototyping Workshop - Wireframes, Mockups, Prototypes
Prototyping Workshop - Wireframes, Mockups, Prototypes
Marta Soncodi
 
Jupyter: A Gateway for Scientific Collaboration and Education
Jupyter: A Gateway for Scientific Collaboration and EducationJupyter: A Gateway for Scientific Collaboration and Education
Jupyter: A Gateway for Scientific Collaboration and Education
Carol Willing
 
Django Framework Overview forNon-Python Developers
Django Framework Overview forNon-Python DevelopersDjango Framework Overview forNon-Python Developers
Django Framework Overview forNon-Python Developers
Rosario Renga
 
Behold the Power of Python
Behold the Power of PythonBehold the Power of Python
Behold the Power of Python
Sarah Dutkiewicz
 
2017 Q2 uPortal Open Source Support Briefing
2017 Q2 uPortal Open Source Support Briefing2017 Q2 uPortal Open Source Support Briefing
2017 Q2 uPortal Open Source Support Briefing
Benito Gonzalez
 
CIW Lab with CoheisveFT: Get started in public cloud - Part 1 Cloud & Virtual...
CIW Lab with CoheisveFT: Get started in public cloud - Part 1 Cloud & Virtual...CIW Lab with CoheisveFT: Get started in public cloud - Part 1 Cloud & Virtual...
CIW Lab with CoheisveFT: Get started in public cloud - Part 1 Cloud & Virtual...
Ryan Koop
 
SIC Finale Status Report August 6.pptx
SIC Finale Status Report August 6.pptxSIC Finale Status Report August 6.pptx
SIC Finale Status Report August 6.pptxShaista Ansari
 
Kelly O'Briant - DataOps in the Cloud: How To Supercharge Data Science with a...
Kelly O'Briant - DataOps in the Cloud: How To Supercharge Data Science with a...Kelly O'Briant - DataOps in the Cloud: How To Supercharge Data Science with a...
Kelly O'Briant - DataOps in the Cloud: How To Supercharge Data Science with a...
Rehgan Avon
 
Akash rajguru project report sem v
Akash rajguru project report sem vAkash rajguru project report sem v
Akash rajguru project report sem v
Akash Rajguru
 
Django
DjangoDjango
Publishing strategies for API documentation
Publishing strategies for API documentationPublishing strategies for API documentation
Publishing strategies for API documentation
Tom Johnson
 
Ready. Set. Drupal! An Intro to Drupal 8, Part 2
Ready. Set. Drupal! An Intro to Drupal 8, Part 2Ready. Set. Drupal! An Intro to Drupal 8, Part 2
Ready. Set. Drupal! An Intro to Drupal 8, Part 2
Acquia
 
Webinar: An introduction to Open Science: Why it’s important.
Webinar: An introduction to Open Science: Why it’s important.Webinar: An introduction to Open Science: Why it’s important.
Webinar: An introduction to Open Science: Why it’s important.
OpenAIRE
 
Company Visitor Management System Report.docx
Company Visitor Management System Report.docxCompany Visitor Management System Report.docx
Company Visitor Management System Report.docx
fantabulous2024
 

Similar to Python talk web frameworks (20)

C4ainaction-Introduction to the Pyramid Web Framework
C4ainaction-Introduction to the Pyramid Web FrameworkC4ainaction-Introduction to the Pyramid Web Framework
C4ainaction-Introduction to the Pyramid Web Framework
 
Samsung SDS OpeniT - The possibility of Python
Samsung SDS OpeniT - The possibility of PythonSamsung SDS OpeniT - The possibility of Python
Samsung SDS OpeniT - The possibility of Python
 
Python and Jupyter: Your Gateway for Learning
Python and Jupyter: Your Gateway for LearningPython and Jupyter: Your Gateway for Learning
Python and Jupyter: Your Gateway for Learning
 
Accessibility, Automation and Metadata
Accessibility, Automation and MetadataAccessibility, Automation and Metadata
Accessibility, Automation and Metadata
 
Django
DjangoDjango
Django
 
Building Data Apps with Python
Building Data Apps with PythonBuilding Data Apps with Python
Building Data Apps with Python
 
Prototyping Workshop - Wireframes, Mockups, Prototypes
Prototyping Workshop - Wireframes, Mockups, PrototypesPrototyping Workshop - Wireframes, Mockups, Prototypes
Prototyping Workshop - Wireframes, Mockups, Prototypes
 
Jupyter: A Gateway for Scientific Collaboration and Education
Jupyter: A Gateway for Scientific Collaboration and EducationJupyter: A Gateway for Scientific Collaboration and Education
Jupyter: A Gateway for Scientific Collaboration and Education
 
Django Framework Overview forNon-Python Developers
Django Framework Overview forNon-Python DevelopersDjango Framework Overview forNon-Python Developers
Django Framework Overview forNon-Python Developers
 
Behold the Power of Python
Behold the Power of PythonBehold the Power of Python
Behold the Power of Python
 
2017 Q2 uPortal Open Source Support Briefing
2017 Q2 uPortal Open Source Support Briefing2017 Q2 uPortal Open Source Support Briefing
2017 Q2 uPortal Open Source Support Briefing
 
CIW Lab with CoheisveFT: Get started in public cloud - Part 1 Cloud & Virtual...
CIW Lab with CoheisveFT: Get started in public cloud - Part 1 Cloud & Virtual...CIW Lab with CoheisveFT: Get started in public cloud - Part 1 Cloud & Virtual...
CIW Lab with CoheisveFT: Get started in public cloud - Part 1 Cloud & Virtual...
 
SIC Finale Status Report August 6.pptx
SIC Finale Status Report August 6.pptxSIC Finale Status Report August 6.pptx
SIC Finale Status Report August 6.pptx
 
Kelly O'Briant - DataOps in the Cloud: How To Supercharge Data Science with a...
Kelly O'Briant - DataOps in the Cloud: How To Supercharge Data Science with a...Kelly O'Briant - DataOps in the Cloud: How To Supercharge Data Science with a...
Kelly O'Briant - DataOps in the Cloud: How To Supercharge Data Science with a...
 
Akash rajguru project report sem v
Akash rajguru project report sem vAkash rajguru project report sem v
Akash rajguru project report sem v
 
Django
DjangoDjango
Django
 
Publishing strategies for API documentation
Publishing strategies for API documentationPublishing strategies for API documentation
Publishing strategies for API documentation
 
Ready. Set. Drupal! An Intro to Drupal 8, Part 2
Ready. Set. Drupal! An Intro to Drupal 8, Part 2Ready. Set. Drupal! An Intro to Drupal 8, Part 2
Ready. Set. Drupal! An Intro to Drupal 8, Part 2
 
Webinar: An introduction to Open Science: Why it’s important.
Webinar: An introduction to Open Science: Why it’s important.Webinar: An introduction to Open Science: Why it’s important.
Webinar: An introduction to Open Science: Why it’s important.
 
Company Visitor Management System Report.docx
Company Visitor Management System Report.docxCompany Visitor Management System Report.docx
Company Visitor Management System Report.docx
 

More from Kat Chuang

Android NFC Nuance
Android NFC NuanceAndroid NFC Nuance
Android NFC Nuance
Kat Chuang
 
rheumatological diseases
rheumatological diseasesrheumatological diseases
rheumatological diseases
Kat Chuang
 
Mayans and Chocolate
Mayans and ChocolateMayans and Chocolate
Mayans and Chocolate
Kat Chuang
 
Nurturant Support in Online Health Social Networking
Nurturant Support in Online Health Social NetworkingNurturant Support in Online Health Social Networking
Nurturant Support in Online Health Social Networking
Kat Chuang
 
Revolutionizing the hypatia metadata experience
Revolutionizing the hypatia metadata experienceRevolutionizing the hypatia metadata experience
Revolutionizing the hypatia metadata experience
Kat Chuang
 
Candidacy Exam
Candidacy ExamCandidacy Exam
Candidacy ExamKat Chuang
 
How to become a top notch scholar
How to become a top notch scholarHow to become a top notch scholar
How to become a top notch scholarKat Chuang
 
Helping you to help me (slides)
Helping you to help me (slides)Helping you to help me (slides)
Helping you to help me (slides)
Kat Chuang
 
Helping you to help me
Helping you to help meHelping you to help me
Helping you to help me
Kat Chuang
 

More from Kat Chuang (10)

Android NFC Nuance
Android NFC NuanceAndroid NFC Nuance
Android NFC Nuance
 
rheumatological diseases
rheumatological diseasesrheumatological diseases
rheumatological diseases
 
Mayans and Chocolate
Mayans and ChocolateMayans and Chocolate
Mayans and Chocolate
 
Nurturant Support in Online Health Social Networking
Nurturant Support in Online Health Social NetworkingNurturant Support in Online Health Social Networking
Nurturant Support in Online Health Social Networking
 
Revolutionizing the hypatia metadata experience
Revolutionizing the hypatia metadata experienceRevolutionizing the hypatia metadata experience
Revolutionizing the hypatia metadata experience
 
Candidacy Exam
Candidacy ExamCandidacy Exam
Candidacy Exam
 
How to become a top notch scholar
How to become a top notch scholarHow to become a top notch scholar
How to become a top notch scholar
 
Prospectus
Prospectus Prospectus
Prospectus
 
Helping you to help me (slides)
Helping you to help me (slides)Helping you to help me (slides)
Helping you to help me (slides)
 
Helping you to help me
Helping you to help meHelping you to help me
Helping you to help me
 

Recently uploaded

When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 

Recently uploaded (20)

When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 

Python talk web frameworks

  • 1. Python Web Frameworks Kat Chuang @katychuang Talk given at NYC Python Meetup - 7/9/2013 1
  • 2. About me • Recent PhD Graduate • Experience with python: – Mainly for research – Web development the last year in Python • Freelanced quite a bit with web development. – I often worked with non technical people. Talk Given at NYC Python Meetup 7/9/2013 2
  • 3. http://meetup.com/NYC-Pyladies Btw, there’s a group for lady pythonistas… Talk Given at NYC Python Meetup 7/9/2013 3
  • 4. Outline • Why I’m giving this talk • Server-Client Architecture • The User Interface (UI) • The Wireframe as a boundary object – Boundary objects are used for communicating between two distinct groups. • DRY Principle: “Don’t repeat yourself” Talk Given at NYC Python Meetup 7/9/2013 4
  • 5. Why I’m giving this talk • There’s a lot of people who want a website – A lot of these people don’t know how to build websites A. Some of these people want to learn B. Some of these people don’t • This talk is for developers who work for those without technical knowledge. Talk Given at NYC Python Meetup 7/9/2013 5
  • 6. Types of People in Web Development A. Wants to learn B. Do not want to learn Web developers Different ways of communicatingTalk Given at NYC Python Meetup 7/9/2013 6
  • 7. Server-Client Architecture <Web framework goes here: python> <User Interface: html/css/javascript> <Database Queries> Talk Given at NYC Python Meetup 7/9/2013 7
  • 8. Navigation Paths This could be a lot of html pages. a.html b.html c.html d.html e.html f.html g.html h.html …. Talk Given at NYC Python Meetup 7/9/2013 8
  • 9. Wireframes Talk Given at NYC Python Meetup 7/9/2013 9
  • 10. Spatial Representation Talk Given at NYC Python Meetup 7/9/2013 10
  • 11. Document Object Model This is what the computer understands. Talk Given at NYC Python Meetup 7/9/2013 11
  • 12. Example: Pydata.Org Interaction with client: I was given this one image file. My task was to convert it to templates, and give the final website at pydata.org. Interaction with python: I specified styling and template tags for each page. About PyData: PyData is a community for developers and users of Python data tools. You can join at pydata.org Talk Given at NYC Python Meetup 7/9/2013 12
  • 13. I’ll show you how I created this part It is a list of news items that come from the database. http://pydata.org Talk Given at NYC Python Meetup 7/9/2013 13
  • 14. {% for item in news %} <div class="news_item"> <b> <a href="/{{ item.conference }}/news#{{ item.id }}"> [{{ item.conference }}] {{ item.title }}</a></b> <div class="pub_date”> {{ item.date|date:'M d, Y' }} </div> {{ item.content|striptags|truncatechars:180 }} </div> {% endfor %} Template Tags Talk Given at NYC Python Meetup 7/9/2013 14
  • 15. Template system is a nested hierarchy Page Head Stylesheets Fonts Header Container Banners News Section News Item News Item … Footer Javascripts Analytics Talk Given at NYC Python Meetup 7/9/2013 15
  • 16. Demo Django note: you can run a local development version: $ python manage.py runserver Then view the site in your browser at http://localhost:8000 Talk Given at NYC Python Meetup 7/9/2013 16
  • 17. THANK YOU. Kat Chuang, Ph.D. Contact: @katychuang on twitter | katychuang@gmail.com Talk Given at NYC Python Meetup 7/9/2013 17