elisava beta. cas d'èxit desenvolupat per ymbra

13
ELISAVA Nou web institucional de l'escola de disseny

Upload: ymbra

Post on 04-Jul-2015

594 views

Category:

Technology


0 download

DESCRIPTION

Cas d'èxit presentat a la sessió de drupal.cat on expliquem quina és la nostra metodologia de desenvolupament (a grosso modo) tot usant el cas d'èxit de la Beta del web de l'ELISAVA.

TRANSCRIPT

Page 1: ELISAVA Beta. Cas d'èxit desenvolupat per Ymbra

ELISAVANou web institucional de l'escola de disseny

Page 2: ELISAVA Beta. Cas d'èxit desenvolupat per Ymbra

http://ymbra.com

Page 3: ELISAVA Beta. Cas d'èxit desenvolupat per Ymbra

http://www.elisava.net

Page 4: ELISAVA Beta. Cas d'èxit desenvolupat per Ymbra
Page 5: ELISAVA Beta. Cas d'èxit desenvolupat per Ymbra
Page 6: ELISAVA Beta. Cas d'èxit desenvolupat per Ymbra

Característiques no tècniques

● Cadascú és expert en la seva part

● Estratègia web, UX i disseny gràfic per Optimyzet

● Projecte realitzat amb pseudo-SCRUM● Per la beta, 5 sprints de 2-3 setemanes (2 mesos i mig)● Equip de comunicació i sistemes implicat des del primer

dia

Page 7: ELISAVA Beta. Cas d'èxit desenvolupat per Ymbra

Característiques tècniques

● Drupal 7● Alguns mòduls:

● Project core: Views, Pathauto, i18n● Semi project core: Menu block, Menu position● Camps: Link, Field group, Field collection,

References● Multimèdia: Wysiwyg, Insert, Video filter, Vimeo link

formatter

● Custom: RSS link formatter, Menu images● Tema personalitzat des de zero.

Page 8: ELISAVA Beta. Cas d'èxit desenvolupat per Ymbra

Nou model de desenvolupament (I)

“Si el Drupal barreja contingut i configuració(*) a la base de dades, com ho faig per passar els meus canvis a producció?”

● Solució 1: mode manual. Paper + llapis + molta sort

● Solució 2: passar tota la configuració a codi i pujar aquest codi a l'entorn que pertoqui

(*) Configuració: definició de tipus de contingut i camps, variables, vistes, regles, estils d'imatge, etc.

Page 9: ELISAVA Beta. Cas d'èxit desenvolupat per Ymbra

Nou model de desenvolupament (II)

● En un model clàssic, això s'hauria d'haver fet via codi, implementant hook_update, però no volem morir en l'intent.

● Gràcies al “nou” paradigma d'exportables, això és una tasca “trivial”.

● Features + Strongarm permet exportar múltiples configuracions via UI, i generar un mòdul amb aquesta informació.

● Context ens ajuda a gestionar la distribució dels nostres blocs i poder-ho exportar tot a codi.

Page 10: ELISAVA Beta. Cas d'èxit desenvolupat per Ymbra

Nou model de desenvolupament (III)

● És bo agrupar els features en funcionalitats. Per exemple, un feature “News” que agrupa el tipus de contingut, els seus camps, els seus estils d'imatge, les seves vistes, etc.

● Si ho fem bé, podem crear un banc de Features i així reaprofitar aquesta feina per a futurs projectes.

● Ah, i com és codi, tot pot anar cap al nostre sistema de control de versions (Git per descomptat :) )

Page 11: ELISAVA Beta. Cas d'èxit desenvolupat per Ymbra

Nou model de desenvolupament (i IV)

● Per cada projecte creem un perfil d'instal·lació.● En aquest perfil, a part de gestionar altres

temes, generem un makefile amb tots els mòduls i biblioteques que fem servir, especificant versions, pegats a usar, i directoris destí.

● Això ens facilita el treball col·laboratiu

Page 12: ELISAVA Beta. Cas d'èxit desenvolupat per Ymbra

projects[boxes][version] = "1.0-beta6"projects[boxes][subdir] = contrib

projects[google_analytics][version] = 1.2projects[google_analytics][subdir] = contrib

projects[metatag][version] = 1.0-alpha3projects[metatag][subdir] = contrib

projects[draggableviews][subdir] = contribprojects[draggableviews][download][type] = gitprojects[draggableviews][download][url] = http://git.drupal.org/project/draggableviews.gitprojects[draggableviews][download][revision] = 24e6ce2cf603bbb5bad008ad14b7a1fedd91e674

projects[vimeo_link_formatter][version] = 1.0projects[vimeo_link_formatter][subdir] = contribprojects[vimeo_link_formatter][patch][1350642] = "http://drupal.org/files/settings-summary-doesnt-works.patch"

; LIBRARIESlibraries[ckeditor][download][type] = "get"libraries[ckeditor][download][url] = "http://download.cksource.com/CKEditor/CKEditor/CKEditor%203.6.1/ckeditor_3.6.1.tar.gz"libraries[ckeditor][destination] = "libraries"

libraries[jquery.cycle][download][type] = "get"libraries[jquery.cycle][download][url] = "https://raw.github.com/malsup/cycle/master/jquery.cycle.all.js"libraries[jquery.cycle][download][filename] = "jquery.cycle.all.min.js"libraries[jquery.cycle][destination] = "libraries"

Page 13: ELISAVA Beta. Cas d'èxit desenvolupat per Ymbra

Conclusions

● D7 és obligat per a tots els nous desenvolupaments

● No podem seguir treballant amb un model Drupal-clàssic. Cal treballar amb exportables!

● Proveu mòduls sense por, i si alguna cosa falla, mireu de solucionar-ho. Molta gent que vindrà darrera us ho agrairà

● Ah! I si la interfície és en anglès, traduïu-la al català :)