:Enterprise Grade Web Content Management Framework & Digital Experience Platform.

https://slides.com/chuta/cmsafrica2017/live

You can Follow Along With me LIVE!

About Me

@mezie16

facebook.com/chimezie.chuta

linkedin.com/in/chimeziechuta/

This is my first Website, built in 2001 with

Adobe Pagemill + Notepad.

http://www.fragments.7p.com/index.html

What is

Drupal?

An ambitious digital experience platform —with the flexibility you crave!

Drupal is the #1 platform for web content management among global enterprises, governments, higher education institutions, and NGOs. 

Drupal is Secure, Flexible and highly scalable, and publishes a single web site or multiples, sharing content in several languages across many devices.

Drupal is API First

Content is not only words and images; it’s data, and feeds, and triggered alerts that can deliver maximum, personalized experiences to any screen, or anything web-enabled, even if it has no screen!

 

Drupal 8 supports REST API in Core, GraphQL, JSON API, CouchDB's replication protocol and other interfaces via contributed modules.

Drupal is Free... 

There are no licensing fees, ever. Drupal will always be free.

...but nothing of value is really free!

Drupal is made possible by a passionate global community of more than 1,000,000 passionate developers, designers, trainers, strategists, coordinators, editors, and sponsors working together.

If Drupal Is Good Enough For The White House, It Is Good For You Too.

It is the most technically advanced  Content Management System – the best option for enterprise level usage.

Assuming you wake up one morning and while preparing to brush your mouth, you discover that all your teeth have turned to pure DIAMONDS. You then checked on your  dentist who confirms to you that each tooth is worth $15 million in the  market. How many tooth will you ask the dentist to remove for immediate sale?
You can't replace them after removal!

Drupal: How it all began.

OpenSource

PhP Framework

105,965 users  actively contributing | 36,728 Free Modules

It’s really the Drupal community and not so much the software that makes the Drupal project what it is. So fostering the Drupal community is actually more important than just managing the code base.

- Dries Buytaert

Basic Structure

DrupalKernel  |  Components  | Symfony2 Framework  | Twig

Drupal only uses some of Symfony's components.  

Drupal 8 brings its own  components and core code

Who Uses Drupal?

Over 1,000,000 websites run on Drupal.

https://www.drupal.com/showcases

What can be built with Drupal?

Anything.....

.....Everything!

Use Drupal to build anything from Simple Blog to Sophisticated Enterprise Applications to Digital Experience Platforms.

How to Install Drupal 8

http://drupal.org

Spin it on the Cloud

Server Installation: Softaculous scripts.

Bitnami 

Drush CLT (Shell) - drush dl drupal-8.x

 

Composer (Shell) - drupal site:new drupal8.dev 8.0.3

Yeoman - NPM Packet Manager (Shell) - yo web-starter

Acquia Desktop (UI)

Install Drupal 8 the easy way.

 

 

 

Download Acquia Dev Desktop from:

https://www.acquia.com/downloads

What’s Included In Acquia Dev Desktop:

  • Dev Desktop App: The heart of Dev Desktop, the app lets you manage your local or cloud-based sites, including Drupal multisite, and optionally synchronize them with Acquia Cloud. App updates are checked automatically.
  • Apache web server: The world's most popular web server
  • Percona MySQL database server: The world's most popular database server
  • PHP: Multiple versions of the programming language that powers Drupal
  • phpMyAdmin: A popular MySQL management and query tool
  • XMail Server (Windows only): An email server that allows your site to send email directly (Mac OS X has this functionality built in)

Step 1: Download and extract Drupal

to c:\user\chuta\Sites\devdesktop\tunder1

Step 2: Add the new site folder

Start Acquia Dev Desktop application and select "Start from an existing Drupal site located on my computer". Then browse to the destination defined above

Visit/ click  the "Local site" Link provided.  

Navigating the Drupal Interface

Click! Click!! Click!!! Configuration for Non- Programmers.

Build Powerful Web Applications without writing a Single line of code!

Views UI, Rules, Token, Field API, Webform, Taxonomy, Entity API

Fieldable entities make Drupal eminently flexible. An entity type is a useful abstraction to group fields together.

Nodes (content), Comments, Files

Taxonomy terms, Taxonomy,  vocabularies, Users

Some Entity types in Drupal core:

Quick Start Distributions

Distributions provide site features and functions for a specific type of site as a single download containing Drupal core, contributed modules, themes, and pre-defined configuration.

Distributions

Commerce Kickstart is the quickest way to set up your online store.

Distributions

Opigno LMS is a full-fledged Learning Management System based on Drupal.

Distributions

farmOS is a Drupal distribution for managing and operating a farm.

Distributions

Government related Websites can be built and managed with aGov.

Distributions

Intranets and Collaboration Websites can be built and managed with atrium

Distributions

News Publishing  Websites can be built and managed with Thunder.

Distributions

Social Networking  Websites can be built and managed with Open Social.

Developing with Drupal

Technology Stack

  • PHP

  • MYSQL

  • JQuery

Drupal 8 is Object Oriented Programing (OOP)

Additional Skills: CLI, Javascript, Drush, GIT 

In Drupal 8, many configuration settings can now be stored in files, rather than the database. The idea is that if configuration settings can be put into files, that should make it easier to move the settings between development and lives sites. Settings can also be version controlled, if they're in files.

Configuration management

Development               Production 

Drupal is for ambitious digital experiences

RESTful Web Services API

Serialization API (json and xml)

Authentication API (basic and cookie)

Hooks allow modules to interact with the Drupal core. Drupal's module system is based on the concept of "hooks". A hook is a PHP function that is named foo_bar(), where "foo" is the name of the module (whose filename is thus foo.module) and "bar" is the name of the hook.

Extending Drupal Core functions by implementing Hooks in Modules.

Example: feeds_admin_paths Implements hook_admin_paths().

Custom Theme Development Drupal 8 

The default template engine In Drupal 8 is Twig.

Twig is a templating language for PHP,  a tool used to output variables inside HTML.

 

Its syntax originates from Jinja and Django templates.

Read more here: https://sqndr.github.io/d8-theming-guide/twig/twig-basics.html

"Headless" or decoupled Drupal

Traditionally, Drupal sites are monolithic in the sense that Drupal is responsible for content management as well as rendering the front-end pages for the entire web site.

Drupal 8 has BigPipe deeply integrated for Progressive decoupling.

"Headless" or decoupled Drupal

Drupal is the CMS of choice for client-side MVC frameworks, with

APIs for renderable structure and context-aware template-driven JSON representation of pages.

One of the most visited sites in the world, The Weather Channel (100 million unique visitors per month), use a JavaScript framework, AngularJS to add client-side interactivity layered on top of Drupal.

DeCoupled Drupal 

Tesla Motors  Dashboard

Powered By Drupal.

Tesla's  Car control mobile app also runs on #Drupal.

DeCoupled Drupal 

NYC Subway KIOSK powered by Drupal

DeCoupled Drupal 

Amazon Echo devices, allow Drupal to respond to Alexa Skills Kit requests.

Signages Everywhere with Drupal + EmberJS

Drupal Digital Signage systems uses webpages instead of  specialized software applications, so displaying content is as simple as plugging the URL of a sign into a browser.

Drupal + IoT = DoT (Drupal of Things)

When we talk about “The Internet of Things” we often refer to devices capable of networking. This could be a car, cell phone or something like a Raspberry Pi, Arduino or Tessel.

Drupal + IoT = DoT

Drupal is a great platform for bridging component between things you see around and turning them to speak your language.

First, Drupal was developed to build great websites.

Then integrations were built to allow Drupal to interact with Third Party Applications. (ERP, CRM)

Then Drupal was made responsive, which was to serve mobile ready HTML.

Then "Headless" Drupal, which is Drupal as a Service Platform.

Drupal + IoT = DoT

Now Drupal has become a bridge between devices.

Smart RFID devices collect data and post it to Drupal, while Drupal do the heavy lifting for data manipulations and building reports, which is further consumed by other resources.

Drupal does all these by pushing data (Push Notifications) in a format defined by exposed REST API

Why you should try Drupal now!

More than 3,200 Drupal 8 Contributing Developers

Ownership: Cisco and Warner Music Chose Drupal over its EOS 

Everything about Drupal 8 is Faster and Smarter 

Innovation & Integration

Drupal is ideal for cheap clients who want a zillion features but don't have the budget. You can deliver more functionality in Drupal than anything else!

One of the Strongest reasons why you should consider Drupal, is the Pay. Drupal Developer pay is good. Very Good!

You can earn very good pay on Freelancer, Elance and many other online job outsourcing market place.

You may also wish to start your own company leveraging Drupal's  strength as SaaS.

Learning Resources

Google, Google and Google yet again!

Lagos: 08165430776 | Abuja: 08035303418

Next Step

Join The Drupal Association now!

Join us at Drupal Nigeria User Group:

https://web.facebook.com/groups/drupal.ng/

Epilogue 

DrupalCampNigeria 2017 comes up in Lagos, by November.

Look out for info at http://drupalnigeria.org

Thank You!

This slide is available at: https://slides.com/chuta/cmsafrica2017/

Drupal: Enterprise Grade Web Content Management System & Digital Experience Platform.

By Chimezie Chuta

Drupal: Enterprise Grade Web Content Management System & Digital Experience Platform.

My presentation At CMS AFRICA 2017 Conference, Abuja, Nigeria. This slide focuses on presenting Drupal framework to a public obviously ignorant of its power. I intend to talk about Drupal generally, who uses it, what you can build with it and how to set it up and running. I will also talk about its features and strong point. My focus will be on Drupal 8. Tools like Acquia Lightening, Yeoman Drush and Drupal Console will be dealt with. Then we shall take a look at REST Services and Digital Media. I will also touch topics like Responsive Design for Digital Interactions, Micro-interactions, Continuous Delivery, Digital Experience, Personalization, Omnichannel Integration, Internet of Things (IoT) Management and Governance, and Regulatory Compliance

  • 2,094