[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"academy-blogs-th-5-12-superdev%25252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252520academy-all-all-createdAt:desc-default":3},{"data":4,"page":590,"perPage":591,"totalItems":592,"totalPages":593},[5,87,146,189,232,288,336,400,447,487,520,553],{"alt":6,"cover_image_path":7,"created":8,"expand":9,"id":82,"published_at":83,"school_blog":78,"short_description":84,"title":85,"updated":86,"slug":79,"views":81},"ภาพกราฟิกสอนการประกาศตัวแปรในภาษา Rust","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Ff4jigxremr1yfr7\u002F7fnmzu2rf8s_crmtwh4g4f.png","2026-04-03 10:19:09.480Z",{"keywords":10,"locale":49,"school_blog":59},[11,19,24,29,34,39,44],{"collectionId":12,"collectionName":13,"created":14,"created_by":15,"id":16,"name":17,"updated":18,"updated_by":15},"sclkey987654321","school_keywords","2026-03-16 05:10:32.092Z","76qprkevbgfdps8","s8r1st4glsmm7yl","ภาษา Rust","2026-06-07 06:48:56.069Z",{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},"2026-03-04 08:27:07.652Z","32ul6fb24qv6ffa","ตัวแปร","2026-06-07 06:45:23.338Z",{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},"2026-04-03 10:18:18.197Z","pgvg42yxe6j3ovv","Mutability","2026-06-07 06:49:01.435Z",{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},"2026-04-03 10:18:27.323Z","97ya64hf89xb4vw","Immutable","2026-06-07 06:49:01.522Z",{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},"2026-03-23 03:08:18.875Z","pu1hva5rmnc4672","สอน Rust","2026-06-07 06:48:59.078Z",{"collectionId":12,"collectionName":13,"created":40,"created_by":15,"id":41,"name":42,"updated":43,"updated_by":15},"2026-04-03 10:18:39.967Z","f1rjr0z8i71w4qu","Shadowing","2026-06-07 06:49:01.621Z",{"collectionId":12,"collectionName":13,"created":45,"created_by":15,"id":46,"name":47,"updated":48,"updated_by":15},"2026-03-04 08:44:11.146Z","gms2qr4xg6qv65e","Superdev Academy","2026-06-07 06:46:28.624Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},"th","pbc_1989393366","locales","2026-01-22 10:59:55.832Z","twemoji:flag-thailand","s8wri3bt4vgg2ji",true,"Thai","2026-04-10 15:42:46.614Z",{"category":60,"collectionId":61,"collectionName":62,"created":63,"expand":64,"id":78,"slug":79,"updated":80,"views":81},"mfqe235iv6x1or8","pbc_2105096300","school_blogs","",{"category":65},{"blogIds":66,"collectionId":67,"collectionName":68,"created":69,"created_by":15,"id":60,"image":70,"image_alt":63,"image_path":71,"label":72,"name":73,"priority":74,"publish_at":75,"scheduled_at":63,"status":76,"updated":77,"updated_by":15},[],"sclcatblg987654321","school_category_blogs","2026-03-16 04:40:07.104Z","47vt5s1gglj_tz0b90vnge.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fmfqe235iv6x1or8\u002F47vt5s1gglj_tz0b90vnge.png",{"en":73,"th":73},"Rust The Series",2,"2026-03-16 04:40:09.199Z","published","2026-06-07 06:45:03.994Z","ypjquqgb7zjvn1v","rust-variables-mutability-guide","2026-07-01 13:44:17.862Z",152,"f4jigxremr1yfr7","2026-04-03 11:13:28.919Z","เจาะลึกหัวใจของ Rust ทำไมตัวแปรถึงเปลี่ยนค่าไม่ได้ (Immutable) โดยค่าเริ่มต้น? เรียนรู้วิธีการใช้ mut, ข้อแตกต่างของ Constants และเทคนิค Shadowing เพื่อการจัดการหน่วยความจำที่ปลอดภัย","ตัวแปรและการเปลี่ยนแปลงใน Rust: ทำไมต้อง Immutable? | Rust The Series EP.4","2026-06-07 06:44:48.867Z",{"alt":88,"cover_image_path":89,"created":90,"expand":91,"id":141,"published_at":142,"school_blog":137,"short_description":143,"title":144,"updated":145,"slug":138,"views":140},"ภาพประกอบบทความสอนการใช้งาน Docker คู่กับภาษา Python เพื่อแพ็กเกจแอปพลิเคชันสำหรับการ Deploy","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fycrwcyghwhxtu67\u002F14f5i67fuc1_ezn3vat6vq.png","2026-03-31 08:55:10.166Z",{"keywords":92,"locale":123,"school_blog":124},[93,98,103,108,113,118],{"collectionId":12,"collectionName":13,"created":94,"created_by":15,"id":95,"name":96,"updated":97,"updated_by":15},"2026-03-04 08:44:18.652Z","jr5zczy6qrxmd88","Docker","2026-06-07 06:46:30.990Z",{"collectionId":12,"collectionName":13,"created":99,"created_by":15,"id":100,"name":101,"updated":102,"updated_by":15},"2026-03-04 08:20:28.340Z","s9cc7gm6633rsnk","Python","2026-06-07 06:45:08.957Z",{"collectionId":12,"collectionName":13,"created":104,"created_by":15,"id":105,"name":106,"updated":107,"updated_by":15},"2026-03-04 08:44:18.923Z","jt1jqlzs29xu1i7","Deploy","2026-06-07 06:46:31.098Z",{"collectionId":12,"collectionName":13,"created":109,"created_by":15,"id":110,"name":111,"updated":112,"updated_by":15},"2026-03-31 08:54:45.558Z","lgbnhnehd3t414z","Container","2026-06-07 06:49:00.598Z",{"collectionId":12,"collectionName":13,"created":114,"created_by":15,"id":115,"name":116,"updated":117,"updated_by":15},"2026-03-31 08:54:52.247Z","u7sf345s1gipkhf","Dockerfile","2026-06-07 06:49:00.819Z",{"collectionId":12,"collectionName":13,"created":119,"created_by":15,"id":120,"name":121,"updated":122,"updated_by":15},"2026-03-31 08:54:59.373Z","7vvg4ltbbnbihku","สอน Docker","2026-06-07 06:49:00.950Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":125,"collectionId":61,"collectionName":62,"created":63,"expand":126,"id":137,"slug":138,"updated":139,"views":140},"qn0d7xwatkleou1",{"category":127},{"blogIds":128,"collectionId":67,"collectionName":68,"created":129,"created_by":15,"id":125,"image":130,"image_alt":63,"image_path":131,"label":132,"name":133,"priority":134,"publish_at":135,"scheduled_at":63,"status":76,"updated":136,"updated_by":15},[],"2026-03-04 08:31:21.896Z","4jn5ccty4x9_2894s1fj97.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fqn0d7xwatkleou1\u002F4jn5ccty4x9_2894s1fj97.png",{"en":133,"th":133},"How to",0,"2025-02-04 08:40:59.666Z","2026-06-07 06:45:02.619Z","tw4akhojnb2u1ik","docker-python-deployment-guide","2026-07-08 04:10:06.465Z",149,"ycrwcyghwhxtu67","2026-04-02 10:43:44.462Z","จบปัญหาโลกแตก \"เครื่องฉันรันได้!\" เรียนรู้วิธีใช้ Docker แพ็กเกจแอปพลิเคชัน Python ให้พร้อม Deploy ทุกที่แบบ Step-by-Step พร้อมเคล็ดลับฉบับโปร","Docker + Python: วิธีแพ็กเกจแอปพลิเคชันให้พร้อม Deploy ทุกสภาพแวดล้อม","2026-06-07 06:44:48.608Z",{"alt":147,"cover_image_path":148,"created":149,"expand":150,"id":184,"published_at":185,"school_blog":180,"short_description":186,"title":187,"updated":188,"slug":181,"views":183},"โลโก้ภาษา Rust และตัวการ์ตูนปูที่เป็นมาสคอต สำหรับบทความ Rust The Series EP 3 โดย Superdev Academy","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F5diz71et6elhs9k\u002F5nl6sxdrndo_8nnwwnyrxc.png","2026-03-23 03:46:58.277Z",{"keywords":151,"locale":174,"school_blog":175},[152,153,158,163,164,169],{"collectionId":12,"collectionName":13,"created":14,"created_by":15,"id":16,"name":17,"updated":18,"updated_by":15},{"collectionId":12,"collectionName":13,"created":154,"created_by":15,"id":155,"name":156,"updated":157,"updated_by":15},"2026-03-04 08:20:06.235Z","254619mvnk1hr7y","Rust","2026-06-07 06:45:07.039Z",{"collectionId":12,"collectionName":13,"created":159,"created_by":15,"id":160,"name":161,"updated":162,"updated_by":15},"2026-03-23 03:46:05.235Z","to8ylvvfmrgjo0x","Cargo","2026-06-07 06:49:00.147Z",{"collectionId":12,"collectionName":13,"created":45,"created_by":15,"id":46,"name":47,"updated":48,"updated_by":15},{"collectionId":12,"collectionName":13,"created":165,"created_by":15,"id":166,"name":167,"updated":168,"updated_by":15},"2026-03-04 08:31:35.253Z","r1k7m3354tp5ovr","เรียนเขียนโปรแกรม","2026-06-07 06:45:29.140Z",{"collectionId":12,"collectionName":13,"created":170,"created_by":15,"id":171,"name":172,"updated":173,"updated_by":15},"2026-03-23 03:46:33.835Z","htqad2oc1hixhhl","วิธีใช้ Cargo","2026-06-07 06:49:00.288Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":60,"collectionId":61,"collectionName":62,"created":63,"expand":176,"id":180,"slug":181,"updated":182,"views":183},{"category":177},{"blogIds":178,"collectionId":67,"collectionName":68,"created":69,"created_by":15,"id":60,"image":70,"image_alt":63,"image_path":71,"label":179,"name":73,"priority":74,"publish_at":75,"scheduled_at":63,"status":76,"updated":77,"updated_by":15},[],{"en":73,"th":73},"okm4en0s9tcmnn6","rust-series-ep3-intro-to-cargo-package-manager","2026-07-07 17:13:34.457Z",186,"5diz71et6elhs9k","2026-03-23 04:03:02.314Z","เริ่มต้นเขียนโค้ดแรกในภาษา Rust ด้วย Cargo เรียนรู้วิธีสร้างโปรเจกต์ จัดการ Library (Crates) และคำสั่งพื้นฐานที่ต้องรู้ เช่น cargo build, run และ check เพื่อการพัฒนาซอฟต์แวร์อย่างมืออาชีพ","ทำความรู้จัก Cargo คู่หูที่จะทำให้ชีวิตการเขียน Rust ง่ายขึ้น | Rust The Series EP.3","2026-06-07 06:44:48.218Z",{"alt":190,"cover_image_path":191,"created":192,"expand":193,"id":227,"published_at":228,"school_blog":223,"short_description":229,"title":230,"updated":231,"slug":224,"views":226},"ภาพหน้าปกบทความสอนติดตั้ง Rustup และตั้งค่า VS Code กับ RustRover สำหรับเขียนโปรแกรมภาษา Rust โดย Superdev Academy","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fattm8n0i9a27iqi\u002F36evgk9r53x_gybg6nl1c3.png","2026-03-23 03:09:28.697Z",{"keywords":194,"locale":217,"school_blog":218},[195,200,201,206,211,216],{"collectionId":12,"collectionName":13,"created":196,"created_by":15,"id":197,"name":198,"updated":199,"updated_by":15},"2026-03-23 03:08:11.595Z","zxatg5igg3a82av","ติดตั้ง Rust","2026-06-07 06:48:58.951Z",{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":202,"created_by":15,"id":203,"name":204,"updated":205,"updated_by":15},"2026-03-23 03:08:33.318Z","6aamy6do941c0qd","Rustup คืออะไร","2026-06-07 06:48:59.271Z",{"collectionId":12,"collectionName":13,"created":207,"created_by":15,"id":208,"name":209,"updated":210,"updated_by":15},"2026-03-23 03:08:39.616Z","o62tpzva8xei41v","ตั้งค่า VS Code Rust","2026-06-07 06:48:59.342Z",{"collectionId":12,"collectionName":13,"created":212,"created_by":15,"id":213,"name":214,"updated":215,"updated_by":15},"2026-03-23 03:08:45.455Z","j1y9kcuspwhxavf","RustRover","2026-06-07 06:48:59.439Z",{"collectionId":12,"collectionName":13,"created":154,"created_by":15,"id":155,"name":156,"updated":157,"updated_by":15},{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":60,"collectionId":61,"collectionName":62,"created":63,"expand":219,"id":223,"slug":224,"updated":225,"views":226},{"category":220},{"blogIds":221,"collectionId":67,"collectionName":68,"created":69,"created_by":15,"id":60,"image":70,"image_alt":63,"image_path":71,"label":222,"name":73,"priority":74,"publish_at":75,"scheduled_at":63,"status":76,"updated":77,"updated_by":15},[],{"en":73,"th":73},"13h228aiodane7p","install-rustup-vscode-rustrover-setup","2026-07-08 04:47:37.212Z",172,"attm8n0i9a27iqi","2026-03-23 03:31:43.851Z","เริ่มต้นเขียนโปรแกรมภาษา Rust อย่างมืออาชีพ! สอนวิธีติดตั้ง Rustup แบบสเต็ปบายสเต็ป พร้อมแนะนำการตั้งค่า VS Code และ RustRover สำหรับมือใหม่ ทำตามได้ทันที","สอนติดตั้ง Rustup และตั้งค่า IDE (VS Code & RustRover) | Rust The Series EP.2","2026-06-07 06:44:47.830Z",{"alt":233,"cover_image_path":234,"created":235,"expand":236,"id":283,"published_at":284,"school_blog":280,"short_description":285,"title":286,"updated":287,"slug":281,"views":81},"โลโก้อัญมณีสีแดงของภาษา Ruby ท่ามกลางบรรยากาศการเขียนโค้ดที่สะอาดตาและสื่อถึงความสุขของนักพัฒนา","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fdjhhe6en9sexons\u002F1y17o2x2sgw_6zrc5rjs4z.png","2026-03-16 05:49:51.842Z",{"keywords":237,"locale":268,"school_blog":269},[238,243,248,253,258,263],{"collectionId":12,"collectionName":13,"created":239,"created_by":15,"id":240,"name":241,"updated":242,"updated_by":15},"2026-03-04 08:34:45.348Z","t7n7n8692pg72pt","ภาษา Ruby","2026-06-07 06:46:15.713Z",{"collectionId":12,"collectionName":13,"created":244,"created_by":15,"id":245,"name":246,"updated":247,"updated_by":15},"2026-03-16 05:48:55.871Z","i760xsdcbeb9jys","ประวัติ Ruby","2026-06-07 06:48:56.766Z",{"collectionId":12,"collectionName":13,"created":249,"created_by":15,"id":250,"name":251,"updated":252,"updated_by":15},"2026-03-04 08:34:47.544Z","3ky9n7b9hsgjf35","Ruby","2026-06-07 06:46:16.683Z",{"collectionId":12,"collectionName":13,"created":254,"created_by":15,"id":255,"name":256,"updated":257,"updated_by":15},"2026-03-16 05:49:10.525Z","s0pqrcq7u7b17fv","Yukihiro Matsumoto","2026-06-07 06:48:56.899Z",{"collectionId":12,"collectionName":13,"created":259,"created_by":15,"id":260,"name":261,"updated":262,"updated_by":15},"2026-03-16 05:49:18.125Z","0runldorrswj5ds","MINASWAN","2026-06-07 06:48:57.120Z",{"collectionId":12,"collectionName":13,"created":264,"created_by":15,"id":265,"name":266,"updated":267,"updated_by":15},"2026-03-16 05:10:38.871Z","4drw5c8knx92e9n","สอนเขียนโปรแกรม Rust","2026-06-07 06:48:56.187Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":270,"collectionId":61,"collectionName":62,"created":63,"expand":271,"id":280,"slug":281,"updated":282,"views":81},"isnp2fv80bn3yem",{"category":272},{"blogIds":273,"collectionId":67,"collectionName":68,"created":274,"created_by":15,"id":270,"image":63,"image_alt":63,"image_path":63,"label":275,"name":276,"priority":277,"publish_at":278,"scheduled_at":63,"status":76,"updated":279,"updated_by":15},[],"2026-03-04 08:19:47.590Z",{"en":276,"th":276},"กว่าจะเป็นภาษาโค้ด",8,"2026-02-18 01:59:49.988Z","2026-06-07 06:45:01.789Z","g8t67hwsdyuoztk","evolution-of-ruby-for-developer-happiness","2026-06-29 13:12:36.798Z","djhhe6en9sexons","2026-03-18 04:46:40.298Z","ทำไม Ruby ถึงเป็นภาษาที่โปรแกรมเมอร์รักที่สุด? เจาะลึกปรัชญา MINASWAN และเบื้องหลังความสำเร็จของ Ruby on Rails ที่สตาร์ทอัพระดับโลกเลือกใช้","ประวัติภาษา Ruby: ภาษาอัญมณีที่สร้างขึ้นเพื่อความสุขและความเป็นมนุษย์ของโปรแกรมเมอร์","2026-06-07 06:44:46.769Z",{"alt":289,"cover_image_path":290,"created":291,"expand":292,"id":331,"published_at":332,"school_blog":327,"short_description":333,"title":334,"updated":335,"slug":328,"views":330},"แนะนำ 5 จอเสริม MacBook สำหรับโปรแกรมเมอร์ ปี 2026 มีทั้งจอพกพา ARZOPA Z1RC และ BenQ RD280U","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fyvk22a4tku7op7o\u002F10pcfj4jhkj_jjrthnk8d9.png","2026-03-16 06:30:01.126Z",{"keywords":293,"locale":314,"school_blog":315},[294,299,304,309],{"collectionId":12,"collectionName":13,"created":295,"created_by":15,"id":296,"name":297,"updated":298,"updated_by":15},"2026-03-16 06:29:28.721Z","4dngcyzugds90n0","จอเสริม MacBook","2026-06-07 06:48:57.654Z",{"collectionId":12,"collectionName":13,"created":300,"created_by":15,"id":301,"name":302,"updated":303,"updated_by":15},"2026-03-16 06:29:34.822Z","31rem2lfrdsmawe","จอคอมเขียนโปรแกรม","2026-06-07 06:48:57.759Z",{"collectionId":12,"collectionName":13,"created":305,"created_by":15,"id":306,"name":307,"updated":308,"updated_by":15},"2026-03-16 06:29:41.694Z","0jobzj69zmb9rsg","ARZOPA Z1RC","2026-06-07 06:48:57.855Z",{"collectionId":12,"collectionName":13,"created":310,"created_by":15,"id":311,"name":312,"updated":313,"updated_by":15},"2026-03-16 06:29:49.539Z","5dquc86ngxqk2gb","จอมอนิเตอร์โปรแกรมเมอร์","2026-06-07 06:48:57.962Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":316,"collectionId":61,"collectionName":62,"created":63,"expand":317,"id":327,"slug":328,"updated":329,"views":330},"spm4l1k5bgmhmmt",{"category":318},{"blogIds":319,"collectionId":67,"collectionName":68,"created":320,"created_by":15,"id":316,"image":321,"image_alt":63,"image_path":322,"label":323,"name":324,"priority":134,"publish_at":325,"scheduled_at":63,"status":76,"updated":326,"updated_by":15},[],"2026-03-04 08:31:18.590Z","50hyjr6os45_ayazwr5gq7.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fspm4l1k5bgmhmmt\u002F50hyjr6os45_ayazwr5gq7.png",{"en":324,"th":324},"Knowledge","2026-03-18 02:25:41.222Z","2026-06-07 06:45:02.533Z","s3vhc075erm9t15","best-macbook-monitors-for-programmers-2026","2026-07-08 22:55:59.920Z",229,"yvk22a4tku7op7o","2026-03-17 03:05:00.000Z","เลือกจอเสริม MacBook อย่างไรไม่ให้เสียเงินฟรี? รวม 5 จอมอนิเตอร์ที่คัดมาเพื่อโปรแกรมเมอร์โดยเฉพาะ ทั้งสายพกพา ARZOPA Z1RC และจอเทพสาย Coding สรุปจบในที่เดียว!","แนะนำ 5 จอเสริม MacBook ที่โปรแกรมเมอร์ต้องลอง (Update 2026)","2026-06-07 06:44:47.293Z",{"alt":337,"cover_image_path":338,"created":339,"expand":340,"id":395,"published_at":396,"school_blog":391,"short_description":397,"title":398,"updated":399,"slug":392,"views":394},"ภาพปกบทความ Golang The Series EP.140 ตอนจบ แสดงตัวอย่างโค้ด Go สำหรับระบบ Enterprise WebSocket Server","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fc5xq31ilcgu6y0o\u002Farticle_cover_for_golang_the_series_ep_5491p66i4h.eWebSocketserver.png","2026-03-16 03:49:53.524Z",{"keywords":341,"locale":377,"school_blog":378},[342,347,352,357,362,367,372],{"collectionId":12,"collectionName":13,"created":343,"created_by":15,"id":344,"name":345,"updated":346,"updated_by":15},"2026-03-04 08:20:14.253Z","ah6lvy4x8qe08l5","Golang","2026-06-07 06:45:08.193Z",{"collectionId":12,"collectionName":13,"created":348,"created_by":15,"id":349,"name":350,"updated":351,"updated_by":15},"2026-03-04 08:34:00.920Z","ecac9y661or1xka","WebSocket","2026-06-07 06:45:55.734Z",{"collectionId":12,"collectionName":13,"created":353,"created_by":15,"id":354,"name":355,"updated":356,"updated_by":15},"2026-03-16 03:49:04.210Z","lkxlsj34k1324jz","Enterprise Architecture","2026-06-07 06:48:55.356Z",{"collectionId":12,"collectionName":13,"created":358,"created_by":15,"id":359,"name":360,"updated":361,"updated_by":15},"2026-03-16 03:49:11.920Z","68w24pqpvxluy94","Roadmap","2026-06-07 06:48:55.437Z",{"collectionId":12,"collectionName":13,"created":363,"created_by":15,"id":364,"name":365,"updated":366,"updated_by":15},"2026-03-16 03:49:19.659Z","8jw741wsqhx919b","Backend Developer","2026-06-07 06:48:55.551Z",{"collectionId":12,"collectionName":13,"created":368,"created_by":15,"id":369,"name":370,"updated":371,"updated_by":15},"2026-03-16 03:49:27.028Z","6x2tx5b8cvpi4tf","พัฒนาซอฟต์แวร์","2026-06-07 06:48:55.697Z",{"collectionId":12,"collectionName":13,"created":373,"created_by":15,"id":374,"name":375,"updated":376,"updated_by":15},"2026-03-16 03:49:34.466Z","mmrky37ung92c97","ระบบ Real-time","2026-06-07 06:48:55.815Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":379,"collectionId":61,"collectionName":62,"created":63,"expand":380,"id":391,"slug":392,"updated":393,"views":394},"wqxt7ag2gn7xcmk",{"category":381},{"blogIds":382,"collectionId":67,"collectionName":68,"created":383,"created_by":15,"id":379,"image":384,"image_alt":63,"image_path":385,"label":386,"name":387,"priority":388,"publish_at":389,"scheduled_at":63,"status":76,"updated":390,"updated_by":15},[],"2026-03-04 08:33:53.210Z","59ty92ns80w_15oc1implw.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fwqxt7ag2gn7xcmk\u002F59ty92ns80w_15oc1implw.png",{"en":387,"th":387},"Golang The Series",1,"2026-03-16 04:39:38.440Z","2026-06-07 06:45:03.856Z","c2puowxb5818jta","go-enterprise-websocket-roadmap-series-finale","2026-07-02 11:23:45.870Z",169,"c5xq31ilcgu6y0o","2026-03-17 02:55:21.850Z","บทสรุปส่งท้ายมหากาพย์ 140 ตอน! รวบรวมหัวใจสำคัญของการสร้างระบบ WebSocket ระดับโลก พร้อมแจก Template โครงสร้างโค้ดระดับ Production, 3 สิ่งที่ต้องศึกษาต่อ และคำแนะนำจากใจเพื่อก้าวสู่ Senior Developer","Golang The Series EP.140: สรุปและแนวทางการพัฒนา WebSocket Server ระดับ Enterprise (ตอนจบ)","2026-06-07 06:44:46.130Z",{"alt":401,"cover_image_path":402,"created":403,"expand":404,"id":443,"published_at":444,"school_blog":439,"short_description":445,"title":401,"updated":446,"slug":440,"views":442},"วิธีใช้ Cloudflare Tunnel เชื่อม Localhost ออกเน็ต โดยไม่ต้องเปิด Port","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F08enic35zugf5ud\u002Fcover_image_for_how_to_use_cloudflare_tunnel_to_expose_localhost_without_port_forwarding_zvg015xzin.webp","2026-03-04 08:44:18.016Z",{"keywords":405,"locale":426,"school_blog":427},[406,411,416,421],{"collectionId":12,"collectionName":13,"created":407,"created_by":15,"id":408,"name":409,"updated":410,"updated_by":15},"2026-03-04 08:44:17.256Z","tfwqk04b06u56pz","วิธีใช้ Cloudflare Tunnel","2026-06-07 06:46:30.461Z",{"collectionId":12,"collectionName":13,"created":412,"created_by":15,"id":413,"name":414,"updated":415,"updated_by":15},"2026-03-04 08:44:17.506Z","2hw2c6o2elosloo","Cloudflare Tunnel","2026-06-07 06:46:30.614Z",{"collectionId":12,"collectionName":13,"created":417,"created_by":15,"id":418,"name":419,"updated":420,"updated_by":15},"2026-03-04 08:44:16.622Z","7k1sal58dnj3ycv","Cloudflare Zero Trust","2026-06-07 06:46:30.108Z",{"collectionId":12,"collectionName":13,"created":422,"created_by":15,"id":423,"name":424,"updated":425,"updated_by":15},"2026-03-04 08:44:16.902Z","1pf59ie7wale4so","Localhost","2026-06-07 06:46:30.326Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":428,"collectionId":61,"collectionName":62,"created":63,"expand":429,"id":439,"slug":440,"updated":441,"views":442},"rfxf19ot4iq992c",{"category":430},{"blogIds":431,"collectionId":67,"collectionName":68,"created":432,"created_by":15,"id":428,"image":433,"image_alt":63,"image_path":434,"label":435,"name":436,"priority":134,"publish_at":437,"scheduled_at":63,"status":76,"updated":438,"updated_by":15},[],"2026-03-04 08:32:03.969Z","7acfigk1qkd_lv1k6bkji3.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Frfxf19ot4iq992c\u002F7acfigk1qkd_lv1k6bkji3.png",{"en":436,"th":436},"Web Development","2025-01-21 03:43:00.282Z","2026-06-07 06:45:03.121Z","xlabf2btsvflyqi","how-to-use-cloudflare-tunnel-tutorial","2026-07-08 01:50:19.893Z",518,"08enic35zugf5ud","2026-03-10 03:20:24.326Z","เจาะลึกวิธีใช้ Cloudflare Tunnel ตั้งแต่เริ่มต้นจนใช้งานได้จริง สอนวิธีเชื่อม Localhost ออกอินเทอร์เน็ตแบบไม่ต้องทำ Port Forwarding และไม่ต้องง้อ Public IP ปลอดภัยกว่าด้วยระบบ Zero Trust","2026-06-07 06:43:15.692Z",{"alt":448,"cover_image_path":449,"created":450,"expand":451,"id":483,"published_at":484,"school_blog":479,"short_description":485,"title":448,"updated":486,"slug":480,"views":482},"EP.11 Go กับ Modules: จัดการ Dependency อย่างมืออาชีพ","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fi3gpxgyzelb5hst\u002F21_11zon_p6enrx0w0x.webp","2026-03-04 08:51:53.280Z",{"keywords":452,"locale":473,"school_blog":474},[453,458,463,468],{"collectionId":12,"collectionName":13,"created":454,"created_by":15,"id":455,"name":456,"updated":457,"updated_by":15},"2026-03-04 08:20:11.547Z","ey3puyme01a9bsw","Go","2026-06-07 06:45:07.798Z",{"collectionId":12,"collectionName":13,"created":459,"created_by":15,"id":460,"name":461,"updated":462,"updated_by":15},"2026-03-04 08:33:53.709Z","k5ox6iu2wn2n6co","Go Modules","2026-06-07 06:45:52.788Z",{"collectionId":12,"collectionName":13,"created":464,"created_by":15,"id":465,"name":466,"updated":467,"updated_by":15},"2026-03-04 08:33:54.415Z","dtu0hnobmvg32lx","Dependency Management","2026-06-07 06:45:53.101Z",{"collectionId":12,"collectionName":13,"created":469,"created_by":15,"id":470,"name":471,"updated":472,"updated_by":15},"2026-03-04 08:34:12.496Z","992k3hc4xxojtaj","ความเสถียร","2026-06-07 06:46:00.958Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":379,"collectionId":61,"collectionName":62,"created":63,"expand":475,"id":479,"slug":480,"updated":481,"views":482},{"category":476},{"blogIds":477,"collectionId":67,"collectionName":68,"created":383,"created_by":15,"id":379,"image":384,"image_alt":63,"image_path":385,"label":478,"name":387,"priority":388,"publish_at":389,"scheduled_at":63,"status":76,"updated":390,"updated_by":15},[],{"en":387,"th":387},"vey0miiiraly806","go-modules-managing-dependency","2026-07-06 21:22:34.810Z",428,"i3gpxgyzelb5hst","2026-03-06 03:23:46.142Z","เรียนรู้การเริ่มต้นโปรเจกต์ด้วย Go Modules การติดตั้งและอัปเดตแพ็กเกจ รวมถึงการจัดการเวอร์ชันของ Dependency อย่างมืออาชีพ","2026-06-07 06:44:45.492Z",{"alt":488,"cover_image_path":489,"created":490,"expand":491,"id":516,"published_at":517,"school_blog":512,"short_description":518,"title":488,"updated":519,"slug":513,"views":515},"Golang The Series EP.139: Mobile & Low-bandwidth – เทคนิครับมือเน็ตหลุดและแบนด์วิดท์จำกัด","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fajh621tzfnpj0u2\u002Fgolang_the_series_ep_3aap0aplut.nstableNetworks.webp","2026-03-04 08:44:12.091Z",{"keywords":492,"locale":506,"school_blog":507},[493,494,495,500,505],{"collectionId":12,"collectionName":13,"created":343,"created_by":15,"id":344,"name":345,"updated":346,"updated_by":15},{"collectionId":12,"collectionName":13,"created":348,"created_by":15,"id":349,"name":350,"updated":351,"updated_by":15},{"collectionId":12,"collectionName":13,"created":496,"created_by":15,"id":497,"name":498,"updated":499,"updated_by":15},"2026-03-04 08:44:10.146Z","0fzsu1l5cyqadwi","Mobile Optimization","2026-06-07 06:46:28.256Z",{"collectionId":12,"collectionName":13,"created":501,"created_by":15,"id":502,"name":503,"updated":504,"updated_by":15},"2026-03-04 08:44:10.927Z","3ed6g568seusybp","Low Bandwidth","2026-06-07 06:46:28.491Z",{"collectionId":12,"collectionName":13,"created":45,"created_by":15,"id":46,"name":47,"updated":48,"updated_by":15},{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":379,"collectionId":61,"collectionName":62,"created":63,"expand":508,"id":512,"slug":513,"updated":514,"views":515},{"category":509},{"blogIds":510,"collectionId":67,"collectionName":68,"created":383,"created_by":15,"id":379,"image":384,"image_alt":63,"image_path":385,"label":511,"name":387,"priority":388,"publish_at":389,"scheduled_at":63,"status":76,"updated":390,"updated_by":15},[],{"en":387,"th":387},"v3pnrpaatmfvk5q","golang-websocket-mobile-optimization-low-bandwidth","2026-07-08 20:52:36.371Z",243,"ajh621tzfnpj0u2","2026-03-02 08:50:22.787Z","เจาะลึกการจูน WebSocket สำหรับโลก Mobile! ตั้งแต่การทำ Adaptive Heartbeat เพื่อประหยัดแบตเตอรี่ ไปจนถึงเทคนิค Resume Message เมื่อเน็ตหลุด เพื่อให้แอปของคุณเสถียรที่สุดแม้ในวันที่เน็ตไม่เป็นใจ","2026-06-07 06:43:13.988Z",{"alt":521,"cover_image_path":522,"created":523,"expand":524,"id":549,"published_at":550,"school_blog":545,"short_description":551,"title":521,"updated":552,"slug":546,"views":548},"Golang The Series EP.138: Monitoring Latency & Performance – รีดความเร็ว WebSocket ให้ลื่นระดับเทพ","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fkonpz3tbe4ya0tx\u002Fgolang_the_series_ep_tk994uyv8n.nceOptimization.webp","2026-03-04 08:44:12.584Z",{"keywords":525,"locale":539,"school_blog":540},[526,527,532,537,538],{"collectionId":12,"collectionName":13,"created":45,"created_by":15,"id":46,"name":47,"updated":48,"updated_by":15},{"collectionId":12,"collectionName":13,"created":528,"created_by":15,"id":529,"name":530,"updated":531,"updated_by":15},"2026-03-04 08:44:11.932Z","8sanh9jytfatsgk","Performance Optimization","2026-06-07 06:46:28.968Z",{"collectionId":12,"collectionName":13,"created":533,"created_by":15,"id":534,"name":535,"updated":536,"updated_by":15},"2026-03-04 08:44:11.548Z","ezm3p0vsuowuadd","Latency","2026-06-07 06:46:28.821Z",{"collectionId":12,"collectionName":13,"created":348,"created_by":15,"id":349,"name":350,"updated":351,"updated_by":15},{"collectionId":12,"collectionName":13,"created":343,"created_by":15,"id":344,"name":345,"updated":346,"updated_by":15},{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":379,"collectionId":61,"collectionName":62,"created":63,"expand":541,"id":545,"slug":546,"updated":547,"views":548},{"category":542},{"blogIds":543,"collectionId":67,"collectionName":68,"created":383,"created_by":15,"id":379,"image":384,"image_alt":63,"image_path":385,"label":544,"name":387,"priority":388,"publish_at":389,"scheduled_at":63,"status":76,"updated":390,"updated_by":15},[],{"en":387,"th":387},"8puudn0kcj2zq78","golang-websocket-latency-performance-optimization-guide","2026-06-19 22:32:59.202Z",246,"konpz3tbe4ya0tx","2026-03-02 04:30:22.021Z","เลิกดูแค่ค่าเฉลี่ย! เจาะลึกวิธีวัด Latency แบบ P95\u002FP99 และเทคนิครีดประสิทธิภาพ Go WebSocket ให้ถึงขีดสุดด้วย sync.Pool, Protobuf และการจูน TCP Stack เพื่อประสบการณ์ผู้ใช้ที่ไม่มีสะดุด","2026-06-07 06:43:14.786Z",{"alt":554,"cover_image_path":555,"created":556,"expand":557,"id":586,"published_at":587,"school_blog":582,"short_description":588,"title":554,"updated":589,"slug":583,"views":585},"Golang The Series EP.137: Enterprise Security Best Practices – สร้างป้อมปราการให้ WebSocket Server","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fcn8q0wy16fj2pmf\u002Fgolang_the_series_ep_ev0mmhv6xz.eakableFortress.webp","2026-03-04 08:44:15.226Z",{"keywords":558,"locale":576,"school_blog":577},[559,560,565,570,571],{"collectionId":12,"collectionName":13,"created":343,"created_by":15,"id":344,"name":345,"updated":346,"updated_by":15},{"collectionId":12,"collectionName":13,"created":561,"created_by":15,"id":562,"name":563,"updated":564,"updated_by":15},"2026-03-04 08:44:13.770Z","ij1u9pugpnctjvk","WebSocket Security","2026-06-07 06:46:29.432Z",{"collectionId":12,"collectionName":13,"created":566,"created_by":15,"id":567,"name":568,"updated":569,"updated_by":15},"2026-03-04 08:34:18.095Z","z3u3nql685g5e3b","Authentication","2026-06-07 06:46:03.611Z",{"collectionId":12,"collectionName":13,"created":454,"created_by":15,"id":455,"name":456,"updated":457,"updated_by":15},{"collectionId":12,"collectionName":13,"created":572,"created_by":15,"id":573,"name":574,"updated":575,"updated_by":15},"2026-03-04 08:44:13.045Z","g4w6cq87d9yzbaz","CSWSH","2026-06-07 06:46:29.315Z",{"code":50,"collectionId":51,"collectionName":52,"created":53,"flag":54,"id":55,"is_default":56,"label":57,"updated":58},{"category":379,"collectionId":61,"collectionName":62,"created":63,"expand":578,"id":582,"slug":583,"updated":584,"views":585},{"category":579},{"blogIds":580,"collectionId":67,"collectionName":68,"created":383,"created_by":15,"id":379,"image":384,"image_alt":63,"image_path":385,"label":581,"name":387,"priority":388,"publish_at":389,"scheduled_at":63,"status":76,"updated":390,"updated_by":15},[],{"en":387,"th":387},"v4prmym5dowcxtz","golang-enterprise-websocket-security-best-practices","2026-06-27 17:42:58.794Z",239,"cn8q0wy16fj2pmf","2026-02-24 02:34:26.075Z","แค่ WSS ยังไม่พอ! เจาะลึก 5 เสาหลักความปลอดภัย WebSocket ระดับองค์กร เรียนรู้วิธีป้องกัน CSWSH, การทำ Ticket-based Auth และการจัดการทรัพยากรไม่ให้ Server บึ้มจากการโจมตี DoS","2026-06-07 06:43:15.174Z",5,12,442,37]