[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"academy-blogs-en-4-12-%2525E0%2525B8%252581%2525E0%2525B8%2525A7%2525E0%2525B9%252588%2525E0%2525B8%2525B2%2525E0%2525B8%252588%2525E0%2525B8%2525B0%2525E0%2525B9%252580%2525E0%2525B8%25259B%2525E0%2525B9%252587%2525E0%2525B8%252599%2525E0%2525B8%2525A0%2525E0%2525B8%2525B2%2525E0%2525B8%2525A9%2525E0%2525B8%2525B2%2525E0%2525B9%252582%2525E0%2525B8%252584%2525E0%2525B9%252589%2525E0%2525B8%252594-all-all-createdAt:desc-default":3},{"data":4,"page":487,"perPage":488,"totalItems":489,"totalPages":490},[5,68,107,144,197,236,267,304,336,370,406,442],{"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 Origins of Go: How Google Engineers Built a Language While Waiting for Compilation","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fljemojx1xgx2rc6\u002Fcover_image_for_the_origins_of_go_how_google_engineers_built_a_language_while_waiting_for_compilatio_3u6jgppfbu.webp","2026-03-04 08:20:19.977Z",{"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:11.547Z","","ey3puyme01a9bsw","Go","2026-04-10 16:07:25.893Z",{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},"2026-03-04 08:20:14.253Z","ah6lvy4x8qe08l5","Golang","2026-04-10 16:07:26.172Z",{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},"2026-03-04 08:20:15.564Z","9zhk20p0247axym","Google","2026-04-10 16:07:26.313Z",{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},"2026-03-04 08:20:19.444Z","x6rjx19pb4ap7q1","Golang History","2026-04-10 16:07:26.517Z",{"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","p4hmwp8xxvr9d24","evolution-of-golang-from-google-to-cloud-native","2026-05-10 10:54:48.209Z",216,"ljemojx1xgx2rc6","2026-01-28 00:54:28.566Z","Discover the history of Golang, born from Google's scaling challenges to become the backbone of modern cloud-native infrastructure.","2026-05-11 21:45:18.365Z",{"alt":69,"cover_image_path":70,"created":71,"expand":72,"id":103,"published_at":104,"school_blog":100,"short_description":105,"title":69,"updated":106,"slug":101,"views":63},"Golang The Series EP 129: High Availability & Failover Design for Zero Downtime","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fhulci7lm0gov0w8\u002Fcover_image_golang_the_series_ep_kt3cg2xzax.forZeroDowntime.webp","2026-03-04 08:44:33.438Z",{"keywords":73,"locale":86,"school_blog":87},[74,79,80,81],{"collectionId":12,"collectionName":13,"created":75,"created_by":15,"id":76,"name":77,"updated":78,"updated_by":15},"2026-03-04 08:44:32.713Z","b9jmymu9lbpj60c","High Availability","2026-04-10 16:12:46.701Z",{"collectionId":12,"collectionName":13,"created":14,"created_by":15,"id":16,"name":17,"updated":18,"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":82,"created_by":15,"id":83,"name":84,"updated":85,"updated_by":15},"2026-03-04 08:44:32.915Z","pyrjlxpn42ys3ql","Failover","2026-04-10 16:12:46.836Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":88,"collectionId":46,"collectionName":47,"created":15,"expand":89,"id":100,"slug":101,"updated":102,"views":63},"wqxt7ag2gn7xcmk",{"category":90},{"blogIds":91,"collectionId":51,"collectionName":52,"created":92,"created_by":15,"id":88,"image":93,"image_alt":15,"image_path":94,"label":95,"name":96,"priority":97,"publish_at":98,"scheduled_at":15,"status":58,"updated":99,"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":96,"th":96},"Golang The Series",1,"2026-03-16 04:39:38.440Z","2026-04-25 02:32:15.470Z","4sjruv2tn6z0be8","go-high-availability-ha-failover-strategies","2026-05-10 04:37:01.669Z","hulci7lm0gov0w8","2026-01-27 03:55:11.414Z","Learn how to build resilient systems with Go. Master High Availability (HA), redundancy strategies, and robust graceful shutdown techniques for enterprise-grade applications.","2026-05-08 06:51:52.022Z",{"alt":108,"cover_image_path":109,"created":110,"expand":111,"id":140,"published_at":141,"school_blog":136,"short_description":142,"title":108,"updated":143,"slug":137,"views":139},"Golang The Series EP 128: Mastering Logging, Monitoring, and Observability in Go","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fp1xpknt3ra6464a\u002Fcover_image_for_golang_the_series_ep_128_mastering_logging_monitoring_and_observability_in_go_3wy0y37ahp.webp","2026-03-04 08:44:35.576Z",{"keywords":112,"locale":130,"school_blog":131},[113,118,123,128,129],{"collectionId":12,"collectionName":13,"created":114,"created_by":15,"id":115,"name":116,"updated":117,"updated_by":15},"2026-03-04 08:33:55.302Z","0mue4zt83jcdtq9","Logging","2026-04-10 16:08:03.396Z",{"collectionId":12,"collectionName":13,"created":119,"created_by":15,"id":120,"name":121,"updated":122,"updated_by":15},"2026-03-04 08:44:34.571Z","fiybaq65m7oymtd","Monitoring","2026-04-10 16:12:46.904Z",{"collectionId":12,"collectionName":13,"created":124,"created_by":15,"id":125,"name":126,"updated":127,"updated_by":15},"2026-03-04 08:44:34.753Z","l1a17htphmxe52a","Observability","2026-04-10 16:12:46.998Z",{"collectionId":12,"collectionName":13,"created":14,"created_by":15,"id":16,"name":17,"updated":18,"updated_by":15},{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":88,"collectionId":46,"collectionName":47,"created":15,"expand":132,"id":136,"slug":137,"updated":138,"views":139},{"category":133},{"blogIds":134,"collectionId":51,"collectionName":52,"created":92,"created_by":15,"id":88,"image":93,"image_alt":15,"image_path":94,"label":135,"name":96,"priority":97,"publish_at":98,"scheduled_at":15,"status":58,"updated":99,"updated_by":15},[],{"en":96,"th":96},"2c6enr6e3wvj230","go-observability-guide-logging-monitoring","2026-05-10 17:04:44.937Z",207,"p1xpknt3ra6464a","2026-01-26 03:57:11.063Z","Deep dive into the 3 pillars of Observability in Go. Learn how to use log\u002Fslog, Prometheus, and OpenTelemetry to transform \"Black Box\" systems into transparent \"Glass Boxes.\"","2026-05-08 06:51:52.970Z",{"alt":145,"cover_image_path":146,"created":147,"expand":148,"id":193,"published_at":194,"school_blog":189,"short_description":195,"title":145,"updated":196,"slug":190,"views":192},"The Ultimate Git & GitHub Manual Mastering Professional Collaboration and Workflows","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F5hkw9cp7axge0z8\u002Fcover_image_the_ultimate_git_git_hub_manual_mastering_professional_collaboration_and_workflows_0o4wp30l46.webp","2026-03-04 08:44:36.404Z",{"keywords":149,"locale":175,"school_blog":176},[150,155,160,165,170],{"collectionId":12,"collectionName":13,"created":151,"created_by":15,"id":152,"name":153,"updated":154,"updated_by":15},"2026-03-04 08:31:26.855Z","gm7zvudx341kzsm","Programmer","2026-04-10 16:07:40.730Z",{"collectionId":12,"collectionName":13,"created":156,"created_by":15,"id":157,"name":158,"updated":159,"updated_by":15},"2026-03-04 08:44:35.235Z","nesdqt6l5obkq2o","GitHub Workflow","2026-04-10 16:12:47.105Z",{"collectionId":12,"collectionName":13,"created":161,"created_by":15,"id":162,"name":163,"updated":164,"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":166,"created_by":15,"id":167,"name":168,"updated":169,"updated_by":15},"2026-03-04 08:44:35.823Z","andd8rbw15sng17","GitHub","2026-04-10 16:12:47.387Z",{"collectionId":12,"collectionName":13,"created":171,"created_by":15,"id":172,"name":173,"updated":174,"updated_by":15},"2026-03-04 08:44:36.134Z","pg679bitpkii9vv","Git","2026-04-10 16:12:47.459Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":177,"collectionId":46,"collectionName":47,"created":15,"expand":178,"id":189,"slug":190,"updated":191,"views":192},"spm4l1k5bgmhmmt",{"category":179},{"blogIds":180,"collectionId":51,"collectionName":52,"created":181,"created_by":15,"id":177,"image":182,"image_alt":15,"image_path":183,"label":184,"name":185,"priority":186,"publish_at":187,"scheduled_at":15,"status":58,"updated":188,"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":185,"th":185},"Knowledge",0,"2026-03-18 02:25:41.222Z","2026-04-25 02:32:14.497Z","h3n8omlu69af0ls","ultimate-git-github-manual-professional-collaboration","2026-05-09 15:24:58.313Z",205,"5hkw9cp7axge0z8","2026-01-21 03:29:44.118Z","A comprehensive guide to Git and GitHub. Master the 4 stages of Git, branching strategies, Pull Requests, and conflict resolution techniques to elevate your software development team’s productivity.","2026-05-08 06:51:53.098Z",{"alt":198,"cover_image_path":199,"created":200,"expand":201,"id":232,"published_at":233,"school_blog":229,"short_description":234,"title":198,"updated":235,"slug":230,"views":192},"The Origin of Java: Revolutionizing the World with \"Write Once, Run Anywhere\"","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fz3dfbjv1yczyapx\u002Fcover_image_for_the_origin_of_java_revolutionizing_the_world_with_write_once_run_anywhere_tqwqta89de.webp","2026-03-04 08:20:35.835Z",{"keywords":202,"locale":223,"school_blog":224},[203,208,213,218],{"collectionId":12,"collectionName":13,"created":204,"created_by":15,"id":205,"name":206,"updated":207,"updated_by":15},"2026-03-04 08:20:30.217Z","awi5iynndefiouo","Java History","2026-04-10 16:07:27.003Z",{"collectionId":12,"collectionName":13,"created":209,"created_by":15,"id":210,"name":211,"updated":212,"updated_by":15},"2026-03-04 08:20:32.925Z","a77j8bhv489p2sx","Java","2026-04-10 16:07:27.199Z",{"collectionId":12,"collectionName":13,"created":214,"created_by":15,"id":215,"name":216,"updated":217,"updated_by":15},"2026-03-04 08:20:29.827Z","kaajdy60saamd6y","James Gosling","2026-04-10 16:07:26.907Z",{"collectionId":12,"collectionName":13,"created":219,"created_by":15,"id":220,"name":221,"updated":222,"updated_by":15},"2026-03-04 08:20:25.947Z","trcc0ngsny7a9zh","Bytecode","2026-04-10 16:07:26.683Z",{"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":225,"id":229,"slug":230,"updated":231,"views":192},{"category":226},{"blogIds":227,"collectionId":51,"collectionName":52,"created":53,"created_by":15,"id":45,"image":15,"image_alt":15,"image_path":15,"label":228,"name":55,"priority":56,"publish_at":57,"scheduled_at":15,"status":58,"updated":59,"updated_by":15},[],{"en":55,"th":55},"myldcan7wyijo4o","the-origin-of-java-history-and-jvm","2026-05-07 09:14:00.487Z","z3dfbjv1yczyapx","2026-01-20 02:33:57.979Z","Deep dive into Java's history—from a smart appliance project to dominating the Enterprise and Android worlds. Learn about JVM and the memory management that changed software.","2026-05-11 21:45:18.531Z",{"alt":237,"cover_image_path":238,"created":239,"expand":240,"id":263,"published_at":264,"school_blog":260,"short_description":265,"title":237,"updated":266,"slug":261,"views":262},"Golang The Series EP 127: Connection Management & Circuit Breaker Preventing Cascading Failures","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fp7hfcqtlml6ndpi\u002Fcover_image_golang_the_series_ep_rrd5xhzka1.scadingFailures.webp","2026-03-04 08:44:37.922Z",{"keywords":241,"locale":254,"school_blog":255},[242,247,252,253],{"collectionId":12,"collectionName":13,"created":243,"created_by":15,"id":244,"name":245,"updated":246,"updated_by":15},"2026-03-04 08:44:37.056Z","erl8jxcjedbe0i0","Circuit Breaker","2026-04-10 16:12:47.556Z",{"collectionId":12,"collectionName":13,"created":248,"created_by":15,"id":249,"name":250,"updated":251,"updated_by":15},"2026-03-04 08:44:37.391Z","krqs9dt45y5ixau","Connection Management","2026-04-10 16:12:47.710Z",{"collectionId":12,"collectionName":13,"created":14,"created_by":15,"id":16,"name":17,"updated":18,"updated_by":15},{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":88,"collectionId":46,"collectionName":47,"created":15,"expand":256,"id":260,"slug":261,"updated":15,"views":262},{"category":257},{"blogIds":258,"collectionId":51,"collectionName":52,"created":92,"created_by":15,"id":88,"image":93,"image_alt":15,"image_path":94,"label":259,"name":96,"priority":97,"publish_at":98,"scheduled_at":15,"status":58,"updated":99,"updated_by":15},[],{"en":96,"th":96},"dfoukm4b8ogtmtf","golang-the-series-ep-127-connection-management-circuit-breaker",241,"p7hfcqtlml6ndpi","2026-01-20 02:24:53.402Z","Master the Circuit Breaker pattern in Go to build resilient systems. Learn how to use gobreaker library, manage connection pools, and implement fallback strategies to stop the domino effect in distributed systems.","2026-05-08 06:51:53.990Z",{"alt":268,"cover_image_path":269,"created":270,"expand":271,"id":300,"published_at":301,"school_blog":296,"short_description":302,"title":268,"updated":303,"slug":297,"views":299},"Golang The Series EP 126: Implementing DDoS Protection and Rate Limiting for High Availability","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Ffu83funt0rtxukh\u002Fcover_image_for_golang_the_series_ep_hsbdtof5sd.ighAvailability.webp","2026-03-04 08:44:38.917Z",{"keywords":272,"locale":290,"school_blog":291},[273,278,283,288,289],{"collectionId":12,"collectionName":13,"created":274,"created_by":15,"id":275,"name":276,"updated":277,"updated_by":15},"2026-03-04 08:44:38.026Z","m3dqo2zalnfaoof","Token Bucket","2026-04-10 16:12:47.845Z",{"collectionId":12,"collectionName":13,"created":279,"created_by":15,"id":280,"name":281,"updated":282,"updated_by":15},"2026-03-04 08:44:38.426Z","cwmp6ppr4svplqr","DDoS Protection","2026-04-10 16:12:47.992Z",{"collectionId":12,"collectionName":13,"created":284,"created_by":15,"id":285,"name":286,"updated":287,"updated_by":15},"2026-03-04 08:34:07.915Z","921nl48h9in67sw","Rate Limiting","2026-04-10 16:08:07.808Z",{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},{"collectionId":12,"collectionName":13,"created":14,"created_by":15,"id":16,"name":17,"updated":18,"updated_by":15},{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":88,"collectionId":46,"collectionName":47,"created":15,"expand":292,"id":296,"slug":297,"updated":298,"views":299},{"category":293},{"blogIds":294,"collectionId":51,"collectionName":52,"created":92,"created_by":15,"id":88,"image":93,"image_alt":15,"image_path":94,"label":295,"name":96,"priority":97,"publish_at":98,"scheduled_at":15,"status":58,"updated":99,"updated_by":15},[],{"en":96,"th":96},"htou1khawwt2hn7","golang-the-series-ep-126-ddos-protection-rate-limiting","2026-05-08 21:17:36.203Z",251,"fu83funt0rtxukh","2026-01-19 03:55:06.978Z","Deep dive into protecting your Go applications from traffic spikes and DDoS attacks. Learn how to implement Rate Limiting using the Token Bucket algorithm, build IP-based middleware.","2026-05-08 06:51:54.551Z",{"alt":305,"cover_image_path":306,"created":307,"expand":308,"id":332,"published_at":333,"school_blog":328,"short_description":334,"title":305,"updated":335,"slug":329,"views":331},"GitHub Workflow 2026: Modern Branching Standards for Global Dev Teams","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Ffmlu38jgmun89jj\u002Fcover_image_git_hub_workflow_2026_modern_branching_standards_for_global_dev_team_c5omdohj0k.webp","2026-03-04 08:44:40.532Z",{"keywords":309,"locale":322,"school_blog":323},[310,315,320,321],{"collectionId":12,"collectionName":13,"created":311,"created_by":15,"id":312,"name":313,"updated":314,"updated_by":15},"2026-03-04 08:44:39.239Z","mtrmsyrbt0ixc2v","Git for Teams","2026-04-10 16:12:48.129Z",{"collectionId":12,"collectionName":13,"created":316,"created_by":15,"id":317,"name":318,"updated":319,"updated_by":15},"2026-03-04 08:44:39.524Z","19dc206n489ovbd","Branch Management","2026-04-10 16:12:48.262Z",{"collectionId":12,"collectionName":13,"created":166,"created_by":15,"id":167,"name":168,"updated":169,"updated_by":15},{"collectionId":12,"collectionName":13,"created":156,"created_by":15,"id":157,"name":158,"updated":159,"updated_by":15},{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":177,"collectionId":46,"collectionName":47,"created":15,"expand":324,"id":328,"slug":329,"updated":330,"views":331},{"category":325},{"blogIds":326,"collectionId":51,"collectionName":52,"created":181,"created_by":15,"id":177,"image":182,"image_alt":15,"image_path":183,"label":327,"name":185,"priority":186,"publish_at":187,"scheduled_at":15,"status":58,"updated":188,"updated_by":15},[],{"en":185,"th":185},"nxw0undq0uvt72v","github-workflow-2026-team-collaboration-guide","2026-05-09 07:15:09.620Z",244,"fmlu38jgmun89jj","2026-01-15 05:36:24.206Z","Master the 2026 GitHub Workflow standards. Explore professional branching strategies, AI-assisted code reviews, 4-tier environment pipelines, and Squash & Merge techniques to enhance your team's productivity.","2026-05-08 06:51:55.026Z",{"alt":337,"cover_image_path":338,"created":339,"expand":340,"id":366,"published_at":367,"school_blog":363,"short_description":368,"title":337,"updated":369,"slug":364,"views":365},"The Origin of Python: From a Christmas Hobby to the #1 Language for AI","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fk6z3nbjpxogqboe\u002Fcover_image_the_origin_of_python_from_a_christmas_hobby_to_the_1_language_for_ai_1xol821kvl.webp","2026-03-04 08:20:36.200Z",{"keywords":341,"locale":357,"school_blog":358},[342,347,352],{"collectionId":12,"collectionName":13,"created":343,"created_by":15,"id":344,"name":345,"updated":346,"updated_by":15},"2026-03-04 08:20:28.340Z","s9cc7gm6633rsnk","Python","2026-04-10 16:07:26.827Z",{"collectionId":12,"collectionName":13,"created":348,"created_by":15,"id":349,"name":350,"updated":351,"updated_by":15},"2026-03-04 08:20:33.316Z","ln1ntwattzmxo0o","programming","2026-04-10 16:07:27.299Z",{"collectionId":12,"collectionName":13,"created":353,"created_by":15,"id":354,"name":355,"updated":356,"updated_by":15},"2026-03-04 08:20:35.664Z","tr3srljyjeultxy","Python History","2026-04-10 16:07:27.459Z",{"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":359,"id":363,"slug":364,"updated":15,"views":365},{"category":360},{"blogIds":361,"collectionId":51,"collectionName":52,"created":53,"created_by":15,"id":45,"image":15,"image_alt":15,"image_path":15,"label":362,"name":55,"priority":56,"publish_at":57,"scheduled_at":15,"status":58,"updated":59,"updated_by":15},[],{"en":55,"th":55},"3p5i0l4uj6jx69k","evolution-of-python-hobby-to-ai-powerhouse",204,"k6z3nbjpxogqboe","2026-01-14 05:00:33.957Z","Discover how a holiday hobby project by Guido van Rossum became the world's leading language for AI, Data Science, and NASA.","2026-05-11 21:45:18.762Z",{"alt":371,"cover_image_path":372,"created":373,"expand":374,"id":402,"published_at":403,"school_blog":398,"short_description":404,"title":371,"updated":405,"slug":399,"views":401},"EP.125 TLS \u002F WSS and Certificate Management for WebSocket (Production & Enterprise Guide)","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F9sdqrl1k8ipvypn\u002Fcover_image_ep_92jge6fnte.entforWebSocket.webp","2026-03-04 08:44:41.968Z",{"keywords":375,"locale":392,"school_blog":393},[376,377,382,387],{"collectionId":12,"collectionName":13,"created":14,"created_by":15,"id":16,"name":17,"updated":18,"updated_by":15},{"collectionId":12,"collectionName":13,"created":378,"created_by":15,"id":379,"name":380,"updated":381,"updated_by":15},"2026-03-04 08:34:00.920Z","ecac9y661or1xka","WebSocket","2026-04-10 16:08:05.227Z",{"collectionId":12,"collectionName":13,"created":383,"created_by":15,"id":384,"name":385,"updated":386,"updated_by":15},"2026-03-04 08:44:41.420Z","xjki2vhsm3f0jb4","WSS WebSocket","2026-04-10 16:12:48.600Z",{"collectionId":12,"collectionName":13,"created":388,"created_by":15,"id":389,"name":390,"updated":391,"updated_by":15},"2026-03-04 08:44:41.631Z","sipxojme8z97ei7","WebSocket TLS","2026-04-10 16:12:48.685Z",{"code":35,"collectionId":36,"collectionName":37,"created":38,"flag":39,"id":40,"is_default":41,"label":42,"updated":43},{"category":88,"collectionId":46,"collectionName":47,"created":15,"expand":394,"id":398,"slug":399,"updated":400,"views":401},{"category":395},{"blogIds":396,"collectionId":51,"collectionName":52,"created":92,"created_by":15,"id":88,"image":93,"image_alt":15,"image_path":94,"label":397,"name":96,"priority":97,"publish_at":98,"scheduled_at":15,"status":58,"updated":99,"updated_by":15},[],{"en":96,"th":96},"igzaha7bksnu7v1","ep-125-tls-wss-and-certificate-management-for-websocket","2026-05-08 18:50:07.526Z",208,"9sdqrl1k8ipvypn","2026-01-12 03:50:25.292Z","An in-depth guide to securing WebSocket connections with TLS and WSS. Learn HTTPS vs WSS, TLS handshake flow, certificate management, Let’s Encrypt integration, and zero-downtime certificate renewal for production and enterprise-grade systems.","2026-05-08 06:51:55.535Z",{"alt":407,"cover_image_path":408,"created":409,"expand":410,"id":438,"published_at":439,"school_blog":435,"short_description":440,"title":407,"updated":441,"slug":436,"views":437},"EP.124 Advanced Security & Authentication for WebSocket (JWT, Token Strategy & Secure Handshake)","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fk7qdpibak9otau6\u002Fcover_image_ep_2a3e4no299.ionforWebSocket.webp","2026-03-04 08:44:42.720Z",{"keywords":411,"locale":429,"school_blog":430},[412,417,418,419,424],{"collectionId":12,"collectionName":13,"created":413,"created_by":15,"id":414,"name":415,"updated":416,"updated_by":15},"2026-03-04 08:44:42.096Z","kr1dmn7sxgv9vxg","JWT WebSocket","2026-04-10 16:12:48.849Z",{"collectionId":12,"collectionName":13,"created":14,"created_by":15,"id":16,"name":17,"updated":18,"updated_by":15},{"collectionId":12,"collectionName":13,"created":378,"created_by":15,"id":379,"name":380,"updated":381,"updated_by":15},{"collectionId":12,"collectionName":13,"created":420,"created_by":15,"id":421,"name":422,"updated":423,"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":425,"created_by":15,"id":426,"name":427,"updated":428,"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":88,"collectionId":46,"collectionName":47,"created":15,"expand":431,"id":435,"slug":436,"updated":15,"views":437},{"category":432},{"blogIds":433,"collectionId":51,"collectionName":52,"created":92,"created_by":15,"id":88,"image":93,"image_alt":15,"image_path":94,"label":434,"name":96,"priority":97,"publish_at":98,"scheduled_at":15,"status":58,"updated":99,"updated_by":15},[],{"en":96,"th":96},"hsw1xbcvic3ba41","advanced-websocket-security-authentication-jwt-secure-handshake",226,"k7qdpibak9otau6","2026-01-12 03:40:09.510Z","A deep dive into production-ready and enterprise-grade WebSocket security. Learn how to implement proper authentication, JWT token strategies, prevent WebSocket hijacking, and design a secure handshake for real-world, high-traffic systems.","2026-05-08 06:51:55.808Z",{"alt":443,"cover_image_path":444,"created":445,"expand":446,"id":483,"published_at":484,"school_blog":479,"short_description":485,"title":443,"updated":486,"slug":480,"views":482},"The Origin of JavaScript: Created in 10 Days, Rules the World","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fk5ktr6fo351rni0\u002Fbrendan_eich_the_creator_of_java_script_at_netscape_featuring_the_js_logo_and_code_snippets_8tm80mpmin.webp","2026-03-04 08:20:43.066Z",{"keywords":447,"locale":468,"school_blog":469},[448,453,458,463],{"collectionId":12,"collectionName":13,"created":449,"created_by":15,"id":450,"name":451,"updated":452,"updated_by":15},"2026-03-04 08:20:36.060Z","xcq4mt3coqo1odt","V8 Engine","2026-04-10 16:07:27.526Z",{"collectionId":12,"collectionName":13,"created":454,"created_by":15,"id":455,"name":456,"updated":457,"updated_by":15},"2026-03-04 08:20:38.187Z","b4o3toqgoc84295","Brendan Eich","2026-04-10 16:07:27.995Z",{"collectionId":12,"collectionName":13,"created":459,"created_by":15,"id":460,"name":461,"updated":462,"updated_by":15},"2026-03-04 08:20:41.018Z","xzz8g6s99hkw93f","JavaScript History","2026-04-10 16:07:28.276Z",{"collectionId":12,"collectionName":13,"created":464,"created_by":15,"id":465,"name":466,"updated":467,"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":470,"collectionId":46,"collectionName":47,"created":15,"expand":471,"id":479,"slug":480,"updated":481,"views":482},"isnp2fv80bn3yem",{"category":472},{"blogIds":473,"collectionId":51,"collectionName":52,"created":474,"created_by":15,"id":470,"image":15,"image_alt":15,"image_path":15,"label":475,"name":476,"priority":56,"publish_at":477,"scheduled_at":15,"status":58,"updated":478,"updated_by":15},[],"2026-03-04 08:19:47.590Z",{"en":476,"th":476},"กว่าจะเป็นภาษาโค้ด","2026-02-18 01:59:49.988Z","2026-04-25 02:32:14.031Z","n4c7o0yqlwcv639","history-of-javascript-from-10-days-to-global-standard","2026-05-09 19:22:30.930Z",236,"k5ktr6fo351rni0","2026-01-08 05:35:48.725Z","Explore the history of JavaScript. From its 10-day creation at Netscape to winning the browser wars and becoming the king of web development.","2026-05-11 21:45:19.000Z",4,12,404,34]