[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"academy-blogs-en-6-12-superdev%2525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252520academy-all-all-createdAt:desc-default":3},{"data":4,"page":525,"perPage":526,"totalItems":527,"totalPages":528},[5,68,115,163,212,248,279,321,368,408,445,478],{"alt":6,"cover_image_path":7,"created":8,"expand":9,"id":64,"published_at":65,"school_blog":60,"short_description":66,"title":6,"updated":67,"slug":61,"views":63},"The Origin of C: The Foundation of Modern Programming","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F204ju6yjjphhocj\u002Fcover_image_blog_the_origin_of_c_the_foundation_of_modern_programming_ucgo56tgfo.webp","2026-03-04 08:20:49.329Z",{"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:20:46.902Z","","p2fa536x3fkbftv","C Language","2026-04-10 16:07:28.789Z",{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},"2026-03-04 08:20:42.894Z","q8fw2bf4sm83pak","Bell Labs","2026-04-10 16:07:28.504Z",{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},"2026-03-04 08:20:45.500Z","9f8c26oyzxwvs13","Dennis Ritchie","2026-04-10 16:07:28.644Z",{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},"2026-03-04 08:20:48.783Z","zs2uskcp8hs1e8k","C Programming History","2026-04-10 16:07:29.017Z",{"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":60,"slug":61,"updated":62,"views":63},"102u7miss0ec94h","pbc_2105096300","school_blogs",{"category":49},{"blogIds":50,"collectionId":51,"collectionName":52,"created":53,"created_by":15,"id":45,"image":15,"image_alt":15,"image_path":15,"label":54,"name":55,"priority":56,"publish_at":57,"scheduled_at":15,"status":58,"updated":59,"updated_by":15},[],"sclcatblg987654321","school_category_blogs","2026-03-04 08:19:48.998Z",{"en":55,"th":55},"The Origin of Code",8,"2026-02-18 01:59:52.528Z","published","2026-04-25 02:32:14.183Z","pua7xa2ecuhvbcu","origin-of-c-programming-language","2026-05-06 13:31:29.261Z",209,"204ju6yjjphhocj","2026-01-01 04:09:24.532Z","Explore the deep history of the C language. From its birth at Bell Labs to becoming the bedrock of modern operating systems and programming languages. Learn the genius behind Dennis Ritchie's creation.","2026-05-11 21:45:19.256Z",{"alt":69,"cover_image_path":70,"created":71,"expand":72,"id":111,"published_at":112,"school_blog":108,"short_description":113,"title":69,"updated":114,"slug":109,"views":63},"JS2GO EP.50 Deploying Applications: Go vs Node.js for Production Systems","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F2720p0diuraw0wo\u002Fcover_image_ep_50_deploying_applications_go_vs_node_fecycri5ek.oductionSystems.webp","2026-03-04 08:44:47.848Z",{"keywords":73,"locale":94,"school_blog":95},[74,79,84,89],{"collectionId":12,"collectionName":13,"created":75,"created_by":15,"id":76,"name":77,"updated":78,"updated_by":15},"2026-03-04 08:44:47.024Z","p4tvi007knx0nib","Deploy Application","2026-04-10 16:12:49.798Z",{"collectionId":12,"collectionName":13,"created":80,"created_by":15,"id":81,"name":82,"updated":83,"updated_by":15},"2026-03-04 08:20:11.547Z","ey3puyme01a9bsw","Go","2026-04-10 16:07:25.893Z",{"collectionId":12,"collectionName":13,"created":85,"created_by":15,"id":86,"name":87,"updated":88,"updated_by":15},"2026-03-04 08:24:40.405Z","05u3tysava2z6ga","Node.js","2026-04-10 16:07:29.504Z",{"collectionId":12,"collectionName":13,"created":90,"created_by":15,"id":91,"name":92,"updated":93,"updated_by":15},"2026-03-04 08:44:47.385Z","li4cs2v3atd0wds","Production","2026-04-10 16:12:49.890Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":96,"collectionId":46,"collectionName":47,"created":15,"expand":97,"id":108,"slug":109,"updated":110,"views":63},"hsa1afr8fcnd6qb",{"category":98},{"blogIds":99,"collectionId":51,"collectionName":52,"created":100,"created_by":15,"id":96,"image":101,"image_alt":15,"image_path":102,"label":103,"name":104,"priority":105,"publish_at":106,"scheduled_at":15,"status":58,"updated":107,"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":104,"th":104},"JS2GO",10,"2025-08-11 03:41:08.820Z","2026-04-25 02:32:14.339Z","v7nigitalddgztd","deploying-applications-go-vs-nodejs-production","2026-05-14 13:42:37.298Z","2720p0diuraw0wo","2025-12-30 10:59:37.237Z","An end-to-end production deployment guide comparing Go and Node.js, covering build strategies, Docker multi-stage builds, secrets management, CI\u002FCD pipelines, and zero-downtime deployment based on real-world usage.","2026-05-08 06:51:57.845Z",{"alt":116,"cover_image_path":117,"created":118,"expand":119,"id":159,"published_at":160,"school_blog":155,"short_description":161,"title":116,"updated":162,"slug":156,"views":158},"Git for Beginners: Visual Guide to Add, Commit, and Push (No Memorizing Needed)","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fznbpmjusku9bqjn\u002Finfographic_showing_git_workflow_93apmqhvpj.webp","2026-03-04 08:44:46.224Z",{"keywords":120,"locale":141,"school_blog":142},[121,126,131,136],{"collectionId":12,"collectionName":13,"created":122,"created_by":15,"id":123,"name":124,"updated":125,"updated_by":15},"2026-03-04 08:44:36.134Z","pg679bitpkii9vv","Git","2026-04-10 16:12:47.459Z",{"collectionId":12,"collectionName":13,"created":127,"created_by":15,"id":128,"name":129,"updated":130,"updated_by":15},"2026-03-04 08:44:35.619Z","9z8e1xfjt07e7n9","Git Workflow","2026-04-10 16:12:47.226Z",{"collectionId":12,"collectionName":13,"created":132,"created_by":15,"id":133,"name":134,"updated":135,"updated_by":15},"2026-03-04 08:44:44.589Z","0rhtp9q4g9epxjv","Git tutorial","2026-04-10 16:12:49.241Z",{"collectionId":12,"collectionName":13,"created":137,"created_by":15,"id":138,"name":139,"updated":140,"updated_by":15},"2026-03-04 08:44:44.958Z","hl4mu6quhfjhdlw","Git for beginners","2026-04-10 16:12:49.337Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":143,"collectionId":46,"collectionName":47,"created":15,"expand":144,"id":155,"slug":156,"updated":157,"views":158},"spm4l1k5bgmhmmt",{"category":145},{"blogIds":146,"collectionId":51,"collectionName":52,"created":147,"created_by":15,"id":143,"image":148,"image_alt":15,"image_path":149,"label":150,"name":151,"priority":152,"publish_at":153,"scheduled_at":15,"status":58,"updated":154,"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":151,"th":151},"Knowledge",0,"2026-03-18 02:25:41.222Z","2026-04-25 02:32:14.497Z","g4okogcok21khr0","git-beginner-add-commit-push-visual","2026-05-26 03:23:01.880Z",213,"znbpmjusku9bqjn","2025-12-30 10:31:34.048Z","Stop naming files \"Project_Final\"! Master Git basics through a visual mental model. Learn how Add, Commit, and Push work in the professional software development workflow.","2026-05-08 06:51:57.192Z",{"alt":164,"cover_image_path":165,"created":166,"expand":167,"id":208,"published_at":209,"school_blog":204,"short_description":210,"title":164,"updated":211,"slug":205,"views":207},"EP.123 Load Balancing & Sticky Sessions for WebSocket (Production-Ready Guide)","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fek7zzajyalhrlh3\u002Fcover_image_ep_2pqo0kl48b.tion-ReadyGuide.webp","2026-03-04 08:44:49.230Z",{"keywords":168,"locale":190,"school_blog":191},[169,170,175,180,185],{"collectionId":12,"collectionName":13,"created":80,"created_by":15,"id":81,"name":82,"updated":83,"updated_by":15},{"collectionId":12,"collectionName":13,"created":171,"created_by":15,"id":172,"name":173,"updated":174,"updated_by":15},"2026-03-04 08:20:14.253Z","ah6lvy4x8qe08l5","Golang","2026-04-10 16:07:26.172Z",{"collectionId":12,"collectionName":13,"created":176,"created_by":15,"id":177,"name":178,"updated":179,"updated_by":15},"2026-03-04 08:44:47.893Z","1r53azecnj44o3t","Real-time","2026-04-10 16:12:50.006Z",{"collectionId":12,"collectionName":13,"created":181,"created_by":15,"id":182,"name":183,"updated":184,"updated_by":15},"2026-03-04 08:34:10.799Z","m3qoswhgnc4c38n","Kubernetes","2026-04-10 16:08:08.875Z",{"collectionId":12,"collectionName":13,"created":186,"created_by":15,"id":187,"name":188,"updated":189,"updated_by":15},"2026-03-04 08:34:00.920Z","ecac9y661or1xka","WebSocket","2026-04-10 16:08:05.227Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":192,"collectionId":46,"collectionName":47,"created":15,"expand":193,"id":204,"slug":205,"updated":206,"views":207},"wqxt7ag2gn7xcmk",{"category":194},{"blogIds":195,"collectionId":51,"collectionName":52,"created":196,"created_by":15,"id":192,"image":197,"image_alt":15,"image_path":198,"label":199,"name":200,"priority":201,"publish_at":202,"scheduled_at":15,"status":58,"updated":203,"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":200,"th":200},"Golang The Series",1,"2026-03-16 04:39:38.440Z","2026-04-25 02:32:15.470Z","rr43ycru4104v7f","ep-123-load-balancing-sticky-sessions-websocket","2026-05-27 08:01:51.970Z",270,"ek7zzajyalhrlh3","2025-12-30 09:45:58.631Z","A practical guide to designing WebSocket load balancing with sticky sessions, covering real-world scaling strategies on Kubernetes to prevent dropped connections and ensure production-grade reliability.","2026-05-08 06:51:57.974Z",{"alt":213,"cover_image_path":214,"created":215,"expand":216,"id":244,"published_at":245,"school_blog":241,"short_description":246,"title":213,"updated":247,"slug":242,"views":243},"EP.122 Horizontal & Geo‑distributed Scaling Strategies for WebSocket","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Frbp4h275asugxet\u002Fcover_image_ep_xg7ebflqf4.iesforWebSocket.webp","2026-03-04 08:44:50.633Z",{"keywords":217,"locale":235,"school_blog":236},[218,219,224,229,234],{"collectionId":12,"collectionName":13,"created":80,"created_by":15,"id":81,"name":82,"updated":83,"updated_by":15},{"collectionId":12,"collectionName":13,"created":220,"created_by":15,"id":221,"name":222,"updated":223,"updated_by":15},"2026-03-04 08:44:32.154Z","u0s66bjop3dljau","Horizontal Scaling","2026-04-10 16:12:46.399Z",{"collectionId":12,"collectionName":13,"created":225,"created_by":15,"id":226,"name":227,"updated":228,"updated_by":15},"2026-03-04 08:44:49.944Z","5sx3ab5gv2n24mh","Geo Distributed Architecture","2026-04-10 16:12:50.651Z",{"collectionId":12,"collectionName":13,"created":230,"created_by":15,"id":231,"name":232,"updated":233,"updated_by":15},"2026-03-04 08:44:50.258Z","nrtw5001po78dez","WebSocket Scaling","2026-04-10 16:12:50.756Z",{"collectionId":12,"collectionName":13,"created":186,"created_by":15,"id":187,"name":188,"updated":189,"updated_by":15},{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":192,"collectionId":46,"collectionName":47,"created":15,"expand":237,"id":241,"slug":242,"updated":15,"views":243},{"category":238},{"blogIds":239,"collectionId":51,"collectionName":52,"created":196,"created_by":15,"id":192,"image":197,"image_alt":15,"image_path":198,"label":240,"name":200,"priority":201,"publish_at":202,"scheduled_at":15,"status":58,"updated":203,"updated_by":15},[],{"en":200,"th":200},"xrv5n3fjd3aocjj","ep122-horizontal-geo-distributed-websocket-scaling",202,"rbp4h275asugxet","2025-12-30 09:45:49.195Z","Learn how to design a geo‑distributed WebSocket system that reduces global latency and supports cross‑region real‑time communication.","2026-05-08 06:51:58.683Z",{"alt":249,"cover_image_path":250,"created":251,"expand":252,"id":275,"published_at":276,"school_blog":272,"short_description":277,"title":249,"updated":278,"slug":273,"views":274},"EP.120 Whiteboard & Real-time Drawing Synchronization with WebSocket","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fahq5ev6lnmk68vh\u002Fcover_image_ep_tlqmwo22d8.onwithWebSocket.webp","2026-03-04 08:44:52.189Z",{"keywords":253,"locale":266,"school_blog":267},[254,258,259,260,261],{"collectionId":12,"collectionName":13,"created":255,"created_by":15,"id":256,"name":200,"updated":257,"updated_by":15},"2026-03-04 08:44:51.471Z","hlato0hav8vo8wm","2026-04-10 16:12:50.850Z",{"collectionId":12,"collectionName":13,"created":186,"created_by":15,"id":187,"name":188,"updated":189,"updated_by":15},{"collectionId":12,"collectionName":13,"created":171,"created_by":15,"id":172,"name":173,"updated":174,"updated_by":15},{"collectionId":12,"collectionName":13,"created":80,"created_by":15,"id":81,"name":82,"updated":83,"updated_by":15},{"collectionId":12,"collectionName":13,"created":262,"created_by":15,"id":263,"name":264,"updated":265,"updated_by":15},"2026-03-04 08:44:51.688Z","ztv5f26qud778za","whiteboard","2026-04-10 16:12:50.940Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":192,"collectionId":46,"collectionName":47,"created":15,"expand":268,"id":272,"slug":273,"updated":15,"views":274},{"category":269},{"blogIds":270,"collectionId":51,"collectionName":52,"created":196,"created_by":15,"id":192,"image":197,"image_alt":15,"image_path":198,"label":271,"name":200,"priority":201,"publish_at":202,"scheduled_at":15,"status":58,"updated":203,"updated_by":15},[],{"en":200,"th":200},"1h3hjyb5awyprlq","ep-120-whiteboard-realtime-drawing-websocket",217,"ahq5ev6lnmk68vh","2025-12-29 04:41:05.049Z","Learn how to build a real-time whiteboard system that supports multi-user drawing, cursor sync, and undo\u002Fredo using Go and WebSocket","2026-05-08 06:51:59.302Z",{"alt":280,"cover_image_path":281,"created":282,"expand":283,"id":317,"published_at":318,"school_blog":313,"short_description":319,"title":280,"updated":320,"slug":314,"views":316},"JS2GO EP.49 Backend Security with Go and Node.js","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fje5avechsgnsfjr\u002Fcover_js2_go_ep_49_backend_security_with_go_and_node_a53bkt8g8u.js.webp","2026-03-04 08:44:53.258Z",{"keywords":284,"locale":307,"school_blog":308},[285,290,295,300,305,306],{"collectionId":12,"collectionName":13,"created":286,"created_by":15,"id":287,"name":288,"updated":289,"updated_by":15},"2026-03-04 08:34:18.714Z","7cb29z95923lmhe","authentication","2026-04-10 16:08:11.822Z",{"collectionId":12,"collectionName":13,"created":291,"created_by":15,"id":292,"name":293,"updated":294,"updated_by":15},"2026-03-04 08:44:52.376Z","7kgkxt1b9xd0cca","Authorization","2026-04-10 16:12:51.107Z",{"collectionId":12,"collectionName":13,"created":296,"created_by":15,"id":297,"name":298,"updated":299,"updated_by":15},"2026-03-04 08:44:52.790Z","tkf1l5rauw0t7m0","Secure API Design","2026-04-10 16:12:51.172Z",{"collectionId":12,"collectionName":13,"created":301,"created_by":15,"id":302,"name":303,"updated":304,"updated_by":15},"2026-03-04 08:44:53.062Z","puutdnxuitnxxgq","Backend","2026-04-10 16:12:51.264Z",{"collectionId":12,"collectionName":13,"created":85,"created_by":15,"id":86,"name":87,"updated":88,"updated_by":15},{"collectionId":12,"collectionName":13,"created":80,"created_by":15,"id":81,"name":82,"updated":83,"updated_by":15},{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":96,"collectionId":46,"collectionName":47,"created":15,"expand":309,"id":313,"slug":314,"updated":315,"views":316},{"category":310},{"blogIds":311,"collectionId":51,"collectionName":52,"created":100,"created_by":15,"id":96,"image":101,"image_alt":15,"image_path":102,"label":312,"name":104,"priority":105,"publish_at":106,"scheduled_at":15,"status":58,"updated":107,"updated_by":15},[],{"en":104,"th":104},"q6au12trb7ipmxx","js2go-ep49-backend-security-authentication-authorization-validation","2026-05-25 18:19:53.101Z",256,"je5avechsgnsfjr","2025-12-24 10:19:37.092Z","A practical guide to backend security covering authentication authorization and data validation with real production examples in Go and Node.js.","2026-05-08 06:51:59.632Z",{"alt":322,"cover_image_path":323,"created":324,"expand":325,"id":364,"published_at":365,"school_blog":360,"short_description":366,"title":322,"updated":367,"slug":361,"views":363},"JS2GO EP.48 Logging & Monitoring for Production (Go & Node.js)","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fjim444bkspf39pv\u002Fcover_image_js2_go_ep_48_logging_monitoring_for_production_go_node_3wt2yddnc6.js.webp","2026-03-04 08:44:55.136Z",{"keywords":326,"locale":354,"school_blog":355},[327,332,337,342,347,348,353],{"collectionId":12,"collectionName":13,"created":328,"created_by":15,"id":329,"name":330,"updated":331,"updated_by":15},"2026-03-04 08:44:53.651Z","tuo9u1ayxlr8xvm","Monitoring System","2026-04-10 16:12:51.456Z",{"collectionId":12,"collectionName":13,"created":333,"created_by":15,"id":334,"name":335,"updated":336,"updated_by":15},"2026-03-04 08:44:34.571Z","fiybaq65m7oymtd","Monitoring","2026-04-10 16:12:46.904Z",{"collectionId":12,"collectionName":13,"created":338,"created_by":15,"id":339,"name":340,"updated":341,"updated_by":15},"2026-03-04 08:44:54.012Z","e283qzmjw1vq2l4","Logging Production","2026-04-10 16:12:51.523Z",{"collectionId":12,"collectionName":13,"created":343,"created_by":15,"id":344,"name":345,"updated":346,"updated_by":15},"2026-03-04 08:33:55.302Z","0mue4zt83jcdtq9","Logging","2026-04-10 16:08:03.396Z",{"collectionId":12,"collectionName":13,"created":85,"created_by":15,"id":86,"name":87,"updated":88,"updated_by":15},{"collectionId":12,"collectionName":13,"created":349,"created_by":15,"id":350,"name":351,"updated":352,"updated_by":15},"2026-03-04 08:20:42.484Z","vslzz9nvv6n77cx","JavaScript","2026-04-10 16:07:28.339Z",{"collectionId":12,"collectionName":13,"created":80,"created_by":15,"id":81,"name":82,"updated":83,"updated_by":15},{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":96,"collectionId":46,"collectionName":47,"created":15,"expand":356,"id":360,"slug":361,"updated":362,"views":363},{"category":357},{"blogIds":358,"collectionId":51,"collectionName":52,"created":100,"created_by":15,"id":96,"image":101,"image_alt":15,"image_path":102,"label":359,"name":104,"priority":105,"publish_at":106,"scheduled_at":15,"status":58,"updated":107,"updated_by":15},[],{"en":104,"th":104},"d8jrjoxb8k7la64","js2go-ep48-logging-monitoring-production-go-nodejs","2026-05-24 03:29:03.812Z",236,"jim444bkspf39pv","2025-12-23 04:57:41.053Z","Move from basic logging to full system observability. Learn structured logging, correlation IDs, metrics, distributed tracing, and error monitoring to build production-ready Go and Node.js systems.","2026-05-08 06:52:00.229Z",{"alt":369,"cover_image_path":370,"created":371,"expand":372,"id":404,"published_at":405,"school_blog":400,"short_description":406,"title":369,"updated":407,"slug":401,"views":403},"Work-Life Balance for Programmers: How to Avoid Burnout in the Tech Industry","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fcz95hm8rkof4th4\u002Fwork_life_balance_for_programmers_how_to_avoid_burnout_in_the_tech_industry_e8j2y888zl.webp","2026-03-04 08:44:58.316Z",{"keywords":373,"locale":394,"school_blog":395},[374,379,384,389],{"collectionId":12,"collectionName":13,"created":375,"created_by":15,"id":376,"name":377,"updated":378,"updated_by":15},"2026-03-04 08:44:57.070Z","5g80f54k2d56ht8","Programmer Burnout","2026-04-10 16:12:52.014Z",{"collectionId":12,"collectionName":13,"created":380,"created_by":15,"id":381,"name":382,"updated":383,"updated_by":15},"2026-03-04 08:44:57.484Z","kfa3z2tnhtzzhvo","Work-Life Balance for Programmers","2026-04-10 16:12:52.161Z",{"collectionId":12,"collectionName":13,"created":385,"created_by":15,"id":386,"name":387,"updated":388,"updated_by":15},"2026-03-04 08:44:57.697Z","rw5wz1cf9aox58p","Work-Life Balance","2026-04-10 16:12:52.284Z",{"collectionId":12,"collectionName":13,"created":390,"created_by":15,"id":391,"name":392,"updated":393,"updated_by":15},"2026-03-04 08:35:12.499Z","9bexb3o9mxg9dei","Burnout","2026-04-10 16:12:39.924Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":143,"collectionId":46,"collectionName":47,"created":15,"expand":396,"id":400,"slug":401,"updated":402,"views":403},{"category":397},{"blogIds":398,"collectionId":51,"collectionName":52,"created":147,"created_by":15,"id":143,"image":148,"image_alt":15,"image_path":149,"label":399,"name":151,"priority":152,"publish_at":153,"scheduled_at":15,"status":58,"updated":154,"updated_by":15},[],{"en":151,"th":151},"sy7kac0t03r9dox","work-life-balance-for-programmers","2026-05-26 15:04:56.482Z",232,"cz95hm8rkof4th4","2025-12-22 02:12:43.379Z","Programming is a high-pressure career filled with deadlines and constant learning. This article explores work-life balance for programmers, practical mindset shifts, and sustainable habits to help developers stay productive without burning out.","2026-05-08 06:52:01.057Z",{"alt":409,"cover_image_path":410,"created":411,"expand":412,"id":441,"published_at":442,"school_blog":437,"short_description":443,"title":409,"updated":444,"slug":438,"views":440},"EP.119 Build Real-time Document Editing System Like Google Docs Using WebSocket and Go","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fi06pxwfxjgbsk10\u002Fcover_image_ep_iax677t9cg.gWebSocketandGo.webp","2026-03-04 08:44:55.170Z",{"keywords":413,"locale":431,"school_blog":432},[414,419,424,425,426],{"collectionId":12,"collectionName":13,"created":415,"created_by":15,"id":416,"name":417,"updated":418,"updated_by":15},"2026-03-04 08:44:49.054Z","vbjgbr5ah0kh43p","Real-time System","2026-04-10 16:12:50.311Z",{"collectionId":12,"collectionName":13,"created":420,"created_by":15,"id":421,"name":422,"updated":423,"updated_by":15},"2026-03-04 08:44:54.550Z","dhhilrqrpmtr3x7","Google Docs","2026-04-10 16:12:51.619Z",{"collectionId":12,"collectionName":13,"created":80,"created_by":15,"id":81,"name":82,"updated":83,"updated_by":15},{"collectionId":12,"collectionName":13,"created":186,"created_by":15,"id":187,"name":188,"updated":189,"updated_by":15},{"collectionId":12,"collectionName":13,"created":427,"created_by":15,"id":428,"name":429,"updated":430,"updated_by":15},"2026-03-04 08:44:54.877Z","ype7kkszqa7py9n","Real-time Document","2026-04-10 16:12:51.779Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":192,"collectionId":46,"collectionName":47,"created":15,"expand":433,"id":437,"slug":438,"updated":439,"views":440},{"category":434},{"blogIds":435,"collectionId":51,"collectionName":52,"created":196,"created_by":15,"id":192,"image":197,"image_alt":15,"image_path":198,"label":436,"name":200,"priority":201,"publish_at":202,"scheduled_at":15,"status":58,"updated":203,"updated_by":15},[],{"en":200,"th":200},"nez2cwex9p6we4q","realtime-document-editing-with-go-websocket","2026-05-26 19:25:14.652Z",243,"i06pxwfxjgbsk10","2025-12-22 02:12:37.647Z","Learn how to build a collaborative real-time document editing system with Go and WebSocket, featuring conflict resolution and version control","2026-05-08 06:52:00.358Z",{"alt":446,"cover_image_path":447,"created":448,"expand":449,"id":474,"published_at":475,"school_blog":470,"short_description":476,"title":446,"updated":477,"slug":471,"views":473},"EP.118 Building Real-time AI + WebSocket System for IoT Devices","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Ftmpxi6w64ybdlt3\u002Fcover_image_ep_ljoqeir96z.emforIoTDevices.webp","2026-03-04 08:44:56.620Z",{"keywords":450,"locale":464,"school_blog":465},[451,452,457,462,463],{"collectionId":12,"collectionName":13,"created":415,"created_by":15,"id":416,"name":417,"updated":418,"updated_by":15},{"collectionId":12,"collectionName":13,"created":453,"created_by":15,"id":454,"name":455,"updated":456,"updated_by":15},"2026-03-04 08:31:29.142Z","hrqdq7kjl5lzjmi","AI","2026-04-10 16:07:41.358Z",{"collectionId":12,"collectionName":13,"created":458,"created_by":15,"id":459,"name":460,"updated":461,"updated_by":15},"2026-03-04 08:44:56.136Z","1ant8hjpcxuj8a2","IoT","2026-04-10 16:12:51.845Z",{"collectionId":12,"collectionName":13,"created":80,"created_by":15,"id":81,"name":82,"updated":83,"updated_by":15},{"collectionId":12,"collectionName":13,"created":186,"created_by":15,"id":187,"name":188,"updated":189,"updated_by":15},{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":192,"collectionId":46,"collectionName":47,"created":15,"expand":466,"id":470,"slug":471,"updated":472,"views":473},{"category":467},{"blogIds":468,"collectionId":51,"collectionName":52,"created":196,"created_by":15,"id":192,"image":197,"image_alt":15,"image_path":198,"label":469,"name":200,"priority":201,"publish_at":202,"scheduled_at":15,"status":58,"updated":203,"updated_by":15},[],{"en":200,"th":200},"3wlgaoume77bwtm","golang-ep118-ai-websocket-iot-real-time","2026-05-24 03:23:52.154Z",252,"tmpxi6w64ybdlt3","2025-12-22 02:12:32.820Z","Learn how to build a real-time AI-powered IoT system using Go and WebSocket for anomaly detection and predictive maintenance, designed for production-ready environments.","2026-05-08 06:52:00.684Z",{"alt":479,"cover_image_path":480,"created":481,"expand":482,"id":521,"published_at":522,"school_blog":517,"short_description":523,"title":479,"updated":524,"slug":518,"views":520},"Unveiling \"Nano Banana\": How Google's Secret AI Model Dominated the Leaderboard","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fujrpqaxotr44fvx\u002Fimage_digital_glowing_banana_graphic_representing_nano_banana_the_codename_for_google_s_new_gemini_i_s3l9z0lqxx.webp","2026-03-04 08:45:01.815Z",{"keywords":483,"locale":504,"school_blog":505},[484,489,494,499],{"collectionId":12,"collectionName":13,"created":485,"created_by":15,"id":486,"name":487,"updated":488,"updated_by":15},"2026-03-04 08:44:58.971Z","f63kzgztnhq2zg5","AI Image Generator","2026-04-10 16:12:52.569Z",{"collectionId":12,"collectionName":13,"created":490,"created_by":15,"id":491,"name":492,"updated":493,"updated_by":15},"2026-03-04 08:44:59.347Z","zx9l4eq448df98a","Gemini AI","2026-04-10 16:12:52.674Z",{"collectionId":12,"collectionName":13,"created":495,"created_by":15,"id":496,"name":497,"updated":498,"updated_by":15},"2026-03-04 08:44:59.765Z","51knaqayw5mn73i","Google Gemini","2026-04-10 16:12:52.773Z",{"collectionId":12,"collectionName":13,"created":500,"created_by":15,"id":501,"name":502,"updated":503,"updated_by":15},"2026-03-04 08:45:00.498Z","21720ewj4b2qmja","Nano Banana","2026-04-10 16:12:53.080Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":506,"collectionId":46,"collectionName":47,"created":15,"expand":507,"id":517,"slug":518,"updated":519,"views":520},"pkuzfil3b4ug2ea",{"category":508},{"blogIds":509,"collectionId":51,"collectionName":52,"created":510,"created_by":15,"id":506,"image":511,"image_alt":15,"image_path":512,"label":513,"name":514,"priority":152,"publish_at":515,"scheduled_at":15,"status":58,"updated":516,"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":514,"th":514},"Cutting-Edge Tech","2025-01-27 08:43:38.395Z","2026-04-25 02:32:14.847Z","r41jxqt4x4t621a","nano-banana-google-gemini-ai-reveal","2026-05-27 04:21:52.362Z",267,"ujrpqaxotr44fvx","2025-12-17 11:47:07.553Z","Discover the truth behind \"Nano Banana,\" the secret codename for Google's Gemini image model that topped the LMSYS leaderboard. Learn how it beats competitors with superior text rendering and prompt adherence.","2026-05-08 06:52:01.697Z",6,12,415,35]