SlideShare a Scribd company logo
1 of 39
Download to read offline
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Drupal as
a Data Purveyor
Layering Drupal with emerging technologies to create a
performant, scalable data purveyor.
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
ASTONISH DESIGN
C H A N G E G A M E
Diana Montalion Dupuis
@dianadupuis
Sam Heuck
@samheuck
Andrew Elster
@filmknurd
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
ASTONISH DESIGN
C H A N G E G A M E
We have a new website: astonishdesign.com
@Astonish_Design
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
An open-source content management PHP/MySQL framework designed
for rapid development of content-rich web applications.
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Reasons (among many)
• Growth: evolving tool
• Foundation skill set
• User features
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
http://jdhancock.com/ • JD Hancock• http://farm9.staticflickr.com/8322/8031897271_9c63e48a29_b.jpg
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
“Big” Data
"Big" in relation to the amount
of content Drupal is designed
to manage
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Volume
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Velocity
BIKE WALLS• http://www.bikewalls.com
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Variety
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Content
•Every kind of data
•Coming from everywhere
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Current Issues
•Bootstrapping
•Bottlenecks - Normalized - Join Happy
•Lack of solution architecture
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Views
Rapid
Development
Platform
Visitors
& Content
Authors
Miners
Who is the user?
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Welcome to the future
When modularizing the architecture creates performant applications for
all content and all users.
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Traditional Optimizations
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Duplicate
Data
Rapid
Development
Platform
API
Denormalized
Document Storage for READS
Normalized
Relational for WRITES
Data Mining
Content & Data
Creation
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Cost of Bootstrap
• Hooks allow modules to
customize behavior
• Drupal calls hooks during each
stage of bootstrap
• More modules, more hooks
called, slower bootstrap
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Massive Callstacks
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Bootstrap on Every Request
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Views
Rapid
Development
Platform
Visitors
& Content
Authors
Miners
Backbone.js
Twisted
JS
Photon
Vert.x
Celluloid::IO
PYTHON
PHP
JAVA
RUBY
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Views
Rapid
Development
Platform
Visitors
& Content
Authors
Miners
Backbone.js
Twisted
JS
Photon
Vert.x
Celluloid::IO
PYTHON
PHP
JAVA
RUBY
Sources
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
API and Node.JS
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Why Proxy External Sources?
OK
your.domai
GET
OK
other.domain
OPTION
Yes
GET
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
RESTful
RobertTadlock • http://www.flickr.com/photos/rtadlock/2716877199/
http://apigee.com/about/api-best-practices Since you are building the API, you
can make it any way you want, but
following some good basic REST
conventions is a good idea.

It will make it easier to integrate
with front end frameworks.
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Pick a Framework
Express or Restify
•http://expressjs.com
•http://mcavage.github.com/node-restify
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Pick a Connector
Tony Hisgett • http://www.flickr.com/photos/hisgett/
http://mongoosejs.com/
Mongoose
Alternatives
•Mongolia
•Mongo Skin
•Native MongoDB Driver
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Example
Express & Mongoose
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Create a Resource
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Create an Endpoint
http://domain/resources
{ [
{
“someField”: “blah blah blah”
“anotherField”: 2
}
...
] }
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
On the Front-end
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Views
Rapid
Development
Platform
Visitors
& Content
Authors
Miners
Backbone.js
Twisted
JS
Photon
Vert.x
Celluloid::IO
PYTHON
PHP
JAVA
RUBY
Sources
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Isn’t JS Slow?
Yes but....

1. JS and devices continue to improve

2. We've improved the overall round
trip: faster data, smaller payload, no
bootstrap. It's still faster overall.
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Organize Your Code
On the front-end, you could write everything
as AJAX calls and jQuery DOM manipulation,
but that will get messy very quickly as your
application grows in sophistication.

In the interests of maintainability and sanity,
use a framework that organizes your code and
abstracts away the DOM. There are many to
choose from. A new one probably came out
this morning.
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
We use Ember because it is straightforward
to use, powerful, flexible, and still fairly light
weight. Backbone has been around for a
while and is quite nice, but we like how
Ember handles garbage collection and the
other goodies it ships with.
What Why How
http://www.emberjs.com Why Discourse Uses Ember •Official Guides
•Resources
•Fire Up Ember
•Ember Camp
•DarthdeusV. Ember
•
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Results from
Rich Snippets
For Algebraix, all the data comes from an
external source, so it makes sense to run the
application on the client side, as opposed to
importing the data into Drupal first. 

It also makes the control panel feel more
responsive. No more click and hope while
waiting for the interface to receive data. Now
we've created a conversation with the user.
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Essential question ...
Why use Drupal?
Don’t use Drupal if you don’t need it.
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
The role of the themer
Front engineer
ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Questions?

More Related Content

Viewers also liked

24-7 culture code
24-7 culture code24-7 culture code
24-7 culture code24-7 inc.
 
Solution to Student's suicide problem
Solution to Student's suicide problem  Solution to Student's suicide problem
Solution to Student's suicide problem Arun Gupta
 
Intel® Xeon® processor E7-8800/4800 v3 Application Showcase
Intel® Xeon® processor E7-8800/4800 v3 Application ShowcaseIntel® Xeon® processor E7-8800/4800 v3 Application Showcase
Intel® Xeon® processor E7-8800/4800 v3 Application ShowcaseIntel IT Center
 
Socrates kenya.org
Socrates kenya.orgSocrates kenya.org
Socrates kenya.orgcsdtesting
 
Trabajo de diapositivas pereyra y alvez
Trabajo de diapositivas pereyra y alvezTrabajo de diapositivas pereyra y alvez
Trabajo de diapositivas pereyra y alvezjulietachocobar
 
[Guide] The Best Introduction to Health Savings Accounts
[Guide] The Best Introduction to Health Savings Accounts[Guide] The Best Introduction to Health Savings Accounts
[Guide] The Best Introduction to Health Savings Accountsbenefitexpress
 
Leveraging Social Media - CAGP 2 27-2012
Leveraging Social Media - CAGP 2 27-2012Leveraging Social Media - CAGP 2 27-2012
Leveraging Social Media - CAGP 2 27-2012Lee Yount
 
杜拜..有什麼做不到的..
杜拜..有什麼做不到的..杜拜..有什麼做不到的..
杜拜..有什麼做不到的..honan4108
 
Agile lean workshop
Agile lean workshopAgile lean workshop
Agile lean workshopJesse Wang
 
新生利用图书馆讲座
新生利用图书馆讲座新生利用图书馆讲座
新生利用图书馆讲座xiaobiye
 

Viewers also liked (13)

24-7 culture code
24-7 culture code24-7 culture code
24-7 culture code
 
Parcial
ParcialParcial
Parcial
 
CV
CVCV
CV
 
La web
La webLa web
La web
 
Solution to Student's suicide problem
Solution to Student's suicide problem  Solution to Student's suicide problem
Solution to Student's suicide problem
 
Intel® Xeon® processor E7-8800/4800 v3 Application Showcase
Intel® Xeon® processor E7-8800/4800 v3 Application ShowcaseIntel® Xeon® processor E7-8800/4800 v3 Application Showcase
Intel® Xeon® processor E7-8800/4800 v3 Application Showcase
 
Socrates kenya.org
Socrates kenya.orgSocrates kenya.org
Socrates kenya.org
 
Trabajo de diapositivas pereyra y alvez
Trabajo de diapositivas pereyra y alvezTrabajo de diapositivas pereyra y alvez
Trabajo de diapositivas pereyra y alvez
 
[Guide] The Best Introduction to Health Savings Accounts
[Guide] The Best Introduction to Health Savings Accounts[Guide] The Best Introduction to Health Savings Accounts
[Guide] The Best Introduction to Health Savings Accounts
 
Leveraging Social Media - CAGP 2 27-2012
Leveraging Social Media - CAGP 2 27-2012Leveraging Social Media - CAGP 2 27-2012
Leveraging Social Media - CAGP 2 27-2012
 
杜拜..有什麼做不到的..
杜拜..有什麼做不到的..杜拜..有什麼做不到的..
杜拜..有什麼做不到的..
 
Agile lean workshop
Agile lean workshopAgile lean workshop
Agile lean workshop
 
新生利用图书馆讲座
新生利用图书馆讲座新生利用图书馆讲座
新生利用图书馆讲座
 

Similar to Drupal as a Data Purveyor, Part II

Drupal as a Data Purveyor, Part I
Drupal as a Data Purveyor, Part IDrupal as a Data Purveyor, Part I
Drupal as a Data Purveyor, Part ITim Hamilton
 
Altic's big analytics stack, Charly Clairmont, Altic.
Altic's big analytics stack, Charly Clairmont, Altic.Altic's big analytics stack, Charly Clairmont, Altic.
Altic's big analytics stack, Charly Clairmont, Altic.OW2
 
Cloud-Native .Net des applications containerisées .Net sur Linux, Windows e...
 Cloud-Native .Net des applications containerisées .Net sur Linux, Windows e... Cloud-Native .Net des applications containerisées .Net sur Linux, Windows e...
Cloud-Native .Net des applications containerisées .Net sur Linux, Windows e...VMware Tanzu
 
The building blocks of the next web
The building blocks of the next webThe building blocks of the next web
The building blocks of the next webPier Paolo Orioli
 
The building blocks of the next web, from Customer Journey to UI Components. ...
The building blocks of the next web, from Customer Journey to UI Components. ...The building blocks of the next web, from Customer Journey to UI Components. ...
The building blocks of the next web, from Customer Journey to UI Components. ...Codemotion
 
Choose SketchApp over Photoshop for UI/UX
Choose SketchApp over Photoshop for UI/UXChoose SketchApp over Photoshop for UI/UX
Choose SketchApp over Photoshop for UI/UXJens Hoffmann
 
Codemotion Milan 2018 - AI with a devops mindset: experimentation, sharing an...
Codemotion Milan 2018 - AI with a devops mindset: experimentation, sharing an...Codemotion Milan 2018 - AI with a devops mindset: experimentation, sharing an...
Codemotion Milan 2018 - AI with a devops mindset: experimentation, sharing an...Thiago de Faria
 
Thiago de Faria - AI with a devops mindset - experimentation, sharing and eas...
Thiago de Faria - AI with a devops mindset - experimentation, sharing and eas...Thiago de Faria - AI with a devops mindset - experimentation, sharing and eas...
Thiago de Faria - AI with a devops mindset - experimentation, sharing and eas...Codemotion
 
Web Design Trends For 2016
Web Design Trends For 2016Web Design Trends For 2016
Web Design Trends For 2016Pixel Crayons
 
Welcome to a new reality - DeepCrawl Webinar 2018
Welcome to a new reality - DeepCrawl Webinar 2018Welcome to a new reality - DeepCrawl Webinar 2018
Welcome to a new reality - DeepCrawl Webinar 2018Bastian Grimm
 
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...Codemotion
 
Not Just a Pretty Face: How to design and build a cross-CMS CSS framework
Not Just a Pretty Face: How to design and build a cross-CMS CSS frameworkNot Just a Pretty Face: How to design and build a cross-CMS CSS framework
Not Just a Pretty Face: How to design and build a cross-CMS CSS frameworkcrystalenka
 
Generative Design 101 for Architecture, Engineering & Construction by Jad Del...
Generative Design 101 for Architecture, Engineering & Construction by Jad Del...Generative Design 101 for Architecture, Engineering & Construction by Jad Del...
Generative Design 101 for Architecture, Engineering & Construction by Jad Del...Jad DELLEL
 
Rapid Prototyping with Sass, Compass and Middleman by Bermon Painter
Rapid Prototyping with Sass, Compass and Middleman by Bermon PainterRapid Prototyping with Sass, Compass and Middleman by Bermon Painter
Rapid Prototyping with Sass, Compass and Middleman by Bermon PainterCodemotion
 
5 Simple Actions to Make a Measurable Impact on Your Responsive Site
5 Simple Actions to Make a Measurable Impact on Your Responsive Site5 Simple Actions to Make a Measurable Impact on Your Responsive Site
5 Simple Actions to Make a Measurable Impact on Your Responsive Site5th Finger
 
Boilerplates: Step up your Web Development Process
Boilerplates: Step up your Web Development ProcessBoilerplates: Step up your Web Development Process
Boilerplates: Step up your Web Development ProcessFibonalabs
 
Managing Responsive Design Projects
Managing Responsive Design ProjectsManaging Responsive Design Projects
Managing Responsive Design ProjectsAndrew Smyk
 
Managing Responsive Design Projects
Managing Responsive Design ProjectsManaging Responsive Design Projects
Managing Responsive Design ProjectsFITC
 
Demystifying Data Warehousing as a Service - DFW
Demystifying Data Warehousing as a Service - DFWDemystifying Data Warehousing as a Service - DFW
Demystifying Data Warehousing as a Service - DFWKent Graziano
 

Similar to Drupal as a Data Purveyor, Part II (20)

Drupal as a Data Purveyor, Part I
Drupal as a Data Purveyor, Part IDrupal as a Data Purveyor, Part I
Drupal as a Data Purveyor, Part I
 
Altic's big analytics stack, Charly Clairmont, Altic.
Altic's big analytics stack, Charly Clairmont, Altic.Altic's big analytics stack, Charly Clairmont, Altic.
Altic's big analytics stack, Charly Clairmont, Altic.
 
Cloud-Native .Net des applications containerisées .Net sur Linux, Windows e...
 Cloud-Native .Net des applications containerisées .Net sur Linux, Windows e... Cloud-Native .Net des applications containerisées .Net sur Linux, Windows e...
Cloud-Native .Net des applications containerisées .Net sur Linux, Windows e...
 
The building blocks of the next web
The building blocks of the next webThe building blocks of the next web
The building blocks of the next web
 
The building blocks of the next web, from Customer Journey to UI Components. ...
The building blocks of the next web, from Customer Journey to UI Components. ...The building blocks of the next web, from Customer Journey to UI Components. ...
The building blocks of the next web, from Customer Journey to UI Components. ...
 
Choose SketchApp over Photoshop for UI/UX
Choose SketchApp over Photoshop for UI/UXChoose SketchApp over Photoshop for UI/UX
Choose SketchApp over Photoshop for UI/UX
 
Codemotion Milan 2018 - AI with a devops mindset: experimentation, sharing an...
Codemotion Milan 2018 - AI with a devops mindset: experimentation, sharing an...Codemotion Milan 2018 - AI with a devops mindset: experimentation, sharing an...
Codemotion Milan 2018 - AI with a devops mindset: experimentation, sharing an...
 
Thiago de Faria - AI with a devops mindset - experimentation, sharing and eas...
Thiago de Faria - AI with a devops mindset - experimentation, sharing and eas...Thiago de Faria - AI with a devops mindset - experimentation, sharing and eas...
Thiago de Faria - AI with a devops mindset - experimentation, sharing and eas...
 
Web Design Trends For 2016
Web Design Trends For 2016Web Design Trends For 2016
Web Design Trends For 2016
 
Welcome to a new reality - DeepCrawl Webinar 2018
Welcome to a new reality - DeepCrawl Webinar 2018Welcome to a new reality - DeepCrawl Webinar 2018
Welcome to a new reality - DeepCrawl Webinar 2018
 
resume
resumeresume
resume
 
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...
 
Not Just a Pretty Face: How to design and build a cross-CMS CSS framework
Not Just a Pretty Face: How to design and build a cross-CMS CSS frameworkNot Just a Pretty Face: How to design and build a cross-CMS CSS framework
Not Just a Pretty Face: How to design and build a cross-CMS CSS framework
 
Generative Design 101 for Architecture, Engineering & Construction by Jad Del...
Generative Design 101 for Architecture, Engineering & Construction by Jad Del...Generative Design 101 for Architecture, Engineering & Construction by Jad Del...
Generative Design 101 for Architecture, Engineering & Construction by Jad Del...
 
Rapid Prototyping with Sass, Compass and Middleman by Bermon Painter
Rapid Prototyping with Sass, Compass and Middleman by Bermon PainterRapid Prototyping with Sass, Compass and Middleman by Bermon Painter
Rapid Prototyping with Sass, Compass and Middleman by Bermon Painter
 
5 Simple Actions to Make a Measurable Impact on Your Responsive Site
5 Simple Actions to Make a Measurable Impact on Your Responsive Site5 Simple Actions to Make a Measurable Impact on Your Responsive Site
5 Simple Actions to Make a Measurable Impact on Your Responsive Site
 
Boilerplates: Step up your Web Development Process
Boilerplates: Step up your Web Development ProcessBoilerplates: Step up your Web Development Process
Boilerplates: Step up your Web Development Process
 
Managing Responsive Design Projects
Managing Responsive Design ProjectsManaging Responsive Design Projects
Managing Responsive Design Projects
 
Managing Responsive Design Projects
Managing Responsive Design ProjectsManaging Responsive Design Projects
Managing Responsive Design Projects
 
Demystifying Data Warehousing as a Service - DFW
Demystifying Data Warehousing as a Service - DFWDemystifying Data Warehousing as a Service - DFW
Demystifying Data Warehousing as a Service - DFW
 

More from Tim Hamilton

Game Changers: How market leaders discover a distinct advantage and make thei...
Game Changers: How market leaders discover a distinct advantage and make thei...Game Changers: How market leaders discover a distinct advantage and make thei...
Game Changers: How market leaders discover a distinct advantage and make thei...Tim Hamilton
 
What is Strategy? Strategy Day at EO Accelerator
What is Strategy? Strategy Day at EO AcceleratorWhat is Strategy? Strategy Day at EO Accelerator
What is Strategy? Strategy Day at EO AcceleratorTim Hamilton
 
What Business are You Really In? Competitive Strategy for Business Leaders
What Business are You Really In? Competitive Strategy for Business LeadersWhat Business are You Really In? Competitive Strategy for Business Leaders
What Business are You Really In? Competitive Strategy for Business LeadersTim Hamilton
 
How to Hire a Great Developer
How to Hire a Great DeveloperHow to Hire a Great Developer
How to Hire a Great DeveloperTim Hamilton
 
The Discipline of Market Leaders: A Strategy for Reaching the Top
The Discipline of Market Leaders: A Strategy for Reaching the TopThe Discipline of Market Leaders: A Strategy for Reaching the Top
The Discipline of Market Leaders: A Strategy for Reaching the TopTim Hamilton
 
Agile Agency Scrum: An Introduction to Flexible Project Management for Produc...
Agile Agency Scrum: An Introduction to Flexible Project Management for Produc...Agile Agency Scrum: An Introduction to Flexible Project Management for Produc...
Agile Agency Scrum: An Introduction to Flexible Project Management for Produc...Tim Hamilton
 
If You Give a Mouse a Cookie: Managing Scope
If You Give a Mouse a Cookie: Managing ScopeIf You Give a Mouse a Cookie: Managing Scope
If You Give a Mouse a Cookie: Managing ScopeTim Hamilton
 
Selling with Disarming Honesty
Selling with Disarming HonestySelling with Disarming Honesty
Selling with Disarming HonestyTim Hamilton
 

More from Tim Hamilton (8)

Game Changers: How market leaders discover a distinct advantage and make thei...
Game Changers: How market leaders discover a distinct advantage and make thei...Game Changers: How market leaders discover a distinct advantage and make thei...
Game Changers: How market leaders discover a distinct advantage and make thei...
 
What is Strategy? Strategy Day at EO Accelerator
What is Strategy? Strategy Day at EO AcceleratorWhat is Strategy? Strategy Day at EO Accelerator
What is Strategy? Strategy Day at EO Accelerator
 
What Business are You Really In? Competitive Strategy for Business Leaders
What Business are You Really In? Competitive Strategy for Business LeadersWhat Business are You Really In? Competitive Strategy for Business Leaders
What Business are You Really In? Competitive Strategy for Business Leaders
 
How to Hire a Great Developer
How to Hire a Great DeveloperHow to Hire a Great Developer
How to Hire a Great Developer
 
The Discipline of Market Leaders: A Strategy for Reaching the Top
The Discipline of Market Leaders: A Strategy for Reaching the TopThe Discipline of Market Leaders: A Strategy for Reaching the Top
The Discipline of Market Leaders: A Strategy for Reaching the Top
 
Agile Agency Scrum: An Introduction to Flexible Project Management for Produc...
Agile Agency Scrum: An Introduction to Flexible Project Management for Produc...Agile Agency Scrum: An Introduction to Flexible Project Management for Produc...
Agile Agency Scrum: An Introduction to Flexible Project Management for Produc...
 
If You Give a Mouse a Cookie: Managing Scope
If You Give a Mouse a Cookie: Managing ScopeIf You Give a Mouse a Cookie: Managing Scope
If You Give a Mouse a Cookie: Managing Scope
 
Selling with Disarming Honesty
Selling with Disarming HonestySelling with Disarming Honesty
Selling with Disarming Honesty
 

Recently uploaded

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 

Recently uploaded (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

Drupal as a Data Purveyor, Part II

  • 1. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Drupal as a Data Purveyor Layering Drupal with emerging technologies to create a performant, scalable data purveyor.
  • 2. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 ASTONISH DESIGN C H A N G E G A M E Diana Montalion Dupuis @dianadupuis Sam Heuck @samheuck Andrew Elster @filmknurd
  • 3. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 ASTONISH DESIGN C H A N G E G A M E We have a new website: astonishdesign.com @Astonish_Design
  • 4. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 An open-source content management PHP/MySQL framework designed for rapid development of content-rich web applications.
  • 5. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Reasons (among many) • Growth: evolving tool • Foundation skill set • User features
  • 6. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 http://jdhancock.com/ • JD Hancock• http://farm9.staticflickr.com/8322/8031897271_9c63e48a29_b.jpg
  • 7. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 “Big” Data "Big" in relation to the amount of content Drupal is designed to manage
  • 8. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Volume
  • 9. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Velocity BIKE WALLS• http://www.bikewalls.com
  • 10. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Variety
  • 11. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Content •Every kind of data •Coming from everywhere
  • 12. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Current Issues •Bootstrapping •Bottlenecks - Normalized - Join Happy •Lack of solution architecture
  • 13. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Views Rapid Development Platform Visitors & Content Authors Miners Who is the user?
  • 14. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Welcome to the future When modularizing the architecture creates performant applications for all content and all users.
  • 15. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Traditional Optimizations
  • 16. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Duplicate Data Rapid Development Platform API Denormalized Document Storage for READS Normalized Relational for WRITES Data Mining Content & Data Creation
  • 17. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Cost of Bootstrap • Hooks allow modules to customize behavior • Drupal calls hooks during each stage of bootstrap • More modules, more hooks called, slower bootstrap
  • 18. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Massive Callstacks
  • 19. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Bootstrap on Every Request
  • 20. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Views Rapid Development Platform Visitors & Content Authors Miners Backbone.js Twisted JS Photon Vert.x Celluloid::IO PYTHON PHP JAVA RUBY
  • 21. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Views Rapid Development Platform Visitors & Content Authors Miners Backbone.js Twisted JS Photon Vert.x Celluloid::IO PYTHON PHP JAVA RUBY Sources
  • 22. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 API and Node.JS
  • 23. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Why Proxy External Sources? OK your.domai GET OK other.domain OPTION Yes GET
  • 24. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 RESTful RobertTadlock • http://www.flickr.com/photos/rtadlock/2716877199/ http://apigee.com/about/api-best-practices Since you are building the API, you can make it any way you want, but following some good basic REST conventions is a good idea. It will make it easier to integrate with front end frameworks.
  • 25. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Pick a Framework Express or Restify •http://expressjs.com •http://mcavage.github.com/node-restify
  • 26. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Pick a Connector Tony Hisgett • http://www.flickr.com/photos/hisgett/ http://mongoosejs.com/ Mongoose Alternatives •Mongolia •Mongo Skin •Native MongoDB Driver
  • 27. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Example Express & Mongoose
  • 28. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Create a Resource
  • 29. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Create an Endpoint http://domain/resources { [ { “someField”: “blah blah blah” “anotherField”: 2 } ... ] }
  • 30. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 On the Front-end
  • 31. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Views Rapid Development Platform Visitors & Content Authors Miners Backbone.js Twisted JS Photon Vert.x Celluloid::IO PYTHON PHP JAVA RUBY Sources
  • 32. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Isn’t JS Slow? Yes but.... 1. JS and devices continue to improve 2. We've improved the overall round trip: faster data, smaller payload, no bootstrap. It's still faster overall.
  • 33. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Organize Your Code On the front-end, you could write everything as AJAX calls and jQuery DOM manipulation, but that will get messy very quickly as your application grows in sophistication. In the interests of maintainability and sanity, use a framework that organizes your code and abstracts away the DOM. There are many to choose from. A new one probably came out this morning.
  • 34. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 We use Ember because it is straightforward to use, powerful, flexible, and still fairly light weight. Backbone has been around for a while and is quite nice, but we like how Ember handles garbage collection and the other goodies it ships with. What Why How http://www.emberjs.com Why Discourse Uses Ember •Official Guides •Resources •Fire Up Ember •Ember Camp •DarthdeusV. Ember •
  • 35. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Results from Rich Snippets For Algebraix, all the data comes from an external source, so it makes sense to run the application on the client side, as opposed to importing the data into Drupal first. It also makes the control panel feel more responsive. No more click and hope while waiting for the interface to receive data. Now we've created a conversation with the user.
  • 36. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
  • 37. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Essential question ... Why use Drupal? Don’t use Drupal if you don’t need it.
  • 38. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 The role of the themer Front engineer
  • 39. ASTONISH DESIGN C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13 Questions?