Drupal
still a good choice for building website?
用Drupal架站,仍是個好選擇?
Jimmy
Best open source choice of my life
- Jimmy Huang
收工回家
當然沒這麼簡單放我走...
Bossie Awards 2012:
The best open source applications
If WordPress is what Web designers choose,
Drupal is what Web developers choose.
- Andrew Oliver
Drupal Showcase by NETivism
我(們)用Drupal做了哪些事情?
please press the down arrow
▼
Multi-Language Sites
多語網站
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58714/30creen_2013-07-27_11-36-30.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58715/52creen_2013-07-27_11-36-52.png)
One-to-many sub site
單一CMS - 子網站
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58717/00creen_2013-07-27_11-39-00.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58718/28creen_2013-07-27_11-39-28.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58719/36creen_2013-07-27_11-39-36.png)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58721/48creen_2013-07-27_11-39-48.png)
Forum / Community Website
討論區 / 社群參與網站
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58723/52creen_2013-07-27_11-44-52.png)
EC/Shopping Cart
購物網站
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58728/13creen_2013-07-27_12-03-13.png)
Stackoverflow like Website
問答社群
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58724/32creen_2013-07-27_11-47-32.png)
News Portal / Videos Portal
新聞網站/影音網站
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58725/18creen_2013-07-27_11-51-18.png)
Enterprise Information Portal
企業內部入口
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58726/10creen_2013-07-27_11-57-10.png)
Crown Founding(Kickstarter Like)
群眾募資網站
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58727/58creen_2013-07-27_12-00-58.png)
Food traceability system
生產履歷系統
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58731/42creen_2013-07-27_12-05-42.png)
CRM / Event Register
活動報名/捐款/內部CRM (with CiviCRM)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58734/55creen_2013-07-27_12-13-55.png)
Congress data info
國會監督(?)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58736/20creen_2013-07-27_12-17-20.png)
Mobile Content Backend
手機內容儲存
Top 6 reasons Drupal really sucks
猜猜看這篇文章有多少回應?
- Drupal Developers
- Caching
- Abandoned modules
- Version wars
- It's PHP
- Drupal is a total memory hog
Top 6 Reasons that Drupal Rocks
立刻有人寫了一篇文章回應(一整個看熱鬧..)
- The Actual Developers
- Regular, easy-to-install themes, modules
- Modules
- Content Management
- It's PHP
- Customization
XYZ Sucks!!!
我最喜歡做實驗了!
- Wordpress sucks
- Joomla Sucks
- Ruby Sucks
- Nodejs Sucks
- PHP Sucks
- ___ ← [you can join these hater here]
Or fall in love with deeply used
I Love Drupal, because
- Drupal讓我認識很多好友
- 甚至是志同道合的創業Partner
- Drupal讓我成長
- 在變化超快的Web世界中
- Drupal讓我有能力達陣
- 在無盡的需求中,Drupal總是有辦法拼出來
I Love Drupal
So I'm here
to tell why you can try to with us.
![](http://static.flickr.com/44/136318855_0523c7fdb6.jpg)
Scalability
of Drupal
for those system engineer who care about performance
please press the down arrow
▼
Build-in Master-Slave support
Setup master-slave support in 30 seconds.
$databases['default']['master'] = array ( 'database' => 'mydatabase', 'username' => 'readwrite', 'password' => 'readwrite', 'host' => 'master', 'port' => '', 'driver' => 'mysql', 'prefix' => '', ); $databases['default']['slave'][] = array (
'readonly' => TRUE, 'database' => 'mydatabase', 'username' => 'readonly', 'password' => 'readonly', 'host' => 'slave1', 'port' => '', 'driver' => 'mysql', 'prefix' => '', );
Centralized Session Management
- Store session in Database(default)
- Store session in Memcached(3-party)
Load Balancer and Reversed Proxy Friendly
CDN Support (3-party)
- Akamai support (module)
- Other CDN support (module)
- File syncronize (drush module)
source - http://www.wedia.gr
WhiteHouse.gov System Tiers
Tiers:
- Linux
- virtulalized cloud hosting environment
- redhat enterprise linux
- hardened to NSA guidelines (published document we can download)
- SELinux &* AIDE enabled
- Puppet
- provides data center automation
- recipe/model driven framework for managing servers
- ensures consistency, repeatability, and compliance
- every server can come out identical to the other (all database servers the same, all web servers the same)
- CDN
- content delivery network
- great things, they get hit by the firehose for you
- Akamai Site Accelerator, NetStorage & LiveStream
- Tight Drupal integration with Cache Control Utility
- Automatic Purging of modified nodes (and aliases)
- Over 90% Offload of origin traffic (goes to Akamai instead of WhiteHouse servers)
- Web
- Dedicated Private Edit Servers
- All administrative functions are on private servers, NOT on front-end servers
- Load balanced horizontal scaling
- Drupal
- Core Drupal 6
- Various community / pressflow patches
- supports database replication
- full read/write splitting
- shared filesystem
- Cache
- Memcached & Drupal Memcache API module
- cluster of memcached servers
- consistent hashing strategy supports node failures
- Search
- Apache Solr
- DB
- MySQL Enterprise / InnoDB
- RAM Filesystem for Temp Tables
- Performance Optimizations++
- Caches, Buffers, Replication
- Replication Heirarchy
- Drupal DB Replication support
- Splitting of Reads and Writes
- Master (active) / Master (passive) replication
- Master (passive) / Slave replication
- Scale slaves for read-only traffic
Methodology
of Drupal
for site builders
▼
How to build site for this?
Building website like a Drupaler
![](http://netivism.com.tw/sites/netivism.com.tw/files/insert/drupal-structure-flexibility.jpg)
1. Data Design
- Add a content type "Case Study"
- Add fields in Case Study
- Image
- Textfield
- Textarea
- Tag / Category
- More text area or field
- Install modules for more field
- Map、Address、Video
- Fields for Everything (User, Category)
- Install editor
- Prepare test content
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58815/content-type-manage-fields.jpg__1567_905_.png)
2. Config Page and modules
Create page layout using Panels
![](https://drupal.org/files/asset-panels-four.png)
3.1 Generate "Block", put into pane
Views can generate almost any type of block:
- build waterfall like block
- build slideshow block
- build image gallery block
- and more than that ...
or Build your own block:
- adSense block
- Like button block
- Facebook like box block
- search yourself
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/58818/2181556954_46da6da343_o.jpg__960_960_.png)
3.2 Menu Config (Navigation)
- Pick articles to the top nav
- Setup panel page to the nav
- Setup view page to the nav
4. Users, Roles, Permission
![](https://drupal.org/files/add_editor_role.png)
![](https://drupal.org/files/set_permissions.png)
5. Theme and Styling
- Warning
- can't Buy then Apply (Wordpress / Joomla does good)
- always need get your hand dirty in Drupal
- needs "front-end developer", not just designer
- Choose a Starter Theme
- blank white goods
- Follow instructions
- Stylize everything in CSS
- page
- content
- block
Panels
Views
Menu
Block
Flexibility not only on the page tools
Also in API
- You can trigger Drupal event anytime
- User add, update, registered
- Article add, update, view, registered
- Form generate, validate, submit ..
- ... read more at hook
Trigger event at UI(rules)![](https://drupal.org/files/project-images/rules_collections-in-action.png)
Now you can understand why Drupal is
what Web developers choose.
Community
of Drupal
for still try to find good reasons
▼
Drupal in Taiwan
![](https://fbcdn-sphotos-g-a.akamaihd.net/hphotos-ak-prn1/553771_407950202551443_1966131899_n.jpg)
![](http://static.flickr.com/44/136318855_0523c7fdb6.jpg)
Drupalcamp Taipei (2012)
![](https://fbcdn-sphotos-a-a.akamaihd.net/hphotos-ak-frc1/300881_269635253049606_460852_n.jpg)
Founder of Drupal "Dries" on the screen
Drupalcamp Hackthon
![](http://drupaltaiwan.org/files/drupalthon%20taipei%202013.jpg)
for open street map tw / ubuntu taiwan
Drupaltaiwan.org
- Why?
- Chinese translations
- Support / forum / discuss
- For local meetup
- From 2006 ~
- monthly meetup!
-
yearly camp (drupalcamp is conference)
- 8,188 registered member of drupaltaiwan
- Chinese translations
- Support / forum / discuss
- For local meetup
- monthly meetup!
- yearly camp (drupalcamp is conference)
- 8,188 registered member of drupaltaiwan
Drupaltaiwan.org (2006)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/59265/367579372_b13cdd7478_o.jpg)
Drupaltaiwan.org (now)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/59259/16creen_2013-07-28_19-27-16.png)
Analytics Drupal Taiwan (2006~2012)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/59264/47creen_2013-07-28_19-40-47.png)
Analytics Drupal Taiwan (2006~2012)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/59267/11creen_2013-07-28_19-59-11.png)
Drupal in Universe
"Real" Drupaler
2 Drupalcon in every year (2010 drupalcon sf)
Many Drupalcamp over the world
Drupal Eco-system -from phase2
![](http://www.phase2technology.com/wp-content/uploads/imports/phase2/distro-vs-profileNov23-2011.png)
Modules Growth (source)
106 Top modules
Distributions
Drupal for Government - open public
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/59193/34creen_2013-07-28_16-33-34.png)
Drupal for Church - open church
![](https://drupal.org/files/project-images/Screen%20Shot%202012-09-15%20at%203.21.02%20PM.png)
Drupal for Internal Portal - Open Atrium
![](https://drupal.org/files/openatrium.jpg)
Drupal for Scholar- OpenScholar
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/59256/03creen_2013-07-28_19-19-03.png)
Drupal for Business- Commerce Kickstart
![](https://drupal.org/files/project-images/ck-main-v2-josh-large.jpg)
Meaning of this?
And this?
Or this?
Diversity
Diversity toward Evolution
- Multi-language CMS? - needs diversity
- Right-to-left language? - needs diversity
- Character support? - needs diversity
- Better and strong core? - needs diversity
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/59185/29creen_2013-07-28_16-15-29.png)
Groups.drupal.org (top group list on drupal)
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/59279/43creen_2013-07-28_21-11-43.png)
Collaboration
Centralized Code Server
Commit everything to git.drupal.org
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/59275/45creen_2013-07-28_20-56-45.png)
Third Party Module, too!
What is the license for Drupal? GNU GPL everything
Drupal and all contributed files hosted on Drupal.org are licensed under the GNU General Public License, version 2 or later. That means you are free to download, reuse, modify, and distribute any files hosted in Drupal.org's Git repositories under the terms of either the GPL version 2 or version 3, and to run Drupal in combination with any code with any license that is compatible with either versions 2 or 3, such as the Affero General Public License (AGPL) version 3.
drupal.org build-in Module Statistics
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/59277/40creen_2013-07-28_21-06-40.png)
drupal.org build-in Issue Tracker
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/59278/42creen_2013-07-28_21-07-42.png)
Centralized Translation Community
- 109 translation groups (language)
- 4,865 contributors
- 10,508 projects managed
- 48,158 releases parsed (4 in queue)
- 5,053,543 files scanned
- 463,408 strings to translate
- 1,036,783 translations recorded
- 289,974 suggestions awaiting approval
![](https://s3.amazonaws.com/media-p.slid.es/uploads/jimmyhuang/images/59274/15creen_2013-07-28_20-40-15.png)
Oepn and Friendly
Community Guide - from deeson-online
![](http://cdn.deeson-online.co.uk/cdn/farfuture/EM8zHgJlJyDfD9NzGvDrVhN7cC3AJFAb0JNNPMbC3lk/mtime:1373893469/sites/default/files/uploads/drupal-infographic3.jpg)
Free tutorial everywhere
Most people share these not only for business
- [book] Master Drupal in 7 hours ebook - link
- [video] Drupal Love - link
- [web] Drupal Tutorial How to Use Drupal - link
- ... search more
And one last thing...
Evolution
of Drupal
for doesn't believe CMS better than one-man power
▼
Drupal 0 ~8 development visualising
Drupal 5 (2007)
- "Content Type" in core
-
jQuery in core
-
Form API
- CSS compression
- CCK invented
- Views invented
- Webform invented
- Token invented
- Imagecache invented
- Drush invented
- Rules invented
Drupal 6 (2008)
- New Template engine
- Support OpenID
- Actions Trigger in core
- New Batch and Schema API
- Right to left language
- Reversed proxy supported
-
Rules invented
- Apachesolr supported
- Services invented (for mobile)
- Rules 3 - extremely great
- Webform 3 - extremely great
Drupal 7 (2011)
- New Database abstract layer
- CCK in core - Entity API
- Imagecache in core
- Token in core
- RDF support
- Support PHP 5.3
- Usability improve
- Views 3 (extremely great version)
- Drush 5 - command line power
- Media invented
Drupal 8 (2014)
- Symfony2 in core (rails like framework)
- RESTful in core (services in 7)
- Views in core (finally..)
- Deploy support
- RWD support in core
- Twig template engine in core
- Inline-editing
What I've seen?
-
Open mind to take risk on new technology
- Long-stand 3-party module rocks
- Community oriented evolution, decision
That's why I love organic Drupal.
Why you should using Drupal?
By Jimmy Huang
Why you should using Drupal?
- 10,587