Drupal Fundamentals: Building a Collaborative Development Environment
Learn how to accelerate the build out of your Drupal sites by assembling the ideal collaborative development environment.
This course is an introduction to the fundamentals of maintaining a collaborative environment for Drupal website development. Our team will provide a day of hands-on instruction on how to manage the development process using open source technologies, focusing on issues such as server configuration, automated code review, effective use of code repositories, and employing collaboration tools to allow teams to communicate more effectively. You will receive a practical demonstration for how these tools work together that explores the configuration and use of the actual components.
The goal of this course is to empower people with the knowledge to make smart decisions about how to construct their own development environments through practical examples and discussions of the issues these tools are designed to solve. Participants can expect to emerge with a practical understanding of the tools and technologies for allowing teams to work together effectively despite factors such as time, distance, language, differences in relative skill level, and other factors.
This course is geared towards developers, IT managers and systems administrators involved in planning the infrastructure to build and deploy production web sites. The course content requires no specific technical knowledge, but some IT background is recommended in order to get full value out of the materials presented. Ideal for people coming from a pure Windows environment or people lacking a background in Linux administration.
Language: English
Duration: 8 hours
Style: Hands-on training
Minimum attendees: 15
Maximum attendees: 30
Prerequisities
- Basic knowledge of Drupal
- Basic knowledge of Linux
- Own laptop (or partner to share)
Difficulty level
- Beginner to Intermediate
- Appropriate for developers, systems administrators and IT managers
- Especially geared for people switching from Windows to LAMP environments
Goals
- Provide instruction on the basic configuration of collaborative development environments in Drupal
- Explore issues related to building sites with teams of developers separated by time / distance / language
- Empower people to make smart decisions about how to construct their own development environment
Course Outline
Server Configuration and Deployment
Learn about the basic components that go into constructing a development / hosting environment
- apache and php configuration
- mysql configuration
- byte-code optimizer selection and configuration
- memcached configuration
- varnish configuration
- CDN configuration
- managing user accounts
- creating EC2 instances / clustering
Development Environment
Learn how to maintain code throughout the development process, and migrate code between separate environments
- code repositories, branching and tagging
- integrated development environments
- debugging with PHP debuggers
- securing your code repositories
- post-commit hooks
- employing separate user spaces to test code
- maintaining separate development / staging / production environments
Automated Code Review
Learn the basics of automated testing and how your infrastructure can hold developers accountable for writing quality code
- determining devel module
- coder module
- unit testing with simpletest
- functional testing with selenium
- monitoring database performance
- automation scripts and messaging
Collaboration Tools
Learn about tools for building transparency around recent changes, versioning and internal communications
- irc / bot module
- repository viewers
- database backup and recovery tools
- drush
- deploying code through SVN
During course you will receive
All participants will be receiving notes from the session that will include the points made, resources they can use to expand their learning and other information. We are in the process of putting this together now. Participants will also be receiving access to an AMI with all the components preconfigured and a sample application where some of the automated code review tools are already set up.
Trainers
Michael Haggerty, Trellon
Michael Priest, Trellon
John Snow, Trellon
Chris Miller, Trellon