การเลี้ยงแมว — บทเรียนที่ได้รับขณะพัฒนาเพื่อสิ่งแวดล้อม WordPress
เผยแพร่แล้ว: 2021-12-02เมื่อ Elementor 3.0 เปิดตัวเมื่อปีที่แล้ว ในปี 2020 เราเห็นว่านี่เป็นก้าวสำคัญสู่ตัวแก้ไขที่รวดเร็วและมีประสิทธิภาพยิ่งขึ้น แม้ว่าจะเป็นความจริง แต่เวอร์ชันนี้ก็มีผลที่สำคัญและไม่คาดคิดเช่นกัน ทำให้ไซต์จำนวนมากหยุดทำงานและค่อนข้างตรงไปตรงมา ทำลายชื่อเสียงของเรา หลังจากการเปิดตัวนี้ เราจำเป็นต้องแก้ไขชุดแก้ไขเพื่อให้ไซต์เหล่านี้ทำงานได้อีกครั้ง ยิ่งไปกว่านั้น ประสบการณ์ทั้งหมดแสดงให้เราเห็นว่าเราจำเป็นต้องยกเครื่องขั้นตอนการทดสอบและการเปิดตัวทั้งหมดของเรา แม้ว่าจะต้องเจ็บปวด แต่กระบวนการนี้ได้ผลดีในวันนี้ ซึ่งสะท้อนให้เห็นในปัญหาที่ลดลงอย่างไม่ธรรมดา โดยเฉพาะอย่างยิ่งปัญหาที่สำคัญ ระหว่างการเปิดตัวเวอร์ชัน v3.0 และ v3.4 ของเรา:
เมื่อเราเข้าใกล้การครบรอบหนึ่งปีของ Elementor 3.0 เป็นเวลาที่เหมาะสมที่จะมองย้อนกลับไปและตรวจสอบขั้นตอนที่เราวางไว้เพื่อให้แน่ใจว่าปัญหาที่มาพร้อมกับการเปิดตัวจะไม่เกิดขึ้นอีก เพื่อให้มีความโปร่งใสกับชุมชนของเรามากที่สุด ฉันต้องการตรวจสอบภูมิหลังของปัญหารอบ ๆ รุ่น 3.0 ขั้นตอนที่เราดำเนินการในปีที่ผ่านมา เราจะสามารถรับประกันการวางจำหน่ายที่เสถียรและสิ่งที่จะเกิดขึ้นในอนาคตได้อย่างไร แต่ก่อนอื่น สิ่งสำคัญคือต้องเข้าใจประวัติของ Elementor และความท้าทายที่เราเผชิญในการพัฒนาปลั๊กอินที่ซับซ้อนและซับซ้อนภายในสภาพแวดล้อมของ WordPress
สารบัญ
- Elementor และ WordPress Challenge
- การพัฒนาคุณสมบัติใหม่โดยไม่ทำลายสิ่งเก่า
- วงข้อเสนอแนะ
- แนะนำคุณสมบัติ "ทดลอง"
- แท็กความเข้ากันได้
- สู่อนาคตที่ดียิ่งขึ้น
Elementor และ WordPress Challenge
ในเดือนมิถุนายน 2016 เมื่อเราเปิดตัว Elementor เวอร์ชันแรก เราเป็นเพียง "เด็ก" ไม่กี่คนที่ชอบพัฒนาปลั๊กอินและช่วยผู้คนสร้างเว็บไซต์ นี่ไม่ใช่ผลิตภัณฑ์แรกของเรา เราได้พัฒนาปลั๊กอินบางตัวที่ชุมชน WordPress ใช้อยู่แล้ว อย่างไรก็ตาม ขณะที่เราทำงานเกี่ยวกับ Elementor เราเชื่อมั่นว่าเรากำลังพัฒนาบางสิ่งที่พิเศษ ตามที่ปรากฎ เราพูดถูก เพียงไม่กี่เดือนหลังจากการเปิดตัวครั้งแรก ผู้ใช้หลายหมื่นคนได้ติดตั้ง Elementor แล้วและกำลังใช้มันเพื่อสร้างเว็บไซต์ทั่วโลก
ตั้งแต่นั้นมา บริษัทของเราเติบโตขึ้นในทุกๆ ด้าน โดยมีนักพัฒนาเพิ่มขึ้น ผู้ใช้เพิ่มมากขึ้น และมีคุณสมบัติมากขึ้น การเติบโตนี้ทำให้เกิดปัญหาใหม่ๆ มากมาย ซึ่งรวมถึงการขาดดุลทางเทคโนโลยีที่เพิ่มขึ้น ในขณะที่เรามุ่งเน้นไปที่ปัญหาเร่งด่วน โดยละทิ้งปัญหาที่สำคัญแต่เป็นปัญหาทางโลกมากกว่า
การจัดการกับปัญหาเหล่านี้ยากขึ้นด้วยความท้าทายโดยรวมที่เกิดจากธรรมชาติของสภาพแวดล้อม WordPress
ในฐานะที่เป็นแพลตฟอร์มเปิด WordPress มีข้อดีมากมายสำหรับนักพัฒนา มี Roadblock สองสามรายการคอยตรวจสอบและชะลอการปล่อย มีการจินตนาการ พัฒนา และเพิ่มแนวคิดในที่เก็บ ผู้ใช้ลอง ทดสอบ และตัดสินผลิตภัณฑ์เหล่านี้ โดยตลาดจะตัดสินว่าผลิตภัณฑ์ใดจะประสบความสำเร็จและจะล้มเหลว อย่างไรก็ตาม ความเร็วและความเรียบง่ายนี้มาพร้อมกับราคา
มีความสม่ำเสมอเพียงเล็กน้อยในสภาพแวดล้อมของ WordPress และไม่มีขั้นตอนการทำงานที่เป็นระเบียบ ผู้สร้างเว็บมีอิสระในการกำหนดสภาพแวดล้อมของไซต์ของตนในขณะที่ใช้ปลั๊กอิน ธีม และอื่นๆ มากมาย ซึ่งหมายความว่าไซต์ WordPress ประกอบด้วยปลั๊กอิน ธีม และการกำหนดค่าเซิร์ฟเวอร์จำนวนนับไม่ถ้วน
นอกจากนี้ ความเรียบง่ายของกระบวนการเผยแพร่และการขาดเครื่องมือการปรับใช้ที่มีประสิทธิภาพหมายความว่านักพัฒนา WordPress ไม่สามารถใช้ประโยชน์จากแนวคิดการเผยแพร่ที่ทันสมัย เช่น CI/CD การปรับใช้ Canary และการตั้งค่าสถานะคุณลักษณะ
ในขณะที่การเปิดกว้างเป็นส่วนหนึ่งของความสวยงามของ WordPress การกำหนดค่าไซต์และเซิร์ฟเวอร์ที่มีอยู่มากมายทำให้นักพัฒนามีความท้าทายอย่างแท้จริงเมื่อพูดถึงการบัญชีสำหรับข้อขัดแย้งของปลั๊กอินและปัญหาเซิร์ฟเวอร์เฉพาะ
ในกรณีของเรา เนื่องจาก Elementor ถูกใช้สำหรับเว็บไซต์มากขึ้นเรื่อยๆ ความจำเป็นในการสนับสนุนชุดค่าผสมต่างๆ เหล่านี้ทำให้กำหนดการวางจำหน่ายของเราช้าลง และทำให้เราไม่ลังเลที่จะพัฒนาคุณลักษณะใหม่ จำเป็นต้องพูด สถานการณ์นี้ไม่สามารถยอมรับได้ และเราจำเป็นต้องเขย่าสิ่งต่างๆ
การพัฒนาคุณสมบัติใหม่โดยไม่ทำลายสิ่งเก่า
ปัจจัยทั้งหมดข้างต้นทำให้เราสับสนว่าเราจะพัฒนาและปรับปรุงต่อไปได้อย่างไรโดยไม่ส่งผลกระทบในทางลบต่องานของผู้ที่เคยพึ่งพา Elementor แล้ว
เราเริ่มต้นด้วยการนำการเปลี่ยนแปลงเล็กๆ น้อยๆ ไปใช้ในกระบวนการเผยแพร่ของเรา ใน Elementor 1.5 เราเริ่มให้นักพัฒนาเข้าถึงเวอร์ชันเบต้า เราทำสิ่งนี้ผ่าน Github และชุมชนอื่น ๆ ซึ่งทำให้เราได้รับคำติชมก่อนการเปิดตัว ซึ่งระบุว่าเวอร์ชันนี้โต้ตอบกับชุดค่าผสมปลั๊กอิน/ธีม/สภาพแวดล้อมที่หลากหลายอย่างไร และแจ้งเตือนเราถึงความไม่ลงรอยกันใดๆ ในช่วงต้น วิธีนี้ใช้ได้ผลดีมาระยะหนึ่ง แต่เมื่อ Elementor เติบโตขึ้น เราพบว่าวิธีนี้ยังไม่เพียงพอ
ถึงเวลานี้ เรามีการติดตั้งเกินเกณฑ์ห้าล้านครั้งแล้ว แม้ว่าจะเป็นความสำเร็จที่เหลือเชื่อ แต่ก็หมายความว่าตอนนี้เราต้องรับผิดชอบต่อเว็บไซต์เหล่านี้ทั้งหมดที่ทำงานได้อย่างราบรื่น
ในที่สุดสิ่งต่าง ๆ ก็มาถึงหัวด้วยการเปิดตัว Elementor 3.0 ในเวอร์ชันนี้ เราตัดสินใจยกเลิกฟังก์ชันเก่าบางฟังก์ชันที่ดูเหมือนล้าสมัย โดยนำองค์ประกอบ DOM ออกเพื่อเพิ่มความเร็วในการโหลด อย่างน้อยก็บางส่วนเพื่อเป็นการตอบสนองต่อข้อร้องเรียนที่สมเหตุสมผลซึ่งเราสร้างภาระให้กับระบบโดยไม่จำเป็น
ขออภัย การเปลี่ยนแปลงนี้ทำให้ไซต์จำนวนหนึ่งซึ่งต้องอาศัยโค้ดที่เราลบไป ขัดข้องระหว่างการอัปเกรด แม้ว่าเราจะพยายามนำนักพัฒนาจากภายนอกเข้าสู่กระบวนการ แต่จุดบกพร่องเหล่านี้ยังไม่ถูกค้นพบ และเราต้องดำเนินการอย่างรวดเร็วเพื่อแก้ไขสถานการณ์ ในท้ายที่สุด เราสามารถทำได้โดยทำให้ส่วนต่าง ๆ ของการอัปเกรดเป็นตัวเลือก แต่ไม่ใช่ก่อนที่สมาชิกบางคนในชุมชนของเราจะมั่นใจในความเสถียรของปลั๊กอินของเรา
ประสบการณ์นี้บังคับให้เราต้องพิจารณากระบวนการพัฒนาของเราอย่างถี่ถ้วนและถี่ถ้วน โดยมุ่งไปที่การเปลี่ยนแปลงที่สำคัญหลายประการ กระบวนการของเราไม่เหมาะสำหรับบริษัทขนาดและฐานการติดตั้งของเรา ขั้นตอนแรกและชัดเจนที่สุดคือการเพิ่มขนาดและขอบเขตของทีม QA ของเรา แต่สิ่งนี้ยังคงทำให้เราต้องต่อสู้กับปัญหาที่โดดเด่นหลายประการ:
- ตรวจสอบความเข้ากันได้ของเวอร์ชันกับการตั้งค่าไซต์มากมาย
- มั่นใจได้ถึงความเข้ากันได้แบบย้อนหลังกับไซต์ที่มีอยู่มากกว่าห้าล้านแห่ง
- ตรวจสอบความเข้ากันได้ของส่วนขยาย Elementor บุคคลที่สามหลายร้อยรายการ
เพื่อจัดการกับปัญหาเหล่านี้ เราจำเป็นต้องนำเสนอวิธีการพัฒนาซอฟต์แวร์ที่ทันสมัยมากขึ้นในโลกของ WordPress
วงข้อเสนอแนะ
ปัญหาใหญ่อย่างหนึ่งที่การพัฒนาต้องเผชิญ โดยทั่วไปคือ ผู้ใช้จะพบกับการอัปเดตเมื่อเปิดตัวแล้วเท่านั้น นั่นหมายความว่าคุณลักษณะได้รับการออกแบบ พัฒนา และเผยแพร่แล้วเมื่อเราได้รับการตอบรับจากผู้ใช้ ในกรณีของเรา การจัดการกับส่วนขยายและปลั๊กอินของบุคคลที่สามหลายร้อยรายการ ปัญหาของลูปความคิดเห็นนี้มีความสำคัญมากกว่า
ในการมองหาวิธีทำให้การวนรอบความคิดเห็นสั้นลงนั้น เราได้พิจารณาว่านักพัฒนาเบราว์เซอร์จัดการกับปัญหาที่คล้ายกับปัญหาของเราอย่างไร พวกเขายังต้องรับรองความเข้ากันได้กับหน้าเว็บ แอป ส่วนขยาย และอื่นๆ ของบุคคลที่สามจำนวนนับไม่ถ้วน
ตัวอย่างเช่น เราได้ตรวจสอบระบบที่พัฒนาโดย Google สำหรับเบราว์เซอร์ Chrome เมื่อใดก็ตาม นักพัฒนาสามารถเข้าถึงเบราว์เซอร์ได้สามเวอร์ชัน — เวอร์ชันเบต้า เวอร์ชันสำหรับนักพัฒนา และเวอร์ชันกลางคืน ซึ่งหมายความว่านักพัฒนาซอฟต์แวร์จะได้เห็นคุณลักษณะใหม่ๆ ของ Chrome ก่อนใคร และสามารถเริ่มให้ข้อเสนอแนะกับ Google ได้นานก่อนที่จะมีการเปิดตัวเวอร์ชันอย่างเป็นทางการ
การนำบทเรียนเหล่านี้ไปใช้กับปลั๊กอินของเรา Elementor ได้เริ่มเปิดตัวรุ่นสำหรับนักพัฒนา - Elementor Beta (รุ่นสำหรับนักพัฒนา) ซึ่งพร้อมใช้งานจากพื้นที่เก็บข้อมูล WordPress และมุ่งเป้าไปที่นักพัฒนาที่สนใจในการตรวจสอบคุณสมบัติใหม่ของเรา "ร้อนแรง" เพื่อที่จะพูด
สำหรับเรา เราได้รับประโยชน์จากการได้รับคำเตือนล่วงหน้าเกี่ยวกับปัญหาความเข้ากันได้ รุ่นสำหรับนักพัฒนาไม่เพียงแต่อนุญาตให้ผู้ใช้เข้าถึงคุณลักษณะใหม่ทั้งหมดเหล่านี้เท่านั้น แต่ยังมีลิงก์โดยตรงไปยัง Github สำหรับการรายงานจุดบกพร่องอีกด้วย ซึ่งหมายความว่าเราสามารถปรับใช้คุณลักษณะใหม่อย่างต่อเนื่องและรับข้อเสนอแนะเกี่ยวกับคุณลักษณะเหล่านี้ โดยไม่เป็นอันตรายต่อเว็บไซต์ที่มีอยู่ สำหรับนักพัฒนา การทำเช่นนี้ช่วยให้พวกเขาเตรียมพร้อมสำหรับการเปิดตัวอย่างเป็นทางการที่จะเกิดขึ้นได้ล่วงหน้า ช่วยป้องกันปัญหาความเข้ากันได้ของตนเอง และยังให้โอกาสพวกเขาในการให้ข้อเสนอแนะเกี่ยวกับผลิตภัณฑ์และทางเทคนิคในขณะที่คุณลักษณะนี้ยังคงทำงานอยู่
ควรสังเกตว่ารุ่นของนักพัฒนาซอฟต์แวร์ทำงานควบคู่ไปกับปกติ — alpha, beta, RC และ production — กระบวนการที่ใช้ในการพัฒนา Elementor รุ่นต่างๆ เมื่อเราพัฒนาคุณลักษณะใหม่ ทันทีที่มีเสถียรภาพเพียงพอต่อการใช้งาน แต่ในขณะที่ยังอยู่ในเวอร์ชันอัลฟ่า เราจะเพิ่มคุณลักษณะนี้ในรุ่นสำหรับนักพัฒนา ด้วยวิธีนี้ นักพัฒนาของเราสามารถให้ข้อเสนอแนะแก่เราได้ แม้กระทั่งก่อนที่คุณลักษณะจะถึงรุ่นเบต้า นอกจากนี้ยังหมายความว่ารุ่นสำหรับนักพัฒนาซอฟต์แวร์มีคุณสมบัติที่ยังไม่ถึงขั้นเบต้า
โดยพื้นฐานแล้ว ระยะเบต้านั้นสงวนไว้สำหรับกระบวนการดีบักโดยเจตนา ในขณะที่รุ่นสำหรับนักพัฒนาซอฟต์แวร์จะได้รับการอัปเดตบ่อยขึ้น โดยรวมเอาฟีเจอร์ต่างๆ ไว้ในขั้นตอนแรกสุด
นับตั้งแต่เปิดตัว รุ่นของนักพัฒนาได้พิสูจน์ความสำเร็จอย่างยิ่งใหญ่ โดยมีการติดตั้งมากกว่า 40,000 ครั้งในเวลาน้อยกว่าหนึ่งปี
แนะนำคุณสมบัติ "ทดลอง"
ในช่วงหลายปีที่ผ่านมา นักพัฒนาแนวคิดรายอื่นได้นำเอาฟีเจอร์แฟล็ก ซึ่งพบได้ทั่วไปในโลกของ SaaS แนวคิดทั่วไปคือการตั้งค่าสถานะคุณลักษณะเหล่านี้ช่วยให้นักพัฒนาสามารถทดสอบคุณลักษณะใหม่ ๆ ได้โดยการเปิดและปิดคุณลักษณะเหล่านี้สำหรับผู้ใช้กลุ่มต่างๆ เพื่อทดสอบและดูว่าคุณลักษณะเหล่านี้ทำงานอย่างไร
ดังที่ได้กล่าวไว้ข้างต้น ปัญหามากมายที่เกิดจากการเปิดตัว 3.0 นั้นเกิดจากคุณลักษณะใหม่ที่ขจัดโค้ดเก่าออกไป เพื่อหลีกเลี่ยงปัญหาประเภทนี้ เราจึงตัดสินใจนำแนวทางที่คล้ายกับแฟล็กคุณลักษณะมาใช้
เริ่มต้นด้วย Elementor 3.1 เราเริ่มเผยแพร่คุณสมบัติใหม่อย่างระมัดระวังยิ่งขึ้น โดยตั้งค่าสถานะเป็น "ทดลอง" ซึ่งรวมถึงระบบการแนะนำคุณสมบัติใหม่เป็นระยะ ในระบบนี้ คุณลักษณะที่พัฒนาขึ้นใหม่จะถูกตั้งค่าสถานะเป็น "อัลฟ่า" ซึ่งหมายความว่าจะปิดโดยค่าเริ่มต้นในทุกไซต์ เนื่องจากพิสูจน์แล้วว่ามีเสถียรภาพมากขึ้น มันจึงกลายเป็น "เบต้า" ซึ่งหมายความว่าขณะนี้จะเปิดขึ้นตามค่าเริ่มต้นสำหรับไซต์ใหม่และปิดสำหรับไซต์ที่มีอยู่ เมื่อเราแน่ใจว่ามีความเสถียรแล้ว ไซต์ทั้งหมดจะเปิดขึ้นตามค่าเริ่มต้น ถึงอย่างนั้น จะมีตัวเลือกสำหรับผู้ใช้ในการปิดใช้งานคุณลักษณะนี้ในระยะเวลาจำกัด
ระบบนี้ช่วยให้เราสามารถพัฒนา Elementor ต่อไปได้ โดยเพิ่มทั้งชุดคุณลักษณะและความเร็ว ในขณะที่ให้ผู้สร้างสามารถเลือกรับหรือยกเลิกการอัปเกรดใหม่เหล่านี้ได้ตามความต้องการของไซต์ของตน นอกจากนี้ยังช่วยให้ครีเอเตอร์อัปเดตไซต์ของตนโดยอนุญาตให้ใช้คุณลักษณะใหม่ได้อย่างรอบคอบยิ่งขึ้น
แท็กความเข้ากันได้
การเติบโตของชุมชนนักพัฒนาที่กระตือรือร้นมากของ Elementor นั้นสร้างความภาคภูมิใจอย่างมาก แต่ก็ทำให้เกิดความท้าทายในตัวเองเช่นกัน นักพัฒนาจากภายนอกได้สร้างส่วนขยาย ธีม ชุดคิท และวิดเจ็ตหลายร้อยรายการ โดยทั้งหมดนี้ใช้เทคโนโลยีที่มีอยู่ของเรา
เพื่อสนับสนุนนักพัฒนาของส่วนเสริมของบุคคลที่สามเหล่านี้ เราใช้บล็อกของนักพัฒนาและรายชื่อผู้รับจดหมายของเราเพื่อแจ้งให้ทราบล่วงหน้าเกี่ยวกับการเปลี่ยนแปลงที่เราทำกับ API รวมถึงการเลิกใช้งาน อย่างไรก็ตาม ตามที่กล่าวไว้ข้างต้น เราพบว่าสิ่งนี้ไม่เพียงพอ ปัญหาหลายอย่างที่เราประสบกับรุ่นใหม่กำลังประสบปัญหาความเข้ากันได้เนื่องจากส่วนเสริมของบุคคลที่สามเหล่านี้ ปลั๊กอินของเราถูกมองว่าไม่เสถียร ไม่ใช่เพราะเทคโนโลยีของเรา แต่เป็นเพราะความไม่ลงรอยกันของบุคคลที่สามเหล่านี้
เรามองดูสิ่งที่คนอื่นทำเพื่อหาแรงบันดาลใจอีกครั้ง ในกรณีนี้ WooCommerce และแนวทางการทำงานกับนักพัฒนาบุคคลที่สาม เริ่มต้นด้วยรุ่น 3.1 ของเรา เราเริ่มระบบที่นักพัฒนาบุคคลที่สามรับรองว่าส่วนขยายของพวกเขาเข้ากันได้กับเวอร์ชันใหม่ (เรียนรู้เพิ่มเติม) จากนั้น เมื่อผู้ใช้มีตัวเลือกในการอัพเกรด Elementor พวกเขาจะแสดงรายการส่วนขยายของบุคคลที่สามที่พวกเขากำลังใช้อยู่และได้รับการรับรองว่าเข้ากันได้กับ Elementor เวอร์ชันใหม่หรือไม่ วิธีนี้ทำให้ผู้ใช้สามารถตัดสินใจเกี่ยวกับการอัพเกรดได้อย่างมีข้อมูล
สู่อนาคตที่ดียิ่งขึ้น
โดยการสรุปความท้าทายเหล่านี้และการเปลี่ยนแปลงที่เราได้ดำเนินการ ฉันหวังว่าฉันจะได้ให้ข้อมูลคร่าวๆ แก่คุณว่าการพัฒนาผลิตภัณฑ์สำหรับใช้งานทั่วโลกเป็นอย่างไร ในโอเพนซอร์ส และสภาพแวดล้อมที่เปลี่ยนแปลงตลอดเวลา ในฐานะที่เป็นส่วนหนึ่งของวัฒนธรรมโอเพนซอร์สนี้ สิ่งสำคัญคือเราต้องโปร่งใสกับชุมชนผู้ใช้และนักพัฒนาของเรา - ยิ่งเมื่อบริษัทเติบโตขึ้นและการรักษา "ความเป็นส่วนตัว" ก็ยิ่งยากขึ้น ไม่เพียงเพราะความเจ็บปวดของผู้ใช้คือความเจ็บปวดของเรา แต่เนื่องจากเป็นวิธีที่ดีที่สุดสำหรับ Elementor ในการคงเครื่องมือที่เสถียร โดยเปิดให้ผู้ใช้จำนวนมากที่สุดเท่าที่เป็นไปได้
เราเชื่อมั่นอย่างยิ่งว่าการเปลี่ยนแปลงที่เรานำไปใช้นั้นมีส่วนสนับสนุนและจะสนับสนุนการเติบโตและความสำเร็จของ Elementor ต่อไป อย่างไรก็ตาม เราทราบด้วยว่ายังมีงานต้องทำ และการสื่อสารระหว่าง Elementor และชุมชน Elementor จะต้องเปิดกว้างและปรับปรุงให้ดียิ่งขึ้น ตัวอย่างเช่น เรากำลังอัปเกรดไซต์ทรัพยากรสำหรับนักพัฒนาของเรา โดยมีเอกสารประกอบที่ใช้งานง่ายเพื่อช่วยให้นักพัฒนาปรับแต่งและสร้าง Elementor ต่อได้
แต่บางทีขั้นตอนที่สำคัญที่สุดในการปรับปรุงการสื่อสารก็คือการสร้าง Elementor Community Hub ที่นี่ ผู้สร้างเว็บทั่วโลกสามารถรวมตัวกันเพื่อแลกเปลี่ยนความคิดเห็น และกับเรา – ทำงานร่วมกันเพื่อทำให้ Elementor ดีที่สุดเท่าที่จะทำได้ อย่างที่คนโบราณว่าไว้ แมวต้อนอาจแทบจะเป็นไปไม่ได้เลย แต่เมื่อพวกมันทำงานร่วมกันจะเรียกว่าความภาคภูมิใจ