Site building process: what is the relationship between CCK, Views, Panels, Blocks and Taxonomy? A beginner question. I need to understand the relationship between the top Drupal structure modules: CCK, Views, Panels, Blocks and Taxonomy, i.e., when building a website, what is the general steps that the site builder should consider regarding using those modules? What comes first? What's next?.

Let's consider a site that categorizes IDEs (integrated development environments) and provides detailed informations about each IDE. How would be the mentioned modules implemented with this use case? What would be this websites building process?

Thanks.
Taxonomy and CCK are both used to customize content types. This first thing you usually want to do when building a site, is to figure out how the content types should be defined. With Drupal 7 you have entities instead which provides a more flexible way of defining data structure, but the idea is the same.

Once you have defined your content types, views, panels (or context) comes into play. Views is really good at making listings of different types, like the latest articles, nodes post by user X etc.

Panels can be used to piece things together, but as it's a very complex tool, it can also be a bit overkill to use. It was originally created out of a frustration with the Drupal block system, with all it's limitations. It if you want to use panels to manage blocks, you might consider using context instead as it provides the same functionality but is more lightweight. What panels is good at making lots of pages with very different layout. It has one advantage over context, and that is a more tight integration with views, allowing to use views not defined at blocks as blocks (panel panes).

So to sum up.


Define content types.
Create list/displays with views.
Piece it together with panel/context.