EST. 2026 — บันทึกงานเซิร์ฟเวอร์จริง SYSADMIN · SECURITY · AI · DIRECTADMIN เล่มที่ 01
THE SYSADMIN ALMANAC
หน้าหลัก / AI / สั่ง Claude สร้างโรงเหล็กทั้งหลังใน SketchUp แล้วคำนวณ FEA ลงสี heatmap
AI — ขับ SketchUp ด้วย Claude Code [3]

สั่ง Claude สร้างโรงเหล็กทั้งหลังใน SketchUp แล้วคำนวณ FEA ลงสี heatmap

โดย Ton-Or ·5 มิ.ย. 2026·อ่าน 12 นาที
สั่ง Claude สร้างโรงเหล็กทั้งหลังใน SketchUp แล้วคำนวณ FEA ลงสี heatmap

สองตอนก่อนเราเตรียมเครื่องกับเชื่อม MCP ไว้แล้ว ตอนนี้ถึงของจริง — ผมสั่งครั้งเดียวให้ Claude ปั้นโรงเหล็กทั้งหลังใน SketchUp ไล่ทีละชั้น แล้วส่งโครงไปคำนวณกำลังด้วย FEA จบด้วยการทาสีสมาชิกตามแรงที่มันรับจริง

สรุปใน 1 นาที

อาการ/ปัญหา
ต้องการโรงเหล็กทั้งหลังใน SketchUp พร้อมผลคำนวณกำลัง โดยไม่ปั้นเอง
ใครควรอ่าน
คนอยากสั่ง Claude สร้างโครงเหล็กแล้วตรวจกำลังด้วย FEA
ทางแก้แบบสั้น
สั่ง Claude สร้างโรงไล่ทีละชั้นจากเสาปูนถึงกระเบื้อง ส่งโครงคำนวณด้วย PyNite แล้วลงสีสมาชิกเป็น heatmap ตามแรงจริง
ข้ามไปขั้นตอน

ตอนที่ 1 เราเตรียมเครื่อง ลง PyNite (อ่านย้อน) ตอนที่ 2 เชื่อม MCP plugin ให้ Claude สั่ง SketchUp ได้ (อ่านย้อน) ตอนนี้คือของจริง — ผมสั่ง Claude สร้างโรงเหล็กทั้งหลังใน SketchUp แล้วส่งไปคำนวณกำลังด้วย FEA ลงสี heatmap ตามแรงจริง

โจทย์ที่ผมอยากได้คือ โรงเหล็กหลังคาเพิงหมาแหงน (mono-slope) ฐาน 7.5 × 5.3 เมตร ลาดตามแกนยาวราว 10.3 องศา โครงเหล็กกล่อง เสาปูนสำเร็จ หลังคากระเบื้องลอนคู่ ทั้งหมดนี้ผมไม่ได้ลากเส้นเองสักเส้นเดียว สั่งด้วย prompt เดียวแล้วปล่อยให้ Claude ไล่ทำเองจนจบ

ลำดับสมาชิก (load path) ที่วางไว้ตั้งแต่ต้น

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

load pathกระเบื้อง->แป->ตง->คานรับตง->เสาค้ำ->ring beam->เสาปูน->ฐานราก

แต่ละชั้นวางซ้อนบนชั้นล่าง เหล็กซ้อนเหล็กจริงตามที่ช่างประกอบ และผมบังคับให้อ้างมุมนอก (ผิวนอก) ทุกจุด ไม่ใช่อ้างเส้นกริดที่ศูนย์กลางสมาชิก จุดนี้สำคัญ เพราะถ้าอ้างผิดที bound จะเกินไป 1 ความหนาทุกรอยต่อ พอซ้อนกัน 7 ชั้นมันเพี้ยนสะสม

กระเบื้อง บนแปตง บนคานรับตงring beam และเสาค้ำลาดราว 10.3 องศาX = 0 ฝั่งต่ำ (หลัง)เสาปูน สูง 2000เสาค้ำ สูง 300X = 3750เสาปูน สูง 2000เสาค้ำ สูง 975X = 7500 ฝั่งสูง (หน้า)เสาปูน สูง 2000เสาค้ำ สูง 1650
ภาพด้านข้างแบบย่อ ไม่ตามสัดส่วนจริง เสาปูนสูง 2000 เท่ากันทั้งสามแนว ความสูงเสาค้ำที่ไล่จาก 300 ไป 975 และ 1650 คือสิ่งที่ทำให้เกิดมุมลาด

สั่งงานยังไง (transport)

พอ MCP เชื่อมแล้ว Claude สั่งผ่าน tool eval_ruby คือรัน Ruby ตรงเข้า SketchUp เลย เคล็ดที่ผมใช้คือไม่ส่งสคริปต์ยาวๆ เข้าทาง command line ตรงๆ แต่เก็บแต่ละขั้นเป็นไฟล์ .rb แยก แล้วสั่งให้รันด้วย

eval(File.read('/home/<user>/sketchup/step3_posts.rb'))

ทำแบบนี้เลี่ยงปัญหา escape ภาษาไทยกับเครื่องหมาย quote บน command line ได้หมด แล้วยังได้ค่า return บรรทัดสุดท้ายกลับมาเป็น status ให้ Claude อ่านยืนยันก่อนไปต่อด้วย

หัวใจของ workflow คือ build 1 eval แล้ว render อีก 1 eval แยกกันเสมอ เสร็จแต่ละชั้นให้มันอ่านรูปยืนยันก่อนไปต่อ ผมสั่งครั้งเดียวด้วย prompt เดียว แล้วให้มันไล่ทำเองทีละชั้นจนจบ FEA

ทำไมต้องแยก eval build กับ render

ถ้าตั้ง camera, view.write_image หรือ zoom_extents ใน eval เดียวกับที่ build geometry มันจะ deadlock UI thread แล้ว SketchUp ค้างต้องรีสตาร์ท ต้องสร้างเสร็จก่อน แล้วค่อยสั่ง render เป็นอีกรอบหนึ่ง — กฎข้อนี้ผมเสียเวลารีสตาร์ทไปหลายรอบกว่าจะจำ

นี่คือ prompt ที่ผมสั่งจริง ผมเขียนเป็นสเปกเต็มทีเดียวให้มันไล่เอง

load memory ทั้งหมด แล้วใช้ skill thai-building-framing + sketchup-drafting
(ขับ SketchUp ผ่าน MCP server; render แยก eval เสมอกัน hang)

งาน: สร้าง "โรงเหล็กหลังคาเพิงหมาแหงน" ใน SketchUp จากรูปอ้างอิง แล้วปิดท้ายด้วย
การคำนวณโครงสร้างเบื้องต้น (FEA) + ลงสี heatmap ตามแรงบนสมาชิกจริง
รูปอ้างอิง: /home/<user>/sketchup/pic/ref-shed.jpg

=== กติกาการทำงาน (สำคัญ) ===
- ทำต่อเนื่องทุกขั้น "ไม่ต้องหยุดรอ confirm" — ไล่ตั้งแต่ขั้น 1 จนจบ FEA เอง
- แต่ละขั้น: เขียนสคริปต์ .rb แยกต่อชั้น (idempotent: ลบ prefix กลุ่มตัวเองก่อนสร้าง),
  ตัวแปรพิมพ์เล็กทั้งหมด, build 1 eval แล้ว render อีก 1 eval (แยกกัน), อ่านรูปยืนยันสั้นๆ
  ก่อนไปขั้นถัดไป
- ก่อนขั้น 1 ให้ลบ top-level ทั้งหมด (Group/Component/Text/Dimension) เริ่มจากโมเดลว่าง
- อ้างมุมนอก (finishing) ทุกจุด

=== สเปกรวม ===
ฐาน 7.5 × 5.3 ม. slope ตามแกนยาว 7.5 — ต่ำที่ X=0 (หลัง) สูงที่ X=7500 (หน้า),
ความชัน ~10.3° (เก็บตามนี้ เป็น design choice ไม่ต้องอิง 15°)

ขั้น 1) เสาปูน 6 ต้น 150×150 สูง 2000 ที่ X=0/3750/7500 × Y=0/5300
ขั้น 2) ring beam 6×3 (150×75) กรอบชนมุมบนหัวเสา (หน้า/หลังเต็มเส้นแนว X, ซ้าย/กลาง/ขวาชนระหว่างแนว Y)
ขั้น 3) เสาค้ำตั้ง 6×3 จำนวน 9 ต้น = 3 แนว X × 3 แถว Y(0/2650/5300) สูง 300/975/1650
        (ฝั่งต่ำ X=0 = 30 ซม. = คานคู่, กลาง interpolate) นั่งบนหลังคาน
ขั้น 4) คานรับตง 6×3 แนว Y วางบนหัวเสาค้ำทั้ง 3 แนว เต็มลึก 5300
ขั้น 5) ตง 4×2 (100×50) แนว X พาดสัมผัสบนคานรับ (เชื่อมไม่บาก) 5 เส้น
        ยื่นหน้า(สูง) 1.0 ม. / หลัง(ต่ำ) 0.3 ม. — เส้นท้องตงผ่านมุมในของคานรับฝั่งสูง (run = ww−bw)
ขั้น 6) แป ตัว C 100×50×20 t2.3 แนว Y เอียงตั้งฉากลาด ~10 ตัว gauge~962 (ซ้อนหัว 238)
        ตัวแรกชิดปลายตงหน้า, ยื่นรับชายข้างละ 25 ซม.(½กระเบื้อง), ท้องแปนั่งผิวบนตงจริง rd/2÷cosθ
ขั้น 7) กระเบื้องลอนคู่ (component .skp ในโฟลเดอร์ pic) ลอนลงลาด คลุมพ้นโครง 10–15 ซม.ทุกขอบ scale ลงตัว

=== ปิดงาน: คำนวณโครงสร้างเบื้องต้น + ลงสี ===
ค้นยืนยันค่ามาตรฐานวิศวกรรมไทยจากเว็บก่อน แล้วใช้:
  เหล็ก SS400/กล่อง STKR400 fy=245 MPa, E=200,000 (มอก.1227/107) |
  ASD Fb=0.6fy=147 MPa (วสท.) | live load หลังคา 30 kg/m² (กฎกระทรวง ฉบับที่ 6 พ.ศ.2527) |
  กระเบื้องลอนคู่ dead 15 kg/m² | deflection limit L/240 | เสาปูน fc'=23.5 MPa
- เขียน FEA ด้วย PyNite (env ml313 python), หน่วย N-mm-MPa, แกนตั้ง=Y
- load path: กระเบื้อง→แป→ตง→คานรับตง→เสาค้ำ→ring beam→เสาปูน, ฐานเสา fixed,
  combo บริการ 1.0DL+1.0LL, น้ำหนักตัวเอง self-weight
- คำนวณ utilization (σ/0.6fy), deflection vs L/240, buckling, reaction ทุกฐานเสา (kg)
- เขียน member_colors.json (ชื่อกลุ่ม→[r,g,b] เขียว→เหลือง→แดง) แล้วเขียน Ruby อ่านไฟล์
  ลงสี heatmap บนสมาชิกจริงใน SketchUp (ตามชื่อกลุ่ม col_/ringX_/ringY_/post_/topbeam_/tong_/pae_),
  ซ่อนกระเบื้อง, render แยก eval
- สรุปผล: จุดวิกฤต (stress/deflection/buckling), reaction เสา, คำตัดสิน OK/ไม่
- ระบุขอบเขตชัดเจน: ประเมินเบื้องต้น/เพื่อการศึกษา ต้องให้วิศวกรมีใบอนุญาตรับรอง,
  ยังไม่รวมแรงลม/แผ่นดินไหว

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

ทีละชั้นที่ออกมา

ผมจะไล่ให้ดูว่าแต่ละขั้นมันสร้างอะไร และจุดที่ต้องระวังของแต่ละชั้นคืออะไร ภาพ 3D ของแต่ละชั้นกับคลิปตอน Claude build อยู่ในหน้าคู่มือฉบับเต็ม (ลิงก์ท้ายบทความ) ตรงนี้ผมเล่าเป็นข้อความให้เห็นภาพ

ขั้น 1 — เสาปูนสำเร็จ 6 ต้น

เสา 150×150 สูง 2000 มม. วางที่ X = 0 / 3750 / 7500 ตัดกับ Y = 0 / 5300 รวม 6 ต้น เริ่มจากโมเดลว่างก่อนเสมอ ลบ top-level ทุกตัวทิ้ง เสามุมกับเสาริมอ้างผิวนอก เสากลาง X=3750 อยู่กึ่งกลางพอดี นี่คือฐานของทุกอย่าง วางผิดที่นี่ผิดทั้งหลัง

ขั้น 2 — ring beam 6×3 บนหัวเสา

คานกรอบรอบ (150×75) นั่งบนหัวเสาแบบ GAP0 คือชนสนิทไม่มีช่อง คานแนว X (หน้า/หลัง) ยาวเต็มเส้น ส่วนคานแนว Y บากเข้าชนระหว่างคานหน้ากับคานหลัง รอยต่อชนกันที่มุมนอกทุกจุด ได้กรอบแข็งวางอยู่บนหัวเสาปูน

ขั้น 3 — เสาค้ำตั้ง 9 ต้น (กริด 3×3)

นี่คือชั้นที่สร้างความลาด เสาค้ำเหล็กกล่อง 6×3 จำนวน 9 ต้น เป็น 3 แนว X × 3 แถว Y (0 / 2650 / 5300) ความสูงไล่ระดับตามลาด ฝั่งต่ำ X=0 สูง 30 ซม. (ทำเป็นคานคู่) แถวกลาง interpolate ฝั่งสูง X=7500 สูง 165 ซม. นั่งบนหลังคาน ring beam ความต่างของความสูงสองฝั่งนี่แหละที่ทำให้เกิดมุมลาด ~10.3°

ขั้น 4 — คานรับตง 6×3 แนว Y

คานวางบนหัวเสาค้ำทั้ง 3 แนว เต็มความลึก 5300 ตั้งฉากกับตงที่จะมาวางทับด้านบน เป็นตัวกระจายน้ำหนักจากตงลงเสาค้ำ

ขั้น 5 — ตง 4×2 แนว X (จุดที่ยากที่สุด)

ตง 100×50 พาดแนว X 5 เส้น ยื่นหน้า (ฝั่งสูง) 1000 มม. ยื่นหลัง (ฝั่งต่ำ) 300 มม. จุดนี้คือหัวใจ เพราะมันเป็นงานเหล็กเชื่อม ไม่ใช่งานไม้ที่บากเข้าหากันได้

ตงเชื่อม ไม่บาก

เส้นท้องตงต้องผ่าน "มุมบน-downhill" ของคานรับทุกตัว ฝั่งต่ำแตะขอบนอก ฝั่งสูงแตะขอบใน ตงพาดสัมผัสบนผิวคานแล้วเชื่อมติด ไม่มีการบากเข้าเนื้อ เพราะเหล็กกล่องบากแล้วเสียกำลัง — ต่างจากตงไม้ที่เข้าปากไม้ได้ จุดนี้ถ้าให้ AI เดาเองมันมักทำเป็นแบบงานไม้

ขั้น 6 — แป เหล็กตัว C

แป C 100×50×20 t2.3 แนว Y เอียงตั้งฉากกับลาด ราว 10 ตัว ระยะ gauge ~962 มม. (ซ้อนหัว 238) จุดที่ผมเน้นคือต้องเป็น C-channel จริง มี web บวก flange 2 ตัว บวก lip 2 ตัว ไม่ใช่กล่องตันที่วาดง่ายๆ ท้องแปต้องนั่งบนผิวบนของตงจริง ตัวแรกชิดปลายตงหน้า ยื่นรับชายข้างละ 25 ซม. (ครึ่งแผ่นกระเบื้อง)

ขั้น 7 — กระเบื้องลอนคู่

โหลด component กระเบื้องจริง (.skp) มาวาง ลอนลงลาดตามทิศน้ำไหล scale ให้จำนวนแผ่นลงตัวพอดี คลุมพ้นโครงราว 13 ซม. ทุกขอบ พอชั้นนี้เสร็จโรงเหล็กก็ครบทั้งหลัง

คำนวณโครงสร้างเบื้องต้น (FEA) + ลงสี heatmap

พอได้ geometry ครบทุกชั้น ผมส่งโครงไปคำนวณใน PyNite หน่วย N-mm-MPa แกนตั้งเป็น Y แล้วส่งค่าสีกลับมาทาบนสมาชิกจริงตามแรงที่มันรับ นี่คือ prompt ปิดงาน

คำนวณโครงสร้างเบื้องต้นด้วย PyNite (env ml313): มาตรฐานไทย เหล็ก SS400/STKR400 fy=245,
ASD Fb=0.6fy=147, live load หลังคา 30 กก./ตร.ม. (กฎกระทรวง ฉบับ 6/2527),
กระเบื้อง dead 15 กก./ตร.ม., deflection L/240, ฐานเสา fixed, combo 1.0DL+1.0LL + self-weight
— หา utilization/deflection/buckling/reaction ทุกฐานเสา แล้วเขียน member_colors.json
ให้ Ruby อ่านมาลงสี heatmap (เขียว→เหลือง→แดง), ซ่อนกระเบื้อง, render แยก eval

วิธีคิดคือ Claude แปลง geometry ในโมเดลเป็นโครงข่าย node/member ของ PyNite ใส่ load ตาม load path ที่วางไว้ (กระเบื้องลงแป ลงตง ลงคานรับ ลงเสาค้ำ ลง ring beam ลงเสาปูน) ฐานเสา fixed แล้วรัน combo บริการ 1.0DL + 1.0LL บวกน้ำหนักตัวเอง จากนั้นมันเขียน member_colors.json แมพชื่อกลุ่มเป็นสี RGB ไล่เขียว–เหลือง–แดงตาม utilization แล้วเขียน Ruby อ่านไฟล์นั้นกลับมาทาสีสมาชิกใน SketchUp ตามชื่อกลุ่ม (col_ / ringX_ / ringY_ / post_ / topbeam_ / tong_ / pae_)

analyze loopSketchUpgeometry->PyNiteFEA->member_colors.json->Rubyทาสี->heatmap

ผลที่ได้ (combo บริการ 1.0DL + 1.0LL + น้ำหนักตัวเอง)

0.36utilization สูงสุด
5.66 มม.โก่งตัวสูงสุด
811 กก.reaction เสากลางสูงสุด
3,884 กก.รวมลงดินทั้งหมด
  • utilization สูงสุด 0.36 (เกิดที่เสาค้ำกลางกับตง) ยังเหลือกำลังอีกเยอะ
  • โก่งตัวสูงสุด 5.66 มม. น้อยกว่าลิมิต L/240 = 15.9 มม.
  • reaction เสากลางสูงสุด 811 กก. รวมลงดินทั้งหมดราว 3,884 กก.
  • ทุกสมาชิกผ่าน ไม่มี overstress หรือ buckling

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

มาตรฐานที่ใช้

เหล็ก SS400 / กล่อง STKR400 fy = 245 MPa, E = 200,000 MPa (มอก.1227 / 107) ออกแบบวิธี ASD โดย Fb = 0.60fy = 147 MPa (วสท.) น้ำหนักจรหลังคา 30 กก./ตร.ม. (กฎกระทรวง ฉบับที่ 6 พ.ศ.2527) กระเบื้อง dead load 15 กก./ตร.ม. ลิมิตโก่งตัว L/240 เสาปูน fc' = 23.5 MPa ผมให้ Claude ค้นยืนยันค่าเหล่านี้จากเว็บก่อนใช้ ไม่ปล่อยให้มันจำเอาเอง

กฎเหล็กที่ผมสรุปไว้ (กันบั๊กเสียเวลาซ้ำๆ)

หกข้อนี้คือบทเรียนที่ผมเก็บมาจากการลองผิดลองถูก ใครจะขับ SketchUp ผ่าน MCP แบบนี้ ผมแนะนำให้ใส่ไว้ใน memory ตั้งแต่แรก

ทำแบบนี้

ถูกต้อง

  • render แยก eval ออกจาก build เสมอ
  • แปลงหน่วยเป็นนิ้วเองด้วย mm = 1.0/25.4
  • ตัวแปรพิมพ์เล็กทั้งหมด
  • อ้างมุมนอก (ผิวนอก)
  • แต่ละสมาชิกแยก sub-group
  • ทุกสคริปต์ idempotent
พังเพราะ

ผิดพลาด

  • ตั้ง camera/write_image ใน eval เดียวกับ build → deadlock ค้าง
  • เชื่อหน่วยแสดงผล → ขนาดเพี้ยน
  • ชื่อพิมพ์ใหญ่ → กลายเป็น constant ค้าง spam warning
  • อ้างเส้นกริด center → bound เกิน 1 ความหนา
  • solid ใน entities เดียวกัน → merge face พังกัน
  • ไม่ลบกลุ่มเก่า → รันซ้ำแล้วซ้อน

ขยายความแต่ละข้อ

  • render แยก eval เสมอ — ตั้ง camera / view.write_image / zoom_extents ใน eval เดียวกับ build จะ deadlock UI thread แล้ว SketchUp ค้าง ต้องรีสตาร์ท

  • หน่วยภายใน SketchUp เป็นนิ้วเสมอ — เลขดิบที่ส่งเข้า API เป็นนิ้ว ไม่ขึ้นกับหน่วยแสดงผลที่ตั้งไว้ ผมแปลงเองด้วย mm = 1.0/25.4

  • ตัวแปรพิมพ์เล็ก — SketchUp ใช้ Ruby interpreter เดียวข้าม eval ชื่อพิมพ์ใหญ่กลายเป็น constant ค้างแล้ว spam warning ทุกครั้งที่รันซ้ำ

  • อ้างมุมนอก (ผิวนอก) ไม่ใช่ center เส้นกริด — ไม่งั้น bound เกินไป 1 ความหนาทุกรอยต่อ

  • แต่ละสมาชิกแยก sub-group — solid ใน entities เดียวกันมัน merge face พังกัน แยกกลุ่มแล้วซ้อนทับได้อิสระ

  • idempotent ทุกสคริปต์ — ลบ prefix กลุ่มตัวเองก่อนสร้าง รันซ้ำได้ไม่ซ้อน

ขอบเขตของงานนี้ (อ่านก่อนเอาไปใช้)

นี่คือการประเมินเบื้องต้นเพื่อการศึกษาเท่านั้น

ผลทั้งหมดเป็นการประเมินเบื้องต้น โครงสร้างที่รับน้ำหนักจริงต้องให้วิศวกรมีใบอนุญาตตรวจสอบรับรอง การวิเคราะห์นี้ยังไม่รวมแรงลม (มยผ.1311) และแผ่นดินไหว (มยผ.1302) ซึ่งมักเป็นตัวคุมการออกแบบของหลังคาเบาชายคายื่นยาวแบบนี้ รวมทั้งรอยต่อ รอยเชื่อม และฐานราก ยังไม่ได้ออกแบบเชิงรายละเอียด

พูดตรงๆ ว่าตัวเลข utilization 0.36 ที่ดูสบายๆ นั้นมาจากแค่ DL + LL เท่านั้น พอใส่แรงลมเข้าไปกับชายคายื่นยาว 1 เมตรฝั่งสูง เรื่องจะเปลี่ยน งานนี้คุณค่ามันอยู่ที่ workflow — ปั้นโมเดลจาก prompt เดียว แล้ววนกลับมาคำนวณทาสีให้เห็นแรงจริง ไม่ใช่เอาตัวเลขไปสร้างจริงตรงๆ

โค้ดเต็มกับตอนอื่นในซีรีส์

โค้ดเต็มทั้ง 7 สคริปต์ บวกตัว FEA (PyNite) บวกสคริปต์ลงสี heatmap ผมแยกไว้ในหน้าคู่มือฉบับเต็ม มีรูป full HD กดขยายดูชัดๆ ได้ กับคลิปเต็มตอน Claude build แต่ละชั้น

อ่านย้อนได้ทั้งซีรีส์

ส่วน "การปูกระเบื้องตามมาตรฐาน" ผมยังทำไม่เสร็จ เดี๋ยวเสร็จแล้วจะมาต่อให้ ใครจะลองทำตาม จับ workflow build-แยก-render กับกฎเหล็ก 6 ข้อไปก่อน หน้าตาโรงจะเป็นแบบไหนตามสะดวก หลักการเหมือนกันหมด

เคยเจองานแบบนี้ไหม? ติดตรงไหน?

มาแลกวิธีกันต่อในบอร์ด LinuxThai

→ คุยต่อในบอร์ด

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

ยังไม่มีความคิดเห็น — เป็นคนแรกเลย