With over 4 million downloads, Views is the most used contributed module in Drupal. Every Drupal developer knows that Views is an absolutely inevitable part of almost every Drupal project.
Using Views, one can build anything from simple list of content, slideshows, jump menus to RSS feeds, JSON feeds through to contextual blocks of information and even PDF and Excel downloads of data. That's why, in the Drupal development universe, understanding & effectively using views separates novices from experts!
This blog post is by Prasad Shirgaonkar who has recently joined our Learning Services team. He is also delivering training in India, you can meet him in person there. Check out our Site Building in Drupal 7 course to learn more about Views.
Explaining Views to Developers
At times, it becomes challenging to explain or teach Views to developers who are new to Drupal. This could be because something like Views doesn’t exist in any other CMS or possibly because of infinite use cases where Views could be used and potential configuration options for each use case.
So, we tend to sum up in a single line - Views is a powerful Query Builder for Drupal.
This builds excitement with newbies and motivates them to go to build a new view. All seems well and easy on the first page of creating a new view. Simple drop down options for selecting "what to display," "how to display," etc. And then, newbies go to Edit page of a View. Most new learners get overwhelmed by enormous amount of configuration options on View Edit page. Some are also likely to get confused and lost due to Views specific jargon used on the page! This is the time and place when many newcomers are likely to decide "Drupal is very complex and Views are not my cup of tea!"
In some of the recent Drupal Training workshops, I discovered an easier way of teaching Views to developers, who have some previous experience but are new to Drupal.
I explained Views by making an analogy with standard SQL Select Query! I had observed that most of the participants, although new to Drupal, had some web development experience. Most of the participants also knew SQL, either as a part of their college curriculum or as a part of their previous development experience. So I thought comparing Views configuration options with SQL syntax might gave them some insight about Views module.
Here's the diagram that I used for explaining: