Joomla กับ Drupal: การเปรียบเทียบเชิงเทคนิคระหว่างสอง open source CMS ที่ดีที่สุด

โดย Arash Arabi

เมื่อสองสามสัปดาห์ก่อน ผมจำเป็นต้องเขียนเปรียบเทียบเชิงเทคนิคระหว่าง Joomla กับ Drupal ปกติแล้วผมมักจะค้นหาข้อมูลออนไลน์ แต่น่าแปลกใจมากที่ไม่สามารถหาข้อมูลการประเมินที่ดีๆ มีคุณภาพเกี่ยวกับ CMS ที่มีชื่อเสียงสองตัวนี้ได้เลย เนื้อหาส่วนใหญ่ที่เจอก็มักจะเป็นการเปรียบเทียบแบบผิวเผินที่เขียนโดยเวบมาสเตอร์หรือคนที่ไม่ใช่ผู้พัฒนา ส่วนบทความที่เปรียบเทียบด้านสมรรถนะก็มีอยู่จำนวนหนึ่งแต่ไม่ลงลึกมากพอที่จะใช้ประเมินการทำงานเชิงเทคนิคของ PHP ที่รองรับ CMS สองตัวนี้ได้อย่างละเอียดนัก ในฐานะที่ผมเองเป็นผู้พัฒนาที่ทำงานกับทั้ง Joomla และ Drupal ผมจึงตัดสินใจเขียนบทความดีๆสักชิ้นเพื่อเปรียบเทียบ Joomla กับ Drupal ในเชิงเทคนิค เพื่อยุติปัญหาความแตกต่างระหว่าง CMS สองตัวนี้เสียที

myth busted

ก่อนที่จะเริ่ม อยากจะขอไขความกระจ่างเกี่ยวกับศัพท์ด้าน CMS สักนิดหนึ่ง:

  • สิ่งที่ Drupal เรียกว่า module นั้น คล้ายคลึงกับแนวคิดของ component ใน Joomla อย่างมาก
  • สิ่งที่ Joomla เรียกว่า module นั้น คล้ายคลึงกับแนวคิดของ block ใน Drupal อย่างมาก

การใช้งานง่าย กับ ความซับซ้อน

ถ้าคุณหาข้อมูลออนไลน์ จะพบว่านักวิเคราะห์ส่วนใหญ่ใช้เกณฑ์แบบแถบวัดเพื่อช่วยพิจารณาว่า CMS ตัวไหนเหมาะที่สุดกับลักษณะเฉพาะที่แตกต่างกันไป อย่าง Wordpress จะอยู่ที่สุดปลายด้านหนึ่งของแถบวัดเลย เพราะใช้ง่ายที่สุด ไม่เหมาะกับโปรเจกต์ที่ซับซ้อน Joomla ก็จะอยู่ตรงกลางๆ และ Drupal ก็จะอยู่สุดปลายอีกด้านหนึ่งเลย เพราะใช้ยากที่สุด เหมาะที่สุดสำหรับโปรเจกต์ที่ซับซ้อน การแบ่งประเภทในลักษณะนี้ก็แม่นยำอยู่ในระดับหนึ่ง แต่ก็ควรใช้พิจารณาแบบกว้างๆเท่านั้น

     จากมุมมองของเวบมาสเตอร์ที่ทำหน้าที่อัพเดตเวบไซต์ การมองแบบนี้แม่นยำอยู่พอสมควร อย่างไรก็ตาม เมื่อมองจากมุมของผู้พัฒนา การมองแบบนี้อาจจะไม่ถูกเสมอไป ลองมาดูกันดีกว่าว่าทำไม

vanila out of the box

ลองดูแผนภาพข้างต้นนี้ Joomla นั้นไม่เพียงแต่ติดตั้งและประมวลผลง่ายกว่า Drupal การพัฒนา custom functionality สำหรับ Joomla ยังง่ายกว่าเมื่อเทียบกับกรณีของ Drupal และ Wordpress อีกด้วย


customising match requirements

บทความนี้มุ่งเน้นที่ custom development คุณภาพสูงเป็นหลัก คุณเองสามารถแฮ็ค CMS ทั้งสามตัวที่กล่าวมาได้อย่างง่ายดาย แต่ก็ต้องแลกมากับเรื่องความปลอดภัย ความสามารถในการดูแลรักษา และความน่าเชื่อถือด้วย

ในทำนองเดียวกัน มายาคติที่ว่า Drupal เหมาะสมกับโปรเจกต์ที่ซับซ้อนกว่า Joomla นั้น เกิดจากการประเมิน CMS จากมุมมองของผู้พัฒนา แทนที่จะประเมินจากมุมมองของโปรแกรมเมอร์ การมองแบบนี้มาจากความจริงที่ว่า Drupal นั้นให้แนวทางที่เน้น module ในเรื่อง user interface design และ content entry และด้วยเหตุนี้เวบมาสเตอร์จึงมีความยืดหยุ่นสูงสุดในการสร้างเวบเพจโดยไม่จำเป็นต้องใช้ programming module สำหรับ Drupal เลย อย่างไรก็ตาม ในขณะที่ Joomla ก็มีเครื่องมือเครื่องใช้ (component และ module) ที่คล้ายๆกันที่เวบมาสเตอร์สามารถใช้ได้ แต่ Joomla ก็ไม่ได้ทรงพลังเท่า Drupal สำหรับเวบมาสเตอร์เก่งๆในการสร้างเวบเพจใหม่ๆที่ซับซ้อน

กระนั้น การสร้าง custom functionality ใหม่ก็เป็นอีกเรื่องหนึ่ง ในโลกปัจจุบันที่ทุกอย่างถูกบริหารจัดการด้วยซอฟต์แวร์ ลำพังแค่ความยืดหยุ่นคล่องตัวในการเคลื่อนย้าย content ในเวบเพจและการมี modular user interface นั้น ไม่เพียงพออีกต่อไป เนื่องจากธุรกิจต้องดำเนินรุดหน้าไปเรื่อยๆ functionality ของ CMS จึงจำเป็นต้องยืดหยุ่นคล่องตัวมากพอเพื่อรองรับการเปลี่ยนแปลงดังกล่าว

การเปรียบเทียบเชิงเทคนิคระหว่าง Joomla กับ Drupal

ทันทีที่โปรแกรมเมอร์เปิดดู “ไส้ใน” source code ของ Drupal ก็ต้องเผชิญกับนรก เพราะการ customize Drupal นั้นไม่ใช่เรื่องง่าย เพราะมันมีที่มาจาก framework ที่ออกแบบมาไม่ดี ในขณะที่ Joomla วางอยู่บน framework ที่ออกแบบมาดี เป็นแบบ object-oriented และ MVC และนอกจากนี้ยังใช้ design pattern หลายๆแบบ เช่น ตัวฟัง (listener) อีกด้วย

แม้ว่าคุณจะจ้างโปรแกรมเมอร์ Drupal ทักษะสูง (และค่าตัวแพง) ก็เป็นไปได้สูงอีกนั่นแหละที่ code ของคุณจะเละตุ้มเป๊ะเหมือนสปาเกตตี้ และจะทำให้เกิดปัญหาอื่นๆตามมาอีกในอนาคตเมื่อเปลี่ยนแปลง code


  1. Database
    • ใน Drupal นั้น view จะถูกเก็บไว้ใน database ซึ่งหมายความว่าคุณไม่สามารถมี version control (เช่น SVN หรือ GIT) และผู้พัฒนาก็ไม่สามารถร่วมกันพัฒนา view ได้
    • ทุกๆ content type ใหม่ๆ ใน Drupal จะจับคู่กับตาราง database คู่หนึ่ง ซึ่งหมายความว่าโครงสร้าง database จะเปลี่ยนไปเรื่อยๆทุกครั้งที่เวบมาสเตอร์สร้างและเปลี่ยน content type และนี่เปรียบเสมือนนรกดีๆสำหรับผู้พัฒนาซึ่งชอบสร้าง Entity Relationship Diagrams (ERD) เมื่อสร้าง web application เพราะคุณไม่สามารถไว้ใจ ERD ของคุณได้เลย ทุกครั้งที่คุณดู database จะพบว่าจำนวนตารางและ scheme ต่างๆ เปลี่ยนไปตลอด
    • ใน Drupal นั้น log จะถูกเก็บไว้ใน database แต่ระบบอื่นๆในทุกวันนี้จะเก็บ log ไว้ในไฟล์ การเก็บ log ไว้ใน database นั้นทำให้เข้าถึงได้ยาก วิเคราะห์ได้ยาก และสร้าง profile ได้ยาก ผู้พัฒนาไม่สามารถใช้เครื่องมือของ Linux เพื่อ process และวิเคราะห์ log เหล่านี้ได้ กระบวนการทั้งหมดจึงล่าช้า กินพื้นที่ disk space มหาศาล (หลาย gigabyte เลยทีเดียว) ในการเก็บ database และด้วยเหตุนี้จึงทำให้ database ของระบบขยายขึ้นอย่างไม่จำเป็นและลดประสิทธิภาพลง สำหรับเวบไซต์ขนาดใหญ่ที่มี traffic สูงนั้น ดูเหมือนว่าเป็นไปไม่ได้เลยที่จะ query และวิเคราะห์ log ทั้งหมด นอกจากนี้แล้วยังไม่รองรับ log rotation และการ archive log เก่าๆด้วย รู้แบบนี้แล้ว จะมีคนสติดีที่ไหนที่ยังอยากเก็บ log ไว้ใน database อีก


  2. Design Patterns
  3.      แรกสุดเลย Joomla นั้นมีลักษณะที่ object-oriented แต่ Drupal วางอยู่บนการเขียนโปรแกรม PHP 4 แบบเก่า (อันเป็นยุคดึกดำบรรพ์ของ PHP)


    reading php in the dark days and now


    Drupal จะใช้ design pattern ต่อไปนี้ ซึ่งเก่าคร่ำครึและถูกมองว่าเป็นวิธีที่แย่ นั่นคือ
    1. Procedural
    2. Hooking

    ถ้าคุณสนใจเกี่ยวกับวิธีปฏิบัติที่แย่ๆในการเขียนโปรแกรม สามารถอ่านโพสเก่าของผมได้ที่ clean high quality code - a guide on how to become a better programmer

    ในทางตรงกันข้าม Joomla จะใช้ design pattern ต่อไปนี้ ซึ่งทันสมัย เป็นวิธีที่ดี และถูกใช้โดย framework ยอดนิยมอย่าง symfony2 และ Zend หรือใช้ในการเขียนโปรแกรมขนาดใหญ่ด้วย Java (รวมไปถึง Struts และ Spring) นั่นคือ

    1. Object Oriented (รวมไปถึง polymorphism, encapsulation, inheritance ฯลฯ)
    2. MVC (Model View Control)
    3. Event Driven, Event Dispatcher, และ Observer
    4. Singleton
    5. Factory

    สำหรับ design pattern บางตัวที่ถูกใช้กับ framework เช่น DBAL (Database Abstraction Layer) นั้น จะใช้ได้ดีกว่ากับ Joomla โดย DBAL ของ Joomla นั้นแทบจะดีพอๆกับ ORM (Object-relational mapping) เลย และถ้าคุณอยากจะใช้ ORM แบบเต็มๆ Joomla นั้นก็ integrate กับ Doctrine ได้อย่างง่ายดาย

    การใช้วิธีการทันสมัยเหล่านี้เกิดจากการพัฒนาอย่างต่อเนื่องของ Joomla framework และ CMS ในหลายๆปีที่ผ่านมา ในขณะที่ Drupal นั้นแช่อยู่กับที่ นอกจากนี้แล้ว การใช้วิธีการที่ทันสมัยเหล่านี้ยังบ่งบอกความกระตือรือร้นของชุมชน Joomla ทั่วโลกอีกด้วย


  4. Core Architecture
  5.      Joomla นั้นมี core API ที่หมดจดมากๆ ในขณะที่ Drupal เขียนขึ้นมาด้วย code ที่เละตุ้มเป๊ะเหมือนสปาเกตตี้ ถ้าจะให้เปรียบแล้ว สถาปัตยกรรมของ Joomla นั้นเป็นเหมือนต้นคริสต์มาสในขณะที่สถาปัตยกรรมของ Drupal เป็นเหมือน bucky ball

    tree hierarchy

    Joomla จะมีลำดับชั้นแบบต้นไม้ (tree hierarchy) โดยตัวลำต้นเปรียบดั่ง Joomla core มีกิ่งก้านสาขา (API) ที่สามารถต่อกิ่งอื่นๆ (component) หรือใบ (module หรือ widget) ต่อไปได้อีก ดังนั้นจึงสามารถ plug in component เพื่อ integrate ตัวมันเองเข้ากับความปลอดภัย (Access Control Levels) และฟังก์ชันจัดการ article ได้ และในเมื่อเป็นกิ่งก้าน ก็ยังสามารถมีกิ่งก้านย่อยๆหรือมีแม้กระทั่งสะพานเชื่อมไปยังกิ่งอื่นๆได้ แต่เอาเข้าจริง ส่วนใหญ่จะมีการเชื่อมต่อระหว่าง component ที่ต่างกันน้อยมาก


    drupal structure

    ใน Drupal นั้น รูปร่างสถาปัตยกรรมเปรียบเสมือนทรงกลม มีจุดต่างๆ เรียกว่า module เรียงรายบนพื้นผิว เมื่อสร้าง extension หนึ่งๆขึ้นมา ก็เหมือนกับการเกี่ยวจุดใดจุดหนึ่งหรือทุกๆจุดที่เชื่อมต่อกันบนพื้นผิว การเชื่อมโยงผนวกกันอย่างแน่นหนาแบบนี้ทำให้ทุกอย่างถ่ายทอดถึงกันหมด ซึ่งสะท้อนว่าสถาปัตยกรรมแบบนี้มีความละเมียดละไมน้อยกว่า และเป็นการลดคุณภาพของ code ของ custom feature ใดๆ อีกด้วย การดูแลรักษาในระยะยาวก็มักจะเป็นปัญหาในโครงสร้างแบบนี้

    การใช้โครงสร้างที่เกี่ยวโยงเชื่อมต่อกันแบบนี้ Drupal ใช้ call_user_func() รวมทั้งเรียกใช้ฟังก์ชันแบบอื่นๆอีกอย่างปกติเป็นว่าเล่น นั่นหมายความว่าการ debug Drupal คือนรกดีๆนี่เองในการใช้เครื่องมือ debugger ทั้งหลาย ถ้าคุณสนใจเกี่ยวกับเครื่องมือ debugger สามารถอ่านโพสเก่าของผมได้ที่ How to configure VIM and PhpStorm with xDebug to debug

    นอกจากนี้แล้ว คุณไม่สามารถใช้ click ผ่าน feature ของ IDE ในตอนเขียน code ได้ ยิ่งไปว่านั้น ถ้าคุณใช้ PHPStorm หรือ IDE ตัวอื่นๆ จะพบว่าการตรวจและ auto-complete feature อื่นๆจะใช้การไม่ได้ เพราะว่าไม่รู้จัก type ของฟังก์ชันที่ใช้เรียก


  6. Coding Standard
  7.      PSR เป็น PHP Specification Request และเป็นมาตรฐานการเขียน code ที่ใช้โดย framework เช่น Symfony2 และ Zend
         Joomla นั้น เป็นไปตาม PSR-0 และจะเป็นไปตาม PSR-1 ในเร็วๆนี้ ส่วน Drupal ไม่เป็นไปตาม PSR ใดๆเลย


  8. Performance and Caching
  9.      โดยเฉลี่ยแล้ว Drupal จะสร้าง 100 database query ต่อการโหลดเพจหนึ่งครั้ง (สำหรับเพจที่ไม่ซับซ้อน) ด้วยเหตุนี้ รวมทั้งปัจจัยอื่นๆที่เกี่ยวข้องกับสถาปัตยกรรมของ Drupal ทุกอย่างจะต้องถูก abstract และ cache อย่างหนักหน่วง ทำให้เกิดปัญหาความต้องการเพิ่มความซับซ้อนและ resource (ฮาร์ดแวร์) Joomla นั้นเบาสบายและปรับให้เหมาะสมกว่ามาก มี core ที่เร็วกว่ามาก Joomla มี recommended memory ที่ 512 MB ในขณะที่ Drupal อยู่ที่ 2GB

    ทุกเกณฑ์มาตรฐานต่างชี้ตรงกันว่า ถ้าไม่มี caching แล้ว Joomla จะเร็วกว่าและเน้น resource น้อยกว่า Drupalอย่างไรก็ตาม บางเกณฑ์กลับมองว่า Drupal นั้นเร็วกว่าถ้าเปิดใช้ caching กระนั้น ถ้า caching ของ Joomla ถูกติดตั้งโดยผู้เชี่ยวชาญและประมวลผลอย่างเหมาะสม ก็อาจจะเอาชนะ Drupal ได้เหมือนกันแม้ในยามที่เปิดใช้ caching ก็ตาม นอกจากนี้แล้ว caching ของ Joomla นั้นเรียบง่ายกว่าและเน้น resource น้อยกว่ามาก ทำให้ใช้ง่าย อัพเดตง่าย และปรับแต่งง่าย

    ในขณะที่คุณมี Solr ใน Drupal เพื่อเพิ่มสมรรถนะเว็บไซต์ที่มีฐานข้อมูลขนาดใหญ่และผู้ใช้จำนวนมาก คุณก็มี Sphinx ใน Joomla ที่เขียนขึ้นด้วย C++ ซึ่งเร็วกว่าและง่ายกว่า Solr มาก เราไม่จำเป็นต้องติดตั้ง Sphinx บนทุกเว็บไซต์ เพราะ Joomla นั้นเร็วและทรงพลังมากพอที่จะจัดการฐานข้อมูลขนาดใหญ่มากๆภายใต้ traffic สูงๆได้ อย่างไรก็ตาม เมื่อจำเป็น Sphinx ก็จะช่วยเพิ่มสมรรถนะเหลือล้น ทำให้ Joomla เร็วกว่า Drupal solr หลายเท่าตัว

    ทุกอย่างที่กล่าวมานี้ บ่งชี้ให้เห็นว่า แม้จะมีความเชื่อที่ถือกันในวงกว้าง แต่ Joomla ก็เป็นทางเลือกที่ดีกว่า Drupal มากในการพัฒนาเว็บไซต์ที่ใหญ่ๆและซับซ้อน

    ผู้เชี่ยวชาญเขาทำอะไรกัน

    หนึ่งในบรรดาเว็บไซต์ Joomla ที่ประสบความสำเร็จคือ linux.com เป็นที่รู้กันดีกว่าคนที่ทำงานที่นั่นเคร่งครัดเรื่องคุณภาพ code เป็นอย่างมากและเป็นหนึ่งในบรรดาโปรแกรมเมอร์ที่เก่งกาจที่สุดเลยก็ว่าได้ ไม่ว่าคุณจะให้รายการเว็บไซต์ของรัฐบาลที่สร้างจาก Drupal มามากเพียงใดก็ตาม แค่บอกว่า linux.com สร้างจาก Joomla ก็เอาทุกอย่างเสียอยู่หมัด

    และนี่เป็นเกร็ดสนุกๆนอกเรื่องนิดหนึ่ง linux.com นั้นจ้าง Linus Torvalds (ซึ่งว่ากันว่าเป็นหนึ่งในบรรดาโปรแกรมเมอร์ที่เก่งกาจที่สุดที่ยังมีชีวิตอยู่) ซึ่งเป็นผู้สร้างระบบปฏิบัติการ Linux และ GIT และ Linus Torvalds นั้นเป็นหนึ่งในสี่ผู้เข้ารอบสุดท้ายของการแข่งขัน geek madness ใน geekwire magazine โดยผู้เข้าแข่งขันสามคนที่เหลือ คือ Albert Einstein, Nicola Tesla, และ Alan Turing!

    Albert Einstein  Nicola Tesla  Alan Turing

    http://www.geekwire.com/2013/geek-madness-final/


         เพื่อที่จะรักษาหน้า Drupal ทาง Linux Foundation ซึ่งอยู่เบื้องหลัง linux.com ได้สร้างเว็บไซต์ที่ใช้ Drupal อีกสองสามเว็บไซต์ แต่ความจริงที่ว่าองค์กรดังกล่าวใช้ Joomla ในการสร้างเว็บไซต์หลักนั้น สำหรับผมแล้วถือเป็นนิมิตหมายที่สำคัญเลยทีเดียวสำหรับ Joomla

         นอกจากนี้แล้ว ผู้อุปถัมภ์ Linux Foundation ยังให้คะแนนประเมิน 5 ดาวสำหรับ Joomla ในขณะที่ให้เพียง 3 ดาวสำหรับ Drupal ถ้าคุณสนใจ สามารถอ่านต่อได้ที่ interview with Dan Lopez, Web Architect of linux.com about why he chose Joomla


กรณีทางธุรกิจ

แม้ Drupal จะให้ความยืดหยุ่นแก่เวบมาสเตอร์ก็ตาม การดูแลเว็บนั้นก็ซับซ้อนและต้องใช้ความอุตสาหะในการเรียนรู้มาก ลูกค้าจำเป็นต้องจ้างเวบมาสเตอร์ Drupal ที่ชำนาญ และผู้ใช้ทั่วไปไม่สามารถฝึกฝนตนเองให้ใช้ Drupal อย่างที่ตนสามารถทำได้ในกรณีของ Joomla เมื่อเทียบกับ Joomla แล้ว administrative console ของ Drupal เปรียบดั่ง console ของเครื่องบินเจ็ท

ในแง่ของชุมชนผู้ใช้ open source ที่สนับสนุน CMS พบว่า Joomla มีชุมชนผู้พัฒนาที่ใหญ่กว่าชุมชนของ Drupal มาก นี่เป็นตัวบ่งชี้ว่าผู้พัฒนา open source นิยมใช้ Joomla มากกว่าที่จะต้องทนปวดหัวเมื่อใช้ Drupal

และเพื่อทำให้เลวร้ายลงไปอีกสำหรับธุรกิจที่ใช้ Drupal ผู้พัฒนา Drupal ชั้นดีมีคุณภาพนั้นหาตัวจับยากและมีค่าตัวแพงกว่าผู้พัฒนา Joomla มากมายนัก ผู้พัฒนาที่มีประสบการณ์จะนิยมใช้ Joomla มากกว่า Drupal

ผมเองก็ไม่ได้เป็นข้อยกเว้นจากที่กล่าวๆมาเลย ผมปฏิเสธงานที่เสนอรายได้อย่างงามมาแล้วหลายงาน ด้วยเหตุผลที่ไม่ต้องการกลับไปใช้ Drupal อีก


Drupal สามารถพัฒนาได้อีกในอนาคต

Drupal 8 ที่จะปล่อยอีกในไม่ช้านี้ (ยังไม่มีกำหนดการปล่อยที่เป็นทางการ) ได้รับการพัฒนาอย่างมากและแก้ไขหลายๆปัญหาที่กล่าวมา core ถูกออกแบบใหม่และพัฒนาใหม่โดยสิ้นเชิงและคาดว่าคงใช้งาน Symfony2 framework มากอยู่พอควร

อย่างไรก็ตาม ก่อนที่จะปล่อย Drupal 8 อยากบอกว่าไม่ควรพิจารณาใช้ Drupal สำหรับงาน CMS ใดๆทั้งสิ้น

เมื่อไหร่ก็ตามที่ปล่อย Drupal 8 แล้ว ผมยินดีที่จะไปเยี่ยมชมโลกของ Drupal และทำงานกับมันอีกครั้ง แต่ผมก็แน่ใจว่าป่านนั้น Joomla เองก็คงพัฒนาไปไกลโขอีก ป่านนั้นเราอาจจะมีกระทั่ง full support สำหรับ TDD บน Joomla แล้วก็ได้ (TDD หรือ Test Driven Development เป็นระเบียบวิธีการสำหรับการพัฒนาที่ดีที่สุดในโลกตอนนี้)


บทสรุป

ท้ายที่สุด ถ้าคุณยังสงสัยเกี่ยวกับเรื่องราวทั้งหมด ลองขอคำแนะนำจากผู้พัฒนาที่เคยใช้งานทั้ง Joomla และ Drupal จะพบว่า Joomla นั้นดีกว่า Drupal เยอะเลย และยังคงจริงอยู่แม้ว่าเว็บไซต์จะมีขนาดหรือความต้องการแตกต่างกันมากน้อยเพียงใดก็ตาม

ถ้าคุณไม่ได้มีปัญหาเชิงเทคนิค (เว้นเสียแต่ว่าคุณใช้ Drupal เป็น) ผมแนะนำให้คุณใช้ Joomla

ถ้าคุณไปอ่านเจอที่ไหนก็ตามในอินเตอร์เน็ตที่บอกว่า Drupal ดีกว่า Joomla ในกรณีโปรเจกต์ที่มีความซับซ้อนมากๆ โปรดตรวจสอบหลักฐานที่มาสักนิด ว่าพวกเขาได้ดูรายละเอียดเชิงเทคนิคของ framework และสรุปตามนั้นหรือไม่ หรือเพียงแค่บอกในสิ่งที่เชื่อตามๆกันมาโดยปราศจากหลักฐานหรือการอ้างถึง code ของ CMS ใดๆเลย

ผมเห็นมาหลายครั้งแล้วเวลามีคนบอกว่า Drupal ดีกว่าเพราะว่าทนทานกว่าและมีประสิทธิภาพกว่า นั่นไม่ใช่เหตุผล เพราะเมื่อผมถามต่อว่าอะไรทำให้ Drupal ทนทานกว่าและมีประสิทธิภาพกว่า คนเหล่านั้นก็ไม่สามารถตอบได้ เมื่อผมยกเหตุผลที่เหนือกว่าของจูมล่าที่กล่าวมาในตอนต้นๆ

Source : http://www.butterfly.com.au/what/we-re-talking-about/entry/joomla-vs-drupal-a-technical-comparison-of-the-best-open-source-cms

The Joomla!® name and logo is used under a limited license granted by Open Source Matters the trademark holder in the United States and other countries.
marvelic.co.th is not affiliated with or endorsed by Open Source Matters or the Joomla!® Project