UMD User's Group: DrupalCon 2011, Chicago


Published on

The slides from Brock Fanning's presentation on 4/6/11, about DrupalCon Chicago 2011.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

UMD User's Group: DrupalCon 2011, Chicago

  1. 1. DrupalCon 2011, Chicago<br />An Overview<br />
  2. 2. Installation Profiles and OpenScholar<br />What are installation profiles?<br />Bundles of modules/themes ready-made and already configured to serve a certain purpose<br />Layer of user-friendliness between Drupal and non-developers<br />Some listed on, but not all<br /><br />
  3. 3. Installation Profiles and OpenScholar<br />OpenScholar, what does it do?<br />Designed to allow faculty members or project coordinators to quickly create and easily maintain feature-rich websites<br />Lets the users collaborate, share content, and follow each other’s activity<br />Operates from a single installation of Drupal<br />Good job of putting the work on the users!<br />
  4. 4. Installation Profiles and OpenScholar<br />OpenScholar, what will it do?<br />OpenScholar can be installed with certain “flavors”, which are collections of enabled/disabled modules. <br />Currently OpenScholar has Faculty and Project flavors.<br />Developers say that a Department/Center flavor is coming up next. <br />
  5. 5. Features & Code-driven Development<br />Problem 1: How to make big changes to a Drupal site’s configuration, without affecting content?<br />Copying the entire database would affect content<br />Copying certain database tables will eventually mess things up<br />
  6. 6. Features & Code-driven Development<br />Problem 2: How to keep track of changes to a Drupal sites configuration, in case something goes horribly wrong?<br />Backing up the database is one solution, but not very precise.<br />
  7. 7. Features & Code-driven Development<br />Features Module, what does it do?<br />Takes “exportable” site configurations that normally live in the database (such as content types, fields, views, etc) and converts them into a single new module.<br />
  8. 8. Features & Code-driven Development<br />Using Features as a solution, workflow:<br />Make your site configurations in Drupal, and export them as a Feature (ie, module code).<br />Commit that code to a version control repository.<br />Make improvements/changes to site configuration in Drupal, & export/commit new code. (Drush makes this very easy!)<br />
  9. 9. Titanium/Drupal and Mobile Apps<br />Problem 1: Writing “native” apps for mobile requires different languages<br />iPhone/iPad apps use Objective C<br />Android/Blackberry apps use Java<br />
  10. 10. Titanium/Drupal and Mobile Apps<br />Problem 2: Most apps require a back-end with, at the minimum, login/users and some sort of content. Many apps benefit from a synchronized web version.<br />To easily manage the back-end data, you need to write another interface<br />Writing a synchronized web version could be time-consuming as well<br />
  11. 11. Titanium/Drupal and Mobile Apps<br />Titanium, what does it do?<br />Create mobile apps using Javascript / HTML / CSS (but mostly Javascript).<br />Compiles them into native software for iPhone/iPad and Android. (Blackberry coming soon)<br />
  12. 12. Titanium/Drupal and Mobile Apps<br />How does Drupal help?<br />Drupal acts as a back-end. It stores users/content/etc, and provides a ready-made interface for managing that data.<br />Also gives a nice head-start if you need a web version of your mobile app.<br />
  13. 13. Titanium/Drupal and Mobile Apps<br />How to get started<br />Download Titanium.<br /><br />Read “Getting started” guide<br />Guides you through installing the rest of what you need (JAVA JDK, Android SDKs, iOS stuff, etc.)<br /><br />Learn about integrating with Drupal site<br /><br />
  14. 14. Drupal 8, Strategic Directions<br />Dries Buytaert’s ideas for Drupal 8 directions<br />Multi-device publishing<br />Markup-free core<br />HTML5 / CSS3<br />Web services<br />Configuration management<br />Content staging<br />
  15. 15. Security for Drupal<br />Main points<br />The “Full HTML” filter is dangerous! Only allow for trusted users.<br />Make sure that normal users cannot enter IMG tags or SCRIPT tags into content.<br />Test by trying to enter these into content bodies:<br /><script>alert(‘xss’);</script><br /><imgsrc=”notfound.png” onerror=”alert(‘xss’);”><br />Handling strings is key<br /><br />
  16. 16. Performance for Drupal<br />Reverse Proxy caching<br />Caches pages that don’t have cookies.<br />Happens before Drupal even starts<br />Examples are: Varnish, Squid, NGINX<br />Pressflow installation profile works well with Varnish “reverse proxy”<br />
  17. 17. Performance for Drupal<br />Some general Drupal tips:<br />Sys log is better than DB log<br />Statistics module is bad<br />Views “fields” style is better than “node”<br />Use Views caching<br />
  18. 18. Honorable Mention<br />Baby Got Backend: Content Administrators are Users Too<br />Great tips on designing interfaces for content editors and administrators<br /><br />How to Make Awesomesauce<br />Very entertaining! Themer-centered.<br />Learned about Context module<br /><br />Keynotes<br />Challenges of Social sites – Clay Shirky<br /><br />Intuitive user-interface – Jared Spool<br /><br />
  19. 19. More Sessions<br /><br />