Drupal 7 and Other Awesome Stuff

Speaker: 
webchick and DamZ
Time: 
Oct 4 2008 10:00am
Skill Level: 
Intermediate
Location: 
Area A

Damien Tournoud from Drupalcamp Paris and Webchick give a joint, cross-Atlantic session on the state of Drupal 7, testing, and other random stuff.

Development happens to maintain developer interest

Drupal Dev Cycle

  1. Code thow -- to make Drupal grow according to the wants of the community (normally last a couple of months)
  2. Code Freeze -- to stabilize APIs so that module developers may start adding features
  3. Release Drupal 7 is currently in Code Thow. This was extented to unlimited to allow drupal 6 to mature for contrib modules.

Top goals for Drupal 7

  1. Usability improvements
  2. better media handling
  3. custom content types and fields in core
  4. views in core
  5. WYSIWIG etitor in core
  6. Easier upgrade functionality
  7. Performance improvements
  8. Better search
  9. Better import/export functionality
  10. Test framework
  11. Improved node access system
  12. Better internal/external APIs
  13. General attitude used to be "Drupal is for simplifying a developers life".
  14. There used to be resistance towards usability.
  15. Studies shown it's normal for people to be confused when facing Drupal.
  16. The community now tends to agree that Drupal is built for users.
  17. On the other hand, the quality of the current contributors makes it interesting for other developers
  18. Moving towards making Drupal accessible will diversify the user base and improve the product

Joomla comparaison

No one seem to find Joomla really that more usable.

Transatlantic Session with DrupalCampParis

Developers are constantly tagging the HEAD so that people don't develop on a moving target.

We have more usability patches with Drupal 7 than we used to have in any version before.

1. Usability improvements

UTS is the usability testing suite. It has: click tracking, heat map, path map, etc. Usability improvement: Vertical tabs. Nobody's actually working on it at the moment, but helpful because it collapse a whole bunch of settings.

2. Better media handling

Ability to handle images, document management etc. hook_file() is being implemented which other modules can use. So, images can be saved on the filesystem and stuff can be saved on the database at the same time. We have all the imagining APIs but there's no UI for it.

3. CCK in core

Talking about only putting the API in core and leaving the UI either simplified in core or leaving it out completely. Whenever Drupal is upgraded, CCK will be upgraded. Barry Jaspan talking about adding fields to other things like user profiles. Possiblities are very powerful.

4. Views in core

This is not easy. how much goes in core? Query builder? Plugin handling? TThe whole thing? Do we keep the UI or revamp completely? Is Views really mature enough. No one has taken the lead on this yet. There's an advantage in waiting until soemthing is mature because once it's in core it stays in core. There's still stuff to think about... We're waiting for someone who understands views well enought to take the lead on this one.

5. WYSIWIG editor in core?

Daniel D. Kudwien from Sun aims to build a one WYSIWIG API to bind all WYSIWIG editors. Might look at something like a TidyHTM L which would clean up the input. Have Drupal to disable some WYSIWIG features depending on the context.

6. Easier upgrade functionality.

This is a major usability issue. The numbers displayed are completely incomprehensible. They have been ripped out and only exposed to developers. Need someone to work on this. * plugin manager will help upgrade your module from within your website in a secured manner.

7. Performance improvements

Loads less code with the function registry. Less parsing required and lower memory footprint. Improving caches especially for authenticated users. Centralize static caching. Focus is more on features than performance at this stage of the cycle.

Allow to seamlessly plug in any external search server more easily (apache solr, xapian etc)

9. Better import and export functionality

Get content in and out easier. Easier development and staging. Easier migration of content between sites.

  • Deploy module : hook to allow your module to export its configuration, since it knows best what it should export (a text representation of your config that can be moved from one server to another)
  • Port module : ...

10. Test framework

Two approaches: unit testing and functional testing. Added an automated testing suite in core that will test the basic functionality. The benefits include specifying what the code should do (easier development and refactoring) The test will tell if the basic functionality is still there after making a change. We'll never have the same bug twice (theoretically).

11. Improved node access system.

Objectives are to increase flexibility and improve performance.

12. Better internal and external APIs.

Uses PDO to outsource DB compatibilitie issues. Better password handling. API Cleanups. Need to allow other ?JavaScript libraries (other than JQuery) Question: will themes need to change for D7? Angie: Yes, probably.

Help needed!

Patch Farmers and Pirates

Patch spotlight: get all issues in one place to help people jump it . http://groups.drupal.org/node/5647

AttachmentSize
080904 - State of Drupal.ppt3.75 MB