3 คะแนน โดย GN⁺ 2023-11-28 | 1 ความคิดเห็น | แชร์ทาง WhatsApp

ผลงานและแผนในอนาคตของตัวจัดรูปแบบโค้ด Prettier

  • Prettier เป็นตัวจัดรูปแบบโค้ดสำหรับ JavaScript ที่จัดการสไตล์การเขียนโค้ดที่หลากหลายได้อย่างละเอียด และได้รับการนำไปใช้อย่างกว้างขวาง
  • เมื่อการทำงานเกี่ยวกับตัวดำเนินการ ternary เสร็จสมบูรณ์ Prettier จะเข้าสู่สถานะที่เสถียร และหลังจากนั้นจะมุ่งเน้นไปที่การปรับปรุงประสิทธิภาพ
  • ตลอดมานั้น Prettier มีความเร็วที่ดีเพียงพออยู่แล้ว แต่การขาดคู่แข่งทำให้ไม่มีแรงจูงใจมากนักในการเร่งพัฒนาด้านประสิทธิภาพ

การแข่งขันและเงินรางวัลเพื่อการปรับปรุงประสิทธิภาพ

  • ทีม Prettier ประกาศว่าจะมอบรางวัล 10,000 ดอลลาร์ หากมีโปรเจ็กต์ที่เขียนด้วย Rust ผ่าน 95% ของชุดทดสอบของ Prettier ได้
  • Guillermo Rauch ซีอีโอของ Vercel และ napi.rs ได้ร่วมเพิ่มเงินสนับสนุน ทำให้เงินรางวัลรวมเพิ่มเป็น 22,500 ดอลลาร์
  • โปรเจ็กต์ Biome เป็นผู้คว้าเงินรางวัลไปได้ โดยมีหลายคนร่วมมือกันปรับปรุงความเข้ากันได้ภายในเวลาเพียง 3 สัปดาห์

การเสริมความสามารถในการแข่งขันของ Prettier

  • โปรเจ็กต์ Biome มอบการใช้งานที่เร็วกว่าอย่างมากพร้อมความเข้ากันได้กับ Prettier จึงกลายเป็นแรงท้าทายให้ Prettier ต้องปรับปรุงประสิทธิภาพ
  • Fabio Spampinato ค้นพบความไม่มีประสิทธิภาพจำนวนมากใน CLI ของ Prettier และมีแผนจะแก้ไขภายในสิ้นปี
  • โปรเจ็กต์ Biome ยังช่วยค้นพบบั๊กและการตัดสินใจที่น่ากังขาบางอย่างของ Prettier ซึ่งเปิดโอกาสให้ Prettier ปรับปรุงได้ต่อไป

เงินบริจาคที่สนับสนุน Prettier

  • Prettier ประสบความสำเร็จอย่างต่อเนื่องจากการได้รับเงินบริจาคจากทั้งบริษัทและบุคคลหลากหลายราย
  • บริษัทอย่าง Indeed, Frontend Masters, Sentry, Salesforce, Airbnb, Cybozu และบุคคลอย่าง Shintaro Kaneko, Suhail Doshi ได้บริจาคเงินจำนวนมาก
  • ด้วยเงินบริจาคเหล่านี้ ตลอด 2 ปีที่ผ่านมา Prettier สามารถจ่ายเงินเดือนละ 1.5k ดอลลาร์ เพื่อให้ Fisker Cheung และ Sosuke Suzuki พัฒนา Prettier ต่อไปได้
  • ด้วยงบประมาณปัจจุบัน โครงการจะดำเนินต่อไปได้อีก 8 เดือน และกำลังขอรับเงินบริจาคเพิ่มเติม

ความเห็นของ GN⁺

  • Prettier มีบทบาทสำคัญในด้านการจัดรูปแบบโค้ด และความพยายามในการยกระดับประสบการณ์ของนักพัฒนาผ่านการแข่งขันด้านประสิทธิภาพครั้งนี้โดดเด่นอย่างมาก
  • ความสำเร็จของโปรเจ็กต์ Biome แสดงให้เห็นว่าความร่วมมือและการแข่งขันในระบบนิเวศโอเพนซอร์สสามารถนำไปสู่การเปลี่ยนแปลงเชิงบวกได้อย่างไร
  • บทความนี้เป็นกรณีศึกษาที่น่าสนใจเกี่ยวกับวิธีที่ความร่วมมือและการแข่งขันในชุมชนเทคนิคช่วยส่งเสริมการพัฒนาร่วมกัน

1 ความคิดเห็น

 
GN⁺ 2023-11-28
ความเห็นจาก Hacker News
  • คุณอาจสงสัยว่าทำไมทีม Prettier ถึงให้เงินสนับสนุนโครงการอื่น! ในความเป็นจริง Prettier ครองตำแหน่งผู้นำในฐานะตัวจัดรูปแบบโค้ด JavaScript และการขาดคู่แข่งก็ทำให้แรงจูงใจในการปรับปรุงประสิทธิภาพหรือแก้ปัญหา edge case ต่าง ๆ มีไม่มากนัก

    • มีคำถามว่าทำไมทีม Prettier จึงสนับสนุนโครงการอื่น โดยชี้ว่าแม้ Prettier จะครองสถานะกึ่งผูกขาดในฐานะตัวจัดรูปแบบโค้ด JavaScript แต่การไม่มีคู่แข่งทำให้มีแรงจูงใจน้อยในการเพิ่มประสิทธิภาพหรือแก้ไขกรณีพิเศษต่าง ๆ
  • หลายคนไม่ยอมรับประเด็นนั้นและกำลังอธิบายเหตุผลไว้ในคอมเมนต์:

    • นั่นหมายความว่าโครงการ Biome พบทั้งบั๊กจำนวนมากและการตัดสินใจที่น่ากังขาหลายอย่างของ Prettier จากการทำให้ผ่านการทดสอบทั้งหมด และอาจสามารถปรับปรุงสิ่งเหล่านั้นได้
  • ตื่นเต้นกับเรื่องนี้มาก

    • ชื่นชมที่ทีม Biome ทำความเข้ากันได้กับ Prettier ได้ถึง 95% อย่างรวดเร็ว คาดหวังการเพิ่มความเร็วสูงสุดจากการฟอร์แมต JavaScript ด้วย Rust และมองว่าเป็นแนวโน้มเดียวกับ ruff ซึ่งเป็นตัวจัดรูปแบบสำหรับ Python โดย Wasmer ได้ตั้งเงินรางวัล $2,500 เพื่อคอมไพล์ Biome เป็น WASIX และหวังว่าอีกไม่นาน Biome จะรันบน Wasmer ได้
  • ความเร็วเป็นสิ่งที่ยินดีต้อนรับเสมอ แต่ฉันอยากให้ Prettier มีความยืดหยุ่นน้อยลงแบบยึดความคิดตัวเองเป็นศูนย์กลาง

    • รู้สึกว่า Prettier ยึดแนวทางของตัวเองมากเกินไปในการจัดรูปแบบโค้ด และไม่พอใจเป็นพิเศษที่มันไม่สามารถรักษารูปแบบของตัวเองไว้ได้ในเรื่องความยาวบรรทัด อีกทั้งมองว่าโค้ดที่ฟอร์แมตด้วย Prettier อ่านง่ายน้อยกว่าตัวจัดรูปแบบโค้ดอื่น
  • ฉันยังคงหงุดหงิดที่ eslint plugin ทั้งหมดของฉันถอดเอา linter ที่ใช้งานได้ดีอยู่แล้วออกไปเพื่อ Prettier

    • รู้สึกว่า Prettier บังคับมากเกินไปและเข้าใจได้ยาก และมองว่ามันเป็นอีกเครื่องมือหนึ่งที่ไม่ได้ร้องขอ
  • นี่หมายความว่าตอนนี้เราสามารถโฟกัสกับแง่มุมสำคัญถัดไปได้แล้ว: ประสิทธิภาพ Prettier เองไม่ได้เร็วมาก แต่ก็เร็วพอสำหรับกรณีการใช้งานส่วนใหญ่ เรื่องนี้ทำให้เรารู้สึกไม่พอใจมาโดยตลอด ดังนั้นเราจึงอยากทำอะไรบางอย่างกับมัน และไม่มีวิธีไหนดีกว่าการแข่งขันแบบเป็นมิตร

    • ต้องการแก้ความไม่พอใจเรื่องประสิทธิภาพของ Prettier จึงตั้งเงินรางวัล $10k ให้โครงการที่เขียนด้วย Rust โดยมีเป้าหมายให้ผ่าน 95% ของชุดทดสอบของ Prettier
  • แม้การพอร์ตไป Rust จะเป็นกระแส แต่การเพิ่มความเร็วน่าจะเห็นได้ชัด เพราะ Prettier ถูกเรียกใช้งานทุกครั้งที่บันทึกไฟล์ ฉันจะลอง Biome เร็ว ๆ นี้ ยินดีกับทีม Biome ด้วย!

    • การพอร์ตไป Rust กำลังเป็นกระแส และคาดว่าความเร็วของ Prettier จะดีขึ้นอย่างมากเพราะมันทำงานทุกครั้งที่เซฟไฟล์ เป็นปฏิกิริยาเชิงบวกต่อโครงการ Biome
  • มี benchmark ของ Biome อยู่ที่ไหน? มันให้ประสิทธิภาพดีกว่า Prettier มากแค่ไหนกันแน่?

    • มีคำถามเกี่ยวกับ benchmark ด้านประสิทธิภาพของ Biome และสงสัยว่ามันดีกว่า Prettier มากเพียงใด
  • บทความนี้บอกว่าพวกเขาทำเรื่องนี้เพื่อสร้างแรงจูงใจให้ตัวเองพัฒนาเวอร์ชัน JavaScript งั้นหรือ?

    • มีข้อสงสัยเกี่ยวกับการเริ่มโครงการใหม่เพื่อใช้เป็นแรงจูงใจในการปรับปรุงเวอร์ชัน JavaScript
  • งั้นนี่ไม่ใช่การแทนที่ implementation หลักใช่ไหม? พวกเขาแค่ให้เงินสนับสนุนโครงการใหม่ที่เข้ากันได้และเขียนด้วย Rust เท่านั้นหรือ?

    • มีคำถามว่านี่ไม่ใช่การแทนที่ implementation หลัก แต่เป็นเพียงการสนับสนุนโครงการใหม่ที่เข้ากันได้และเขียนด้วย Rust ใช่หรือไม่