SlideShare a Scribd company logo
René Kreijveld
• Joomla webdeveloper/system integrator since 2004.
• Work for DSD Business Internet and ReneKreijveld.nl
• Specialisations:
[responsive] templates, one|content based web
applications, complex RSForm!Pro webforms,
Joomla webserver setups
• Twitter: @renekreijveld
Skype: renekreijveld
Facebook: http://www.facebook.com/rene.kreijveld
My life outside Joomla
• Running.
• Playing drums.
• Training with Mila, a Bracco Italiano hunting dog.
Mila
Disclaimer
• The solutions presented here today work for me,
they might not work for you.
• Try and experiment with my suggestions.
• Backup, Backup, Backup, before testing
anything ;-)
Responsive templates
• Who in this audience builds responsive
templates?
• Based on what CSS framework?
• Do you build yourself or buy a template and
customize?
• I personally build from scratch using Blank
Template
http://blank.vc/
CSS Frameworks (1)
• Twitter Bootstrap
“Sleek, intuitive, and powerful front-end
framework for faster and easier web
development.”
http://twitter.github.io/bootstrap/
• Foundation Zurb
“The most advanced responsive front-end
framework in the world.”
http://foundation.zurb.com/
CSS Frameworks (2)
• HTML Boilerplate
• Responsive Grid System
• Titan Framework
• Groundwork CSS
• Base
• https://www.google.nl/search?q=css+responsive
+frameworks
Media Queries (1)
• Used al lot in CSS3.
• Apply CSS-rules based on viewport resolutions:
Media Queries (2)
• Often there are special CSS-classes to hide
content at a certain resolution.
• Twitter Bootstrap uses Responsive Utility Classes:
http://twitter.github.io/bootstrap/
scaffolding.html#responsive
• Foundation Zurb uses Visibility Classes:
http://foundation.zurb.com/docs/components/
visibility.html
Special CSS-classes
• Advantage: easily hide content on certain
devices (based on resolutions).
Usage: in template code or as a Module Class
Suffix: add <space>hidden-phone
• Disadvantage: the content is only visually
hidden.
All content is still downloaded to the device!
Unnecessary use of bandwidth!
Media Queries
• Media Queries are based on viewport resolutions.
• Modern iPhones en iPads have high resolutions.
• iPhone: http://www.apple.com/iphone/specs.html
1136 x 640 pixels.
• iPad: http://www.apple.com/ipad/specs/
2048 x 1536 pixels.
My conclusion on
Media Queries
If you want to save bandwidth, by hiding
certain content on tablets/mobiles, doing this
based on the viewport might not be the best
solution...
My conclusion on
Media Queries
It might be a better option to hide certain
content on tablets/mobiles, based on the
browser and the device of the website visitor.
Enter: the User Agent
• The User Agent string is a unique definition of the
browser and operating system.
In HTTP, the User-Agent string is often used for content
negotiation, where the origin server selects suitable
content or operating parameters for the response.
http://en.wikipedia.org/wiki/User_agent
• The user agent can be determined client side and
server side.
Demo
• Demo with User Agent detection in Joomla
• Used tools (all FireFox plugins)
• Web Developer Toolbar
https://addons.mozilla.org/nl/firefox/addon/web-
developer/
• User Agent Switcher
https://addons.mozilla.org/nl/firefox/addon/user-
agent-switcher/
AVGM.nl
• Responsive Website for an athletics
association.
• Built with Twitter Bootstrap.
• Separate layouts for desktop, tablet and
mobile.
• http://www.avgm.nl/
PUBLICANDA.nl
• Website about Publicanda our
Joomla distribution.
• Built with Twitter Bootstrap.
• Separate layouts for desktop, tablet and
mobile.
• http://www.publicanda.nl/
Mobile Detect
• PHP library that reads the User Agent (serverside).
https://github.com/serbanghita/Mobile-Detect
• It can detect:
- Is the device a desktop, tablet or mobile?
- Is it running iOS or Android?
- A lot more...
• Regular updates for new user agents.
Mobile Detect usage
And other extensions?
• When loading Mobile_Detect.php in
template code, the test is only available in
the template.
• Wouldn’t it be handy if you knew
everywhere (templates, components,
plugins, modules) what kind of device your
visitor has?
User Agent Detector
• System Plugin:
https://github.com/renekreijveld/UserAgentDetector
• Sets a session variable with UA Layout.
• Available for Joomla 2.5 and 3.0.
User Agent Detector
• Possible values for ualayout:
• desktop
• tablet
• mobile
• bot
Search Engine Optimisation
• Search engines index your website by
sending a spiderbot to your website.
• Googlebot, Bing, Yahoo Slurp, Msnbot, ...
• So spiderbots are also website visitors.
• Each spiderbot has a unique User Agent!
• Mobile_Detect.php can identify
spiderbots :-)
Template experiment
Template experiment
Demo spiderbot detection
• http://www.avgm.nl
• http://www.publicanda.nl
Questions ?

More Related Content

What's hot

An Introduction to Multisite - WordCamp Phoenix
An Introduction to Multisite - WordCamp PhoenixAn Introduction to Multisite - WordCamp Phoenix
An Introduction to Multisite - WordCamp Phoenix
vegasgeek
 
W pthemes
W pthemesW pthemes
W pthemes
Becky Davis
 
Getting started with WordPress
Getting started with WordPressGetting started with WordPress
Getting started with WordPress
New Tricks
 
Integration options
Integration optionsIntegration options
Integration optionsDiego Jancic
 
An introduction to wordpress
An introduction to wordpressAn introduction to wordpress
An introduction to wordpress
Crack Aloud
 
Child Themes and CSS in WordPress
Child Themes and CSS in WordPressChild Themes and CSS in WordPress
Child Themes and CSS in WordPress
Matthew Vaccaro
 
Wordpress essential training - Wordpress Presentation PPT
Wordpress essential training - Wordpress Presentation PPTWordpress essential training - Wordpress Presentation PPT
Wordpress essential training - Wordpress Presentation PPT
Abdulla2410
 
Pimp your wp site
Pimp your wp sitePimp your wp site
Pimp your wp site
Warren Denley
 
WordPress Themes Demystified
WordPress Themes DemystifiedWordPress Themes Demystified
WordPress Themes Demystified
Chris Burgess
 
How to create a WordPress Site
How to create a WordPress Site How to create a WordPress Site
How to create a WordPress Site
MuhammadUsaid2
 
WP 101 - Local Development - Themes and Plugins
WP 101 - Local Development - Themes and PluginsWP 101 - Local Development - Themes and Plugins
WP 101 - Local Development - Themes and Plugins
Joe Querin
 
wordpress training | wordpress certification | wordpress training course | wo...
wordpress training | wordpress certification | wordpress training course | wo...wordpress training | wordpress certification | wordpress training course | wo...
wordpress training | wordpress certification | wordpress training course | wo...
Nancy Thomas
 
Installing WordPress The Right Way
Installing WordPress The Right WayInstalling WordPress The Right Way
Installing WordPress The Right Way
Chris Burgess
 
WP 101 - WordPress Basics
WP 101 - WordPress BasicsWP 101 - WordPress Basics
WP 101 - WordPress Basics
Joe Querin
 
Basic WordPress for Beginner ppt
Basic WordPress for Beginner pptBasic WordPress for Beginner ppt
Basic WordPress for Beginner ppt
Dipika Wadhvani
 
BASIC Wordpress content management training August 2014
BASIC Wordpress content management training August 2014BASIC Wordpress content management training August 2014
BASIC Wordpress content management training August 2014Brenton Johnson
 
Wordpress Beyond A Blog Word Camp Toronto08
Wordpress Beyond A Blog Word Camp Toronto08Wordpress Beyond A Blog Word Camp Toronto08
Wordpress Beyond A Blog Word Camp Toronto08
Jamie Oastler
 
Platforms based on WordPress
Platforms based on WordPressPlatforms based on WordPress
Platforms based on WordPress
Mario Peshev
 
A word press site even your mother can use
A word press site even your mother can useA word press site even your mother can use
A word press site even your mother can use
Jerrett Farmer
 
WordPress can do that?!
WordPress can do that?!WordPress can do that?!
WordPress can do that?!
Scott McNulty
 

What's hot (20)

An Introduction to Multisite - WordCamp Phoenix
An Introduction to Multisite - WordCamp PhoenixAn Introduction to Multisite - WordCamp Phoenix
An Introduction to Multisite - WordCamp Phoenix
 
W pthemes
W pthemesW pthemes
W pthemes
 
Getting started with WordPress
Getting started with WordPressGetting started with WordPress
Getting started with WordPress
 
Integration options
Integration optionsIntegration options
Integration options
 
An introduction to wordpress
An introduction to wordpressAn introduction to wordpress
An introduction to wordpress
 
Child Themes and CSS in WordPress
Child Themes and CSS in WordPressChild Themes and CSS in WordPress
Child Themes and CSS in WordPress
 
Wordpress essential training - Wordpress Presentation PPT
Wordpress essential training - Wordpress Presentation PPTWordpress essential training - Wordpress Presentation PPT
Wordpress essential training - Wordpress Presentation PPT
 
Pimp your wp site
Pimp your wp sitePimp your wp site
Pimp your wp site
 
WordPress Themes Demystified
WordPress Themes DemystifiedWordPress Themes Demystified
WordPress Themes Demystified
 
How to create a WordPress Site
How to create a WordPress Site How to create a WordPress Site
How to create a WordPress Site
 
WP 101 - Local Development - Themes and Plugins
WP 101 - Local Development - Themes and PluginsWP 101 - Local Development - Themes and Plugins
WP 101 - Local Development - Themes and Plugins
 
wordpress training | wordpress certification | wordpress training course | wo...
wordpress training | wordpress certification | wordpress training course | wo...wordpress training | wordpress certification | wordpress training course | wo...
wordpress training | wordpress certification | wordpress training course | wo...
 
Installing WordPress The Right Way
Installing WordPress The Right WayInstalling WordPress The Right Way
Installing WordPress The Right Way
 
WP 101 - WordPress Basics
WP 101 - WordPress BasicsWP 101 - WordPress Basics
WP 101 - WordPress Basics
 
Basic WordPress for Beginner ppt
Basic WordPress for Beginner pptBasic WordPress for Beginner ppt
Basic WordPress for Beginner ppt
 
BASIC Wordpress content management training August 2014
BASIC Wordpress content management training August 2014BASIC Wordpress content management training August 2014
BASIC Wordpress content management training August 2014
 
Wordpress Beyond A Blog Word Camp Toronto08
Wordpress Beyond A Blog Word Camp Toronto08Wordpress Beyond A Blog Word Camp Toronto08
Wordpress Beyond A Blog Word Camp Toronto08
 
Platforms based on WordPress
Platforms based on WordPressPlatforms based on WordPress
Platforms based on WordPress
 
A word press site even your mother can use
A word press site even your mother can useA word press site even your mother can use
A word press site even your mother can use
 
WordPress can do that?!
WordPress can do that?!WordPress can do that?!
WordPress can do that?!
 

Viewers also liked

Juilliard School Presentation: Bootstrap your online presence
Juilliard School Presentation: Bootstrap your online presenceJuilliard School Presentation: Bootstrap your online presence
Juilliard School Presentation: Bootstrap your online presence
Thomas Deneuville
 
WildRide presentation
WildRide presentationWildRide presentation
WildRide presentation
sfirschimihaela
 
Responsive webdesign
Responsive webdesignResponsive webdesign
Responsive webdesign
Bart De Waele
 
Responsive web design
Responsive web designResponsive web design
Responsive web design
Russ Weakley
 
Bootstrap Framework and Drupal
Bootstrap Framework and DrupalBootstrap Framework and Drupal
Bootstrap Framework and Drupal
Jim Birch
 
Responsive web-design through bootstrap
Responsive web-design through bootstrapResponsive web-design through bootstrap
Responsive web-design through bootstrap
Zunair Sagitarioux
 
Introduce Bootstrap 3 to Develop Responsive Design Application
Introduce Bootstrap 3 to Develop Responsive Design ApplicationIntroduce Bootstrap 3 to Develop Responsive Design Application
Introduce Bootstrap 3 to Develop Responsive Design Application
eXo Platform
 
Internship Final Report
Internship Final Report Internship Final Report
Internship Final Report
Nadia Nahar
 
Responsive Webdesign
Responsive WebdesignResponsive Webdesign
Responsive Webdesign
Antonio De Pasquale
 
Responsive Webdesign For Non-Geeks
Responsive Webdesign For Non-GeeksResponsive Webdesign For Non-Geeks
Responsive Webdesign For Non-Geeks
Prophets Agency
 
Internship Report
Internship ReportInternship Report
Internship Report
Buddhima Wijeweera
 
Bootstrap 3 - Sleek, intuitive, and powerful mobile first front-end framework...
Bootstrap 3 - Sleek, intuitive, and powerful mobile first front-end framework...Bootstrap 3 - Sleek, intuitive, and powerful mobile first front-end framework...
Bootstrap 3 - Sleek, intuitive, and powerful mobile first front-end framework...
Cedric Spillebeen
 
Summer Internship Report on Developing business promotional strategies and ma...
Summer Internship Report on Developing business promotional strategies and ma...Summer Internship Report on Developing business promotional strategies and ma...
Summer Internship Report on Developing business promotional strategies and ma...
Kartik Mehta
 
Steve Rice (Los Gatos): The Future of Travel
Steve Rice (Los Gatos): The Future of TravelSteve Rice (Los Gatos): The Future of Travel
Steve Rice (Los Gatos): The Future of Travel
Steve Rice Los Gatos
 
Introduction to Bootstrap
Introduction to BootstrapIntroduction to Bootstrap
Introduction to Bootstrap
Ron Reiter
 
Web Development on Web Project Report
Web Development on Web Project ReportWeb Development on Web Project Report
Web Development on Web Project Report
Milind Gokhale
 
Web Design Project Report
Web Design Project ReportWeb Design Project Report
Web Design Project Report
MJ Ferdous
 
Html / CSS Presentation
Html / CSS PresentationHtml / CSS Presentation
Html / CSS Presentation
Shawn Calvert
 

Viewers also liked (19)

Juilliard School Presentation: Bootstrap your online presence
Juilliard School Presentation: Bootstrap your online presenceJuilliard School Presentation: Bootstrap your online presence
Juilliard School Presentation: Bootstrap your online presence
 
WildRide presentation
WildRide presentationWildRide presentation
WildRide presentation
 
Responsive webdesign
Responsive webdesignResponsive webdesign
Responsive webdesign
 
Responsive web design
Responsive web designResponsive web design
Responsive web design
 
Bootstrap Framework and Drupal
Bootstrap Framework and DrupalBootstrap Framework and Drupal
Bootstrap Framework and Drupal
 
Responsive web-design through bootstrap
Responsive web-design through bootstrapResponsive web-design through bootstrap
Responsive web-design through bootstrap
 
Introduce Bootstrap 3 to Develop Responsive Design Application
Introduce Bootstrap 3 to Develop Responsive Design ApplicationIntroduce Bootstrap 3 to Develop Responsive Design Application
Introduce Bootstrap 3 to Develop Responsive Design Application
 
Internship Final Report
Internship Final Report Internship Final Report
Internship Final Report
 
Responsive Webdesign
Responsive WebdesignResponsive Webdesign
Responsive Webdesign
 
Responsive Webdesign For Non-Geeks
Responsive Webdesign For Non-GeeksResponsive Webdesign For Non-Geeks
Responsive Webdesign For Non-Geeks
 
Internship Report
Internship ReportInternship Report
Internship Report
 
Bootstrap 3 - Sleek, intuitive, and powerful mobile first front-end framework...
Bootstrap 3 - Sleek, intuitive, and powerful mobile first front-end framework...Bootstrap 3 - Sleek, intuitive, and powerful mobile first front-end framework...
Bootstrap 3 - Sleek, intuitive, and powerful mobile first front-end framework...
 
Summer Internship Report on Developing business promotional strategies and ma...
Summer Internship Report on Developing business promotional strategies and ma...Summer Internship Report on Developing business promotional strategies and ma...
Summer Internship Report on Developing business promotional strategies and ma...
 
Steve Rice (Los Gatos): The Future of Travel
Steve Rice (Los Gatos): The Future of TravelSteve Rice (Los Gatos): The Future of Travel
Steve Rice (Los Gatos): The Future of Travel
 
Introduction to Bootstrap
Introduction to BootstrapIntroduction to Bootstrap
Introduction to Bootstrap
 
Web Development on Web Project Report
Web Development on Web Project ReportWeb Development on Web Project Report
Web Development on Web Project Report
 
Web Design Project Report
Web Design Project ReportWeb Design Project Report
Web Design Project Report
 
Html / CSS Presentation
Html / CSS PresentationHtml / CSS Presentation
Html / CSS Presentation
 
Slideshare ppt
Slideshare pptSlideshare ppt
Slideshare ppt
 

Similar to Bandwidth optimisation in Responsive Webdesign - J&Beyond, june 1st 2013

From WordPress With Love
From WordPress With LoveFrom WordPress With Love
From WordPress With Love
Up2 Technology
 
CMS Joomla
CMS JoomlaCMS Joomla
CMS Joomla
The eCore Group
 
FITC - Bootstrap Unleashed
FITC - Bootstrap UnleashedFITC - Bootstrap Unleashed
FITC - Bootstrap Unleashed
Rami Sayar
 
Node.js 101
 Node.js 101 Node.js 101
Node.js 101
FITC
 
BITM3730 11-7.pptx
BITM3730 11-7.pptxBITM3730 11-7.pptx
BITM3730 11-7.pptx
MattMarino13
 
WordPress Security and Best Practices
WordPress Security and Best PracticesWordPress Security and Best Practices
WordPress Security and Best Practices
Robert Vidal
 
USG Rock Eagle 2017 - PWP at 1000 Days
USG Rock Eagle 2017 - PWP at 1000 DaysUSG Rock Eagle 2017 - PWP at 1000 Days
USG Rock Eagle 2017 - PWP at 1000 Days
Eric Sembrat
 
Reboot-Typography.pptx reboot typography to help you in research
Reboot-Typography.pptx reboot typography to help you in researchReboot-Typography.pptx reboot typography to help you in research
Reboot-Typography.pptx reboot typography to help you in research
AadiChauhan2
 
Alternatives to LMS and Content development
Alternatives to LMS and Content developmentAlternatives to LMS and Content development
Alternatives to LMS and Content development
Yum Studio
 
Picnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable applicationPicnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable application
Nick Josevski
 
New in the Visual Studio 2012 IDE
New in the Visual Studio 2012 IDENew in the Visual Studio 2012 IDE
New in the Visual Studio 2012 IDE
LearnNowOnline
 
Freelancer Weapons of mass productivity
Freelancer Weapons of mass productivityFreelancer Weapons of mass productivity
Freelancer Weapons of mass productivity
Gregg Coppen
 
Wordpress intro
Wordpress introWordpress intro
Wordpress intro
the-colab
 
Why Switching To WordPress 3.0 Is The Best Thing You Can Do For Your Clients
Why Switching To WordPress 3.0 Is The Best Thing You Can Do For Your ClientsWhy Switching To WordPress 3.0 Is The Best Thing You Can Do For Your Clients
Why Switching To WordPress 3.0 Is The Best Thing You Can Do For Your Clients
ryanduff
 
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
Aiming for automatic updates - Drupal Dev Days Lisbon 2018Aiming for automatic updates - Drupal Dev Days Lisbon 2018
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
hernanibf
 
Website essentials things every library website should have
Website essentials  things every library website should haveWebsite essentials  things every library website should have
Website essentials things every library website should have
Brian Pichman
 
BITM3730 11-8.pptx
BITM3730 11-8.pptxBITM3730 11-8.pptx
BITM3730 11-8.pptx
MattMarino13
 
eSoftHead - groupware solution
eSoftHead - groupware solutioneSoftHead - groupware solution
eSoftHead - groupware solution
Nguyen Hai
 

Similar to Bandwidth optimisation in Responsive Webdesign - J&Beyond, june 1st 2013 (20)

From WordPress With Love
From WordPress With LoveFrom WordPress With Love
From WordPress With Love
 
CMS Joomla
CMS JoomlaCMS Joomla
CMS Joomla
 
FITC - Bootstrap Unleashed
FITC - Bootstrap UnleashedFITC - Bootstrap Unleashed
FITC - Bootstrap Unleashed
 
Node.js 101
 Node.js 101 Node.js 101
Node.js 101
 
BITM3730 11-7.pptx
BITM3730 11-7.pptxBITM3730 11-7.pptx
BITM3730 11-7.pptx
 
WordPress Security and Best Practices
WordPress Security and Best PracticesWordPress Security and Best Practices
WordPress Security and Best Practices
 
USG Rock Eagle 2017 - PWP at 1000 Days
USG Rock Eagle 2017 - PWP at 1000 DaysUSG Rock Eagle 2017 - PWP at 1000 Days
USG Rock Eagle 2017 - PWP at 1000 Days
 
Reboot-Typography.pptx reboot typography to help you in research
Reboot-Typography.pptx reboot typography to help you in researchReboot-Typography.pptx reboot typography to help you in research
Reboot-Typography.pptx reboot typography to help you in research
 
Alternatives to LMS and Content development
Alternatives to LMS and Content developmentAlternatives to LMS and Content development
Alternatives to LMS and Content development
 
Picnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable applicationPicnic Software - Developing a flexible and scalable application
Picnic Software - Developing a flexible and scalable application
 
New in the Visual Studio 2012 IDE
New in the Visual Studio 2012 IDENew in the Visual Studio 2012 IDE
New in the Visual Studio 2012 IDE
 
Freelancer Weapons of mass productivity
Freelancer Weapons of mass productivityFreelancer Weapons of mass productivity
Freelancer Weapons of mass productivity
 
Wordpress intro
Wordpress introWordpress intro
Wordpress intro
 
Codeigniter framework
Codeigniter framework Codeigniter framework
Codeigniter framework
 
Why Switching To WordPress 3.0 Is The Best Thing You Can Do For Your Clients
Why Switching To WordPress 3.0 Is The Best Thing You Can Do For Your ClientsWhy Switching To WordPress 3.0 Is The Best Thing You Can Do For Your Clients
Why Switching To WordPress 3.0 Is The Best Thing You Can Do For Your Clients
 
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
Aiming for automatic updates - Drupal Dev Days Lisbon 2018Aiming for automatic updates - Drupal Dev Days Lisbon 2018
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
 
Website essentials things every library website should have
Website essentials  things every library website should haveWebsite essentials  things every library website should have
Website essentials things every library website should have
 
BITM3730 11-8.pptx
BITM3730 11-8.pptxBITM3730 11-8.pptx
BITM3730 11-8.pptx
 
Mobile app development
Mobile app development  Mobile app development
Mobile app development
 
eSoftHead - groupware solution
eSoftHead - groupware solutioneSoftHead - groupware solution
eSoftHead - groupware solution
 

More from René Kreijveld

Building a Car Sales website with Form2Content
Building a Car Sales website with Form2ContentBuilding a Car Sales website with Form2Content
Building a Car Sales website with Form2Content
René Kreijveld
 
Going live with a Checklist
Going live with a ChecklistGoing live with a Checklist
Going live with a Checklist
René Kreijveld
 
Een autodealer website bouwen met Form2Content
Een autodealer website bouwen met Form2ContentEen autodealer website bouwen met Form2Content
Een autodealer website bouwen met Form2Content
René Kreijveld
 
Tips en Truuks JUG Zuidoost 15 mei 2014
Tips en Truuks JUG Zuidoost 15 mei 2014Tips en Truuks JUG Zuidoost 15 mei 2014
Tips en Truuks JUG Zuidoost 15 mei 2014
René Kreijveld
 
Joomla componenten bouwen met Component Creator
Joomla componenten bouwen met Component CreatorJoomla componenten bouwen met Component Creator
Joomla componenten bouwen met Component Creator
René Kreijveld
 
Data optimaliseren voor tablet en mobiel
Data optimaliseren voor tablet en mobielData optimaliseren voor tablet en mobiel
Data optimaliseren voor tablet en mobiel
René Kreijveld
 
JMonitoring, powertool voor Joomla!
JMonitoring, powertool voor Joomla!JMonitoring, powertool voor Joomla!
JMonitoring, powertool voor Joomla!
René Kreijveld
 
The power of unix scripts for Joomla!
The power of unix scripts for Joomla!The power of unix scripts for Joomla!
The power of unix scripts for Joomla!
René Kreijveld
 
RsFormsPro Multipage Forms with PDF output
RsFormsPro Multipage Forms with PDF outputRsFormsPro Multipage Forms with PDF output
RsFormsPro Multipage Forms with PDF output
René Kreijveld
 

More from René Kreijveld (9)

Building a Car Sales website with Form2Content
Building a Car Sales website with Form2ContentBuilding a Car Sales website with Form2Content
Building a Car Sales website with Form2Content
 
Going live with a Checklist
Going live with a ChecklistGoing live with a Checklist
Going live with a Checklist
 
Een autodealer website bouwen met Form2Content
Een autodealer website bouwen met Form2ContentEen autodealer website bouwen met Form2Content
Een autodealer website bouwen met Form2Content
 
Tips en Truuks JUG Zuidoost 15 mei 2014
Tips en Truuks JUG Zuidoost 15 mei 2014Tips en Truuks JUG Zuidoost 15 mei 2014
Tips en Truuks JUG Zuidoost 15 mei 2014
 
Joomla componenten bouwen met Component Creator
Joomla componenten bouwen met Component CreatorJoomla componenten bouwen met Component Creator
Joomla componenten bouwen met Component Creator
 
Data optimaliseren voor tablet en mobiel
Data optimaliseren voor tablet en mobielData optimaliseren voor tablet en mobiel
Data optimaliseren voor tablet en mobiel
 
JMonitoring, powertool voor Joomla!
JMonitoring, powertool voor Joomla!JMonitoring, powertool voor Joomla!
JMonitoring, powertool voor Joomla!
 
The power of unix scripts for Joomla!
The power of unix scripts for Joomla!The power of unix scripts for Joomla!
The power of unix scripts for Joomla!
 
RsFormsPro Multipage Forms with PDF output
RsFormsPro Multipage Forms with PDF outputRsFormsPro Multipage Forms with PDF output
RsFormsPro Multipage Forms with PDF output
 

Recently uploaded

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
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
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
 
UiPath Community Day Dubai: AI at Work..
UiPath Community Day Dubai: AI at Work..UiPath Community Day Dubai: AI at Work..
UiPath Community Day Dubai: AI at Work..
UiPathCommunity
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
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 Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
Jen Stirrup
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
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
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
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
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 

Recently uploaded (20)

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 !
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
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
 
UiPath Community Day Dubai: AI at Work..
UiPath Community Day Dubai: AI at Work..UiPath Community Day Dubai: AI at Work..
UiPath Community Day Dubai: AI at Work..
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
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 Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
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...
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
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
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 

Bandwidth optimisation in Responsive Webdesign - J&Beyond, june 1st 2013

  • 1.
  • 2. René Kreijveld • Joomla webdeveloper/system integrator since 2004. • Work for DSD Business Internet and ReneKreijveld.nl • Specialisations: [responsive] templates, one|content based web applications, complex RSForm!Pro webforms, Joomla webserver setups • Twitter: @renekreijveld Skype: renekreijveld Facebook: http://www.facebook.com/rene.kreijveld
  • 3. My life outside Joomla • Running. • Playing drums. • Training with Mila, a Bracco Italiano hunting dog.
  • 5. Disclaimer • The solutions presented here today work for me, they might not work for you. • Try and experiment with my suggestions. • Backup, Backup, Backup, before testing anything ;-)
  • 6. Responsive templates • Who in this audience builds responsive templates? • Based on what CSS framework? • Do you build yourself or buy a template and customize? • I personally build from scratch using Blank Template http://blank.vc/
  • 7. CSS Frameworks (1) • Twitter Bootstrap “Sleek, intuitive, and powerful front-end framework for faster and easier web development.” http://twitter.github.io/bootstrap/ • Foundation Zurb “The most advanced responsive front-end framework in the world.” http://foundation.zurb.com/
  • 8. CSS Frameworks (2) • HTML Boilerplate • Responsive Grid System • Titan Framework • Groundwork CSS • Base • https://www.google.nl/search?q=css+responsive +frameworks
  • 9. Media Queries (1) • Used al lot in CSS3. • Apply CSS-rules based on viewport resolutions:
  • 10. Media Queries (2) • Often there are special CSS-classes to hide content at a certain resolution. • Twitter Bootstrap uses Responsive Utility Classes: http://twitter.github.io/bootstrap/ scaffolding.html#responsive • Foundation Zurb uses Visibility Classes: http://foundation.zurb.com/docs/components/ visibility.html
  • 11. Special CSS-classes • Advantage: easily hide content on certain devices (based on resolutions). Usage: in template code or as a Module Class Suffix: add <space>hidden-phone • Disadvantage: the content is only visually hidden. All content is still downloaded to the device! Unnecessary use of bandwidth!
  • 12. Media Queries • Media Queries are based on viewport resolutions. • Modern iPhones en iPads have high resolutions. • iPhone: http://www.apple.com/iphone/specs.html 1136 x 640 pixels. • iPad: http://www.apple.com/ipad/specs/ 2048 x 1536 pixels.
  • 13. My conclusion on Media Queries If you want to save bandwidth, by hiding certain content on tablets/mobiles, doing this based on the viewport might not be the best solution...
  • 14. My conclusion on Media Queries It might be a better option to hide certain content on tablets/mobiles, based on the browser and the device of the website visitor.
  • 15. Enter: the User Agent • The User Agent string is a unique definition of the browser and operating system. In HTTP, the User-Agent string is often used for content negotiation, where the origin server selects suitable content or operating parameters for the response. http://en.wikipedia.org/wiki/User_agent • The user agent can be determined client side and server side.
  • 16. Demo • Demo with User Agent detection in Joomla • Used tools (all FireFox plugins) • Web Developer Toolbar https://addons.mozilla.org/nl/firefox/addon/web- developer/ • User Agent Switcher https://addons.mozilla.org/nl/firefox/addon/user- agent-switcher/
  • 17. AVGM.nl • Responsive Website for an athletics association. • Built with Twitter Bootstrap. • Separate layouts for desktop, tablet and mobile. • http://www.avgm.nl/
  • 18. PUBLICANDA.nl • Website about Publicanda our Joomla distribution. • Built with Twitter Bootstrap. • Separate layouts for desktop, tablet and mobile. • http://www.publicanda.nl/
  • 19. Mobile Detect • PHP library that reads the User Agent (serverside). https://github.com/serbanghita/Mobile-Detect • It can detect: - Is the device a desktop, tablet or mobile? - Is it running iOS or Android? - A lot more... • Regular updates for new user agents.
  • 21. And other extensions? • When loading Mobile_Detect.php in template code, the test is only available in the template. • Wouldn’t it be handy if you knew everywhere (templates, components, plugins, modules) what kind of device your visitor has?
  • 22. User Agent Detector • System Plugin: https://github.com/renekreijveld/UserAgentDetector • Sets a session variable with UA Layout. • Available for Joomla 2.5 and 3.0.
  • 23. User Agent Detector • Possible values for ualayout: • desktop • tablet • mobile • bot
  • 24. Search Engine Optimisation • Search engines index your website by sending a spiderbot to your website. • Googlebot, Bing, Yahoo Slurp, Msnbot, ... • So spiderbots are also website visitors. • Each spiderbot has a unique User Agent! • Mobile_Detect.php can identify spiderbots :-)
  • 27. Demo spiderbot detection • http://www.avgm.nl • http://www.publicanda.nl