ชื่อเรื่องเดิม: "Solidity Developer Survey 2021 Results》
การรวบรวมข้อความต้นฉบับ: Poplar
การรวบรวมข้อความต้นฉบับ: Poplar

นักพัฒนาซอฟต์แวร์ใช้ภาษา Solidity อะไร เราได้เห็นสิ่งนี้จากแบบสอบถามกว่า 400 แบบสอบถาม
นี่คือแบบสำรวจนักพัฒนา Solidity ขนาดใหญ่เชิงโครงสร้างประจำปีครั้งที่สองที่จัดทำโดยเจ้าหน้าที่ Solidity (สามารถคลิกรายงานการสำรวจปี 2020ที่นี่ที่นี่
ชื่อเรื่องรอง
สรุป
สรุป
ผู้ตอบแบบสอบถาม: มีนักพัฒนาทั้งหมด 435 รายจาก 73 ประเทศที่เข้าร่วมการสำรวจ ซึ่งเพิ่มขึ้นมากกว่า 100% เมื่อเทียบกับปี 2020 ประเทศและภูมิภาคที่ครอบคลุมจะเพิ่มขึ้นอย่างมากจาก 48 ในปี 2020 เป็น 73 ในปี 2021 ผู้ใช้มากกว่า 20% กล่าวว่าพวกเขาอาศัยอยู่ในสหรัฐอเมริกา ตามด้วยอินเดีย (9%) และเยอรมนี (4%) โดยประมาณ 9% เลือกที่จะไม่เปิดเผยรายละเอียดเกี่ยวกับตำแหน่งของตน
โปรไฟล์นักพัฒนาซอฟต์แวร์: ประสบการณ์การเขียนโปรแกรมในระดับปานกลางถึงระดับสูง ผู้ตอบแบบสอบถามส่วนใหญ่มีส่วนร่วมในการเขียนโปรแกรมระดับมืออาชีพเป็นเวลา 3 ปีขึ้นไป 36.6% เป็นเวลามากกว่า 6 ปีด้วยซ้ำ
ประสบการณ์ Solidity: มากกว่าครึ่งของผู้ตอบแบบสอบถามใช้ Solidity น้อยกว่าหนึ่งปี ขณะที่ 15.5% ใช้มานานกว่า 3 ปี และเกือบ 80% ใช้ Solidity ทุกวันหรือทุกสัปดาห์
ความเชี่ยวชาญด้าน Solidity: ผู้ตอบแบบสอบถามส่วนใหญ่คิดว่าตนเองเป็นผู้เชี่ยวชาญด้าน Solidity โดยมีการให้คะแนนความเชี่ยวชาญด้วยตนเองที่ 7 หรือสูงกว่า (เต็ม 10) 4.2% ให้คะแนนความเชี่ยวชาญของพวกเขาเป็น 10 80% ของผู้ตอบแบบสอบถามใช้ Solidity สำหรับโครงการส่วนตัวของพวกเขา ประมาณ 60% ใช้ในที่ทำงาน และมากกว่าครึ่งหนึ่งของเวลาที่พวกเขาใช้ Solidity ภายในเวลาไม่ถึงหนึ่งปี
ประสบการณ์ของนักพัฒนา: ส่วนใหญ่ (>70%) คิดว่าประสบการณ์ของนักพัฒนา Solidity ดีขึ้นในปีที่แล้ว โดยมีเพียง 1.6% ที่บอกว่าแย่ลง
ความถูกต้องของภาษา: 60% ของนักพัฒนาหวังว่า Solidity จะสามารถเพิ่มจุดตรวจมากขึ้น ลดข้อผิดพลาดที่เกิดจากแบบอย่างไม่เพียงพอ และปรับปรุงความแม่นยำของการพัฒนาสัญญาอัจฉริยะ 26% ต้องการรักษาสภาพที่เป็นอยู่
คุณลักษณะในอนาคต: เครื่องมือเพิ่มประสิทธิภาพที่มีประสิทธิภาพมากขึ้นและความสามารถในการตรวจจับข้อผิดพลาดที่กำหนดเองจะแสดงเป็นคุณลักษณะที่สำคัญที่สุดในอนาคตที่กำลังกล่าวถึง นอกจากนี้ การรองรับทศนิยม การจัดการอาร์เรย์ที่ดีขึ้น และการแก้ไขข้อผิดพลาดแบบเรียงซ้อนที่ลึกเกินไปคือคุณลักษณะบางอย่างที่ได้รับการคาดหวังมากที่สุด
ชุมชน: น้อยกว่าหนึ่งในสามของผู้ตอบแบบสอบถามเคยทำงานกับ Solidity language design
ชื่อเรื่องรอง
วัตถุสำรวจ
โปรดทราบว่าข้อเท็จจริงที่ว่าแบบสำรวจนี้จัดทำขึ้นเป็นภาษาอังกฤษเท่านั้นเป็นปัจจัยสำคัญที่ต้องพิจารณาเมื่อตีความผลลัพธ์เกี่ยวกับประเทศที่พำนักอาศัยและภาษาที่ต้องการ
อันดับแรก มาดูที่นักพัฒนาที่เข้าร่วมในแบบสำรวจนี้ เราจะให้รายละเอียดข้อมูลทั่วไป เช่น ตำแหน่งที่ตั้งและภาษา และดูรายละเอียดเพิ่มเติมเกี่ยวกับประสบการณ์ระดับมืออาชีพ การตั้งค่าโปรแกรม และอื่นๆ
จำนวนประเทศและเขตแดนก็เพิ่มขึ้นจาก 48 แห่งในปี 2020 เป็น 73 แห่งในปี 2021 ซึ่งดูเหมือนว่าจะเข้าถึงผู้ชมที่หลากหลายตามภูมิศาสตร์มากขึ้นด้วย

ชื่อเรื่องรอง
มากกว่า 20% กล่าวว่าพวกเขาอาศัยอยู่ในสหรัฐอเมริกา ตามมาด้วยอินเดีย (9%) และเยอรมนี (4%) โดยประมาณ 9% เลือกที่จะไม่เปิดเผยรายละเอียดของสถานที่ของตน

ชื่อเรื่องรอง
ภาษา
ผู้ตอบแบบสอบถามครอบคลุมหลากหลายภาษาในภาษาแม่ของพวกเขา โดยมีทั้งหมด 50 ภาษาที่กล่าวถึงเป็นภาษาแม่

ภาษาอังกฤษเป็นภาษาแม่ของผู้ตอบแบบสอบถาม 35% รองลงมาคือสเปน (9.4%) ฝรั่งเศส (5.9%) รัสเซีย (5.9%) โปรตุเกส (4.9%) และเยอรมัน (4.9%)

มากกว่า 80% ของผู้ตอบแบบสอบถามใช้ภาษาอังกฤษเป็นหลักในที่ทำงาน ผู้ตอบแบบสอบถามบางคนพูดภาษาสเปน (2.8%), ฝรั่งเศส (2.1%), รัสเซีย (1.6%) หรือโปรตุเกส (1.6%) ในที่ทำงาน

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

ปัจจุบัน 77.1% ของผู้ตอบแบบสอบถามมีงานทำ ประมาณ 10% เป็นนักศึกษา และ 12.5% ยังไม่ได้ทำงานเต็มเวลา

ผู้ตอบแบบสอบถามส่วนใหญ่ทำงานในด้านเทคโนโลยี (62.8%) และบริการทางการเงิน (15.5%) นอกจากนี้ การศึกษา สื่อ และเกมก็มีสัดส่วนค่อนข้างสูงเช่นกัน
ประมาณ 10% ยังใหม่ต่อการเขียนโปรแกรมและเพิ่งเขียนโปรแกรมอย่างมืออาชีพมาไม่ถึงหนึ่งปี อย่างไรก็ตาม เป็นที่น่าสังเกตว่าสัดส่วนของนักพัฒนาอาวุโสที่มีประสบการณ์การเขียนโปรแกรมมากกว่า 15 ปีก็มาถึงตัวเลขนี้เช่นกัน ประมาณ 30% ของผู้ตอบแบบสอบถามมีประสบการณ์ 3-5 ปีในการเขียนโปรแกรม ปีประสบการณ์ในการเขียนโปรแกรมของผู้ตอบแบบสอบถามที่เข้าร่วมในการสำรวจนี้โดยพื้นฐานแล้วจะนำเสนอการแจกแจงแบบปกติโดยรวม,

ระดับประสบการณ์ในการเขียนโปรแกรมอยู่ในระดับปานกลางถึงสูง ผู้ตอบแบบสอบถามส่วนใหญ่เขียนโปรแกรมอย่างมืออาชีพเป็นเวลา 3 ปีขึ้นไป และ 36.6% มีอายุเกิน 6 ปีด้วยซ้ำ
สิ่งที่น่าสนใจคือผู้ตอบแบบสอบถามส่วนใหญ่ (80.4%) ใช้ Solidity สำหรับโปรเจกต์ส่วนตัว ประมาณ 60% ใช้ Solidity ในที่ทำงาน และ 40% ใช้ภาษาโปรแกรมอื่นในการเขียนโค้ดเป็นหลัก

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

อย่างไรก็ตาม ประมาณ 30% ของผู้ตอบแบบสอบถามกล่าวว่าทำทุกวันหรือทุกสัปดาห์
การตั้งค่าภาษาโปรแกรม

ในแบบสำรวจ "ภาษาการเขียนโปรแกรมที่ชื่นชอบ" Python ประสบความสำเร็จในการเอาชนะ "การต่อต้านลูกค้า" ของ Solidity และได้รับความชื่นชอบจากผู้ตอบแบบสอบถาม 22.7% ตามมาด้วย Solidity (19.4%), JavaScript (14.5%), TypeScript (10.8%) และ สนิม (8.4%)

ระบบปฏิบัติการ
ระบบปฏิบัติการ
เช่นเดียวกับการสำรวจในปี 2020 macOS และ Linux ดูเหมือนจะได้รับความนิยมเท่าๆ กัน

ความแข็งแกร่ง - ประสบการณ์และความแข็งแกร่ง - โปรไฟล์นักพัฒนา
ประสบการณ์ Solidity และ Solidity Developer Profile
ผู้ตอบแบบสอบถามส่วนใหญ่คิดว่าตนเองเป็นผู้เชี่ยวชาญด้าน Solidity โดยให้คะแนนความเชี่ยวชาญด้วยตนเองที่ 7 หรือสูงกว่า (เต็ม 10)

4.2% ให้คะแนนความเชี่ยวชาญของพวกเขาเป็น 10 และประมาณ 23% ถือว่าเป็นผู้เริ่มต้นหรือผู้ใช้ที่ไม่บ่อยนักโดยมีความเชี่ยวชาญที่ประเมินด้วยตนเอง 4 หรือน้อยกว่า
เปอร์เซ็นต์ของผู้เริ่มต้นเพิ่มขึ้นเล็กน้อยเมื่อเทียบกับปีที่แล้ว โดยผู้ตอบแบบสอบถามมากกว่าครึ่งใช้ Solidity น้อยกว่าหนึ่งปี

15.5% ใช้ Solidity มานานกว่า 3 ปี จึงจัดได้ว่าเป็น Solidity รุ่นพี่
ความแข็งแกร่งยังคงดูเหมือนค่อนข้างง่ายที่จะเรียนรู้ โดย 26.7% ของผู้ตอบแบบสอบถามรู้สึกว่ามีประสิทธิผลในเวลาน้อยกว่าหนึ่งเดือน 30.7% ในเวลาน้อยกว่าครึ่งปี และ 7.7% ในเวลามากกว่าหนึ่งปี ต้องใช้เวลาในการทำความคุ้นเคยกับภาษา

ผู้คน 23.3% รู้สึกว่าตนเองยังไม่มีประสิทธิภาพ และมากกว่า 75% เป็นมือใหม่และใช้ Solidity มาไม่ถึง 6 เดือน
บทนำสู่ Solidity Developers

ผู้ตอบแบบสอบถามส่วนใหญ่ (ประมาณ 80%) ใช้ Solidity เป็นประจำทุกวันหรือทุกสัปดาห์ โดย 8% กล่าวว่าพวกเขา "ไม่ค่อย" หรือ "ไม่เคย" ใช้ Solidity โดยเกือบทั้งหมดทำงานเกี่ยวกับโค้ดในภาษาโปรแกรมอื่นเป็นหลัก ในจำนวนนี้ ส่วนใหญ่ กล่าวว่าพวกเขาใช้ Solidity มาไม่ถึง 3 เดือน
กว่า 50% ใช้ VSCode เป็นตัวแก้ไขในการเขียน Solidity ตามด้วย Visual Studio (14%) และ Remix (11%) 7% ของผู้ตอบแบบสอบถามใช้ Vim ตามด้วย IntelliJ (5.8%) และ Atom (3%) )

เมื่อเทียบกับปี 2020 IntelliJ, Atom, Vim และ Sublime จะถูกใช้น้อยลงในปี 2021
Hardhat กลายเป็นสภาพแวดล้อมการพัฒนาเฉพาะ Ethereum ที่ได้รับความนิยมสูงสุด ซึ่งมีผู้ตอบแบบสอบถามเกือบ 45% ใช้ Truffle และ Remix โดยแต่ละแห่งมีส่วนแบ่งผู้ใช้ประมาณ 17%
ส่วนแบ่งค่อนข้างน้อยของสภาพแวดล้อมการพัฒนาเฉพาะ Ethereum ได้แก่ Brownie (7.2%), Dapptools (5.6%), Scaffold-ETH (3.2%), Foundry/Forge (1.1%) และ Embark (0.5%)

เมื่อเทียบกับปี 2020 หุ้นของ Truffle (2020: 34.6% -> 2021: 17.9%) และ Remix (2020: 29.3% -> 2021: 17%) ลดลงอย่างมาก ในขณะที่ส่วนแบ่งของผู้เล่นหน้าใหม่ เช่น Hardhat, Brownie, Dapptools และ Foundry เพิ่มส่วนแบ่งผู้ใช้
เวอร์ชัน 0.8.x Solidity (86.3%) เป็นเวอร์ชันที่ใช้มากที่สุด ซีรีส์เวอร์ชัน 0.7.x (23%) และ 0.6.x (18.3%) ยังคงใช้งานอยู่ และเวอร์ชันเก่าแทบไม่มีการใช้งานอีกต่อไป
นี่เป็นการพัฒนาครั้งใหญ่จากปี 2020 เมื่อผู้ใช้ส่วนใหญ่ยังคงใช้ซีรีส์การเปิดตัว 0.6.x

โชคดีที่มีเพียงไม่กี่คนที่ยังคงใช้เวอร์ชันเก่าของซีรีส์ 0.4.x หรือ 0.5.xคำเตือน: อย่าลืมอัปเดตรหัสของคุณบ่อยๆ เพิ่มตั้งแต่ 0.4.x!
ประสบการณ์ผู้ใช้ที่แข็งแกร่ง
ประสบการณ์ผู้ใช้ที่มั่นคง

คนส่วนใหญ่ (มากกว่า 70%) คิดว่าประสบการณ์ของนักพัฒนา Solidity ดีขึ้นในปีที่ผ่านมา โดยมีเพียง 1.6% ที่บอกว่าแย่ลง

ปัญหาที่เกิดซ้ำ
คุณสมบัติ
คุณสมบัติ
งานในอนาคต
งานในอนาคต

เครื่องมือเพิ่มประสิทธิภาพที่มีประสิทธิภาพมากขึ้นและความสามารถในการตรวจจับข้อผิดพลาดที่กำหนดเองได้รับการระบุว่าเป็นคุณลักษณะที่สำคัญที่สุดในอนาคตที่กำลังกล่าวถึง
นอกจากนี้ การรองรับทศนิยม การจัดการอาร์เรย์ที่ดีขึ้น และการแก้ไขสแต็กที่ลึกเกินไปเป็นคุณสมบัติที่ได้รับการคาดหวังมากที่สุด
เราสังเกตเห็นว่าผู้ตอบแบบสอบถามใช้คำศัพท์ต่างๆ มากมาย เช่น "เลขทศนิยม" "เลขคณิตทศนิยม" "เลขทศนิยม" "เลขทศนิยม" "เลขคณิตทศนิยม" ซึ่งเราจัดอยู่ในประเภท "เลขแฟกชัน" และถือว่าทั้งหมดข้างต้นมีวัตถุประสงค์เพื่ออธิบาย "คณิตศาสตร์จุดคงที่" ในท้ายที่สุด
「floats」
คุณลักษณะที่คาดว่าจะได้รับการกล่าวถึงบ่อยที่สุดจะแสดงรายการตามลำดับจากมากไปน้อย:
การจัดการอาร์เรย์ที่ดีขึ้น/ความสามารถในการสร้างอาร์เรย์และการทำแผนที่มากขึ้น
แก้ไขกองลึกเกินไป
การเพิ่มประสิทธิภาพก๊าซ/การปรับปรุงเครื่องมือเพิ่มประสิทธิภาพ
การดีบักที่ดีขึ้น
รองรับสตริงได้ดีขึ้น
console.log()
การวัดปริมาณก๊าซที่ง่ายขึ้น/ดีขึ้นเมื่อสร้าง/พัฒนา
generics
ข้อผิดพลาดที่กำหนดเองสำหรับ need()
เอกสารประกอบที่ดีขึ้น (โดยเฉพาะเนื้อหาขั้นสูง เช่น การประกอบแบบอินไลน์, Yul เป็นต้น)
การสร้างรหัสผ่าน Yul
fixed point mat
ประเภทค่าที่กำหนดเอง
รายการโปรดและความกลัว
รายการโปรดและความกลัว
คุณลักษณะโปรดที่กล่าวถึงบ่อยที่สุดโดยเรียงจากมากไปน้อย:
เรียบง่าย
เรียบง่าย
ง่ายต่อการเรียนรู้
ภาษาเฉพาะโดเมน / เครื่องมือที่เหมาะสมสำหรับงาน / "ใช้งานได้"
SafeMath /over- & underflow ตรวจสอบตามค่าเริ่มต้น
ตัวดัดแปลง
แผนที่
ไวยากรณ์ที่สะอาด
อินเตอร์เฟซ
ประเภทคงที่
inheritance
อ่านง่าย
เครื่องมือที่ดี
โครงสร้าง
delegate call
require and assertions
การประกอบแบบอินไลน์
ข้อผิดพลาดที่กำหนดเอง
การจัดการหน่วยความจำ
libraries
เหตุการณ์
ABIEncoderV2
ความปลอดภัยของคอมไพเลอร์
ความชัดเจน
ความยืดหยุ่น
ความปลอดภัยของภาษา
เชิงวัตถุ
เชิงวัตถุ
คำหลักที่มีการร้องเรียนมากที่สุดคือการดีบัก การเรียงซ้อนข้อผิดพลาดที่ลึกเกินไป และขาดการสนับสนุนทศนิยม
เรียงตามลำดับความถี่ของการร้องเรียนจากมากไปหาน้อย:
การดีบัก
กองลึกเกินไป
ไม่มีจุดลอยตัว/จุดคงที่
การประกอบแบบอินไลน์
ข้อความแสดงข้อผิดพลาดคลุมเครือ/ทั่วไป (เปลี่ยนกลับ)
อาร์เรย์
สตริง
ทำลายการเปลี่ยนแปลงในเวอร์ชันย่อย/ไม่มีความเข้ากันได้
ความปลอดภัย
ค่าน้ำมัน/ค่าติดตั้ง
inheritance
ทดสอบ
ทดสอบ
การเพิ่มประสิทธิภาพก๊าซ
ตัวดัดแปลง
แหล่งข้อมูล/บทช่วยสอนที่ล้าสมัยในแหล่งข้อมูลชุมชน
returns
ซับซ้อนมากขึ้นเรื่อยๆ
การแปลงอย่างชัดเจน
ขาดเอกสารเกี่ยวกับการประกอบแบบอินไลน์/yul
ไม่มี console.log
การจัดสรรหน่วยความจำ
reentrancy
ไม่มีไลบรารี่มาตรฐาน
เข้มงวด
เข้มงวด

ความเป็นปึกแผ่น-ชุมชน
การออกแบบภาษา
การออกแบบภาษา
ผู้ตอบแบบสอบถามน้อยกว่า 20% เคยทำงานเกี่ยวกับการออกแบบภาษา Solidity, 6.2% เข้าร่วมในการอภิปรายในฟอรัม Solidity, 5.1% เข้าร่วมในการโทรออกแบบภาษา และ 6.4% เปิดหรือสนับสนุนปัญหา Github ในที่เก็บ Solidity

รับทราบข้อมูล
รับทราบข้อมูล

ปฏิสัมพันธ์กับนักพัฒนา -solidity- อื่น ๆ
ปฏิสัมพันธ์กับนักพัฒนา Solidity รายอื่น
ผู้ตอบแบบสอบถามมากกว่าครึ่งมีปฏิสัมพันธ์กับนักพัฒนา Solidity รายอื่น และที่น่าสนใจคือเกือบ 45% กล่าวว่าพวกเขาแทบไม่หรือไม่เคยติดต่อกับนักพัฒนา Solidity รายอื่นเลย

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



