SlideShare a Scribd company logo
BDUG Responsive Web Theming - 7/23/12
Slides


•   Slideshare
    http://www.slideshare.net/ucbdrupal/bdug-responsive-
    webtheming20120723

•   UC Berkeley: IST Drupal
    ist-drupal@lists.berkeley.edu




                              2
Agenda

•   Introduction
•   Responsive Web Design
•   Base Theme: Zen 5
•   CSS Preprocessing
•   Sass
•   Compass
•   Zen Starterkit
•   Demo
•   Preview Berkeley Panopoly theme
•   Q&A


              3
One Website on Multiple Devices




               4
Mobile v. Babies



                   Luke Wroblewski

               “Why Mobile Matters”
                      February 2012


           “1.27M mobile devices sold or
           activated per day compared to
               371,124 children born”

           http://www.lukew.com/ff/entry.asp?1506




       5
Responsive Web Design

•   Coined by Ethan Marcotte
    http://www.alistapart.com/articles/responsive-web-design



•   Three Parts:
    1. CSS3 media queries
    2. Fluid or flexible layouts
    3. Flexible images


•   Device Independence: Users viewing your site on a
    broad range of devices will be accessing the same
    content


                                                6
What does a
    responsive website look like?

•   Online tools
    •   http://responsinator.com
    •   http://responsivepx.com
    •   http://www.netmagazine.com/features/50-fantastic-tools-
        responsive-web-design

•   Design examples
    •   http://mediaqueri.es/

•   Navigation Patterns
    •   http://bradfrostweb.com/blog/web/responsive-nav-patterns
    •   http://filamentgroup.com/lab/responsive_design_approach_
        for_navigation
                                   7
Media Queries


•   CSS2 introduced the concept of media queries

•   HTML files with separate stylesheets for screen and
    print
    <link rel="stylesheet" type="text/css" media="screen" href="screen.css">
    <link rel="stylesheet" type="text/css" media="print" href="print.css">


•   CSS stylesheets
    @media screen {
      * { font-family: sans-serif }
    }




                                       8
Media Queries


•   CSS3: W3C extended the functionality of media queries
    •    Check for particular media features like width, height, and color
    •    Tailor styles to a specific range of devices without changing the
         content itself

•   Implemented via the @import rule in CSS
    @import url(style480min.css) screen and (min-width: 480px);




•   Used in the HTML <link> media attribute
    <link rel="stylesheet" type="text/css" media="screen and (min-width: 480px)"
    href="style480min.css" />




                                           9
Media Queries


•   Or most commonly used directly in a style sheet
    (from Zen responsive-sidebars.css):

    @media all and (min-width: 480px) {
      #main {
        padding-top: 3em;
        position: relative;
      }

        #navigation {
          position: absolute;
          top: 0;
          height: 3em;
          width: 100%;
        }
    }



                                          10
Fluid or Flexible Layouts


•   Before responsive web design: Fixed, fluid, elastic?


    Fixed:            Fluid:               Elastic:

    #container {      #container {         #container {
      width: 400px;     width: 40%;          width: 25em;
    }                 }                    }

                      Adjusts to           Size elements
    Control and       user’s screen        with ems (relative
    consistency       resolution           unit based on font
                                           size)


                               11
Responsive Grids




       12
Flexible Images and Media


•   Scaling images and video in CSS is straightforward
    by setting the max-width to 100%.
    img {
         max-width: 100%;
    }



•   Performance considerations: May be taking up
    bandwidth to serve a high-resolution image to a
    device that isn’t using it
    http://blog.cloudfour.com/responsive-imgs/




                                             13
Responsive Base Themes


 •   Zen 5
     http://drupal.org/project/zen


 •   Adaptive Theme
     http://drupal.org/project/adaptivetheme


 •   Omega
     http://drupal.org/project/omega




                         14
Why Zen 5?


•   Terrific documentation

•   Clean organization

•   Best practices (http://drupal.org/project/zen)
          HTML5                         Optional IE6/7 Support
          HTML shiv                     Documentation
          Responsive Design             Swappable Layouts
          Sass/Compass                  Drush Support
          CSS                           RTL Language Support
          Zen Grids                     Accessibility
          Normalize CSS
          Respond.js
          IE Conditional Classes
                                   15
CSS Preprocessing

•   Sounds more complicated than it is
•   “I already know CSS; no time to learn something new”
•   Easy to get started
•   Just an extension of CSS – use as much or as little as desired
•   Sass (http://sass-lang.com) or Less (http://lesscss.org)
    •    Allow you to write cleaner and easier-to-read code
    •    Run through CSS preprocessor – transforms into typical CSS
    •    Can just write css, so easy to "sassify” or “lessify” existing CSS files

•   Live websites are running CSS (compiled by Sass)


                                              16
Sass


•   “Syntactically awesome style sheets”

•   Getting started:
    •   http://sass-lang.com/tutorial.html
    •   http://thesassway.com/beginner/getting-started-with-sass-and-
        compass

•   Written in Ruby; installed via Ruby package
    manager; don’t need to learn Ruby to use



                                    17
Sass


•   Mac OS X: Ruby already installed! (update if
    desired)
    ruby --version   or   ruby –v


•   Windows: Ruby installer (http://rubyinstaller.org/downloads/)

•   Linux: Install via favorite package manager

•   Install Sass:
    gem install sass


                                    18
Sass


•   Two syntaxes
    •   .sass (Sass – older syntax for those who like
        terseness; indentation instead of braces and
        semicolons)
    •   .scss (Sassy CSS – default syntax of Sass 3)


•   Default SCSS syntax is a superset of CSS
    •   Allows you to write CSS and only add SCSS when
        you need it
    •   Every CSS file is a valid SCSS file

                              19
Sass Examples
  http://sass-lang.com




           20
Sass Examples
  http://sass-lang.com




           21
Sass Examples
  http://sass-lang.com




           22
Sass Examples
  http://sass-lang.com




           23
Compass
                           http://compass-style.org




•   Open Source CSS Authoring Framework
    •   Uses Sass
    •   Makes things easier
    •   Library of functions and add-ons to do common things

•   Install Compass:
    gem install compass

•   Using Compass (outside of Zen 5, Drupal):
    compass help
    Primary Commands:
      * clean   - Remove generated files and the sass cache
      * compile - Compile Sass stylesheets to CSS
      * create - Create a new compass project
      * init    - Add compass to an existing project
      * watch   - Compile Sass stylesheets to CSS when they change

                                       24
CSS before Compass
    http://compass-style.org




               25
Compass
http://compass-style.org




           26
Compass: CSS module
     http://compass-style.org




                27
Compass: Sprites
                  http://compass-style.org/help/tutorials/spriting




 Image sprites
      •    Performance boost by fetching all images at once
      •    Difficult to create and manage

 Example: Baron Wanschers, LimoenGroen (Lime Green):
 http://www.bariswanschers.com/blog/use-sass-and-compass-streamline-your-css-development:




Generated CSS:
                                            28
Zen 5

•   Already set up to use Sass and Compass
•   STARTERKIT
    (see zen/STARTERKIT/README.txt)
    •   Copy the STARTERKIT folder, place under sites/all/themes and rename
             Copy “sites/all/themes/zen/STARTERKIT”
             To “sites/all/themes/foo”

    •   Rename “STARTERKIT.info.txt” as “foo.info” and update name and description
    •   In template.php and theme-settings.php: Replace ALL occurrences of
        "STARTERKIT" with “foo”
    •   Set default theme at admin/appearance

•   Or use drush:
    drush zen "Foo Theme" foo

                                          29
Zen 5

•   Review Files
    •     Standard Drupal theme files
    •     Standard folders
    •     Sass-related files/folders

•   Using Sass and Compass with Zen 5
    From root of your sub-theme folder:

          compass clean //removes existing css files so they can be regenerated


          compass watch //watches the “sass” directory
                         //anytime a .scss file is changed, .css auto-generated
                         //includes debug feature for syntax errors during development
                         //launch compass watch and leave running (if needed, re-launch
          terminal)
                         //can look at css generated but eventually just work with scss files
                                            30
Zen Grids
http://zengrids.com




        31
Zen 5: Production


•   When ready to move to production…
    See http://drupal.org/node/1548946 and zen/STARTERKIT/sass/README.txt

•   Update CSS files, minify, and aggregate for
    performance:
    •   compass clean
    •   edit config.rb by uncommenting “#environment = :production”
    •   turn on CSS aggregation




                                    32
Tools


•   FireSass for Firebug: https://addons.mozilla.org/en-
    US/firefox/addon/firesass-for-firebug/

•   ZenGrids:
    http://zengrids.com

•   If you don’t like the command line:
    •    Compass.app: http://compass.handlino.com/ (Mac, Linux, PC)
    •    Fire.app: http://fireapp.handlino.com/ (Mac, Linux, PC)
    •    Codekit: http://incident57.com/codekit/ (Mac)




                                     33
Berkeley Panopoly

• Berkeley Panopoly Theme
• Panopoly
  http://drupal.org/project/panopoly




                                       34
Next Steps
          Pilots

      • Administration &
        Finance
      • Office of the
        Chancellor
      • BAS: Parking &
        Transportation
      • Campus IT




35

More Related Content

PPTX
Drupal Camp Manila 2014 - Theming with Zen
PPT
Creating Responsive Drupal Sites with Zen Grids and the Zen 5 Theme
ODP
Drupal distributions - how to build them
PDF
Grok Drupal (7) Theming - 2011 Feb update
PDF
Responsive Design in Drupal with Zen and Zen Grids
PDF
Using Core Themes in Drupal 8
PDF
Minimalist Theming: How to Build a Lean, Mean Drupal 8 Theme
PDF
A Custom Drupal Theme in 40 Minutes
Drupal Camp Manila 2014 - Theming with Zen
Creating Responsive Drupal Sites with Zen Grids and the Zen 5 Theme
Drupal distributions - how to build them
Grok Drupal (7) Theming - 2011 Feb update
Responsive Design in Drupal with Zen and Zen Grids
Using Core Themes in Drupal 8
Minimalist Theming: How to Build a Lean, Mean Drupal 8 Theme
A Custom Drupal Theme in 40 Minutes

What's hot (20)

PPTX
From PSD to WordPress Theme: Bringing designs to life
PDF
Drupal theming - a practical approach (European Drupal Days 2015)
KEY
Grok Drupal (7) Theming (presented at DrupalCon San Francisco)
PDF
Drupal 7 Theme System
PDF
Introduction to Drupal (7) Theming
PDF
Grok Drupal (7) Theming
PDF
How to Prepare a WordPress Theme for Public Release
PDF
DRY CSS A don’t-repeat-yourself methodology for creating efficient, unified a...
PDF
Creating Layouts and Landing Pages for Drupal 8 - DrupalCon Dublin
PDF
WordPress Theme Structure
PPTX
Introduction to Custom WordPress Themeing
PDF
Developing Your Ultimate Package
PPTX
A look at Drupal 7 Theming
KEY
Efficient theming in Drupal
PDF
WordPress Theme Development Basics
PDF
CSS pattern libraries
PDF
Performance on a budget (European Drupal Days 2015)
PPTX
Display Suite: A Themers Perspective
PDF
Battle of the Front-End Frameworks: Bootstrap vs. Foundation
PDF
Using LESS, the CSS Preprocessor: J and Beyond 2013
From PSD to WordPress Theme: Bringing designs to life
Drupal theming - a practical approach (European Drupal Days 2015)
Grok Drupal (7) Theming (presented at DrupalCon San Francisco)
Drupal 7 Theme System
Introduction to Drupal (7) Theming
Grok Drupal (7) Theming
How to Prepare a WordPress Theme for Public Release
DRY CSS A don’t-repeat-yourself methodology for creating efficient, unified a...
Creating Layouts and Landing Pages for Drupal 8 - DrupalCon Dublin
WordPress Theme Structure
Introduction to Custom WordPress Themeing
Developing Your Ultimate Package
A look at Drupal 7 Theming
Efficient theming in Drupal
WordPress Theme Development Basics
CSS pattern libraries
Performance on a budget (European Drupal Days 2015)
Display Suite: A Themers Perspective
Battle of the Front-End Frameworks: Bootstrap vs. Foundation
Using LESS, the CSS Preprocessor: J and Beyond 2013
Ad

Viewers also liked (7)

KEY
Multimedia handing in Drupal 7, done better with the Media module
PDF
Study: The Future of VR, AR and Self-Driving Cars
PDF
UX, ethnography and possibilities: for Libraries, Museums and Archives
PDF
Designing Teams for Emerging Challenges
PDF
Visual Design with Data
PDF
3 Things Every Sales Team Needs to Be Thinking About in 2017
PDF
How to Become a Thought Leader in Your Niche
Multimedia handing in Drupal 7, done better with the Media module
Study: The Future of VR, AR and Self-Driving Cars
UX, ethnography and possibilities: for Libraries, Museums and Archives
Designing Teams for Emerging Challenges
Visual Design with Data
3 Things Every Sales Team Needs to Be Thinking About in 2017
How to Become a Thought Leader in Your Niche
Ad

Similar to BDUG Responsive Web Theming - 7/23/12 (20)

KEY
Getting started with CSS frameworks using Zurb foundation
PDF
Using Sass in Your WordPress Projects
PPTX
Beautifying senc
PPTX
Beautifying Sencha Touch
PDF
Tech talk-live-alfresco-drupal
PDF
The Foundations of Being Sassy in Drupal
PPT
UNIT 3.ppt
PDF
Best 5 CSS Frameworks You Should Know To Design Attractive Websites .pdf
PDF
Node.js 101
PPTX
Bootstrap [part 1]
PPT
Produce and consume_linked_data_with_drupal
PPTX
Responsive Web Design
PPTX
Webpack and Web Performance Optimization
PDF
Child Theme Frameworks
KEY
CSS Framework + Progressive Enhacements
PPTX
Bb Tour ANZ 2017 - Workshop - Enhancing Learn CSS
PDF
Treeshaking your CSS
PPT
Drupal: an Overview
PDF
Going Multi-Tenant with dotCMS
PDF
PLAT-16 Using Enterprise Content in Grails
Getting started with CSS frameworks using Zurb foundation
Using Sass in Your WordPress Projects
Beautifying senc
Beautifying Sencha Touch
Tech talk-live-alfresco-drupal
The Foundations of Being Sassy in Drupal
UNIT 3.ppt
Best 5 CSS Frameworks You Should Know To Design Attractive Websites .pdf
Node.js 101
Bootstrap [part 1]
Produce and consume_linked_data_with_drupal
Responsive Web Design
Webpack and Web Performance Optimization
Child Theme Frameworks
CSS Framework + Progressive Enhacements
Bb Tour ANZ 2017 - Workshop - Enhancing Learn CSS
Treeshaking your CSS
Drupal: an Overview
Going Multi-Tenant with dotCMS
PLAT-16 Using Enterprise Content in Grails

Recently uploaded (20)

PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
Big Data Technologies - Introduction.pptx
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPT
Teaching material agriculture food technology
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Modernizing your data center with Dell and AMD
PDF
Encapsulation theory and applications.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Machine learning based COVID-19 study performance prediction
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
MYSQL Presentation for SQL database connectivity
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Unlocking AI with Model Context Protocol (MCP)
Diabetes mellitus diagnosis method based random forest with bat algorithm
Big Data Technologies - Introduction.pptx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Building Integrated photovoltaic BIPV_UPV.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
Teaching material agriculture food technology
NewMind AI Monthly Chronicles - July 2025
Dropbox Q2 2025 Financial Results & Investor Presentation
Modernizing your data center with Dell and AMD
Encapsulation theory and applications.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
Machine learning based COVID-19 study performance prediction
The AUB Centre for AI in Media Proposal.docx
Spectral efficient network and resource selection model in 5G networks
Per capita expenditure prediction using model stacking based on satellite ima...
Encapsulation_ Review paper, used for researhc scholars
Review of recent advances in non-invasive hemoglobin estimation
MYSQL Presentation for SQL database connectivity
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...

BDUG Responsive Web Theming - 7/23/12

  • 2. Slides • Slideshare http://www.slideshare.net/ucbdrupal/bdug-responsive- webtheming20120723 • UC Berkeley: IST Drupal ist-drupal@lists.berkeley.edu 2
  • 3. Agenda • Introduction • Responsive Web Design • Base Theme: Zen 5 • CSS Preprocessing • Sass • Compass • Zen Starterkit • Demo • Preview Berkeley Panopoly theme • Q&A 3
  • 4. One Website on Multiple Devices 4
  • 5. Mobile v. Babies Luke Wroblewski “Why Mobile Matters” February 2012 “1.27M mobile devices sold or activated per day compared to 371,124 children born” http://www.lukew.com/ff/entry.asp?1506 5
  • 6. Responsive Web Design • Coined by Ethan Marcotte http://www.alistapart.com/articles/responsive-web-design • Three Parts: 1. CSS3 media queries 2. Fluid or flexible layouts 3. Flexible images • Device Independence: Users viewing your site on a broad range of devices will be accessing the same content 6
  • 7. What does a responsive website look like? • Online tools • http://responsinator.com • http://responsivepx.com • http://www.netmagazine.com/features/50-fantastic-tools- responsive-web-design • Design examples • http://mediaqueri.es/ • Navigation Patterns • http://bradfrostweb.com/blog/web/responsive-nav-patterns • http://filamentgroup.com/lab/responsive_design_approach_ for_navigation 7
  • 8. Media Queries • CSS2 introduced the concept of media queries • HTML files with separate stylesheets for screen and print <link rel="stylesheet" type="text/css" media="screen" href="screen.css"> <link rel="stylesheet" type="text/css" media="print" href="print.css"> • CSS stylesheets @media screen { * { font-family: sans-serif } } 8
  • 9. Media Queries • CSS3: W3C extended the functionality of media queries • Check for particular media features like width, height, and color • Tailor styles to a specific range of devices without changing the content itself • Implemented via the @import rule in CSS @import url(style480min.css) screen and (min-width: 480px); • Used in the HTML <link> media attribute <link rel="stylesheet" type="text/css" media="screen and (min-width: 480px)" href="style480min.css" /> 9
  • 10. Media Queries • Or most commonly used directly in a style sheet (from Zen responsive-sidebars.css): @media all and (min-width: 480px) { #main { padding-top: 3em; position: relative; } #navigation { position: absolute; top: 0; height: 3em; width: 100%; } } 10
  • 11. Fluid or Flexible Layouts • Before responsive web design: Fixed, fluid, elastic? Fixed: Fluid: Elastic: #container { #container { #container { width: 400px; width: 40%; width: 25em; } } } Adjusts to Size elements Control and user’s screen with ems (relative consistency resolution unit based on font size) 11
  • 13. Flexible Images and Media • Scaling images and video in CSS is straightforward by setting the max-width to 100%. img { max-width: 100%; } • Performance considerations: May be taking up bandwidth to serve a high-resolution image to a device that isn’t using it http://blog.cloudfour.com/responsive-imgs/ 13
  • 14. Responsive Base Themes • Zen 5 http://drupal.org/project/zen • Adaptive Theme http://drupal.org/project/adaptivetheme • Omega http://drupal.org/project/omega 14
  • 15. Why Zen 5? • Terrific documentation • Clean organization • Best practices (http://drupal.org/project/zen) HTML5 Optional IE6/7 Support HTML shiv Documentation Responsive Design Swappable Layouts Sass/Compass Drush Support CSS RTL Language Support Zen Grids Accessibility Normalize CSS Respond.js IE Conditional Classes 15
  • 16. CSS Preprocessing • Sounds more complicated than it is • “I already know CSS; no time to learn something new” • Easy to get started • Just an extension of CSS – use as much or as little as desired • Sass (http://sass-lang.com) or Less (http://lesscss.org) • Allow you to write cleaner and easier-to-read code • Run through CSS preprocessor – transforms into typical CSS • Can just write css, so easy to "sassify” or “lessify” existing CSS files • Live websites are running CSS (compiled by Sass) 16
  • 17. Sass • “Syntactically awesome style sheets” • Getting started: • http://sass-lang.com/tutorial.html • http://thesassway.com/beginner/getting-started-with-sass-and- compass • Written in Ruby; installed via Ruby package manager; don’t need to learn Ruby to use 17
  • 18. Sass • Mac OS X: Ruby already installed! (update if desired) ruby --version or ruby –v • Windows: Ruby installer (http://rubyinstaller.org/downloads/) • Linux: Install via favorite package manager • Install Sass: gem install sass 18
  • 19. Sass • Two syntaxes • .sass (Sass – older syntax for those who like terseness; indentation instead of braces and semicolons) • .scss (Sassy CSS – default syntax of Sass 3) • Default SCSS syntax is a superset of CSS • Allows you to write CSS and only add SCSS when you need it • Every CSS file is a valid SCSS file 19
  • 20. Sass Examples http://sass-lang.com 20
  • 21. Sass Examples http://sass-lang.com 21
  • 22. Sass Examples http://sass-lang.com 22
  • 23. Sass Examples http://sass-lang.com 23
  • 24. Compass http://compass-style.org • Open Source CSS Authoring Framework • Uses Sass • Makes things easier • Library of functions and add-ons to do common things • Install Compass: gem install compass • Using Compass (outside of Zen 5, Drupal): compass help Primary Commands: * clean - Remove generated files and the sass cache * compile - Compile Sass stylesheets to CSS * create - Create a new compass project * init - Add compass to an existing project * watch - Compile Sass stylesheets to CSS when they change 24
  • 25. CSS before Compass http://compass-style.org 25
  • 27. Compass: CSS module http://compass-style.org 27
  • 28. Compass: Sprites http://compass-style.org/help/tutorials/spriting Image sprites • Performance boost by fetching all images at once • Difficult to create and manage Example: Baron Wanschers, LimoenGroen (Lime Green): http://www.bariswanschers.com/blog/use-sass-and-compass-streamline-your-css-development: Generated CSS: 28
  • 29. Zen 5 • Already set up to use Sass and Compass • STARTERKIT (see zen/STARTERKIT/README.txt) • Copy the STARTERKIT folder, place under sites/all/themes and rename Copy “sites/all/themes/zen/STARTERKIT” To “sites/all/themes/foo” • Rename “STARTERKIT.info.txt” as “foo.info” and update name and description • In template.php and theme-settings.php: Replace ALL occurrences of "STARTERKIT" with “foo” • Set default theme at admin/appearance • Or use drush: drush zen "Foo Theme" foo 29
  • 30. Zen 5 • Review Files • Standard Drupal theme files • Standard folders • Sass-related files/folders • Using Sass and Compass with Zen 5 From root of your sub-theme folder: compass clean //removes existing css files so they can be regenerated compass watch //watches the “sass” directory //anytime a .scss file is changed, .css auto-generated //includes debug feature for syntax errors during development //launch compass watch and leave running (if needed, re-launch terminal) //can look at css generated but eventually just work with scss files 30
  • 32. Zen 5: Production • When ready to move to production… See http://drupal.org/node/1548946 and zen/STARTERKIT/sass/README.txt • Update CSS files, minify, and aggregate for performance: • compass clean • edit config.rb by uncommenting “#environment = :production” • turn on CSS aggregation 32
  • 33. Tools • FireSass for Firebug: https://addons.mozilla.org/en- US/firefox/addon/firesass-for-firebug/ • ZenGrids: http://zengrids.com • If you don’t like the command line: • Compass.app: http://compass.handlino.com/ (Mac, Linux, PC) • Fire.app: http://fireapp.handlino.com/ (Mac, Linux, PC) • Codekit: http://incident57.com/codekit/ (Mac) 33
  • 34. Berkeley Panopoly • Berkeley Panopoly Theme • Panopoly http://drupal.org/project/panopoly 34
  • 35. Next Steps Pilots • Administration & Finance • Office of the Chancellor • BAS: Parking & Transportation • Campus IT 35

Editor's Notes

  • #5: Image:http://almaer.com/blog/uploads/devices.png
  • #36: Image: http://mikeschuerman.theworldrace.org/blogphotos/theworldrace/mikeschuerman/cross-roads.jpg