Symfonising with Drupal 8: Symfony2, Drupal 8, PHP-FIG and Why it Matters

download Symfonising with Drupal 8: Symfony2, Drupal 8, PHP-FIG and Why it Matters

If you can't read please download the document

Transcript of Symfonising with Drupal 8: Symfony2, Drupal 8, PHP-FIG and Why it Matters

Symfonising with Drupal 8:Becoming part of the Orchestra

Will Hall http://www.willhallonline.co.uk @willhallonline

Will Hall Online

Drupal development since 2009Experience with a range of clients and purposesDrupal Commerce, Solr Search, Drupal Migration, Multisites, Themeing...Maintain & administer your site?

Development & Design that Delivers

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

The History of...Musical notation

Will Hall http://www.willhallonline.co.uk @willhallonline

Pre-historic Music Notation

Music as oral history.

Unable to be communicated beyond time/space.

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

Early Music Notation

The earliest system of modern european Notation, attributed to Boethius, 480-525 AD, the Roman philosopher, seems to have been the placing of letters over the syllables.

Will Hall http://www.willhallonline.co.uk @willhallonline

Symfonising with Drupal 8

http://musicofyesterday.com/historical-music-theory/brief-history-notation/

Early Music Notation

Pope Gregory the Great, 600AD changed this system, uppercase letters and lowercase were used, an improvement, using only the first seven letters of the alphabet.

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

http://musicofyesterday.com/historical-music-theory/brief-history-notation/

Early Music Notation

Another plan was to use a variable number of lines, writing the syllables in the spaces. This developed the idea of music moving higher and lower dependant on pitch.

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

http://musicofyesterday.com/historical-music-theory/brief-history-notation/

Early Musical Notation

These methods indicated the pitch sufficiently, but not the duration of the sounds.

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

Medieval Music Notation

Suggesting characters to indicate duration is usually attributed to Franco of Cologne, 12th century.

In the 13th century the notes in use were the Longa, Brevis and Semibrevis, Duplex Longa, or Maxima, introducing the Minima, and the Semiminima first occur about 1300.

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

http://musicofyesterday.com/historical-music-theory/brief-history-notation/

Drupal 8

Will Hall http://www.willhallonline.co.uk @willhallonline

Highlights of Drupal 8

Views in core

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

Highlights of Drupal 8

Wysiwyg Editor in core

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

Highlights of Drupal 8

Entity reference, email, date fieldsin core

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

Highlights of Drupal 8

simplytest.me(demo)

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

Symfony2

Will Hall http://www.willhallonline.co.uk @willhallonline

What is Symfony2?

High Performance PHP Framework for Web Development

http://symfony.com

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

What does it do?

Web services

REST server

Bundles to extend

Comprised of a set of non-dependant elements

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

Why Symfony2?

Established community

Mature codebase

Non dependant nature

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

Symfony ComponentsInDrupal 8

Will Hall http://www.willhallonline.co.uk @willhallonline

Symfony Components

HttpKernel, HttpFoundation & EventDispatcher Streamlining the process of converting a Request into a Response

YAML Storing and retrieving configuration

Routing URL routing stored in YAML

Twig Theme engine

Serializer, ClassLoader, DependencyInjection, Validator

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

PHPFramework Interop Group

Will Hall http://www.willhallonline.co.uk @willhallonline

What is FIG?

The idea behind the group is for project representatives to talk about the commonalities between our projects and find ways we can work together. Our main audience is each other, but were very aware that the rest of the PHP community is watching.

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

PHP-FIG: Member projects

CakePHP, Composer, Doctrine, Drupal, eZ Publish, TYPO3 Flow, Joomla, Laravel, Lithium, PEAR, Phalcon, Phing, phpBB, phpDocumentor, PrestaShop, PyroCMS, SugarCRM, Symfony2, Wikidata, Yii, Zend Framework 2 (and more)

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

PSR

PHP Specification Request

PSR-0, PSR-1, PSR-2, PSR-3, PSR-4

Standardised PHP

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

What does this mean?

Wouldn't it be great if you could understand other projects.

Wouldn't it be great if I could take something written in [X] and use it in [Y].

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

Why Symfony2In Drupal 8?

Will Hall http://www.willhallonline.co.uk @willhallonline

Code stats

Drupal (http://infogr.am/Drupal-Code-Base?src=web)

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

VersionSize (mb)Size (files)Lines(php / test / js / css)CommentsModules (prev/new/gone)

Drupal 63.346747182 / 0 / 2363 / 43052412926 / 8 / -3

Drupal 711.4105693750 / 77380 / 5275 / 92219068330 / 11 / -4

Drupal 827.86608237198 / 124456 / 37587 / 1081724759736 / 26 / -3

Drupal 8 (no vendors)19.53949

Code Stats

Maintain THAT!

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

Idea

Wouldn't it be great if I could take something written in [X] and use it in [Y].

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

Not finished yet!

But it is not finished yet.

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

What have we learnt?

Will Hall http://www.willhallonline.co.uk @willhallonline

Early Musical Notation

Musical notation exists to transfer ideas/music from one person to another.

It enables the player to understand the composers musical idea without them having to explain it.

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

Musical Standardisation

Standardisation is a process of evolution and iteration. Taking the best ideas from different people and amalgamating them into each other.

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

Drupal 8 & Symfony2

Hopefully all projects can work together to make stuff better/faster/more secure.

And we can focus on making PHP better for everyone?

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

But...

But it is not finished yet.

Will Hall http://www.willhallonline.co.uk @willhallonlineSymfonising with Drupal 8

Questions?

Will Hall http://www.willhallonline.co.uk @willhallonline