34 คะแนน โดย GN⁺ 2025-03-13 | 8 ความคิดเห็น | แชร์ทาง WhatsApp
  • มี คำกล่าวอ้างที่เกินจริง เกี่ยวกับเครื่องมือเขียนโค้ด AI
    • คำกล่าวอ้างว่าสร้าง SaaS ได้ใน 3 วัน เทียบกับคำกล่าวอ้างว่าไร้ประโยชน์โดยสิ้นเชิง → ทั้งสองแบบมีโอกาสเป็นการพูดเกินจริง
  • Cursor เปลี่ยนวิธีการเขียนโค้ดไปอย่างสิ้นเชิง แต่ก็ยังมีปัญหาอยู่
  • อยากแบ่งปันประสบการณ์ที่ได้จากมุมมองแบบกังขาต่อเครื่องมือเขียนโค้ด AI

ตั้งค่า CursorRules

  • ถ้าไม่มีไฟล์ .cursorrules มีโอกาสสูงที่จะเสียเวลาเปล่า
    • ตอนนี้เปลี่ยนเป็นไฟล์ .mdc แล้ว → CMD + Shift + P → สร้างได้ด้วย New Cursor Rule
    • ใช้เวลาตั้งค่าประมาณ 10 นาที → ช่วยประหยัดเวลาได้หลายชั่วโมง
  • ตั้งกฎให้เหมาะกับเทคโนโลยีสแต็กของคุณ
    • เลือกกฎที่เหมาะที่สุดจาก รวม Cursor Rules
    • เริ่มจากกฎเท่าที่จำเป็นและค่อยๆ ขยายเพิ่ม → ถ้ามีกฎมากเกินไปอาจทำให้ประสิทธิภาพลดลง
  • ปัญหาที่เกิดซ้ำให้แก้ด้วยการเพิ่มลงในกฎ
    • ปัญหาที่เกิดซ้ำบ่อยให้เพิ่มเข้าไปในกฎเพื่อให้ AI แก้อัตโนมัติ
    • ตัวอย่าง: ปัญหา nullish coalescing (??) ใน JS → เพิ่มในกฎแล้วแก้ได้
  • เพิ่มข้อมูลโปรเจกต์และคำอธิบายโครงสร้างโค้ด
    • ระบุคำอธิบายโปรเจกต์และโครงสร้างโค้ดไว้ด้านบนของไฟล์
    • ถ้ามีโครงสร้างไฟล์หรือแนวทางการเขียนโค้ดเฉพาะ ก็ควรเขียนให้ชัดเจน

วิธีให้ได้ผลลัพธ์ที่ดีที่สุด

  • หัวใจสำคัญของการปรับปรุงคุณภาพผลลัพธ์คือ การให้คอนเท็กซ์
    • ถ้ามีฟังก์ชันที่จำเป็นหรือขั้นตอนที่คล้ายกัน ก็ควรบอก AI ไว้ล่วงหน้า
    • ไม่จำเป็นต้องบอกชื่อฟังก์ชันให้เป๊ะ → จุดประสงค์คือทำให้งานเขียนโค้ดง่ายขึ้น
  • ให้ตัวอย่างประกอบ
    • ให้คำใบ้แบบ "see @schedule.ts @utils.ts @ScheduleHeader.tsx"
    • เพื่อให้อ้างอิงโค้ดที่เขียนไว้ในลักษณะคล้ายกันได้
  • AI ถูกฝึกด้วยโค้ดแบบสุ่มจำนวนมาก
    • ถ้ามีข้อกำหนดเฉพาะของแต่ละโปรเจกต์ ต้องสื่อสารให้ชัดเจนจึงจะช่วยให้ประสิทธิภาพดีขึ้นได้

รวมทิปสั้นๆ

  • Composer (ตอนนี้เปลี่ยนชื่อเป็น Agent แล้ว) → เหมาะกับงานแก้ไขที่เรียบง่ายและมีผลกระทบน้อย
  • Chat (Ask) → เหมาะกับงานส่วนใหญ่อื่นๆ
    • ลงมือปรับใช้การเปลี่ยนแปลงเอง → จะช่วยให้เข้าใจและแก้โค้ดได้แม่นยำขึ้น
  • อย่าเชื่อโค้ดแบบไม่ลืมหูลืมตา
    • โค้ดที่ AI สร้างต้องตรวจทานและแก้ไข
  • รีแฟกเตอร์โค้ดแกนหลักด้วยมือตามระยะ
    • ค้นหาช่องโหว่ในโค้ดและแก้ไข → หลังจากนั้นคุณภาพโค้ดจาก AI ก็อาจดีขึ้นได้
  • ลองถามว่า "นี่เป็นวิธีที่ดีที่สุดหรือเปล่า?" หรือ "ได้พิจารณาวิธีอื่นแล้วหรือยัง?"
  • ควรแยกให้ออกว่าเมื่อไรการแก้เองด้วยมือจะดีกว่า
  • ต้องระวังเวลาแก้บั๊ก
    • นอกจากบั๊กเล็กน้อยแล้ว AI มักมีปัญหาในการแก้บั๊ก
    • มีโอกาสทำให้โค้ดเสียหายหนักกว่าเดิม
  • ถ้าเป็นงานสำคัญ ให้ชวน AI ถามกลับก่อน
    • ถามว่า "เข้าใจทั้งหมดแล้วหรือยัง?" ก่อนเริ่มเขียนโค้ด

บทสรุป

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

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

 
colus001 2025-03-14

กฎของ Cursor ขอแนะนำเว็บไซต์ https://cursor.directory/ ด้วย

 
kipsong133 2025-03-14

ฉันเห็นคำกล่าวบ่อยมากว่าการใช้ AI ทำให้นักพัฒนารุ่นจูเนียร์พัฒนาทักษะได้น้อยลง เลยคิดว่าถ้ามีบทความหรือข้อมูลที่เกี่ยวกับเรื่องนี้จริง ๆ ก็น่าจะน่าสนใจครับ
อ่านบทความดี ๆ เพลินมากครับ :)

 
tominam2 2025-03-16

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

 
kipsong133 2025-03-16

ผมก็เห็นด้วยครับ การท่องจำอินเทอร์เฟซของเฟรมเวิร์กไม่ใช่ทักษะการพัฒนาหรอกครับ

 
seoseonyu 2025-03-14

Cursor ดีทุกอย่างนะ... แต่สำหรับคนอย่างผมที่ทำงานบนหลายอุปกรณ์
ก็น่าเสียดายที่ไม่มีฟังก์ชันซิงก์การตั้งค่า

ได้ยินมาว่ามีวิธีแก้ขัดด้วยการทำ symbolic link ให้ Extension หรือไฟล์ตั้งค่าเอง
ซิงก์ผ่าน network drive
แต่พอใน VSCode แค่คลิกเดียวก็ซิงก์ได้อยู่แล้ว จะให้มาผ่านขั้นตอนแบบนั้นก็รู้สึกยุ่งยากเหมือนกัน

 
pcj9024 2025-03-13

ผมแทบไม่ได้ใช้เพราะไปแทนที่ Cmd+K ของ vscode เป็น Cmd+R แล้ว แต่เห็นทุกคนเล่ากันต่อเนื่องว่าประสิทธิภาพการทำงานดีขึ้นนะ เฮ้อ ควรย้ายไปใช้ดีไหม

 
bungker 2025-03-14

ย้ายจาก VS Code ที่ใช้มา 5 ปีแล้ว รู้สึกว่าดีครับ

 
GN⁺ 2025-03-13
ความคิดเห็นจาก Hacker News
  • ผู้นำด้านวิศวกรรมของบริษัทกำลังผลักดัน Cursor อย่างหนัก เหมาะกับการจัดการทิกเก็ตเล็ก ๆ และปรับปรุงผลิตภัณฑ์ แต่ไม่เหมาะกับงานหนัก

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

    • ปัญหาเหล่านี้กำลังปรากฏขึ้นเมื่อผู้ให้บริการ LLM พยายามขยายขีดความสามารถผ่านการประมวลผลเวลาให้เหตุผล
    • Cursor พยายามลดต้นทุนการให้เหตุผล โดยเฉพาะผ่านการตัดแต่งคอนเท็กซ์
    • หาก "แนบ" ไฟล์เข้าไปในบทสนทนา Cursor จะไม่ใส่โค้ดของไฟล์นั้นลงในพรอมป์ต์อีกต่อไป
    • แต่จะเรียกใช้ฟังก์ชันเพื่อเปิดไฟล์และอ่านโค้ดบางส่วน จนกว่าโมเดลจะรู้สึกว่าได้ข้อมูลเพียงพอ
    • แต่หากจำกัดการให้เหตุผลไว้แค่พรอมป์ต์เริ่มต้น โมเดลก็จะให้เหตุผลจากตัวพรอมป์ต์เองโดยไม่เข้าถึงไฟล์ที่แนบไว้
    • การเรียกใช้ฟังก์ชันเพื่อดึงคอนเท็กซ์เพิ่มหลังจากให้เหตุผลไปแล้ว ทำให้ความหมายของการ "คิด" แทบหมดไปโดยสิ้นเชิง
    • สิ่งนี้ทำให้โมเดลสร้างแผนที่ไม่สอดคล้องกันและการแก้ไขแบบคาดเดา ซึ่งอธิบายพฤติกรรมแก้เกินเหตุแปลก ๆ ของ Claude
    • Cursor มีแรงจูงใจเต็มที่ที่จะลดความพยายามในการให้เหตุผลของ o3-mini และ Claude 3.7 ให้ต่ำที่สุดเพื่อลดภาระฝั่งเซิร์ฟเวอร์
  • Cursor ถูกยกย่องว่าเป็นหนึ่งในเรื่องราวการเติบโตของ SaaS ที่ยิ่งใหญ่ที่สุด แต่โมเดลธุรกิจใช้งานไม่จำกัด $20/เดือน ทำให้พวกเขาตกอยู่ในสถานการณ์ที่ไม่ดี

  • ผู้ใช้ทุกคนควรพิจารณาภาษา/สแตกของตัวเอง มีความเป็นไปได้สูงว่า Cursor จะทำงานได้ไม่เท่ากันกับทุกภาษา

    • กำลังทำงานบน Next.js/Typescript/Solidity monorepo ที่มีหลายแอปและหลายแพ็กเกจ และมันจัดการได้เกือบทั้งหมด
    • ใช้มาประมาณหนึ่งเดือนแล้ว และคิดว่ายังน่าจะดึงประโยชน์จากมันได้อีกมาก
  • หลังใช้ Cursor มาหนึ่งเดือน พอมีวันหนึ่งอินเทอร์เน็ตล่ม ก็เริ่มตระหนักว่าตัวเองกำลังลืมวิธีเขียนโค้ดให้ดีอย่างถูกต้อง

  • UX ของเครื่องมือเหล่านี้ถูกจำกัดเป็นหลักด้วยความสามารถในการประกอบคอนเท็กซ์ทั้งหมดของงานที่ผู้ใช้กำลังพยายามทำ

    • เมื่อไม่นานมานี้ลองใช้ aider และเป็นประสบการณ์ที่น่าหงุดหงิดพอสมควร
    • มันเอาแต่ขอให้ "เพิ่ม" ไฟล์ในไดเรกทอรี แต่กลับเพิ่มเองไม่ได้
    • มีปัญหาอย่างเช่นไม่รู้จักการเปลี่ยนแปลงไฟล์แบบ manual และสร้าง commit ทั้งที่โค้ดพัง
    • ดูเหมือนว่าการให้ AI เห็นคอนเท็กซ์ทั้งหมดสำคัญกว่าคุณภาพของโมเดลเสียอีก
    • คอนเท็กซ์วินโดว์ขนาดใหญ่มีต้นทุนสูง ดังนั้นหลายเครื่องมือจึงพยายามประหยัดอยู่เสมอ
    • ในระยะยาว การไม่ประหยัดแบบนั้นกลับมีคุณค่ามากกว่า
    • การโหลดทั้งโปรเจกต์อาจมีค่าใช้จ่าย 2-3 ดอลลาร์ต่อคำถาม แต่ถ้าต้นทุนลดลง 20 เท่าก็คงไม่สนใจ
  • โมเดลขนาดใหญ่รองรับคอนเท็กซ์วินโดว์ขนาดมหาศาลระดับหลายล้าน/หลายสิบล้านโทเค็น มีต้นทุนใกล้เคียงราคารถยนต์คันเล็กและใช้พลังงานมาก

    • Nvidia ร่ำรวยจากมาร์จินสูงของ GPU เมื่อเวลาผ่านไปราคาก็น่าจะลดลง
    • มองโลกในแง่ว่าหลายอย่างจะดีขึ้นอย่างรวดเร็ว
  • Cursor มีประโยชน์กับการทำต้นแบบและพัฒนา MVP แต่เมื่อโค้ดเบสใหญ่ขึ้นจะเริ่มมีปัญหา

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

    • เป็น SaaS แบบปิดซอร์ส และคุณภาพบริการอาจผันผวนรายวัน
    • หาไม่เจอว่าจะป้องกันไม่ให้ส่งไฟล์ .env แบบ plain text ได้อย่างไร
  • อ่านคำแนะนำว่า "จงเรียนรู้ว่าเมื่อไรควรแก้ปัญหาด้วยตนเอง" แล้วรู้สึกอึ้ง

    • มันเหมือนคำแนะนำกลวง ๆ ที่บอกนักลงทุนว่า "ซื้อถูก ขายแพง"
  • ลองใช้ Cursor มาสองสามครั้ง แต่ก็มีคำบ่นเดิมเสมอ

    • ไม่เข้าใจว่าทำไมต้อง fork VS Code ทั้งที่ทำเป็นส่วนขยายแบบ Copilot ก็น่าจะได้
    • ส่วนขยาย VSCode บางตัวใช้ไม่ได้ ต้องตั้งค่าทุกอย่างใหม่ และต้องเพิ่ม workspace ใหม่
    • เมื่อเทียบกับ Copilot แล้ว ประโยชน์ที่ได้ไม่ได้มากนัก