[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"academy-blogs-en-18-12-superdev%25252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252520academy-all-all-createdAt:desc-default":3},{"data":4,"page":555,"perPage":556,"totalItems":557,"totalPages":558},[5,69,122,174,216,268,313,345,388,433,477,510],{"alt":6,"cover_image_path":7,"created":8,"expand":9,"id":65,"published_at":66,"school_blog":61,"short_description":67,"title":6,"updated":68,"slug":62,"views":64},"EP 2: What is Utility-First? Understanding Tailwind's Class System Like a Pro","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F6s4ahkb2ssuaz9d\u002F4_11zon_6_86n7txvsqp.webp","2026-03-04 08:26:54.340Z",{"keywords":10,"locale":34,"school_blog":44},[11,19,24,29],{"collectionId":12,"collectionName":13,"created":14,"created_by":15,"id":16,"name":17,"updated":18,"updated_by":15},"sclkey987654321","school_keywords","2026-03-04 08:26:52.551Z","","vs28nj4myi1c87a","Class System","2026-04-10 16:07:35.867Z",{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},"2026-03-04 08:26:53.334Z","wsttxh3j0g5mpff","Tailwind CSS Classes","2026-04-10 16:07:36.119Z",{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},"2026-03-04 08:26:35.002Z","eq1u1plwlvvr2rh","Tailwind CSS","2026-04-10 16:07:31.210Z",{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},"2026-03-04 08:26:51.076Z","jn88tu5uo8a2bjj","Utility-First CSS","2026-04-10 16:07:35.460Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},"en","pbc_1989393366","locales","2026-01-22 11:00:02.726Z","twemoji:flag-united-states","qv9c1llfov2d88z",false,"English","2026-04-10 15:42:46.825Z",{"category":45,"collectionId":46,"collectionName":47,"created":15,"expand":48,"id":61,"slug":62,"updated":63,"views":64},"i22e96fj41lsws7","pbc_2105096300","school_blogs",{"category":49},{"blogIds":50,"collectionId":51,"collectionName":52,"created":53,"created_by":15,"id":45,"image":54,"image_alt":15,"image_path":55,"label":56,"name":27,"priority":57,"publish_at":58,"scheduled_at":15,"status":59,"updated":60,"updated_by":15},[],"sclcatblg987654321","school_category_blogs","2026-03-04 08:26:33.946Z","vzv2yduhfk_hs035tvsww.webp","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fi22e96fj41lsws7\u002Fvzv2yduhfk_hs035tvsww.webp",{"en":27,"th":27},10,"2025-07-25 05:27:14.926Z","published","2026-04-25 02:32:14.403Z","4v6kd042cmawv05","ep2-utility-first-tailwind-css-class-system","2026-05-09 01:34:36.108Z",318,"6s4ahkb2ssuaz9d","2025-07-21 10:58:35.689Z","Dive deep into the heart of Tailwind CSS with Utility-First approach. Learn class categorization system, pro memory techniques, Responsive Design, and State Variants with hands-on Dashboard Card project.","2026-05-12 01:14:31.484Z",{"alt":70,"cover_image_path":71,"created":72,"expand":73,"id":118,"published_at":119,"school_blog":114,"short_description":120,"title":70,"updated":121,"slug":115,"views":117},"The Real Life of Programmers: Not Like in the TV Series","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fp0ws841onp2k91c\u002F2_2_11zon_sshbcp35xf.webp","2026-03-04 08:48:06.925Z",{"keywords":74,"locale":100,"school_blog":101},[75,80,85,90,95],{"collectionId":12,"collectionName":13,"created":76,"created_by":15,"id":77,"name":78,"updated":79,"updated_by":15},"2026-03-04 08:31:54.955Z","264sfjffyhspetq","programmers","2026-04-10 16:07:47.221Z",{"collectionId":12,"collectionName":13,"created":81,"created_by":15,"id":82,"name":83,"updated":84,"updated_by":15},"2026-03-04 08:31:27.403Z","v9recrqz2zy57go","coding","2026-04-10 16:07:40.847Z",{"collectionId":12,"collectionName":13,"created":86,"created_by":15,"id":87,"name":88,"updated":89,"updated_by":15},"2026-03-04 08:46:40.078Z","26nqir3wf6rlsa1","Debugging","2026-04-10 16:13:17.225Z",{"collectionId":12,"collectionName":13,"created":91,"created_by":15,"id":92,"name":93,"updated":94,"updated_by":15},"2026-03-04 08:48:06.146Z","mulyh9lv6l7d1ss","programmer TV series","2026-04-10 16:13:40.393Z",{"collectionId":12,"collectionName":13,"created":96,"created_by":15,"id":97,"name":98,"updated":99,"updated_by":15},"2026-03-04 08:48:06.538Z","ou08ibtq405q3bw","teamwork","2026-04-10 16:13:40.526Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":102,"collectionId":46,"collectionName":47,"created":15,"expand":103,"id":114,"slug":115,"updated":116,"views":117},"spm4l1k5bgmhmmt",{"category":104},{"blogIds":105,"collectionId":51,"collectionName":52,"created":106,"created_by":15,"id":102,"image":107,"image_alt":15,"image_path":108,"label":109,"name":110,"priority":111,"publish_at":112,"scheduled_at":15,"status":59,"updated":113,"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":110,"th":110},"Knowledge",0,"2026-03-18 02:25:41.222Z","2026-04-25 02:32:14.497Z","unn20xijin9lv2n","the-real-life-of-programmers-not-like-in-the-tv-series","2026-05-12 02:20:56.501Z",208,"p0ws841onp2k91c","2025-07-21 02:58:11.914Z","This article takes you behind the scenes of a programmer's life, showing how it differs from the TV series portrayal, including debugging, teamwork, and time management.","2026-04-22 07:10:08.374Z",{"alt":123,"cover_image_path":124,"created":125,"expand":126,"id":170,"published_at":171,"school_blog":166,"short_description":172,"title":123,"updated":173,"slug":167,"views":169},"JS2GO EP.4 Compilation and Execution: JavaScript and Go","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Firskucy31wyh9ey\u002F8_11zon_m3s9uzblkw.webp","2026-03-04 08:27:03.156Z",{"keywords":127,"locale":153,"school_blog":154},[128,133,138,143,148],{"collectionId":12,"collectionName":13,"created":129,"created_by":15,"id":130,"name":131,"updated":132,"updated_by":15},"2026-03-04 08:24:38.707Z","v8n5s20nj500amh","JavaScript vs Go","2026-04-10 16:07:29.238Z",{"collectionId":12,"collectionName":13,"created":134,"created_by":15,"id":135,"name":136,"updated":137,"updated_by":15},"2026-03-04 08:26:58.011Z","rueptvhwezxwlkc","Execution","2026-04-10 16:07:36.823Z",{"collectionId":12,"collectionName":13,"created":139,"created_by":15,"id":140,"name":141,"updated":142,"updated_by":15},"2026-03-04 08:27:00.758Z","61gm9l1e0frqbag","Compilation","2026-04-10 16:07:37.594Z",{"collectionId":12,"collectionName":13,"created":144,"created_by":15,"id":145,"name":146,"updated":147,"updated_by":15},"2026-03-04 08:20:11.547Z","ey3puyme01a9bsw","Go","2026-04-10 16:07:25.893Z",{"collectionId":12,"collectionName":13,"created":149,"created_by":15,"id":150,"name":151,"updated":152,"updated_by":15},"2026-03-04 08:20:42.484Z","vslzz9nvv6n77cx","JavaScript","2026-04-10 16:07:28.339Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":155,"collectionId":46,"collectionName":47,"created":15,"expand":156,"id":166,"slug":167,"updated":168,"views":169},"hsa1afr8fcnd6qb",{"category":157},{"blogIds":158,"collectionId":51,"collectionName":52,"created":159,"created_by":15,"id":155,"image":160,"image_alt":15,"image_path":161,"label":162,"name":163,"priority":57,"publish_at":164,"scheduled_at":15,"status":59,"updated":165,"updated_by":15},[],"2026-03-04 08:24:37.986Z","js2_go_2_11zon_y6paxmuz32.webp","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fhsa1afr8fcnd6qb\u002Fjs2_go_2_11zon_y6paxmuz32.webp",{"en":163,"th":163},"JS2GO","2025-08-11 03:41:08.820Z","2026-04-25 02:32:14.339Z","ova8s0y8m9x3vmb","compilation-and-execution-javascript-vs-go","2026-05-15 21:00:32.429Z",259,"irskucy31wyh9ey","2025-07-21 02:00:56.021Z","Learn about the compilation and execution processes in JavaScript and Go, and understand the advantages and disadvantages of each language.","2026-05-06 08:37:42.375Z",{"alt":175,"cover_image_path":176,"created":177,"expand":178,"id":212,"published_at":213,"school_blog":208,"short_description":214,"title":175,"updated":215,"slug":209,"views":211},"EP 1: What is Tailwind CSS? Why Developers Worldwide Are Obsessed - Your Journey to Becoming a Pro","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F2b3ettpehwyavdi\u002F2_11zon_11_89zskq05bv.webp","2026-03-04 08:26:55.798Z",{"keywords":179,"locale":202,"school_blog":203},[180,185,190,195,200,201],{"collectionId":12,"collectionName":13,"created":181,"created_by":15,"id":182,"name":183,"updated":184,"updated_by":15},"2026-03-04 08:26:52.948Z","uoyk7h868r34o3a","Web Design","2026-04-10 16:07:35.963Z",{"collectionId":12,"collectionName":13,"created":186,"created_by":15,"id":187,"name":188,"updated":189,"updated_by":15},"2026-03-04 08:19:55.412Z","hz7yzm54i2o6cl7","web development","2026-04-10 16:07:24.402Z",{"collectionId":12,"collectionName":13,"created":191,"created_by":15,"id":192,"name":193,"updated":194,"updated_by":15},"2026-03-04 08:26:53.730Z","r9l0awn967x2y3m","Bootstrap vs Tailwind","2026-04-10 16:07:36.243Z",{"collectionId":12,"collectionName":13,"created":196,"created_by":15,"id":197,"name":198,"updated":199,"updated_by":15},"2026-03-04 08:26:45.284Z","4rzdk0vis9kf77i","CSS Framework","2026-04-10 16:07:34.310Z",{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":45,"collectionId":46,"collectionName":47,"created":15,"expand":204,"id":208,"slug":209,"updated":210,"views":211},{"category":205},{"blogIds":206,"collectionId":51,"collectionName":52,"created":53,"created_by":15,"id":45,"image":54,"image_alt":15,"image_path":55,"label":207,"name":27,"priority":57,"publish_at":58,"scheduled_at":15,"status":59,"updated":60,"updated_by":15},[],{"en":27,"th":27},"kp7ggg8huwjyhz8","ep1-what-is-tailwind-css-utility-first-framework","2026-05-21 23:28:01.261Z",228,"2b3ettpehwyavdi","2025-07-18 02:15:05.941Z","Start learning Tailwind CSS - the Utility-First CSS Framework that's changing how developers worldwide think about writing CSS. Compare with Bootstrap, learn 3 installation methods, and begin your journey to becoming a Tailwind CSS pro in 10 episodes.","2026-05-12 01:14:31.673Z",{"alt":217,"cover_image_path":218,"created":219,"expand":220,"id":264,"published_at":265,"school_blog":261,"short_description":266,"title":217,"updated":267,"slug":262,"views":211},"EP.68 Adding Security Enhancements and Attack Prevention Features in WebSocket Chat","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fku74e3hfb6h8slg\u002F108_11zon_1_h3ztfxqkc4.webp","2026-03-04 08:48:09.334Z",{"keywords":221,"locale":247,"school_blog":248},[222,227,232,237,242],{"collectionId":12,"collectionName":13,"created":223,"created_by":15,"id":224,"name":225,"updated":226,"updated_by":15},"2026-03-04 08:48:05.933Z","u3p6qwqfjlbecdp","gRPC WebSocket","2026-04-10 16:13:40.266Z",{"collectionId":12,"collectionName":13,"created":228,"created_by":15,"id":229,"name":230,"updated":231,"updated_by":15},"2026-03-04 08:48:08.782Z","bpa86cva904kwqe","WebSocket Chat API","2026-04-10 16:13:41.104Z",{"collectionId":12,"collectionName":13,"created":233,"created_by":15,"id":234,"name":235,"updated":236,"updated_by":15},"2026-03-04 08:48:07.292Z","ydqrw1or02rlp64","gRPC Go","2026-04-10 16:13:40.693Z",{"collectionId":12,"collectionName":13,"created":238,"created_by":15,"id":239,"name":240,"updated":241,"updated_by":15},"2026-03-04 08:47:27.531Z","8i5bikzi4dzlpgq","WebSocket real-time communication","2026-04-10 16:13:28.896Z",{"collectionId":12,"collectionName":13,"created":243,"created_by":15,"id":244,"name":245,"updated":246,"updated_by":15},"2026-03-04 08:44:13.770Z","ij1u9pugpnctjvk","WebSocket Security","2026-04-10 16:12:41.774Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":249,"collectionId":46,"collectionName":47,"created":15,"expand":250,"id":261,"slug":262,"updated":263,"views":211},"wqxt7ag2gn7xcmk",{"category":251},{"blogIds":252,"collectionId":51,"collectionName":52,"created":253,"created_by":15,"id":249,"image":254,"image_alt":15,"image_path":255,"label":256,"name":257,"priority":258,"publish_at":259,"scheduled_at":15,"status":59,"updated":260,"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":257,"th":257},"Golang The Series",1,"2026-03-16 04:39:38.440Z","2026-04-25 02:32:15.470Z","f6wqbz7ts26d54y","security-enhancements-websocket-chat","2026-05-23 06:18:20.755Z","ku74e3hfb6h8slg","2025-07-17 10:48:32.461Z","Learn how to add security enhancements and attack prevention features in WebSocket Chat to ensure secure communication and prevent malicious activities like Cross-Site WebSocket Hijacking (CSWSH) and Denial of Service (DoS) attacks.","2026-05-06 08:38:19.004Z",{"alt":269,"cover_image_path":270,"created":271,"expand":272,"id":309,"published_at":310,"school_blog":305,"short_description":311,"title":269,"updated":312,"slug":306,"views":308},"EP.67 Creating an Audit Log System in WebSocket Server","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fmko6iyc0ax58sv9\u002F106_11zon_jdzh2oges9.webp","2026-03-04 08:48:13.031Z",{"keywords":273,"locale":299,"school_blog":300},[274,279,284,289,294],{"collectionId":12,"collectionName":13,"created":275,"created_by":15,"id":276,"name":277,"updated":278,"updated_by":15},"2026-03-04 08:48:10.361Z","xkbq3wpk0l8ay07","WebSocket audit log","2026-04-10 16:13:41.798Z",{"collectionId":12,"collectionName":13,"created":280,"created_by":15,"id":281,"name":282,"updated":283,"updated_by":15},"2026-03-04 08:48:10.733Z","jlt3ls9txrjdazr","WebSocket activity tracking","2026-04-10 16:13:41.935Z",{"collectionId":12,"collectionName":13,"created":285,"created_by":15,"id":286,"name":287,"updated":288,"updated_by":15},"2026-03-04 08:48:10.919Z","2kuwy2wtyko9i05","Golang WebSocket logging","2026-04-10 16:13:42.002Z",{"collectionId":12,"collectionName":13,"created":290,"created_by":15,"id":291,"name":292,"updated":293,"updated_by":15},"2026-03-04 08:48:11.228Z","q58wplewf8pye8e","User activity WebSocket","2026-04-10 16:13:42.155Z",{"collectionId":12,"collectionName":13,"created":295,"created_by":15,"id":296,"name":297,"updated":298,"updated_by":15},"2026-03-04 08:48:12.623Z","e6vxecfv05gri89","WebSocket server logging","2026-04-10 16:13:42.592Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":249,"collectionId":46,"collectionName":47,"created":15,"expand":301,"id":305,"slug":306,"updated":307,"views":308},{"category":302},{"blogIds":303,"collectionId":51,"collectionName":52,"created":253,"created_by":15,"id":249,"image":254,"image_alt":15,"image_path":255,"label":304,"name":257,"priority":258,"publish_at":259,"scheduled_at":15,"status":59,"updated":260,"updated_by":15},[],{"en":257,"th":257},"vgfsb9f5tx6cg3u","audit-log-websocket-server","2026-05-14 18:12:16.200Z",232,"mko6iyc0ax58sv9","2025-07-17 01:50:08.043Z","Learn how to create an Audit Log system in WebSocket Server to track and monitor user activities within the WebSocket Chat securely and efficiently.","2026-05-06 08:38:19.195Z",{"alt":314,"cover_image_path":315,"created":316,"expand":317,"id":341,"published_at":342,"school_blog":337,"short_description":343,"title":314,"updated":344,"slug":338,"views":340},"JS2GO EP.3 Transitioning from JavaScript to Go: What You Need to Know Before Getting Started with Go","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fxuvy5g8guvj3j8m\u002F6_11zon_xiy81kp3ei.webp","2026-03-04 08:27:06.300Z",{"keywords":318,"locale":331,"school_blog":332},[319,324,329,330],{"collectionId":12,"collectionName":13,"created":320,"created_by":15,"id":321,"name":322,"updated":323,"updated_by":15},"2026-03-04 08:26:59.959Z","oddvf2vqeu8ukki","Go for developers","2026-04-10 16:07:37.372Z",{"collectionId":12,"collectionName":13,"created":325,"created_by":15,"id":326,"name":327,"updated":328,"updated_by":15},"2026-03-04 08:27:02.531Z","wn3umvqjpcfcdxh","Transitioning from JavaScript to Go","2026-04-10 16:07:37.876Z",{"collectionId":12,"collectionName":13,"created":144,"created_by":15,"id":145,"name":146,"updated":147,"updated_by":15},{"collectionId":12,"collectionName":13,"created":149,"created_by":15,"id":150,"name":151,"updated":152,"updated_by":15},{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":155,"collectionId":46,"collectionName":47,"created":15,"expand":333,"id":337,"slug":338,"updated":339,"views":340},{"category":334},{"blogIds":335,"collectionId":51,"collectionName":52,"created":159,"created_by":15,"id":155,"image":160,"image_alt":15,"image_path":161,"label":336,"name":163,"priority":57,"publish_at":164,"scheduled_at":15,"status":59,"updated":165,"updated_by":15},[],{"en":163,"th":163},"i1qqus7b4yi6pea","from-javascript-to-go-what-you-need-to-know","2026-05-22 01:47:01.880Z",279,"xuvy5g8guvj3j8m","2025-07-16 05:02:59.042Z","Learn the essential steps and considerations before you start working with Go, including installation, setting up Go Modules, understanding the Go runtime, and the necessary tools for development.","2026-05-06 08:37:42.700Z",{"alt":346,"cover_image_path":347,"created":348,"expand":349,"id":384,"published_at":385,"school_blog":380,"short_description":386,"title":346,"updated":387,"slug":381,"views":383},"JS2GO EP.2 The Basics: How JavaScript and Go Differ?","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Faaz22qysws6syku\u002F4_11zon_5_nisml3hknc.webp","2026-03-04 08:27:06.503Z",{"keywords":350,"locale":374,"school_blog":375},[351,352,353,354,359,364,369],{"collectionId":12,"collectionName":13,"created":149,"created_by":15,"id":150,"name":151,"updated":152,"updated_by":15},{"collectionId":12,"collectionName":13,"created":144,"created_by":15,"id":145,"name":146,"updated":147,"updated_by":15},{"collectionId":12,"collectionName":13,"created":129,"created_by":15,"id":130,"name":131,"updated":132,"updated_by":15},{"collectionId":12,"collectionName":13,"created":355,"created_by":15,"id":356,"name":357,"updated":358,"updated_by":15},"2026-03-04 08:24:43.639Z","mjcndls2y3h9ob6","Error Handling","2026-04-10 16:07:29.897Z",{"collectionId":12,"collectionName":13,"created":360,"created_by":15,"id":361,"name":362,"updated":363,"updated_by":15},"2026-03-04 08:27:02.927Z","dptjn49w7xukqr7","Syntax","2026-04-10 16:07:37.966Z",{"collectionId":12,"collectionName":13,"created":365,"created_by":15,"id":366,"name":367,"updated":368,"updated_by":15},"2026-03-04 08:27:03.313Z","n1eqjd4qznwpb8n","programming languages","2026-04-10 16:07:38.053Z",{"collectionId":12,"collectionName":13,"created":370,"created_by":15,"id":371,"name":372,"updated":373,"updated_by":15},"2026-03-04 08:26:59.195Z","gab60xd583s3qaw","Superdev School","2026-04-10 16:07:37.087Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":155,"collectionId":46,"collectionName":47,"created":15,"expand":376,"id":380,"slug":381,"updated":382,"views":383},{"category":377},{"blogIds":378,"collectionId":51,"collectionName":52,"created":159,"created_by":15,"id":155,"image":160,"image_alt":15,"image_path":161,"label":379,"name":163,"priority":57,"publish_at":164,"scheduled_at":15,"status":59,"updated":165,"updated_by":15},[],{"en":163,"th":163},"nrvmv21txad2n7a","javascript-vs-go-differences","2026-05-12 19:25:29.252Z",309,"aaz22qysws6syku","2025-07-15 01:48:50.419Z","Learn the key differences between JavaScript and Go in terms of Syntax, Error Handling, and Design Principles, helping you choose the right language for your projects.","2026-05-06 08:37:42.994Z",{"alt":389,"cover_image_path":390,"created":391,"expand":392,"id":429,"published_at":430,"school_blog":425,"short_description":431,"title":389,"updated":432,"slug":426,"views":428},"EP.66 Using Golang with JSON Web Tokens (JWT) for Authentication","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fu7yvaw7ktbmbvum\u002F104_11zon_ebvhxt5c7j.webp","2026-03-04 08:48:14.682Z",{"keywords":393,"locale":419,"school_blog":420},[394,399,404,409,414],{"collectionId":12,"collectionName":13,"created":395,"created_by":15,"id":396,"name":397,"updated":398,"updated_by":15},"2026-03-04 08:48:11.965Z","geol355p3gu88f8","Golang JWT authentication","2026-04-10 16:13:42.358Z",{"collectionId":12,"collectionName":13,"created":400,"created_by":15,"id":401,"name":402,"updated":403,"updated_by":15},"2026-03-04 08:44:42.406Z","julxx94rca568ku","WebSocket Authentication","2026-04-10 16:12:48.917Z",{"collectionId":12,"collectionName":13,"created":405,"created_by":15,"id":406,"name":407,"updated":408,"updated_by":15},"2026-03-04 08:48:13.005Z","hlqh116p2e69l2m","JWT token Golang","2026-04-10 16:13:42.688Z",{"collectionId":12,"collectionName":13,"created":410,"created_by":15,"id":411,"name":412,"updated":413,"updated_by":15},"2026-03-04 08:48:13.496Z","j7db6kt1a6we7yz","WebSocket user login","2026-04-10 16:13:42.924Z",{"collectionId":12,"collectionName":13,"created":415,"created_by":15,"id":416,"name":417,"updated":418,"updated_by":15},"2026-03-04 08:48:14.222Z","iqf8szta6ga2x6g","WebSocket server authentication","2026-04-10 16:13:43.106Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":249,"collectionId":46,"collectionName":47,"created":15,"expand":421,"id":425,"slug":426,"updated":427,"views":428},{"category":422},{"blogIds":423,"collectionId":51,"collectionName":52,"created":253,"created_by":15,"id":249,"image":254,"image_alt":15,"image_path":255,"label":424,"name":257,"priority":258,"publish_at":259,"scheduled_at":15,"status":59,"updated":260,"updated_by":15},[],{"en":257,"th":257},"hhnqut20vjry7wq","golang-jwt-authentication-websocket","2026-05-19 09:13:04.623Z",277,"u7yvaw7ktbmbvum","2025-07-14 02:26:52.220Z","Learn how to implement JSON Web Tokens (JWT) in Golang to create a secure and efficient authentication system in WebSocket Chat!","2026-04-22 07:10:09.328Z",{"alt":434,"cover_image_path":435,"created":436,"expand":437,"id":473,"published_at":474,"school_blog":470,"short_description":475,"title":434,"updated":476,"slug":471,"views":308},"EP.65 Message Filtering in WebSocket Chat","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fuymtos7qordq74d\u002F102_11zon_yvqyw802x2.webp","2026-03-04 08:48:18.569Z",{"keywords":438,"locale":464,"school_blog":465},[439,444,449,454,459],{"collectionId":12,"collectionName":13,"created":440,"created_by":15,"id":441,"name":442,"updated":443,"updated_by":15},"2026-03-04 08:48:16.045Z","oquh1nk04vozvr7","WebSocket message filtering","2026-04-10 16:13:43.668Z",{"collectionId":12,"collectionName":13,"created":445,"created_by":15,"id":446,"name":447,"updated":448,"updated_by":15},"2026-03-04 08:48:16.346Z","u0jh247dpv2rlv3","Message filtering WebSocket","2026-04-10 16:13:43.796Z",{"collectionId":12,"collectionName":13,"created":450,"created_by":15,"id":451,"name":452,"updated":453,"updated_by":15},"2026-03-04 08:45:10.623Z","2zhfdpu8sy1xeju","Golang WebSocket","2026-04-10 16:12:55.126Z",{"collectionId":12,"collectionName":13,"created":455,"created_by":15,"id":456,"name":457,"updated":458,"updated_by":15},"2026-03-04 08:48:16.807Z","a5bvi0h0c8nu1ep","Chat moderation WebSocket","2026-04-10 16:13:44.074Z",{"collectionId":12,"collectionName":13,"created":460,"created_by":15,"id":461,"name":462,"updated":463,"updated_by":15},"2026-03-04 08:48:17.444Z","fz8kzj8k6swcpww","WebSocket chat security","2026-04-10 16:13:44.270Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":249,"collectionId":46,"collectionName":47,"created":15,"expand":466,"id":470,"slug":471,"updated":472,"views":308},{"category":467},{"blogIds":468,"collectionId":51,"collectionName":52,"created":253,"created_by":15,"id":249,"image":254,"image_alt":15,"image_path":255,"label":469,"name":257,"priority":258,"publish_at":259,"scheduled_at":15,"status":59,"updated":260,"updated_by":15},[],{"en":257,"th":257},"h7yv6ksm6bs53t7","message-filtering-websocket-chat","2026-05-12 15:16:58.963Z","uymtos7qordq74d","2025-07-09 03:16:46.930Z","Learn how to implement Message Filtering in WebSocket Chat to filter inappropriate messages and control chat content in real-time!","2026-05-06 08:38:19.765Z",{"alt":478,"cover_image_path":479,"created":480,"expand":481,"id":506,"published_at":507,"school_blog":502,"short_description":508,"title":478,"updated":509,"slug":503,"views":505},"JS2GO EP.1 Getting Started from JavaScript to Go: Fundamentals Every Developer Should Know","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fv4fpwl5tz5j1xo6\u002F2_11zon_9_ohk9jm4u9h.webp","2026-03-04 08:27:11.817Z",{"keywords":482,"locale":496,"school_blog":497},[483,484,489,494,495],{"collectionId":12,"collectionName":13,"created":320,"created_by":15,"id":321,"name":322,"updated":323,"updated_by":15},{"collectionId":12,"collectionName":13,"created":485,"created_by":15,"id":486,"name":487,"updated":488,"updated_by":15},"2026-03-04 08:27:05.783Z","0jwildm6v5wr5p7","programming fundamentals","2026-04-10 16:07:38.216Z",{"collectionId":12,"collectionName":13,"created":490,"created_by":15,"id":491,"name":492,"updated":493,"updated_by":15},"2026-03-04 08:27:07.252Z","nth8qqv9hk1cugn","From JavaScript to Go","2026-04-10 16:07:38.278Z",{"collectionId":12,"collectionName":13,"created":144,"created_by":15,"id":145,"name":146,"updated":147,"updated_by":15},{"collectionId":12,"collectionName":13,"created":149,"created_by":15,"id":150,"name":151,"updated":152,"updated_by":15},{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":155,"collectionId":46,"collectionName":47,"created":15,"expand":498,"id":502,"slug":503,"updated":504,"views":505},{"category":499},{"blogIds":500,"collectionId":51,"collectionName":52,"created":159,"created_by":15,"id":155,"image":160,"image_alt":15,"image_path":161,"label":501,"name":163,"priority":57,"publish_at":164,"scheduled_at":15,"status":59,"updated":165,"updated_by":15},[],{"en":163,"th":163},"5ejyd23037m1tc0","from-javascript-to-go","2026-05-12 19:30:53.349Z",415,"v4fpwl5tz5j1xo6","2025-07-08 08:29:31.224Z","Learn the basics of JavaScript and Go, along with important differences in syntax, memory management, and how each language is used for different development tasks.","2026-05-06 08:37:43.281Z",{"alt":511,"cover_image_path":512,"created":513,"expand":514,"id":551,"published_at":552,"school_blog":547,"short_description":553,"title":511,"updated":554,"slug":548,"views":550},"EP.64 Error Handling in WebSocket Server with Golang","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fhb4m5givu1cizhm\u002F100_11zon_dmtghk0hcs.webp","2026-03-04 08:48:20.225Z",{"keywords":515,"locale":541,"school_blog":542},[516,521,526,531,536],{"collectionId":12,"collectionName":13,"created":517,"created_by":15,"id":518,"name":519,"updated":520,"updated_by":15},"2026-03-04 08:48:18.111Z","tyn6jg7nxz6ddwe","WebSocket error handling","2026-04-10 16:13:44.450Z",{"collectionId":12,"collectionName":13,"created":522,"created_by":15,"id":523,"name":524,"updated":525,"updated_by":15},"2026-03-04 08:48:18.819Z","ds7wm2p8wgbmnhk","WebSocket server error","2026-04-10 16:13:44.633Z",{"collectionId":12,"collectionName":13,"created":527,"created_by":15,"id":528,"name":529,"updated":530,"updated_by":15},"2026-03-04 08:48:19.353Z","1fmuhlhumk88q0p","Golang error management","2026-04-10 16:13:44.919Z",{"collectionId":12,"collectionName":13,"created":532,"created_by":15,"id":533,"name":534,"updated":535,"updated_by":15},"2026-03-04 08:48:19.561Z","gjpmvs03lrowj5x","WebSocket connection error","2026-04-10 16:13:44.991Z",{"collectionId":12,"collectionName":13,"created":537,"created_by":15,"id":538,"name":539,"updated":540,"updated_by":15},"2026-03-04 08:48:19.870Z","y0e3eeswfqaorgw","Error handling Golang WebSocket","2026-04-10 16:13:45.163Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":249,"collectionId":46,"collectionName":47,"created":15,"expand":543,"id":547,"slug":548,"updated":549,"views":550},{"category":544},{"blogIds":545,"collectionId":51,"collectionName":52,"created":253,"created_by":15,"id":249,"image":254,"image_alt":15,"image_path":255,"label":546,"name":257,"priority":258,"publish_at":259,"scheduled_at":15,"status":59,"updated":260,"updated_by":15},[],{"en":257,"th":257},"iotx8smkq7kievo","error-handling-websocket-server-golang","2026-05-21 16:12:01.184Z",240,"hb4m5givu1cizhm","2025-07-08 02:21:10.911Z","Learn how to implement Error Handling in a WebSocket Server with Golang to make your WebSocket system resilient and capable of managing errors efficiently!","2026-05-06 08:38:20.067Z",18,12,410,35]