1Lunch & LearnMaart 2011
3 jaarervaring met Drupal>30 projectenUser centred viewKennis van site optimalisatie & marketing2GoalGorilla in het kort
3http://tiny.cc/drupallearningcurveDrupal learning curveLearning curve overview:Level 1: Drupal core + basic fieldsLevel 2: Intermediate fields + basic ViewsLevel 3: Intermediate Views + complex single-purpose modulesLevel 4: The outside worldLevel 5: Module combinations + basic Rules + basic Panels/Page ManagerLevel 6: Access configuration + complex Rules and Panels/Page managerLevel 7: The secret ninja domain
4Drupal systeemlagen
WireframesPhotoshop (.psd)Slices + omzettennaar HTML & CSSTwee manieren:Copy-past drupal tagsGebruik Zen als basis5Templates of Themes
BepaalvoorafgebruikersrollenBepaalvooraf/tijdens/nagebruikersrechten6User roles & permissions
PrimairSecundairFooters etc.7Menus
8Blocks + Panels + Rules
9GoalGorilla’sstandaard(contrib) ModulesAdmin MenuViews CCK BackupandmigrateImagecache Node form columns PathautoToken Captcha/MollomUpdate status aggregatorPagetitleImagefield, Filefield en veel andere uitbreidingen op CCK Auto nodetitleNodewordsXmlsitemapSearch404 Google AnalyticsIE6nomore wysiwyg Webform
10Aanvullende (contrib) modulesOntwikkelingDevelZenophileVeel gebruiktRules Content Profile Features Betterformats Betterexposed
11Custom modulesWanneer?Nieuwe functionaliteitSamenvoegen van functionaliteit Weghalen van standaard functionaliteitHoelang?Dit kan variëren van 10 minuten tot dagen, zelfs weken.HooksMomenten & functies waar op je eigenfunctionaliteit kunt programmeren. Bijvoorbeeld eenvoudig een menu item toevoegen of data veranderen wanneer het de database in of uit komt. Lagen (layers)Database laag > Core > Modules > ThemeNever Hack Core!Documentatie: http://api.drupal.org/api/drupal
12DataNodesContent typesBlog / NieuwsProfielPortfolio onderdeelEtc.CCK = data invoerViews = data uitvoer
13Custom Construction Kit (CCK)Manage fields:
14Views – Display Content
15Basis WorkflowPersonas / User Stories -> DoelenRequirements and Use CasesRapid PrototypeWeb designDrupal development (OTAP)HostingTechnischeacceptatietest (CMS + performance)FunctioneleacceptatietestLIVE!
16Server specificatiesMinimalebenodigdheden:Server met 1GB RAM minimum; 2GB aanbevolenPHP settings max_execution_timeminstens 120 secondenmemory_limitminstens 128MB (190MB aanbevolen)Up-to-date *AMP Stack PHP 5.2. en MySQL 5.x
17PrestatiesStandaard in Drupal:CachingJavascript en CSS optimalisatieVerder, bijv.YSlowvoorplaatjesBottlenecks:Apache is gelimiteerd qua bandbreedtePHP qua CPU enMySQL qua geheugen
18Drupal schalenhttp://tiny.cc/drupalschalen
19FeaturesAantal Drupal entiteitenvooréén use caseAlsnormale module maar daninclusief (CCK velden, Vieuws, Context etc.)ExportManage versiesImport
20Features
21Installation profilesFeatures & Functionaliteitenvoorspecifiek type website in één downloadBijvoorbeeld:Open Atrium (Intranet) - http://openatrium.comDrupal Commons (Social Business Software) - http://commons.acquia.comhttp://drupal.org/project/installation+profiles
22Drupal 7 en 8D7: Beschikbaarsindsfebruari 2011Focus op Usability - http://drupal.org/drupal-7.0Drupal 8 (start maart 2011)Multi-device publishing (aka mobile)Interopabilityand integration with cloud servicesDelightful experienceConfiguration managementContent staginghttp://www.archive.org/details/keynote_dries
23Drupal BronnenSites:Drupal.org / Drupal.beApi.drupal.orgGroups.drupal.orgDevelopmentSeed.orgLullabot.comBoeken:Pro Drupal Development (VanDyk)Front End Drupal (Hogbin & Kåfter)Cracking Drupal (Knaddison)
24Kritiek op Drupal?Recent: ‘Drupal nietgeschiktvoorgrote sites’CMS versus Framework (alsRoR)http://tiny.cc/drupalkeuze
Contact informatieNeem voor meer informatie contact op met:Taco PotzeManaging partner webdevelopmentE-mail: taco@goalgorilla.comTelefoon: 	053 711 3691Website: www.goalgorilla.comDank voor uw aandacht!	Het GoalGorilla Team

Drupal introductie - GoalGorilla - Oxilion Lunch & Learn

Editor's Notes

  • #19 step 0 - a basic drupal installstep 1 - a dedicated data serverstep 2 - sticky load balancing with apache mod_proxystep 3 - using heartbeat to implement a redundant load balancerstep 4 - database segmentation using mysql proxy
  • #23 Multi-device publishing (aka mobile); clean HTML/CSS, HTML5, contexts, web services APIs, etcInteropability and integration with cloud services: web service APIs, pluggable components, clean data models, etcDelightful experience: accessibility, usability, performanceConfiguration management: better separation between content and configuration, universally unique identifiers (UUIDs), exportables, more consistent CRUD APIs, etcContent staging