Drupalの使用感
エラーから読む開発思想
Drupalの使用感 前項でローカル環境構築の違いをまとめてみましたので、実際にローカル環境にインストールして使用という観点からWordPressとDrupalの違いをまとめてみます。Drupalの使用はまだ日が浅く、利用されている方からすると的外れな記事となっている面も多々ありますが、全く知識のない人がDrupalに触れて感じた事を記事にしています。
WordPressとの比較をしているのはWEBサイト構築のスタンダードとも言える普及率であり、私も含め多くの方が利用している事で、実際の使用感などはある程度持ち得ている方も多いのではと考えて比較の対象としています。
そもそもDrupalを使ってみようと考えたのが、WEBサイトの運営という視点において、WordPressより自由度が高いのではという印象からDrupalの使用を考えています。この自由度のメリットがどこにあるのかという事も含め今回の記事だけでなく今後の記事のテーマの一つとしてまとめていければと考えています。
インストールと設定
WordPressのインストールと利用開始
WordPress
WordPressはローカル、サーバー問わず、アップデートやインストールをZipファイルを解凍して展開する事で行います。これは環境設定同様、マウスやボタン操作で行う事が出来て、非常に簡単です。WordPressのコアプログラムも自動更新しますので、CMSとしてのシステム管理の手間をあまり考える事なくWEBサイトの構築や運営を行えます。
実際のWEBサイトの構築や運営にはテーマやプラグインをインストールして構築していきますが、メジャーなテーマやプラグインは開発者の開発頻度が高くアップデートの頻度やシステム環境や利用環境に対する許容度も広くアップデートで不具合が出るケースというのはほとんどありません。
利用環境の整備も充実
Word Pressは利用者が多く、サードパーティのテーマやプラグインのマーケットが形成され成り立っているので、利用者が多いプラグインなどは財務的に安定した開発者が積極的に開発を進めているので、非常に安定し高機能なものも多いです。ただ、開発や更新が止まってしまっているプラグインやテーマは、不具合を起こしたり、セキュリティ上の問題がある可能性も捨てきれないので利用はおすすめできません。
WordPressは利用者が大きくマーケットも大きいので、開発者やプラグイン、テーマも膨大にあります。ここで良く話題に上がるプラグインの相性による不具合は、WordPressというより、開発者の開発環境の違いや開発時期の違いにより動作環境が異なり利用者の環境も含めて起きているケースが多く、そのことでプラグイン同士の依存性のバッティングなどが引き起こしているので、そのような事態に遭遇したら、不具合を起こすプラグインの使用を止めれば問題なく利用できます。
インフラ環境の整備も充実
実際に構築したWEBサイトを公開する際、ホスティング会社のサービスにWordPressの簡単インストールといった機能がついていたり、そこにドメイン取得、DBの設定、SSLの設定、メールアドレスの設定とセットになっていて、サーバーを利用したその日にWEBサイトを公開できてしまうようなサービスもあります。
インストールと開発のスタートというテーマでの話から脱線してしまいましたが、WordPressはWEBサイトを構築し運営するCMSとしては完成されていて、知識や経験を問わず、学習や知識の習熟度が得やすい環境が用意されておりその事で比較的簡単にWEBサイトを構築し運営する事が出来ます。
デザイン面の充実
WordPressがブログを作るという事から発展したCMSなのでブログを運営するのには非常に長けたシステムになっていて、デザインやインターフェースは秀逸なものが多数用意されています。WordPressを開発している団体の方が用意しているデフォルトのテーマも秀逸で、そのまま使用しても相当デザインが優れたホームページやブログが作れます。
私も知人から依頼を受けて作成したお店のホームページや会社のホームページは2017年のテーマTwenty-Seventeenを使ったり、最近では今年のテーマTwenty-Twenty-Fourのデフォルトで用意されたブロックのデザインが秀逸でそのままブロックを並べて文章を入れるだけでプロデザイナーが作ったようなページを簡単に作れてしまいます。
Drupal
Drupalは今回初めて利用し、環境構築からインストールと進め、テーマを決めてこの記事を書いていますがここまでに幾つかの躓きがありました。その原因が、私自身の環境によるもの、設定によるもの、インストール時の勘違いによるものとあります。
Drupalを使ってみようと考えた理由に
- CMSではあるが、設定の自由度の高さ
- スケーラビリティと安定した稼働
- セキュリティの高さ
- 文書の見やすさや、探しやすさに長けたインターフェース
があります。
安定性重視故のシビアさ
自由度が高く、スケーラビリティが高く、セキュリティも高く安定した稼働という高性能で高機能である事は、裏を返せばそれらを実現する為にはバージョンや依存性の不確定要素を排除する管理がシビアになるのは当然です。ここをしっかり理解し実際に使用していくのが当たり前のシステムでありその事が使用環境をある程度絞り高性能な機能を担保しているのではと感じています。
CivicThemeのインストールで躓いた原因に、CivicTheme最新版が必要とするモジュールがBeta版しか用意されておらず、テーマはそれをインストールしたいが、Drupalコアがデフォルトでは基本安定版以外のインストールを許可しないという設定になっておりその事が原因でエラーが出てしまいインストールが進みませんでした。
調べて原因がわかれば何て事のないエラーですが、Drupalに初めて触れる人間からすると、このエラーで使用を諦めてしまっているケースもあるのではと考えてしまいます。
シビア故に優れた安定性
CivicThemeのインストール時に出たエラーの原因の考え方をどう捉えるかとなりますが、好意的に捉えるのであれば、Drupalの開発思想にある安定性の担保から出たエラーという印象を受けています。サードパーティは、ベータ版の使用は、万人が想定外の使用を行うと未知のエラーが隠れている可能性があることを考慮しながら、自己責任においての使用を許可という形で、ベータ版の配布を行なっています。
ベータ版のモジュールを自身の開発で利用する別の開発者はBetaのモジュールを使用し検証を行いそこでの問題はないと判断し、この開発者が配布するテーマで依存性のあるモジュールの中にベータ版のモジュールが含まれた状態でテーマを配布します。
このような状況もDrupalの基本構成は認めないという思想で、そこを利用可能にするのであれば利用者が自身で調べ自己責任で解決するといったスタンスであり、この事が使用環境をある程度絞り不確定要素を排除し高性能な機能を担保しています。
この思想というと大袈裟でありますが私が遭遇したCivicTheme1.8の依存関係にあるdrupal/componentsの3.0がBeta版とDev版しかないがDrupalの基本設定では安定版のみを選択という原因でのエラーがこれに該当します。
公式サイトで配布されているテーマや、モジュールも最新の10対応した安定版というのはあまり多くありません。堅牢さや高機能を安定した形で担保するのはDrupal開発を行なっているサードパーティの開発者でも難しいと今回インストールを行い、いろいろなエラーを出した事から理解出来ます。
全く使えないわけではないのですが、100%の保証ができないものは未対応とするスタンスがWordPressのプラグインとのスタンスの違いを感じます。
個人のユースケースの情報が希薄
私自身が遭遇した幾つかのエラーに対する対応の情報を調べても情報はわずかで解決策は出てきませんでした。少ないながらも問題としては上がっており、コミュニティの方が対応しているのですが、結局解決出来ておらず、自身で調べて、解決してみると情報不足と、エラーを読むリテラシーの差により、利用者の勘違いが問題の解決につながっていないのではと感じます。
余談ですが、元大手ベンダーで企業の大規模システム開発に携わった知人のエンジニアに、Drupalを使ってみるという話をした際に知人から言われた言葉には、Drupalはエンジニア向けのCMSで、WordPressのようにユーザーが利用するユースケースや、手取り足取りのマニュアルや親切な解説はないよ、と言われたのですが、実際に自身でインストールを行い、いくつかのエラーに遭遇すると、知人の話が頭に浮かびます。
初学の敷居は高いが慣れると解りやすいCMS
インストールを完了しこうして記事を書き始めていて感じるのは、非常に優れたシステムであり、設定項目も多く、自由度も高く、完成したWEBサイトのイメージもしやすくこの事はWEBサイトを構築する基本設計を自然と意識しながら進めていける事につながっています。
インストールしたテーマがCivicThemeという政府機関が使うCMSというのもあるのですが、ルールが厳格でデザインの自由度はそこまで高くないのですが、本質は情報の告知に対して非常に長けたシステムであるという事です。
堅牢で高機能、優れた安定性とトレードオフで、スイートスポットが狭く、この事はシステムだけでなく、利用する人がこのスイートスポットの狭さをどう捉えるかで評価が変わってくると思います。
Drupalの記事
関連するDrupalでWEBサイトを構築する為の環境構築の記事やDrupalについて書いた記事になります。
記事は全てナンバリングしています。Drupalを初めて使う為の準備から始まる最初の記事から読む事もできます。
最新の記事
Drupalについて書いた最新の記事になります。
#D30 Civic Theme 1.9.0 UpDate
#D29 Drupal Core Update
Life Styleの記事
Drupalとは関係ないのですがLife Styleの記事も書いていますのでよろしければ購読ください。