[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"academy-blogs-en-19-12-Future%252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252520Skills-all-all-createdAt:desc-default":3},{"data":4,"page":603,"perPage":604,"totalItems":605,"totalPages":606},[5,75,123,165,226,278,333,385,432,482,529,573],{"alt":6,"cover_image_path":7,"created":8,"expand":9,"id":71,"published_at":72,"school_blog":67,"short_description":73,"title":6,"updated":74,"slug":68,"views":70},"EP.61 Creating a Chat Room Management System in WebSocket","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F4q5l5m8aawahc42\u002F94_11zon_79hhwlzm6j.webp","2026-03-04 08:48:28.963Z",{"keywords":10,"locale":39,"school_blog":49},[11,19,24,29,34],{"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:48:23.275Z","","1i0dr53eb0gzopq","WebSocket app development","2026-04-10 16:13:46.332Z",{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},"2026-03-04 08:48:26.531Z","fkyqvsheo2jrtgp","Real-time group messaging","2026-04-10 16:13:47.753Z",{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},"2026-03-04 08:48:26.832Z","ke2vgz3360nnxdd","Multi-user WebSocket chat","2026-04-10 16:13:47.824Z",{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},"2026-03-04 08:48:27.193Z","rpe7cuieidlcx80","Chat room management WebSocket","2026-04-10 16:13:47.977Z",{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},"2026-03-04 08:48:27.456Z","6apcqgw22qzbwor","WebSocket chat rooms","2026-04-10 16:13:48.045Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},"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":50,"collectionId":51,"collectionName":52,"created":15,"expand":53,"id":67,"slug":68,"updated":69,"views":70},"wqxt7ag2gn7xcmk","pbc_2105096300","school_blogs",{"category":54},{"blogIds":55,"collectionId":56,"collectionName":57,"created":58,"created_by":15,"id":50,"image":59,"image_alt":15,"image_path":60,"label":61,"name":62,"priority":63,"publish_at":64,"scheduled_at":15,"status":65,"updated":66,"updated_by":15},[],"sclcatblg987654321","school_category_blogs","2026-03-04 08:33:53.210Z","59ty92ns80w_15oc1implw.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fwqxt7ag2gn7xcmk\u002F59ty92ns80w_15oc1implw.png",{"en":62,"th":62},"Golang The Series",1,"2026-03-16 04:39:38.440Z","published","2026-04-25 02:32:15.470Z","6sy7p461buh2px1","chat-room-management-websocket","2026-05-13 06:53:33.405Z",243,"4q5l5m8aawahc42","2025-07-04 04:17:29.753Z","Learn how to create a Chat Room Management system in WebSocket to allow users to create, join, and manage their own chat rooms efficiently.","2026-05-06 08:38:21.033Z",{"alt":76,"cover_image_path":77,"created":78,"expand":79,"id":119,"published_at":120,"school_blog":115,"short_description":121,"title":76,"updated":122,"slug":116,"views":118},"How to Use Git Like a Pro (Even If You Forget Commands Often)","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F4k80ibds0gae5sl\u002F2_2_11zon_x4f3b4teq7.webp","2026-03-04 08:48:30.770Z",{"keywords":80,"locale":101,"school_blog":102},[81,86,91,96],{"collectionId":12,"collectionName":13,"created":82,"created_by":15,"id":83,"name":84,"updated":85,"updated_by":15},"2026-03-04 08:48:29.501Z","wu8emj28y3g8j1o","Git for developers","2026-04-10 16:13:48.458Z",{"collectionId":12,"collectionName":13,"created":87,"created_by":15,"id":88,"name":89,"updated":90,"updated_by":15},"2026-03-04 08:48:29.870Z","nmsu63wek61b3re","Git usage","2026-04-10 16:13:48.556Z",{"collectionId":12,"collectionName":13,"created":92,"created_by":15,"id":93,"name":94,"updated":95,"updated_by":15},"2026-03-04 08:48:30.148Z","5o4qy8uvp42fg3u","Git basics","2026-04-10 16:13:48.652Z",{"collectionId":12,"collectionName":13,"created":97,"created_by":15,"id":98,"name":99,"updated":100,"updated_by":15},"2026-03-04 08:44:36.134Z","pg679bitpkii9vv","Git","2026-04-10 16:12:47.459Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":103,"collectionId":51,"collectionName":52,"created":15,"expand":104,"id":115,"slug":116,"updated":117,"views":118},"qn0d7xwatkleou1",{"category":105},{"blogIds":106,"collectionId":56,"collectionName":57,"created":107,"created_by":15,"id":103,"image":108,"image_alt":15,"image_path":109,"label":110,"name":111,"priority":112,"publish_at":113,"scheduled_at":15,"status":65,"updated":114,"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":111,"th":111},"How to",0,"2025-02-04 08:40:59.666Z","2026-04-25 02:32:14.588Z","qc9u3iu2e16cwr4","how-to-git-like-a-pro-even-if-you-forget","2026-05-13 11:32:49.229Z",216,"4k80ibds0gae5sl","2025-07-03 02:27:37.837Z","Forgetting Git commands? No worries. This article shows you how to think and work like a professional Git user — even if you keep your cheat sheet close.","2026-04-22 07:10:11.794Z",{"alt":124,"cover_image_path":125,"created":126,"expand":127,"id":161,"published_at":162,"school_blog":157,"short_description":163,"title":124,"updated":164,"slug":158,"views":160},"EP.60 Adding Group Chat Feature in WebSocket","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F42ie5j8f021wwzz\u002F92_11zon_9mwfgia1ob.webp","2026-03-04 08:48:28.631Z",{"keywords":128,"locale":151,"school_blog":152},[129,134,139,140,141,146],{"collectionId":12,"collectionName":13,"created":130,"created_by":15,"id":131,"name":132,"updated":133,"updated_by":15},"2026-03-04 08:48:27.886Z","ymx9t9j2b8g259k","WebSocket group chat","2026-04-10 16:13:48.137Z",{"collectionId":12,"collectionName":13,"created":135,"created_by":15,"id":136,"name":137,"updated":138,"updated_by":15},"2026-03-04 08:48:28.118Z","mke46zb9cmeoi7c","Group chat WebSocket","2026-04-10 16:13:48.300Z",{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},{"collectionId":12,"collectionName":13,"created":142,"created_by":15,"id":143,"name":144,"updated":145,"updated_by":15},"2026-03-04 08:48:28.330Z","kr1413m4fzwuc0h","Multi-user chat WebSocket","2026-04-10 16:13:48.361Z",{"collectionId":12,"collectionName":13,"created":147,"created_by":15,"id":148,"name":149,"updated":150,"updated_by":15},"2026-03-04 08:20:11.547Z","ey3puyme01a9bsw","Go","2026-04-10 16:07:25.893Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":50,"collectionId":51,"collectionName":52,"created":15,"expand":153,"id":157,"slug":158,"updated":159,"views":160},{"category":154},{"blogIds":155,"collectionId":56,"collectionName":57,"created":58,"created_by":15,"id":50,"image":59,"image_alt":15,"image_path":60,"label":156,"name":62,"priority":63,"publish_at":64,"scheduled_at":15,"status":65,"updated":66,"updated_by":15},[],{"en":62,"th":62},"9f3tyn59u5noidm","group-chat-websocket","2026-05-14 19:02:10.870Z",256,"42ie5j8f021wwzz","2025-07-02 02:20:22.271Z","Learn how to add a Group Chat feature in WebSocket to allow users to join group chats and send messages in groups using WebSocket.","2026-05-06 08:38:21.321Z",{"alt":166,"cover_image_path":167,"created":168,"expand":169,"id":222,"published_at":223,"school_blog":218,"short_description":224,"title":166,"updated":225,"slug":219,"views":221},"EP.59 Making the WebSocket Server Scalable with Redis","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F4x6jdtxjjv7xczr\u002F90_11zon_ib6z5oz6h7.webp","2026-03-04 08:48:34.300Z",{"keywords":170,"locale":212,"school_blog":213},[171,176,177,182,187,192,197,202,207],{"collectionId":12,"collectionName":13,"created":172,"created_by":15,"id":173,"name":174,"updated":175,"updated_by":15},"2026-03-04 08:48:30.822Z","9oaikj2kr22tbp3","server scaling","2026-04-10 16:13:48.922Z",{"collectionId":12,"collectionName":13,"created":147,"created_by":15,"id":148,"name":149,"updated":150,"updated_by":15},{"collectionId":12,"collectionName":13,"created":178,"created_by":15,"id":179,"name":180,"updated":181,"updated_by":15},"2026-03-04 08:48:31.334Z","mc8i2g75noi47kf","Redis chat app","2026-04-10 16:13:49.128Z",{"collectionId":12,"collectionName":13,"created":183,"created_by":15,"id":184,"name":185,"updated":186,"updated_by":15},"2026-03-04 08:48:05.655Z","jbilbz5mzbvhi7v","WebSocket performance","2026-04-10 16:13:40.132Z",{"collectionId":12,"collectionName":13,"created":188,"created_by":15,"id":189,"name":190,"updated":191,"updated_by":15},"2026-03-04 08:48:31.837Z","ahb1ycvssncgam5","WebSocket chat app","2026-04-10 16:13:49.440Z",{"collectionId":12,"collectionName":13,"created":193,"created_by":15,"id":194,"name":195,"updated":196,"updated_by":15},"2026-03-04 08:48:32.209Z","48y556uc6leq7y0","real-time chat WebSocket","2026-04-10 16:13:49.571Z",{"collectionId":12,"collectionName":13,"created":198,"created_by":15,"id":199,"name":200,"updated":201,"updated_by":15},"2026-03-04 08:48:32.974Z","eisfqhcev64quw9","scalable WebSocket server","2026-04-10 16:13:49.769Z",{"collectionId":12,"collectionName":13,"created":203,"created_by":15,"id":204,"name":205,"updated":206,"updated_by":15},"2026-03-04 08:48:33.630Z","0ywh76lu4wdls2m","Redis WebSocket","2026-04-10 16:13:49.957Z",{"collectionId":12,"collectionName":13,"created":208,"created_by":15,"id":209,"name":210,"updated":211,"updated_by":15},"2026-03-04 08:48:01.927Z","vcknw4qrrifzlfg","WebSocket scalability","2026-04-10 16:13:39.152Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":50,"collectionId":51,"collectionName":52,"created":15,"expand":214,"id":218,"slug":219,"updated":220,"views":221},{"category":215},{"blogIds":216,"collectionId":56,"collectionName":57,"created":58,"created_by":15,"id":50,"image":59,"image_alt":15,"image_path":60,"label":217,"name":62,"priority":63,"publish_at":64,"scheduled_at":15,"status":65,"updated":66,"updated_by":15},[],{"en":62,"th":62},"mlvpzlynlgvljj8","scalability-websocket-redis","2026-05-14 08:32:37.969Z",347,"4x6jdtxjjv7xczr","2025-07-01 04:30:06.188Z","Learn how to make your WebSocket Server scalable by using Redis to handle large numbers of connections and improve message delivery performance in real-time chat applications.","2026-04-22 07:10:12.207Z",{"alt":227,"cover_image_path":228,"created":229,"expand":230,"id":274,"published_at":275,"school_blog":270,"short_description":276,"title":227,"updated":277,"slug":271,"views":273},"Which Programming Languages Work Best with AI?","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fzh4oewur3kxnykg\u002F2_11zon_424ey57he3.webp","2026-03-04 08:48:35.459Z",{"keywords":231,"locale":257,"school_blog":258},[232,237,242,247,252],{"collectionId":12,"collectionName":13,"created":233,"created_by":15,"id":234,"name":235,"updated":236,"updated_by":15},"2026-03-04 08:48:32.598Z","hg06r0znltfqyto","programming with AI","2026-04-10 16:13:49.705Z",{"collectionId":12,"collectionName":13,"created":238,"created_by":15,"id":239,"name":240,"updated":241,"updated_by":15},"2026-03-04 08:44:28.528Z","kve0p3cvzvjyqhp","learn programming","2026-04-10 16:12:45.526Z",{"collectionId":12,"collectionName":13,"created":243,"created_by":15,"id":244,"name":245,"updated":246,"updated_by":15},"2026-03-04 08:48:33.357Z","feqcii21l0vjseo","AI for beginners","2026-04-10 16:13:49.866Z",{"collectionId":12,"collectionName":13,"created":248,"created_by":15,"id":249,"name":250,"updated":251,"updated_by":15},"2026-03-04 08:48:33.939Z","fzg534i4fnuqgzn","best language for AI","2026-04-10 16:13:50.054Z",{"collectionId":12,"collectionName":13,"created":253,"created_by":15,"id":254,"name":255,"updated":256,"updated_by":15},"2026-03-04 08:46:16.387Z","gbl63t7nilc5pcj","AI coding","2026-04-10 16:13:11.246Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":259,"collectionId":51,"collectionName":52,"created":15,"expand":260,"id":270,"slug":271,"updated":272,"views":273},"pkuzfil3b4ug2ea",{"category":261},{"blogIds":262,"collectionId":56,"collectionName":57,"created":263,"created_by":15,"id":259,"image":264,"image_alt":15,"image_path":265,"label":266,"name":267,"priority":112,"publish_at":268,"scheduled_at":15,"status":65,"updated":269,"updated_by":15},[],"2026-03-04 08:31:47.860Z","3w9eadde0ql_vquww3nx7o.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fpkuzfil3b4ug2ea\u002F3w9eadde0ql_vquww3nx7o.png",{"en":267,"th":267},"Cutting-Edge Tech","2025-01-27 08:43:38.395Z","2026-04-25 02:32:14.847Z","dzusec1wa0it7y5","best-languages-for-ai-coding","2026-05-16 08:04:13.833Z",391,"zh4oewur3kxnykg","2025-06-30 09:18:21.906Z","Not all programming languages work equally well with AI. This article explores which languages AI understands best—and which ones give you the biggest boost when coding with AI assistance.","2026-04-22 07:10:12.528Z",{"alt":279,"cover_image_path":280,"created":281,"expand":282,"id":329,"published_at":330,"school_blog":326,"short_description":331,"title":279,"updated":332,"slug":327,"views":328},"EP.58 Adding a Push Notification Feature in WebSocket Chat","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fl4i4imdcgexzgct\u002F88_11zon_473ix1xt8z.webp","2026-03-04 08:48:38.007Z",{"keywords":283,"locale":320,"school_blog":321},[284,289,294,299,304,309,314,315],{"collectionId":12,"collectionName":13,"created":285,"created_by":15,"id":286,"name":287,"updated":288,"updated_by":15},"2026-03-04 08:48:35.607Z","rsvzi74wxb7fgkg","Push notification WebSocket","2026-04-10 16:13:50.376Z",{"collectionId":12,"collectionName":13,"created":290,"created_by":15,"id":291,"name":292,"updated":293,"updated_by":15},"2026-03-04 08:45:13.969Z","pyniezbvfdbyuyc","real-time notifications","2026-04-10 16:12:56.096Z",{"collectionId":12,"collectionName":13,"created":295,"created_by":15,"id":296,"name":297,"updated":298,"updated_by":15},"2026-03-04 08:48:35.998Z","k12bqrgg1jktbeq","WebSocket chat push notifications","2026-04-10 16:13:50.533Z",{"collectionId":12,"collectionName":13,"created":300,"created_by":15,"id":301,"name":302,"updated":303,"updated_by":15},"2026-03-04 08:48:36.198Z","2bk87nwjgolgc4t","Chat App Development","2026-04-10 16:13:50.662Z",{"collectionId":12,"collectionName":13,"created":305,"created_by":15,"id":306,"name":307,"updated":308,"updated_by":15},"2026-03-04 08:47:08.604Z","qgbhpvuawt0d7sv","real-time alerts","2026-04-10 16:13:24.200Z",{"collectionId":12,"collectionName":13,"created":310,"created_by":15,"id":311,"name":312,"updated":313,"updated_by":15},"2026-03-04 08:48:36.524Z","e4ajo6uxyr7u8et","WebSocket Feature","2026-04-10 16:13:50.796Z",{"collectionId":12,"collectionName":13,"created":147,"created_by":15,"id":148,"name":149,"updated":150,"updated_by":15},{"collectionId":12,"collectionName":13,"created":316,"created_by":15,"id":317,"name":318,"updated":319,"updated_by":15},"2026-03-04 08:48:36.895Z","ccyxp32uzuvwz0s","push notification service","2026-04-10 16:13:50.935Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":50,"collectionId":51,"collectionName":52,"created":15,"expand":322,"id":326,"slug":327,"updated":15,"views":328},{"category":323},{"blogIds":324,"collectionId":56,"collectionName":57,"created":58,"created_by":15,"id":50,"image":59,"image_alt":15,"image_path":60,"label":325,"name":62,"priority":63,"publish_at":64,"scheduled_at":15,"status":65,"updated":66,"updated_by":15},[],{"en":62,"th":62},"j7h3wxlxac9s4z4","push-notification-websocket-chat",244,"l4i4imdcgexzgct","2025-06-30 02:15:52.749Z","Learn how to add a Push Notification feature in WebSocket Chat to allow users to receive real-time notifications when new messages or updates are sent in the chat room.","2026-05-06 08:38:21.797Z",{"alt":334,"cover_image_path":335,"created":336,"expand":337,"id":381,"published_at":382,"school_blog":378,"short_description":383,"title":334,"updated":384,"slug":379,"views":380},"EP.57 Adding an Access Control Feature in WebSocket Chat","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F0lucevrldl8ufsq\u002F86_11zon_nsneespmry.webp","2026-03-04 08:48:40.368Z",{"keywords":338,"locale":372,"school_blog":373},[339,344,349,354,359,360,361,366,371],{"collectionId":12,"collectionName":13,"created":340,"created_by":15,"id":341,"name":342,"updated":343,"updated_by":15},"2026-03-04 08:48:37.762Z","8uw33w756fmqerq","Access control WebSocket","2026-04-10 16:13:51.290Z",{"collectionId":12,"collectionName":13,"created":345,"created_by":15,"id":346,"name":347,"updated":348,"updated_by":15},"2026-03-04 08:48:37.970Z","axhdcbnxy7jl4ge","WebSocket chat access","2026-04-10 16:13:51.423Z",{"collectionId":12,"collectionName":13,"created":350,"created_by":15,"id":351,"name":352,"updated":353,"updated_by":15},"2026-03-04 08:48:38.290Z","1nyt0wqcgvcl9vm","chat room access control","2026-04-10 16:13:51.490Z",{"collectionId":12,"collectionName":13,"created":355,"created_by":15,"id":356,"name":357,"updated":358,"updated_by":15},"2026-03-04 08:48:38.634Z","6lj1eoz26dsxxsy","user management in chat rooms","2026-04-10 16:13:51.644Z",{"collectionId":12,"collectionName":13,"created":310,"created_by":15,"id":311,"name":312,"updated":313,"updated_by":15},{"collectionId":12,"collectionName":13,"created":300,"created_by":15,"id":301,"name":302,"updated":303,"updated_by":15},{"collectionId":12,"collectionName":13,"created":362,"created_by":15,"id":363,"name":364,"updated":365,"updated_by":15},"2026-03-04 08:48:39.055Z","ktwpd8009t428ea","real-time access control","2026-04-10 16:13:51.710Z",{"collectionId":12,"collectionName":13,"created":367,"created_by":15,"id":368,"name":369,"updated":370,"updated_by":15},"2026-03-04 08:44:48.724Z","s6xhnfomy7n5ycp","WebSocket Server","2026-04-10 16:12:50.171Z",{"collectionId":12,"collectionName":13,"created":147,"created_by":15,"id":148,"name":149,"updated":150,"updated_by":15},{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":50,"collectionId":51,"collectionName":52,"created":15,"expand":374,"id":378,"slug":379,"updated":15,"views":380},{"category":375},{"blogIds":376,"collectionId":56,"collectionName":57,"created":58,"created_by":15,"id":50,"image":59,"image_alt":15,"image_path":60,"label":377,"name":62,"priority":63,"publish_at":64,"scheduled_at":15,"status":65,"updated":66,"updated_by":15},[],{"en":62,"th":62},"ielx8h08fimrsxc","access-control-websocket-chat",242,"0lucevrldl8ufsq","2025-06-27 11:12:02.624Z","Learn how to add an Access Control feature in WebSocket Chat to allow administrators to control who can access chat rooms based on set permissions.","2026-05-06 08:38:22.117Z",{"alt":386,"cover_image_path":387,"created":388,"expand":389,"id":428,"published_at":429,"school_blog":424,"short_description":430,"title":386,"updated":431,"slug":425,"views":427},"Types of Programming Languages: How to Choose Your First One as a Beginner","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fnodoricqyjsj0f4\u002Fimg_6065_hbhkir2r4z.webp","2026-03-04 08:48:46.107Z",{"keywords":390,"locale":411,"school_blog":412},[391,396,401,406],{"collectionId":12,"collectionName":13,"created":392,"created_by":15,"id":393,"name":394,"updated":395,"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":397,"created_by":15,"id":398,"name":399,"updated":400,"updated_by":15},"2026-03-04 08:46:30.713Z","yesmsftch5pd29p","learn to code","2026-04-10 16:13:15.138Z",{"collectionId":12,"collectionName":13,"created":402,"created_by":15,"id":403,"name":404,"updated":405,"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":407,"created_by":15,"id":408,"name":409,"updated":410,"updated_by":15},"2026-03-04 08:46:02.552Z","3kkyfr9ho5nx9cb","start coding","2026-04-10 16:13:07.481Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":413,"collectionId":51,"collectionName":52,"created":15,"expand":414,"id":424,"slug":425,"updated":426,"views":427},"spm4l1k5bgmhmmt",{"category":415},{"blogIds":416,"collectionId":56,"collectionName":57,"created":417,"created_by":15,"id":413,"image":418,"image_alt":15,"image_path":419,"label":420,"name":421,"priority":112,"publish_at":422,"scheduled_at":15,"status":65,"updated":423,"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":421,"th":421},"Knowledge","2026-03-18 02:25:41.222Z","2026-04-25 02:32:14.497Z","p3ku4u4a8r4wtj0","choose-your-first-programming-language","2026-05-13 10:13:23.705Z",232,"nodoricqyjsj0f4","2025-06-27 03:25:37.538Z","There are many types of programming languages—from web development to mobile apps and AI. But how do you choose the first one to start with? This article helps beginners understand the categories and find the best match for their goals.","2026-04-22 07:10:14.537Z",{"alt":433,"cover_image_path":434,"created":435,"expand":436,"id":478,"published_at":479,"school_blog":474,"short_description":480,"title":433,"updated":481,"slug":475,"views":477},"EP.56 Adding a Feature to Log Chat History in WebSocket Chat","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fatwd3uokt6ap39v\u002F84_11zon_3maxdm2euz.webp","2026-03-04 08:48:40.982Z",{"keywords":437,"locale":468,"school_blog":469},[438,443,448,453,454,455,456,461,466,467],{"collectionId":12,"collectionName":13,"created":439,"created_by":15,"id":440,"name":441,"updated":442,"updated_by":15},"2026-03-04 08:48:39.616Z","0tt9oz9nx3711ge","WebSocket chat history","2026-04-10 16:13:51.878Z",{"collectionId":12,"collectionName":13,"created":444,"created_by":15,"id":445,"name":446,"updated":447,"updated_by":15},"2026-03-04 08:48:39.993Z","cvqrwxwzdsgoz1u","Message History","2026-04-10 16:13:52.011Z",{"collectionId":12,"collectionName":13,"created":449,"created_by":15,"id":450,"name":451,"updated":452,"updated_by":15},"2026-03-04 08:48:40.444Z","m4s1ps57epl88o3","real-time chat history","2026-04-10 16:13:52.083Z",{"collectionId":12,"collectionName":13,"created":310,"created_by":15,"id":311,"name":312,"updated":313,"updated_by":15},{"collectionId":12,"collectionName":13,"created":300,"created_by":15,"id":301,"name":302,"updated":303,"updated_by":15},{"collectionId":12,"collectionName":13,"created":290,"created_by":15,"id":291,"name":292,"updated":293,"updated_by":15},{"collectionId":12,"collectionName":13,"created":457,"created_by":15,"id":458,"name":459,"updated":460,"updated_by":15},"2026-03-04 08:48:40.623Z","8jqwrmnr2t6ww6n","message storage","2026-04-10 16:13:52.170Z",{"collectionId":12,"collectionName":13,"created":462,"created_by":15,"id":463,"name":464,"updated":465,"updated_by":15},"2026-03-04 08:20:33.316Z","ln1ntwattzmxo0o","programming","2026-04-10 16:07:27.299Z",{"collectionId":12,"collectionName":13,"created":147,"created_by":15,"id":148,"name":149,"updated":150,"updated_by":15},{"collectionId":12,"collectionName":13,"created":367,"created_by":15,"id":368,"name":369,"updated":370,"updated_by":15},{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":50,"collectionId":51,"collectionName":52,"created":15,"expand":470,"id":474,"slug":475,"updated":476,"views":477},{"category":471},{"blogIds":472,"collectionId":56,"collectionName":57,"created":58,"created_by":15,"id":50,"image":59,"image_alt":15,"image_path":60,"label":473,"name":62,"priority":63,"publish_at":64,"scheduled_at":15,"status":65,"updated":66,"updated_by":15},[],{"en":62,"th":62},"50e85mmgv40xlhv","chat-history-websocket","2026-05-14 07:42:45.185Z",288,"atwd3uokt6ap39v","2025-06-26 02:14:53.660Z","Learn how to add a Chat History Logging feature in WebSocket Chat so that users can access past conversation logs easily, helping them track important messages.","2026-05-06 08:38:22.412Z",{"alt":483,"cover_image_path":484,"created":485,"expand":486,"id":525,"published_at":526,"school_blog":521,"short_description":527,"title":483,"updated":528,"slug":522,"views":524},"Task Prioritization Tools for Programmers","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fm6xww000i8w1zd7\u002F2_11zon_1_wk6gojpq6i.webp","2026-03-04 08:48:54.746Z",{"keywords":487,"locale":508,"school_blog":509},[488,493,498,503],{"collectionId":12,"collectionName":13,"created":489,"created_by":15,"id":490,"name":491,"updated":492,"updated_by":15},"2026-03-04 08:31:26.855Z","gm7zvudx341kzsm","Programmer","2026-04-10 16:07:40.730Z",{"collectionId":12,"collectionName":13,"created":494,"created_by":15,"id":495,"name":496,"updated":497,"updated_by":15},"2026-03-04 08:45:41.602Z","b3yghkzzdhlv3c6","Prioritization","2026-04-10 16:13:01.818Z",{"collectionId":12,"collectionName":13,"created":499,"created_by":15,"id":500,"name":501,"updated":502,"updated_by":15},"2026-03-04 08:48:53.536Z","mg776dnvbvu3ve9","Task Prioritization Tools","2026-04-10 16:13:55.378Z",{"collectionId":12,"collectionName":13,"created":504,"created_by":15,"id":505,"name":506,"updated":507,"updated_by":15},"2026-03-04 08:34:31.488Z","ogf8aolgxlwt0ys","Task Management","2026-04-10 16:08:16.463Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":510,"collectionId":51,"collectionName":52,"created":15,"expand":511,"id":521,"slug":522,"updated":523,"views":524},"jwhmeg2uxwz0bkp",{"category":512},{"blogIds":513,"collectionId":56,"collectionName":57,"created":514,"created_by":15,"id":510,"image":515,"image_alt":15,"image_path":516,"label":517,"name":518,"priority":112,"publish_at":519,"scheduled_at":15,"status":65,"updated":520,"updated_by":15},[],"2026-03-04 08:31:40.635Z","1qt33a4n2u3_lr23qy62xh.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fjwhmeg2uxwz0bkp\u002F1qt33a4n2u3_lr23qy62xh.png",{"en":518,"th":518},"Tools & Resources","2025-01-31 09:55:27.001Z","2026-04-25 02:32:14.689Z","yjowneaocaxpmmj","task-prioritization-tools-for-programmers","2026-05-12 05:35:16.963Z",240,"m6xww000i8w1zd7","2025-06-25 08:20:14.399Z","Prioritizing tasks is an essential skill for programmers. This article introduces tools and methods to help programmers prioritize tasks for improved work efficiency.","2026-05-06 08:38:24.112Z",{"alt":530,"cover_image_path":531,"created":532,"expand":533,"id":569,"published_at":570,"school_blog":566,"short_description":571,"title":530,"updated":572,"slug":567,"views":524},"Power BI for Beginners: How to Get Started and Create Basic Reports","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F7me0x7ovhbixycl\u002F2_11zon_1_lrzp4nie9k.webp","2026-03-04 08:48:58.115Z",{"keywords":534,"locale":560,"school_blog":561},[535,540,545,550,555],{"collectionId":12,"collectionName":13,"created":536,"created_by":15,"id":537,"name":538,"updated":539,"updated_by":15},"2026-03-04 08:48:55.439Z","k4zp9by9f9jb5pc","Power BI","2026-04-10 16:13:55.658Z",{"collectionId":12,"collectionName":13,"created":541,"created_by":15,"id":542,"name":543,"updated":544,"updated_by":15},"2026-03-04 08:48:55.756Z","epnoiaj51vkvy6p","Getting started with Power BI","2026-04-10 16:13:55.770Z",{"collectionId":12,"collectionName":13,"created":546,"created_by":15,"id":547,"name":548,"updated":549,"updated_by":15},"2026-03-04 08:48:56.158Z","d9yjncaq4bitl5e","Creating reports in Power BI","2026-04-10 16:13:55.889Z",{"collectionId":12,"collectionName":13,"created":551,"created_by":15,"id":552,"name":553,"updated":554,"updated_by":15},"2026-03-04 08:48:56.447Z","544h0gd2armt33u","Power BI for beginners","2026-04-10 16:13:56.085Z",{"collectionId":12,"collectionName":13,"created":556,"created_by":15,"id":557,"name":558,"updated":559,"updated_by":15},"2026-03-04 08:48:57.090Z","pdab2alziz1w28q","Creating Power BI dashboards","2026-04-10 16:13:56.306Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":510,"collectionId":51,"collectionName":52,"created":15,"expand":562,"id":566,"slug":567,"updated":568,"views":524},{"category":563},{"blogIds":564,"collectionId":56,"collectionName":57,"created":514,"created_by":15,"id":510,"image":515,"image_alt":15,"image_path":516,"label":565,"name":518,"priority":112,"publish_at":519,"scheduled_at":15,"status":65,"updated":520,"updated_by":15},[],{"en":518,"th":518},"h556wfywhuogrp4","power-bi-for-beginners-how-to-get-started-and-create-basic-reports","2026-05-13 02:50:32.724Z","7me0x7ovhbixycl","2025-06-24 10:42:35.497Z","This article will guide beginners on how to get started with Power BI, including steps to create basic reports and dashboards, helping you understand the tool's functionality and use it effectively.","2026-05-06 08:38:24.391Z",{"alt":574,"cover_image_path":575,"created":576,"expand":577,"id":599,"published_at":600,"school_blog":595,"short_description":601,"title":574,"updated":602,"slug":596,"views":598},"Coding Isn’t Just for Math Geniuses — It’s About Communicating with Computers","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F7e7piueiyi0cxin\u002F6_11zon_xuz4rltv8j.webp","2026-03-04 08:48:58.681Z",{"keywords":578,"locale":589,"school_blog":590},[579,584],{"collectionId":12,"collectionName":13,"created":580,"created_by":15,"id":581,"name":582,"updated":583,"updated_by":15},"2026-03-04 08:48:58.135Z","kn0l8xlkd3eb2pn","beginner coding guide","2026-04-10 16:13:56.888Z",{"collectionId":12,"collectionName":13,"created":585,"created_by":15,"id":586,"name":587,"updated":588,"updated_by":15},"2026-03-04 08:31:29.142Z","hrqdq7kjl5lzjmi","AI","2026-04-10 16:07:41.358Z",{"code":40,"collectionId":41,"collectionName":42,"created":43,"flag":44,"id":45,"is_default":46,"label":47,"updated":48},{"category":413,"collectionId":51,"collectionName":52,"created":15,"expand":591,"id":595,"slug":596,"updated":597,"views":598},{"category":592},{"blogIds":593,"collectionId":56,"collectionName":57,"created":417,"created_by":15,"id":413,"image":418,"image_alt":15,"image_path":419,"label":594,"name":421,"priority":112,"publish_at":422,"scheduled_at":15,"status":65,"updated":423,"updated_by":15},[],{"en":421,"th":421},"2geji8ipwoks5bh","coding-is-about-communication-not-math","2026-05-12 05:18:26.326Z",228,"7e7piueiyi0cxin","2025-06-24 06:11:22.954Z","Many people believe you need to be good at math to learn coding, but in reality, it’s all about communicating clearly with computers. And today, AI makes getting started easier than ever.","2026-04-22 07:10:17.069Z",19,12,406,34]