This site is archived. All interactive features are disabled.

Web application development with Drupal 7 (case study)

Knowledge level: 
Beginner
Track: 
Business and Strategy
Language: 
English

Building a (semi-)static website with Drupal as a CMS is one thing, but using it to build a web application comes with its own challenges.

This presentation is a case study of how we're approaching development, advantages and disadvantages of Drupal, as well working with a team on the same Drupal project.

We will talk about the following aspects:

1. Short overview of our architecture
- Which part does Drupal take care of
- Why Drupal in the first place?
- How do we integrate with Python and CLI Drupal to do heavy lifting

2. Advantages of Drupal
- Complete user management, authentication and access control system
- Administration interface already there
- Entities as models
- Views for quick list page setup, pagination, ajax, custom theming
- Modules/hooks to decouple different parts of the system
- Theming layer to override default Drupal markup and UI

3. Disadvantages of Drupal
- Hiring people, serious learning curve
- Documentation is shaky, code is better to look at
- Almost all procedural, but an interesting flavour of OOP without objects
- With great power, comes great responsibility

4. Working as a team
- Virtual machines, but they're not necessary for the default project
- Git and GitHub
- Our Git integration flow
- Everything in code
- Features
- The Drupal Configuration vs. Content issue