My thoughts of Agile development is: flexibility aproach with customers / product owners, tools and work-processes to achieve the best possible results.
By this we mean that Weboholics are flexible and we adapt our working practices to existing realities in projects - sometimes this means that methodologies such as Scrum or Extreme Programming is not optimal for all projects or phases in a project.
We like Scrum but its not always the right tool for every task. Mature products / markets and projects with poor requirement-leadership / product owners are examples where a Scrum approach can lead to costly failures. Substandard requirement-leadership in combination with Scrum can result in development time waste with expensive and frequent code refactoring before the real problems can be identified.
With mature products / markets the Scrum process (sprint planning, etc.) will often add unnecessary activities and improper focus of the work.
We do use Extreme Programming - pair programming. This agile methodology is about working in pairs to improved quality of code is written. This Methodology is very usfull for us when we are in need new techniques and technologies that we have never used before. This approach makes it possible for Weboholics to use and develop advanced technological solutions with good quality - this would be much harder to achieve with many other methodologies.
At the same time Extreme Programming is twice as expensive while doing routine activities and only leads to minimal quality improvements. So when we do normal development and maintenance, we tend to not use Extreme programming