- 54
- 50 475
Thaitype
Thailand
เข้าร่วมเมื่อ 12 มี.ค. 2022
ไทยไทป์ Speaking Thai,
SRE & DevOps around
TypeScript, .NET, Azure, Serverless,
Cloud Native, Open Source.
SRE & DevOps around
TypeScript, .NET, Azure, Serverless,
Cloud Native, Open Source.
ย้าย Blog จาก Next.js ไปยัง Zola (Rust) ตอนที่ 2 - เพิ่ม ID เอง อัตโนมัติด้วย Github Actions
"สร้างเว็บ Blog สไตล์ DevOps (คนขี้เกียจ 2024)"
(#DevOps #GithubActions: 🔵 #Mage)
.
เริ่มจากการที่ Blog ของเราแต่ละอันมันจะมี id เอาไว้ทำ reference หรือทำ short url ต่างๆ นา แต่ก่อนหน้านี้ผมทำเป็น git commit hook แต่มันรู้สึกว่าทำให้การเขียน Blog ไม่ราบรื่นเท่าไหร่ เพราะต้องทำหลายขั้นตอน และการไปใช้ VS Code on Github ก็ทำได้ยากขึ้น
.
ก็เลยเปลี่ยนใหม่ใน v8 ก็คือ Commit Blog ใหม่ๆ ทั้งๆ ไม่มี ID นั้นแหละ
แล้วให้ Github Actions ไปวิ่งหาว่า Blog ไหน ยังไม่มี ID บ้าง แล้วฝาก Commit + สร้าง Pull Request + Merge ให้เลย
.
ทีนี้พอ Merge แล้ว code ใน main branch เปลี่ยน
เจ้า pipeline deploy ไปยัง Azure Static Web App ก็ทำงาน
.
ป๊าดดดดด 1 commit หลังจากนั้น คือ automated หมด 100% เลย หูยยย
สบ๊ายยยย เหมาะกับคำขี้เกียจอย่างเราๆ มากมาย
.
Code: github.com/mildronize/blog-v8/pull/18
.
ตัวอย่าง Pull Request ที่ pipeline ใส่ ID ให้เอง
github.com/mildronize/blog-v8/pull/25/files
.
Content:
00:00 ที่มาที่ไป
04:06 สาธิต, หลัการ และ Diagram
11:46 อธิบาย Code
.
#GithubActions #BlogV8 #Azure #AzureStaticWebApp #DevOps
(#DevOps #GithubActions: 🔵 #Mage)
.
เริ่มจากการที่ Blog ของเราแต่ละอันมันจะมี id เอาไว้ทำ reference หรือทำ short url ต่างๆ นา แต่ก่อนหน้านี้ผมทำเป็น git commit hook แต่มันรู้สึกว่าทำให้การเขียน Blog ไม่ราบรื่นเท่าไหร่ เพราะต้องทำหลายขั้นตอน และการไปใช้ VS Code on Github ก็ทำได้ยากขึ้น
.
ก็เลยเปลี่ยนใหม่ใน v8 ก็คือ Commit Blog ใหม่ๆ ทั้งๆ ไม่มี ID นั้นแหละ
แล้วให้ Github Actions ไปวิ่งหาว่า Blog ไหน ยังไม่มี ID บ้าง แล้วฝาก Commit + สร้าง Pull Request + Merge ให้เลย
.
ทีนี้พอ Merge แล้ว code ใน main branch เปลี่ยน
เจ้า pipeline deploy ไปยัง Azure Static Web App ก็ทำงาน
.
ป๊าดดดดด 1 commit หลังจากนั้น คือ automated หมด 100% เลย หูยยย
สบ๊ายยยย เหมาะกับคำขี้เกียจอย่างเราๆ มากมาย
.
Code: github.com/mildronize/blog-v8/pull/18
.
ตัวอย่าง Pull Request ที่ pipeline ใส่ ID ให้เอง
github.com/mildronize/blog-v8/pull/25/files
.
Content:
00:00 ที่มาที่ไป
04:06 สาธิต, หลัการ และ Diagram
11:46 อธิบาย Code
.
#GithubActions #BlogV8 #Azure #AzureStaticWebApp #DevOps
มุมมอง: 231
วีดีโอ
ย้าย Blog จาก Next.js ไปยัง Zola (Rust)
มุมมอง 2.3Kหลายเดือนก่อน
ย้ายบ้านกัน จาก Next.js ผมก็ Custom เพิ่มนิดหน่อย 1. เขียน TypeScript (Bun.js) สำหรับสร้าง Mapper JSON สำหรับ ทำ Short URL และจัดการ UUID แต่ละ Blog 2. เขียน TypeScript (Browser) Snippet แยกไปแต่ละหน้าที่ต้องการ Custom JS เพิ่ม โดยใช้ Vite Multiple Entry Point - เช่น ทำ Auto Redirect ด้วย Short URL, หรือเวลาที่คนเข้า URL เก่า มันต้อง Redirect มาหา URL ใหม่ได้ Code: github.com/mildronize/blog-v8
ค้นหาใบหน้าจากระบบ CCTV ขนาดใหญ่ด้วย OpenSearch และ AI | ThaiType Talk EP. 8
มุมมอง 2072 หลายเดือนก่อน
"ค้นหาใบหน้าจากระบบ CCTV ขนาดใหญ่ด้วย OpenSearch และ AI โดยคุณ Mongkon และ Jirasak " (#SystemDesign: 🔵 #Mage) . เป็นครั้งแรกที่มี Guest ถึง 2 คนในเวลาเดียวกันนนนน ตื่นเต้นนนนน . เรามาฟังประสบการณ์จริง ของคนทำระบบ CCTV ขนาดใหญ่ ว่าเอาทำข้อมูลสำหรับประมวลผลด้าน AI โดยที่เราสามารถมาค้นหาใบหน้าได้ แสดงว่าจะต้องมีการเตรียม Data มาก่อนแน่ๆ เลย จริงมั้ยๆๆๆ . มาดูขุมพลัง OpenSearch (ElasticSearch Fork)...
Simplifying Global Scalability with Azure Static Web Apps (Thai Speaking) | JS Bangkok 2.0.0
มุมมอง 1772 หลายเดือนก่อน
พามาดูการทำ Web App แบบ Global Scale ด้วย Azure Static Web Apps แบบง่ายๆ กันเด้อ! เริ่มตั้งแต่ระดับฟรี ไปจนถึงระดับ enterprise เต็มๆ บอกเลยว่าดีงามสุดๆ มาดูข้อดีของ Azure Static Web Apps ในแต่ละระดับราคา ตั้งแต่ฟรียันแบบจัดเต็ม และยังสอนวิธีการใช้ Azure Functions เป็น API server ที่ทำงานร่วมกันได้ใน origin เดียวกัน เพิ่มการขยายแบบไร้รอยต่อด้วย Azure Functions และระบบป้องกันแน่นหนาด้วย Azure Fro...
ความท้าทายการทำระบบ Streaming ขนาดใหญ่ โดยคุณ Icez (Khachain) | ThaiType Talk EP. 7
มุมมอง 3613 หลายเดือนก่อน
"ความท้าทายการทำระบบ Streaming ขนาดใหญ่ โดยคุณ Khachain Wangthammang" (#SystemDesign: 🔵 #Mage) . เรามาฟังประสบการณ์จริง ของคนทำระบบ Streaming ไม่ว่าจะเป็น - ฝั่ง server ทำยังไง - ต้องมีอะไรให้มันมั่ง (bandwidth / cpu / encoder) - ถ้ายังไม่ต้องสเกลก่อน แต่ละส่วนมี cost / ข้อจำกัดยังไง (bandwidth 1 gbps ดูได้กี่คน อะไรงี้) - ถ้าต้องรับคนเยอะกว่าที่มี ต้องสเกล ปัญหาเกิดอะไรต่ออีก . แน่นอนว่ามันส์ ...
Writing configurable Terraform Module for Azure Front Door (Thai)
มุมมอง 1303 หลายเดือนก่อน
"Writing configurable Terraform Module for Azure Front Door (Thai)" (#Terraform #Azure: 🔵 #Mage) "Writing configurable Terraform Module for Azure Front Door" . ว่าด้วยเรื่องของศาสตร์และศิลป์การเขียน Terraform Module ที่ว่ากันว่าเขียนยาก ให้มันเบๆ เบาๆ ได้แบบเก๋ๆ ซึ่ง Use Case วันนี้ ก็คือ ทำ DR Site ด้วย Azure Front Door โดยที่จะจำลองระบบของใหญ่ขึ้นมานิดดดดด นึง . ก็คือมี Active Site อยู่ Singp...
ทำระบบให้ลูกค้า US โดนมาตรฐานอะไรบ้าง โดยผู้ดำเนินรายการรับเชิญ คุณ Sarah | ThaiType Talk EP. 6
มุมมอง 2494 หลายเดือนก่อน
"[Podcast] ทำระบบให้ลูกค้า US โดนมาตรฐานอะไรบ้าง โดย Thada และผู้ดำเนินรายการรับเชิญ Sarah" (#Security #Compliance: 🔵 #Mage) . เอาล่ะ ถึงตากรรมตามสนองแล้ว เอ้ย ไม่ใช่! 🤣 Talk รอบนี้เรา Guest รับเชิญ แต่ๆๆๆ เค้าไม่ได้มาพูด เค้ามาเป็นพิธีกรรับเชิญแทน 555 . เอาเป็นว่ารอบนี้ผมเป็นคนเล่าเรื่องหลัก เรื่องของ Compliance หรือมาตรฐานความปลอภัยที่ US ส่วนใหญ่มองหา ✅ . ว่าด้วยเรื่องของขั้นตอนการทำงาน Proc...
Adapter Pattern แบบ Type-Safe Design Part 1
มุมมอง 2684 หลายเดือนก่อน
"[TH-cam] Adapter Pattern แบบ Type-Safe Design Part 1" (#TypeScript: 🟣 #Archmage) . จากโพสที่แล้วผมสปอยหนังสือบทใหม่เรื่องของ Adapter Pattern แต่เข้าใจว่าจะยังไม่ได้กันใช่มั้ยครับ ไม่เป็นไรครับผมก็สายดอง 555 . เพื่อให้เข้าใจง่ายขึ้นผม อัดวิดิโอเล่าส่วนหนึ่งของหนังสือไว้แล้ว จะได้เข้าใจได้ง่ายขึ้นครับ . หนังสือ: type-safe.thadaw.com/design-patterns/adapter-pattern.html . เนื้อหาส่วนของ Part 1 - ...
เมื่อไหร่เราถึง(ไม่)ควรใช้ Terraform กับคุณ Karn Wong | Thaitype Talk EP. 5
มุมมอง 4824 หลายเดือนก่อน
"[Podcast] เมื่อไหร่เราถึง(ไม่)ควรใช้ Terraform โดยคุณ Karn Wong" (#DevOps: 🔵 #Mage) . ในโลกของ Cloud เอง ก็มีการสร้าง Infrastructure ทั้งผ่าน UI และการสร้างด้วยโค๊ด หรือเราเรียกว่า Infrastructure as Code (IAC) การสร้าง Cloud Resource ผ่าน UI ก็มีโอกาสผิดพลาดได้เช่นกัน หรืออาจจะขาดกระบวนการรีวิวไป . วันนี้เรามี HashiCorp Ambassador เราเล่าให้เราฟังถึงที่มาที่ไปของ HashiCorp Terraform ที่ได้รับค...
(เฉลย) การใช้งาน interface ร่วมกับ Generic ที่ซับซ้อนขึ้น
มุมมอง 3044 หลายเดือนก่อน
"คำถาม เฉลย: การใช้งาน interface ร่วมกับ Generic ที่ซับซ้อนขึ้น" (#TypeScript: 🔵 #Mage) . พอดีผมได้มีโอกาสทำงานร่วมกับคนที่เพิ่งเขียน TypeScript มา แล้วเจอว่า ไม่เข้าใจการอธิบาย Type ของ TypeScript ในกรณีที่ใช้ interface ร่วมกับ Generic . ผมมีคำถาม TypeScript จากโค๊ดที่ผมใช้งานจริงใน Production มา . 1. interface ContainerAppConfig จะมีทั้งหมดกี่ Property 2. สมมติว่า ผมต้องการเพิ่ม Property ของ ...
การทำ Type จาก String ที่กำหนดไว้กับ Google Sheet API | Type-safe Design Pattern
มุมมอง 1644 หลายเดือนก่อน
การทำ Type จาก String ที่กำหนดไว้กับ Google Sheet API | Type-safe Design Pattern (#TypeScript: 🟣 #Archmage) . เห็นมีคนอยากได้ Content TypeScript มาๆๆ เดี๋ยวจัดให้ 1 ยกก่อน เดี๋ยวหาว่าเราลืมกันไปแล้ว 555 . วันนี้ว่าด้วยเรื่องของ Google Sheet API ใน #Bunsheet ที่เราเอา Type-safe Design Pattern ไปจับที่สามารถทำให้เรา กำหนด Data Type ของแต่ละ Column ได้เลยนะ อิอิ . ตัวที่เราใช้กันวันนี้ก็คือจะมีหลั...
สร้างวัฒนธรรมองค์กร Remote Work 100% โดยคุณ Wittawat Karpkrikaew | ThaiType Talk EP.4
มุมมอง 6004 หลายเดือนก่อน
"[Podcast] สร้างวัฒนธรรมองค์กร Remote Work 100% โดยคุณ Wittawat Karpkrikaew" (#Management: 🟢 #Apprentices) . ก้าวเข้าสู่ปีที่ 11 ของการสร้างองค์กร Remote Work 100% กับพี่ป้องกัน ไม่ว่าคุณจะเป็นคนทำงาน ผู้นำองค์กร หรือ Manager มาฟังประสบการณ์ตัวเป็นๆ จากคน ที่ทำงานที่ไหนก็ได้ ไม่มี Hybrid ไม่ต้องเข้า Office . แน่นอนเราไม่สามารถใช้ Mindset หรือวิธีการ ชุดเดิมกับการทำงานเข้า Office มาทำงานแบบ Remo...
การขอ Quota Azure App Service Plan ใน Region ที่ขาดแคลนจาก Azure Support
มุมมอง 1354 หลายเดือนก่อน
"แชร์ประสบการณ์การขอ Quota Azure App Service Plan ใน Region ที่ขาดแคลน" (#Azure: 🔵 #Mage) . ก่อนอื่นเลยผมอยากจะขอบคุณทุกคนที่เกี่ยวข้อง รวมถึง MS Thailand และทาง Azure Support . วันนี้เรามาพูดถึงประสบการณ์ในการขอ Quota กับ Azure Support เพื่อใช้ Resource ในกรณีที่มีข้อจำกัดกันครับ . Quota คืออะไร? . จริงๆ แล้วใน Cloud ไม่มี Resource ที่จำกัดแบบตายตัว แต่ละ Data Center (หรือ Region) จะมี Resourc...
เมื่อไหร่เราถึงควรใช้ Kubernetes โดยคุณโอม Sirinat Paphatsirinatthi | Thaitype Talk EP. 3
มุมมอง 8774 หลายเดือนก่อน
"[Podcast] เมื่อไหร่เราถึงควรใช้ Kubernetes โดยคุณโอม Sirinat Paphatsirinatthi" (#DevOps : 🔵 #Kubernetes) . สนใจ Kubernetes แต่ไม่แน่ใจว่าเมื่อไหร่ควรใช้? ห้ามพลาด! มาฟังคุณโอมเล่าความรู้และประสบการณ์ในการใช้งาน Kubernetes ใน Podcast Thaitype Talk ตอนนี้ . 🌐 พบกับคุณโอม Sirinat Paphatsirinatthi, Co-Founder @ Cloudnatician, Guest Lecturer in Universities, Microsoft MVP Azure, HashiCorp Ambassado...
Azure App Service เชื่อม KeyVault แบบไร้รหัสผ่าน User-Assigned Managed Identity | Azure Note EP 3
มุมมอง 2035 หลายเดือนก่อน
"Azure App Service เชื่อม KeyVault แบบไร้รหัสผ่าน User-Assigned Managed Identity | Azure Note EP 3" (#AzureAppService #Azure: 🔵 #Mage) . ในตอนนี้ของ Azure Note เราจะมาพูดถึงการตั้งค่า Azure App Service เพื่อเชื่อมต่อกับ Azure Key Vault โดยไม่ต้องใช้รหัสผ่านเลยครับ โดยเราจะใช้ User-Assigned Managed Identity ซึ่งเป็นวิธีที่ปลอดภัยและจัดการได้ง่ายกว่า . ในวิดีโอนี้เราจะอธิบายพื้นฐานเกี่ยวกับ Manag...
Clean Architecture ใน TypeScript โดยคุณ Yosapol Jitrak | Podcast Thaitype Talk EP. 2
มุมมอง 3.1K5 หลายเดือนก่อน
Clean Architecture ใน TypeScript โดยคุณ Yosapol Jitrak | Podcast Thaitype Talk EP. 2
ทำอย่างไรถึงได้งานที่สิงค์โปร โดยคุณ Piti Champeethong | Podcast Thaitype Talk EP. 1
มุมมอง 5645 หลายเดือนก่อน
ทำอย่างไรถึงได้งานที่สิงค์โปร โดยคุณ Piti Champeethong | Podcast Thaitype Talk EP. 1
Cloud Infra ล่ม DevOps/SRE Engineer ต้องเจอกับอะไรบ้าง?
มุมมอง 1K6 หลายเดือนก่อน
Cloud Infra ล่ม DevOps/SRE Engineer ต้องเจอกับอะไรบ้าง?
ทำไมถึงอยากทำ Podcast และน่าจะออกมาประมาณไหน | Thaitype Talk EP. 0
มุมมอง 1766 หลายเดือนก่อน
ทำไมถึงอยากทำ Podcast และน่าจะออกมาประมาณไหน | Thaitype Talk EP. 0
"Infra State matcher" Framework สำหรับช่วยเปรียบเทียบ Terraform State เป็น Type-Safe Design (Part 1)
มุมมอง 2326 หลายเดือนก่อน
"Infra State matcher" Framework สำหรับช่วยเปรียบเทียบ Terraform State เป็น Type-Safe Design (Part 1)
แชร์ประสบการณ์แก้ปัญหา Legacy Web App วางไว้หลัง Reverse Proxy (Azure Front Door) กับ .NET Core
มุมมอง 5456 หลายเดือนก่อน
แชร์ประสบการณ์แก้ปัญหา Legacy Web App วางไว้หลัง Reverse Proxy (Azure Front Door) กับ .NET Core
เขียนโปรแกรมด้วย Type กับ Parindome (Type-Level Programming)
มุมมอง 5447 หลายเดือนก่อน
เขียนโปรแกรมด้วย Type กับ Parindome (Type-Level Programming)
TypeScript 5.5 ออกของใหม่เยอะที่สุดในรอบปีเลย!
มุมมอง 2.9K7 หลายเดือนก่อน
TypeScript 5.5 ออกของใหม่เยอะที่สุดในรอบปีเลย!
เรียน TypeScript ด้วย Express.js แบบเร่งด่วนทันใจฉึกฉักๆ (Crash Course) วันที่ 3/3
มุมมอง 9979 หลายเดือนก่อน
เรียน TypeScript ด้วย Express.js แบบเร่งด่วนทันใจฉึกฉักๆ (Crash Course) วันที่ 3/3
เรียน TypeScript ด้วย Express.js แบบเร่งด่วนทันใจฉึกฉักๆ (Crash Course) วันที่ 2/3
มุมมอง 1.3K9 หลายเดือนก่อน
เรียน TypeScript ด้วย Express.js แบบเร่งด่วนทันใจฉึกฉักๆ (Crash Course) วันที่ 2/3
เรียน TypeScript ด้วย Express.js แบบเร่งด่วนทันใจฉึกฉักๆ (Crash Course) วันที่ 1/3
มุมมอง 10K9 หลายเดือนก่อน
เรียน TypeScript ด้วย Express.js แบบเร่งด่วนทันใจฉึกฉักๆ (Crash Course) วันที่ 1/3
EP 2: Deploy Web App อย่างง่ายด้วย Azure App Service | Azure Note Series
มุมมอง 24710 หลายเดือนก่อน
EP 2: Deploy Web App อย่างง่ายด้วย Azure App Service | Azure Note Series
EP 1: รู้จักกับ Azure Cloud เบื้องต้น การเรียกชื่อและการจัดการ Cloud Resource | Azure Note Series
มุมมอง 33910 หลายเดือนก่อน
EP 1: รู้จักกับ Azure Cloud เบื้องต้น การเรียกชื่อและการจัดการ Cloud Resource | Azure Note Series
แชร์ประสบการณ์การ Scaling DevOps Team | Barcamp Songkhla 8 - Jan 27, 2024
มุมมอง 51111 หลายเดือนก่อน
แชร์ประสบการณ์การ Scaling DevOps Team | Barcamp Songkhla 8 - Jan 27, 2024
สิ่งที่น่าขัดใจในการออกแบบ Type ของ TypeScript | Type Predicate, User-Defined Type Guard
มุมมอง 135ปีที่แล้ว
สิ่งที่น่าขัดใจในการออกแบบ Type ของ TypeScript | Type Predicate, User-Defined Type Guard
Content ดีนะฮะ แต่แชร์จุดติกับจุดชมนิดนึง จุดติ : ที่บอกว่าช้ามันไม่ น่าจะเป็นประเด็นสำคัญที่ Next อย่างเดียวครับ ถ้าเขียนโค้ดสไตล์ import bundle แบบนี้เขียนอะไรก็ช้าครับ ใน Next เราสามารถแบ่งสัดส่วนการ Load ได้เพื่อให้มันเป็น Blocking-IO ให้ CPU มันได้ใช้งานได้เต็มที่ รวมไปถึงการ Prefetch content ด้วย ส่วนวิธีแก้ไขสามารถดูใน Document Next ได้เลยครับในส่วนของ Stream render html เข้าใจว่าเอา Template คนอื่นมาปรับใช้ แต่ถ้า Optimize ใหม่ดีๆมันก็ไปต่อได้ครับ จุดชม : สื่อสารเข้าใจง่ายดีครับโฟกัส Content ได้น่าสนใจ จุดแนะนำเพิ่มเติม : ถ้าอยากไปสาย Rust ให้เต็มตัว แนะนำลองใช้ Dioxus ครับ เป็น Rust แท้ๆเลย สามารถ Compile เป็น WASM (Web Assambly) ทำให้มีขนาดเล็กมากๆ รวมไปถึงการทำ SSR ได้เร็ว และก็รองรับ Hot reload เช่นกัน นอกจากนี้ยังทำแอพมือถือและวินโดวส์แอพครบจบได้เลยครับผม และยังรองรับพวก Tailwind / DaisyUI ด้วยครับ ถ้าจะไปสายไหนก็ไปให้สุดๆเลย ปล. ผมเข้าไปส่องหน้าเว็บมาแล้ว ไม่ได้แย่นะครับ รอการปรับปรุงในเวอร์ชั่นถัดๆไปคิดว่าเป็น Blog content นึงที่น่าสนใจพอสมควรเลย :)
ขอบคุณสำหรับความเห็นครับ ผมไม่ค่อยมีเวลาเท่าไหร่แล้ว เลยเลือกท่าที่ประหยัดเวลาครับ ส่วนความเร็วของ Next js ผมอาจจะพูดไม่เคลียร์ มันคือ Build time ครับ + มันมีปัญหา live reload content markdown ที่อยู่นอก bundle แล้วผมขี้เกียจแก้ละ ถ้ารู้ solution ดีๆ แนะนำได้นะครับ 🫡
รายละเอียดเรื่องของ nextjs อยู่ในนี้ครับ ผมลืมลง facebook.com/share/p/15d6yUhuUu/
Rustaceans จะมีคอมมูนิตี้ที่ใหญ่ขึ้นเรื่อยๆเลยแฮะ 😂
แต่ผมเขียน TypeScript นะ ฮ่าๆ แต่ชอบ Rust
Vscode ใช้ ธีม ฟ้อนอะไรหรอครับ สวยมาก
Font ชื่อ Hack ครับ theme Night Owl
ผมไม่ไหวแล้วพี่ ไม่ไหวแล้ว ขอบคุณครับ
ขอบคุณมากๆนะครับแอดด
ขอบคุณครับ ❤
รอ part 2 ครับๆ
เย้ ดีใจที่ชอบน้า Part 2 แอบอธิบายยากกว่า ขอเรียบเรียงอีกนิดดดด
ใช้แอปอะไรบันทึกวิดีโอหน้าจอครับ
@@PatphonSD www.screen.studio อันนี้ครับ
ชอบคำถามที่เอามาทำเป็นคลิปนี้มากๆครับ คือหลายคนพูดถึง Terraform เยอะ ราวกับว่ามันเป็นส่วนหนึ่งของการทำงานให้กับทุกสายงานใน IT แต่มันก็ไม่จำเป็นเสมอไปครับ ขอสนับสนุน เเละเป็นกำลังใจเพื่อทำคลิปแบบนี้ต่อไปในอนาคตนะครับ 🙂
@@iwanttotalk ยินดีมากๆ ครับ ดีใจที่ชอบนะ
ขออภัยมีหลุดคำหยาบมาเล็กน้อย คราวหน้าจะพยายามไม่ให้หลุด ครับ
ผมมองว่าเป็นเรื่องเล็กน้อยครับพี่ พอเป็นสีสัน แล้วคนที่มาดูเรื่อง Terraform ส่วนใหญ่ก็น่าจะเป็นคนวัยทำงานที่แยกแยะได้ครับ 😊
@@iwanttotalk ขอบคุณครับ
ข้อดีข้อเสียของการใช้แบบแบบนี้คืออะไรหรอครับ
สามารถ reuse ได้ครับ, ทำ guard type ได้ครับ
สามารถดูตัวอย่างการใช้งานเต็มๆ ใน github repo ได้ครับ :)
ขอบคุณสำหรับสิ่งดี ๆ ครับ
ยินดีครับ ดีใจที่ชอบนะครับ
ขอบคุณมากๆนะครับ
ขอบคุณพี่ป้องมากๆ เช่นกันครับ
คุณ Mild ถามได้โดนใจมากๆครับ
ขอบคุณค๊าบบ ดีใจที่ชอบนะครับ
มีคำถามทางบ้านมา ขอแปะไว้ก่อน > ทำไมเราไม่ใช้ system assigned managed identity นะครับ A: system assigned managed identity มันผูกกับ Resource ครับ ถ้า resource ถูกลบไป identity ตัวนั้นก็จะหายไปด้วย แปลว่าถ้าเราต้อง manage 300 resource มันจะมี 300 identity แต่พอระบบเราใหญ่มาก การใช้ user-assigned มันจะ Reuse identity ใช้หลายจุด มันบริหารจัดการง่ายกว่า
สุดยอดคร้าบบบ อยากเรียนรู้เรื่อง User-Assigned Managed Identity มานานแว้วว
ขอบคุณครับ ผมติดปัญหาเรื่องนี้ตั้งนาน ทำตามคลิปนี้ใช้งานได้เลย
ขอบคุณเช่นกันครับ
จะใช้เกี่ยวกัterraform ตอนใหนนะครับ
@@jumratboonjaroen3985 หมายถึงเรื่องไหนนะครับ
ดีครับชอบมากผมผู้ที่ work from home ไม่เจอใครเลยได้ฟังก็เพิ่มความรู้ขึ้นครับ
เหมือนกันครับ ไม่ค่อยได้เจอผู้คน ดีใจที่ชอบนะ
🥳🥳🥳🥳🥳🥳
ดีใจที่ชอบนะครับ
มีประโยชน์มาก ๆ เลยครับ
ดีใจที่ชอบน้าา ขอบคุณครับ 😍
ทำไมตรง IsPalindrome ต้อง infer Arr extends string[] หรอครับ อันนี่ทำให้งง syntax ด้วยในเมื่อมันก็ได้เป็น string[] อยู่แล้ว, เป็น true ตลอด สมมติรับเป็น string ว่างมาก็ return กลับมาเป็น [] และในเมื่อ T มันก็ extend string อยู่แล้ว (อันนี้คือ T ของ IsPalindrome) ทำไมไม่เขียนเป็น PalindromeChecker<ToArray<T>> อย่างงี้หรอครับ
Good Question ครับ หมายถถึงแบบนี้ใช่มั้ยครับ (ยังไม่ค่อยเข้าใจคำถามทั้งหมดเท่าไหร่ จะลองตอบดูนะครับ) type IsPalindrome<T extends string> = ToArray<T> extends string[] ? PalindromeChecker<T> : false แบบนี้ T จะ Error เพราะไม่ใช่ string[] ครับ ลองเล่นดูครับ tsplay.dev/NaA72N
@@thaitype ขอบคุณครับ หลัก ๆ ที่ผมจะสื่อคือ ไม่จำเป็นจะต้องเขียน infer Arr ก็ได้ เพราะว่าเรารู้อยู่ละว่า ToArray<T> มันได้เป็น string[] แน่นอน (ถึงเป็น [] ก็ยังเป็นซับเซตของ string[]) ดังนั้นเราสามารถเขียนเป็นแบบนี้ได้เลย type IsPalindrome<T extends string> = PalindromeChecker<ToArray<T>> โดยไม่ต้องงง syntax ด้วย อันนี้ผมเข้าใจว่าที่เขียนก็น่าจะให้อ่านได้ง่ายขึ้น แต่กลับว่าถ้าไม่ชินจริงก็อ่านยากกว่าเดิม extends infer extends 555
กำลังหมกมุ่นกับประเด็นนี้พอดีเลยครับ เหมือนรู้ใจว่ากำลังทำความเข้าใจเจ้าหัวหอมพอดีเลย 55555
เย้ ดีใจที่ชอบนะครับ
ของดีมากเลย ขอบพระคุณอาจารย์นะครับ
ยินดีครับ ขอบคุณนะครับ ดีใจที่ชอบนะ
ขอบคุณครับ
ขอบคุณครับ
ขอบคุณครับ
ขอบคุณครับ
ขอบคุณครับๆ, พอจะมีข้อมูลเพิ่มเติมสำหรับ condition string ไหมครับ
@@ghostza1209 หมายถึง Connection String หรือเปล่า ถ้าใช่ คำถามคืออะไรนะครับ
@@thaitype เข้าใจละครับ ตอนแรกผมนึกว่า condition string ก็เลยงงว่าคืออะไรครับ ขอบคุณมากครับๆ
@@ghostza1209 ได้เลยครับ สงสัยผมจะง่วงนอน 555 🤣
สรุปเนื้อหาดีมากครับ
ขอบคุณมากครับ
แอดโคตรฟิต 😂
ขอบคุณค๊าบบบบ เวลาน้อย ต้องจัดสรรเวลาดีๆ
จดๆ
เย้ๆๆ
ลองดูน้าาา
มหากาพย์จับโจร
กว่าจะเจอโจร
เนื้อหาคุณภาพเลยครับ 👍 วนดูสองรอบเลย
ขอบคุณค๊าบบบ ยินดีครับ
สุดยอดครับ
ในมุมพี่ devops ที่มาจากฝั่ง operation ควรศึกษาภาษา ts นี้ไหมครับ
ผมคิดว่าถ้า DevOps ไม่แม่น Programming ไม่ควรมา TS ครับ ผมทำ DevOps แต่มาจากสาย Dev ครับ ทำ Ops ได้เล็กน้อย
ชูป้ายไฟค๊าฟ
🙏🙏🙏
กรี๊ดดด🎉
14:47 ขอแก้ไขเรื่อง import type ใน jsdoc คือของเดิมเราต้องกำหนด import ซ้ำๆ ทุกจุดใน code ของ jsdoc ของใหม่คือ import ที่เดียว เหมือน import module ใน typescript และ reuse ได้ทุกที่ใน jsdoc เลย สะดวกมากๆๆ
ใช้ theme vs-code อะไรหรอครับสวยดี
Night Owl ครับ
สอบถามหน่อยครับถ้าผมต้องการแทรก middleware ลงไปใน router ที่สร้างขื้นได้ไหมครับ เช่น router.use('/users',userRoutes); แบบนี้ถ้าแทรก middleware เข้าไปแต่ไม่อยากให้ใช้หมด userRoutes ได้ไหมครับ
ยังไงนะครับ งงคำถาม
@@thaitype อยากถามว่า ถ้าผมจะแทรก middleware ใน router ที่พี่สร้างได้ไมครับ Ex: ผมอยากทำ auth ใช้ passport แล้วผมอยากแทรก middleware เข้าไปใน Router
พี่ทอมเหล่ท่อมากครับ
บอกพี่ทอมให้แล้วน้าาา
กราบขอบพระทัยครับฝ่าบาท
ขอบคุณค๊าบบ หวังว่าจะเป็นประโยชน์น้า
ขอบคุณสำหรับเนื้อหาดีๆครับ ทำคลิปอีกเยอะๆนะครับ ปล.เปิดระบบสมัครสมาชิกเลยครับ 5555
ขอบคุณค๊าบ เดี๋ยวแบบจ่ายตัง รอติดตามน้า ❤
ขอบคุณพันครั้ง _/\_
เย้ๆๆๆ ขอบคุณคับ
ติดตามแล้วครับ
❤ ขอบคุณงับ
ของดีครับ กำลังหาที่สอน refactor ให้ดีขึ้นพอดีเลย
ลองดูครับ ค่อยๆ refactoring โค๊ดจะสวยงามม
กราบขอบพระทัยครับจาน
ขอบคุณครับ
ติดตามครับ✨
รอน้าา ขอบคุณครับ
วันก่อนขับรถมา กทม เลยเปิดฟัง Video ที่อาจารย์มาย Thada Wangthammang สอนเรื่อง Introduction to Cloud / Azure / Cloud Native . อาจารย์อธิบายดีมากๆครับ เห็นภาพชัดเจนเพราะมีตัวอย่างให้ดูของจริง มีแทรกมุขเป็นระยะๆ และใช้คำศัพท์ที่เปรียบเทียบกับของรอบตัวที่เราคุ้นเคย เลยเข้าใจง่ายมากครับ . ตัวเนื้อหาค่อยๆไต่ระดับจากการแก้ไขปัญหาด้วยวิธีแรก พอติดปัญหาเราเลยไปต่อวิธีที่สองไปเรื่อยๆ . และสิ่งที่เน้นมากๆคือเรื่องการดูแลจัดการค่าใช้จ่ายของ Cloud ครับ สำคัญสุดๆๆ . แนะนำมากๆเลย
ขอบคุณมากคับ ที่ช่วยรีวิว น่าจะเป็นประโยชน์กับท่านอื่นๆ
ขอบคุณมากๆนะครับ
ขอบคุณครับ update บ่อยๆ นะครัยบ
ขอบคุณครับ