APPA SMART

APPA SMART Cả thế giới trong tay

 # Thử thách Infrastructure as Code cùng Pulumi: Cơ hội cho dân IT trổ tài!Chào mọi người, mình là [Tên của bạn], một ng...
29/03/2025

# Thử thách Infrastructure as Code cùng Pulumi: Cơ hội cho dân IT trổ tài!

Chào mọi người, mình là [Tên của bạn], một người làm IT và cũng thích sáng tạo nội dung. Vừa rồi mình đọc được một thông tin rất hay về thử thách **Pulumi Deploy and Document Challenge** và muốn chia sẻ ngay với các bạn.

**Pulumi là gì?**

Pulumi là một công cụ mạnh mẽ giúp bạn quản lý hạ tầng (Infrastructure as Code - IaC) trên các nền tảng đám mây như AWS, Azure, Google Cloud và nhiều hơn nữa. Với Pulumi, bạn có thể viết code để tạo, cấu hình và quản lý hạ tầng một cách dễ dàng và hiệu quả.

**Thử thách này có gì hấp dẫn?**

Thử thách kéo dài **đến hết ngày 06 tháng 04** và dành cho tất cả mọi người, từ những người mới bắt đầu đến các chuyên gia về cloud. Có 3 chủ đề để bạn lựa chọn, tha hồ thể hiện kỹ năng của mình:

* **Triển khai Website Tĩnh Siêu Tốc:** Chọn framework website tĩnh yêu thích của bạn và triển khai nó lên AWS, Azure hoặc Google Cloud bằng Pulumi. Chia sẻ hành trình của bạn từ cài đặt đến triển khai, cùng những kinh nghiệm và best practices.
* **Bí mật được bảo vệ:** Xây dựng một chương trình truy cập các bí mật và cấu hình từ Pulumi ESC (Environments, Secrets, & Configuration). Hướng dẫn mọi người cách quản lý cấu hình một cách an toàn.
* **Sáng tạo cùng Pulumi và GitHub:** Sử dụng Pulumi GitHub provider và Pulumi Automation API để tạo ra một công cụ sáng tạo hoặc hữu ích. Ví dụ: tự động hóa quản lý repository, quản lý team, gắn nhãn issue, hoặc bất kỳ workflow nào trên GitHub.

**Tại sao bạn nên tham gia?**

* **Cơ hội học hỏi và nâng cao kỹ năng:** Thử thách sẽ giúp bạn làm quen với Pulumi và các công nghệ đám mây, đồng thời rèn luyện kỹ năng viết code, quản lý hạ tầng và viết tài liệu.
* **Cơ hội thể hiện bản thân:** Đây là dịp để bạn chứng minh khả năng của mình với cộng đồng IT, chia sẻ kiến thức và kinh nghiệm.
* **Giải thưởng hấp dẫn:**
* Người chiến thắng mỗi chủ đề sẽ nhận được **$1,000 USD**, **6 tháng DEV++ membership**, **huy hiệu độc quyền** và **quà từ DEV Shop**.
* **Tất cả** những người tham gia hợp lệ sẽ nhận được **huy hiệu hoàn thành** trên DEV profile.

**Tiêu chí đánh giá:**

* Tính rõ ràng và chất lượng của hành trình phát triển dự án
* Tính rõ ràng và chất lượng của README (Hướng dẫn cài đặt/Tutorial/Hướng dẫn sử dụng)
* Tính năng và khả năng sử dụng của ứng dụng/công cụ

**Làm thế nào để tham gia?**

1. Chọn một trong ba chủ đề.
2. Sử dụng template bài viết tương ứng để viết bài trên DEV.
* [Fast Deployment Submission Template](https://dev.to/new?prefill=---%0Atitle%3A%20%0Apublished%3A%20%0Atags%3A%20devchallenge%2C%20pulumichallenge%2C%20webdev%2C%20cloud%0A---%0A%0A*This%20is%20a%20submission%20for%20the%20%5BPulumi%20Deploy%20and%20Document%20Challenge%5D(https%3A%2F%2Fdev.to%2Fchallenges%2Fpulumi)%3A%20Fast%20Static%20Website%20Deployment*%0A%0A%23%23%20What%20I%20Built%0A%3C!--%20Give%20a%20quick%20overview%20of%20your%20project%20and%20what%20it%20does.%20--%3E%0A%0A%23%23%20Live%20Demo%20Link%0A%3C!--%20Share%20a%20link%20to%20your%20project.%20--%3E%0A%0A%23%23%20Project%20Repo%0A%3C!--%20Embed%20your%20project%20repo%20here.%20Be%20sure%20to%20include%20a%20thorough%20README.%20--%3E%0A%0A%23%23%20My%20Journey%0A%3C!--%20Document%20your%20process%2C%20including%20any%20challenges%20you%20faced%2C%20how%20you%20overcame%20them%2C%20and%20what%20you%20learned%20--%3E%0A%0A%23%23%20Using%20Pulumi%0A%3C!--%20Explain%20how%20you%20used%20Pulumi%20in%20your%20project%20and%20why%20it%20was%20beneficial.%20If%20you%20used%20Pulumi%20Copilot%2C%20share%20your%20key%20prompts%20with%20us.%20--%3E%0A%0A%3C!--%20Don%27t%20forget%20to%20add%20a%20cover%20image%20(if%20you%20want).%20--%3E%0A%0A%3C!--%20Thanks%20for%20participating!%20--%3E)
* [Pulumi ESC Submission Template](https://dev.to/new?prefill=---%0Atitle%3A%20%0Apublished%3A%20%0Atags%3A%20devchallenge%2C%20pulumichallenge%2C%20webdev%2C%20cloud%0A---%0A%0A*This%20is%20a%20submission%20for%20the%20%5BPulumi%20Deploy%20and%20Document%20Challenge%5D(https%3A%2F%2Fdev.to%2Fchallenges%2Fpulumi)%3A%20Shhh%2C%20It%27s%20a%20Secret!*%0A%0A%23%23%20What%20I%20Built%0A%3C!--%20Give%20a%20quick%20overview%20of%20your%20project%20and%20what%20it%20does.%20--%3E%0A%0A%23%23%20Live%20Demo%20Link%0A%3C!--%20Share%20a%20link%20to%20your%20project.%20--%3E%0A%0A%23%23%20Project%20Repo%0A%3C!--%20Embed%20your%20project%20repo%20here.%20Be%20sure%20to%20include%20a%20thorough%20README.%20--%3E%0A%0A%23%23%20My%20Journey%0A%3C!--%20Document%20your%20process%2C%20including%20any%20challenges%20you%20faced%2C%20how%20you%20overcame%20them%2C%20and%20what%20you%20learned%20--%3E%0A%0A%23%23%20Using%20Pulumi%20ESC%0A%3C!--%20Explain%20how%20you%20used%20Pulumi%20in%20your%20project%20and%20why%20it%20was%20beneficial.%20If%20you%20used%20Pulumi%20Copilot%2C%20share%20your%20key%20prompts%20with%20us.%20--%3E%0A%0A%3C!--%20Don%27t%20forget%20to%20add%20a%20cover%20image%20(if%20you%20want).%20--%3E%0A%0A%3C!--%20Thanks%20for%20participating!%20--%3E)
* [Pulumi GitHub Tool Submission Template](https://dev.to/new?prefill=---%0Atitle%3A%20%0Apublished%3A%20%0Atags%3A%20devchallenge%2C%20pulumichallenge%2C%20github%2C%20api%0A---%0A%0A*This%20is%20a%20submission%20for%20the%20%5BPulumi%20Deploy%20and%20Document%20Challenge%5D(https%3A%2F%2Fdev.to%2Fchallenges%2Fpulumi)%3A%20Get%20Creative%20with%20Pulumi%20and%20GitHub*%0A%0A%23%23%20What%20I%20Built%0A%3C!--%20Give%20a%20quick%20overview%20of%20your%20project%20and%20what%20it%20does.%20--%3E%0A%0A%23%23%20Live%20Demo%20Link%0A%3C!--%20Share%20a%20link%20to%20your%20project.%20--%3E%0A%0A%23%23%20Project%20Repo%0A%3C!--%20Embed%20your%20project%20repo%20here.%20Be%20sure%20to%20include%20a%20thorough%20README.%20--%3E%0A%0A%23%23%20My%20Journey%0A%3C!--%20Document%20your%20process%2C%20including%20any%20challenges%20you%20faced%2C%20how%20you%20overcame%20them%2C%20and%20what%20you%20learned%20--%3E%0A%0A%23%23%20Using%20Pulumi%20with%20GitHub%0A%3C!--%20Explain%20how%20you%20used%20Pulumi%20in%20your%20project%20and%20why%20it%20was%20beneficial.%20If%20you%20used%20Pulumi%20Copilot%2C%20share%20your%20key%20prompts%20with%20us.%20--%3E%0A%0A%3C!--%20Don%27t%20forget%20to%20add%20a%20cover%20image%20(if%20you%20want).%20--%3E%0A%0A%3C!--%20Thanks%20for%20participating!%20--%3E)
3. Sử dụng Pulumi Copilot để được hỗ trợ (miễn phí khi tạo tài khoản Pulumi).
4. Đọc kỹ [rules, guidelines, and FAQ page](https://dev.to/challenges/pulumi) trước khi nộp bài.

**Thời gian quan trọng:**

* **Bắt đầu:** 26 tháng 03
* **Hạn chót:** 06 tháng 04 (11:59 PM PDT)
* **Công bố người chiến thắng:** 17 tháng 04

**Nguồn tài nguyên hữu ích:**

* [Pulumi Community Slack](https://slack.pulumi.com/)
* [Pulumi Static Website Templates](https://www.pulumi.com/templates/static-website)
* [AWS with Pulumi](https://www.pulumi.com/docs/iac/clouds/aws/)
* [Azure with Pulumi](https://www.pulumi.com/docs/iac/clouds/azure/)
* [Google Cloud with Pulumi](https://www.pulumi.com/docs/iac/clouds/gcp/)
* [Pulumi ESC Documentation](https://www.pulumi.com/docs/esc/)
* [ESC Languages & SDKs](https://www.pulumi.com/docs/esc/development/languages-sdks/)
* [ESC SDK Launch Blog](https://www.pulumi.com/blog/esc-sdk-launch/)
* [Pulumi Automation](https://www.pulumi.com/automation/)
* [Automation API Getting Started](https://www.pulumi.com/docs/iac/using-pulumi/automation-api/getting-started-automation-api/)
* [IAC Recommended Practices with Automation API](https://www.pulumi.com/blog/iac-recommended-practices-using-automation-api/)
* [GitHub Provider Documentation](https://www.pulumi.com/registry/packages/github/)

**Lời kết:**

Mình rất hào hứng chờ đợi những dự án sáng tạo của các bạn với Pulumi. Nếu có bất kỳ câu hỏi nào, đừng ngần ngại hỏi nhé!

Chúc các bạn may mắn và coding vui vẻ!

** ** (Những hashtag này sẽ giúp bài viết của bạn dễ được tìm thấy hơn).

 # WeCoded Challenge: Cơ hội tỏa sáng dành cho cộng đồng IT!Chào mừng bạn đến với **WeCoded Challenge** đầu tiên! Đây là...
28/03/2025

# WeCoded Challenge: Cơ hội tỏa sáng dành cho cộng đồng IT!

Chào mừng bạn đến với **WeCoded Challenge** đầu tiên! Đây là sân chơi mới toanh để tôn vinh sự đa dạng, hòa nhập và trao quyền trong ngành công nghệ.

# # Từ SheCoded đến WeCoded: Một bước tiến lớn

Từ năm 2018, DEV đã tổ chức **SheCoded** vào ngày Quốc tế Phụ nữ (8/3) để cộng đồng chia sẻ những câu chuyện đầy cảm hứng từ phụ nữ trong ngành công nghệ. Từ năm 2023, SheCoded đã phát triển thành **WeCoded**, một không gian hòa nhập dành cho *tất cả* những tiếng nói ít được biết đến trong ngành.

Sự thay đổi này thể hiện cam kết của chúng tôi trong việc xây dựng một cộng đồng nơi mọi người đều thấy mình được đại diện, chia sẻ kinh nghiệm và tìm thấy nguồn cảm hứng. WeCoded tiếp tục dựa trên nền tảng của SheCoded, đồng thời mở rộng để chào đón sự đa dạng phong phú, làm cho cộng đồng của chúng ta mạnh mẽ hơn.

# # WeCoded 2025: Thử thách mới, cơ hội mới!

**Năm 2025, WeCoded sẽ được nâng lên một tầm cao mới với hình thức DEV Challenge lần đầu tiên.** Chúng tôi hy vọng điều này sẽ thu hút nhiều thành viên cộng đồng tham gia hơn, bằng cách chia sẻ câu chuyện cá nhân *hoặc* thể hiện kỹ năng kỹ thuật. Qua đó, tạo thêm cơ hội để tiếng nói được lắng nghe và tầm quan trọng của sự đa dạng, hòa nhập được công nhận.

**Diễn ra đến hết ngày 6 tháng 4**, **WeCoded Challenge** mang đến hai thử thách riêng biệt để bạn thể hiện sự sáng tạo, chia sẻ kinh nghiệm và thấy tác phẩm của mình được vinh danh như một phần của sự kiện kỷ niệm thường niên của chúng ta!

# # Thử thách của chúng tôi:

# # # 1. Echoes of Experience (Tiếng vọng của trải nghiệm)

Chia sẻ hành trình cá nhân hoặc những câu chuyện bạn đã chứng kiến trong ngành công nghệ, tập trung vào những khó khăn, thành công và bài học kinh nghiệm.

Những chia sẻ của bạn nên truyền cảm hứng và trao quyền cho những cá nhân ít được biết đến hoặc giúp những người ủng hộ hiểu rõ hơn cách thúc đẩy một ngành công nghiệp hòa nhập hơn.

**Mẫu bài dự thi:** [Echoes of Experience Submission Template](https://dev.to/new?prefill=---%0Atitle%3A%20%0Apublished%3A%20%0Atags%3A%20devchallenge%2C%20wecoded%2C%20dei%2C%20career%0A---%0A%0A*This%20is%20a%20submission%20for%20the%20%5BWeCoded%20Challenge%5D(https%3A%2F%2Fdev.to%2Fchallenges%2Fwecoded)%3A%20Echoes%20of%20Experience*%0A%0A%3C!--%20Share%20your%20tech%20journey%20or%20stories%20you%27ve%20witnessed%20in%20the%20industry.%20You%20may%20discuss%20challenges%20faced%2C%20triumphs%20celebrated%2C%20lessons%20learned%2C%20or%20insights%20gained.%20Your%20story%20should%20aim%20to%20inspire%20other%20underrepresented%20individuals%20or%20educate%20allies.%20--%3E%0A%0A%3C!--%20Don%27t%20forget%20to%20add%20a%20cover%20image%20(if%20you%20want).%20--%3E%0A%0A%3C!--%20Thanks%20for%20participating!%20--%3E)

# # # 2. Celebrate in Code (Tôn vinh bằng code)

Thiết kế một trang đích (landing page) năng động và hấp dẫn cho dev.to/wecoded, nơi lưu trữ lâu dài cho sự kiện WeCoded thường niên của chúng ta.

Thiết kế của bạn nên làm nổi bật các bài dự thi WeCoded và SheCoded trước đây, tập hợp những câu chuyện quan trọng và truyền cảm hứng từ những tiếng nói ít được biết đến trong ngành công nghệ. Bạn có thể thêm thông tin về lịch sử của WeCoded, ngày Quốc tế Phụ nữ, các nguồn tài liệu bổ sung và bất kỳ điều gì khác liên quan đến chủ đề này.

Chúng tôi khuyến khích bạn sử dụng DEV Articles API để hiển thị nội dung một cách linh hoạt và tạo ra trải nghiệm tôn vinh tác động lâu dài của những câu chuyện này.

**Ví dụ về cách truy cập các bài viết `wecoded` từ API:**

```javascript
window.fetch('https://dev.to/api/articles?tag=wecoded')
.then(response => response.json()) // Parse the JSON from the response
.then(data => {
console.log(data)
});
```

Ngoài các yêu cầu API của DEV, **bài dự thi của bạn chỉ nên tập trung vào frontend.**

Thiết kế chiến thắng (có thể với một số chỉnh sửa nhỏ) sẽ được sử dụng làm trang đích chính thức của WeCoded sau khi thử thách kết thúc! Hãy nhớ đưa thông tin cá nhân của bạn vào trang để được ghi nhận xứng đáng.

**Xem trang challenge landing page của chúng tôi để truy cập tài sản WeCoded và các tài nguyên bổ sung.**

**Mẫu bài dự thi:** [Celebrate in Code Submission Template](https://dev.to/new?prefill=---%0Atitle%3A%20%0Apublished%3A%20%0Atags%3A%20devchallenge%2C%20wecoded%2C%20dei%2C%20webdev%0A---%0A%0A*This%20is%20a%20submission%20for%20the%20%5BWeCoded%20Challenge%5D(https%3A%2F%2Fdev.to%2Fchallenges%2Fwecoded)%3A%20Celebrate%20in%20Code*%0A%0A%23%23%20My%20WeCoded%20Landing%20Page%0A%0A%3C!--%20Tell%20us%20about%20your%20landing%20page%20design%20and%20what%20you%20were%20looking%20to%20achieve.%20--%3E%0A%0A%23%23%20Demo%0A%3C!--%20Share%20a%20link%20to%20your%20landing%20page%20and%20include%20some%20screenshots%20here.%20--%3E%0A%0A%23%23%20How%20I%20Built%20It%0A%3C!--%20Tell%20us%20about%20your%20process%2C%20what%20technologies%20you%20used%2C%20how%20you%20incorporated%20the%20DEV%20API%2C%20and%20anything%20you%20are%20particularly%20proud%20of.%20--%3E%0A%0A%3C!--%20Don%27t%20forget%20to%20add%20a%20cover%20image%20(if%20you%20want).%20--%3E%0A%0A%3C!--%20Final%20Note%3A%20By%20participating%20in%20this%20challenge%2C%20you%20agree%20that%20if%20your%20submission%20is%20selected%20as%20a%20winner%2C%20DEV%20may%20use%2C%20modify%2C%20and%20host%20your%20code%20as%20the%20official%20landing%20page%20for%20WeCoded.%20You%20retain%20full%20ownership%20of%20your%20work%2C%20and%20this%20agreement%20does%20not%20restrict%20how%20you%20use%20or%20share%20it%20elsewhere.%20Additionally%2C%20you%20confirm%20that%20your%20submission%20is%20your%20own%20original%20work%20and%20does%20not%20infringe%20on%20any%20third-party%20rights.%20--%3E%0A%0A%3C!--%20Thanks%20for%20participating!%20--%3E)

# # Cách tham gia

Để tham gia, bạn cần đăng một bài viết bằng cách sử dụng mẫu dự thi tương ứng với mỗi thử thách.

Vui lòng xem lại đầy đủ rules, guidelines, and FAQ page trước khi gửi bài để hiểu rõ các hướng dẫn tham gia và quy tắc chính thức của cuộc thi, chẳng hạn như yêu cầu về điều kiện tham gia.

# # Giải thưởng

Người chiến thắng ở mỗi thử thách sẽ nhận được:

* 6 tháng DEV++ Membership
* Huy hiệu DEV độc quyền
* Một món quà từ DEV Shop

**Tất cả người tham gia** có bài dự thi hợp lệ sẽ nhận được huy hiệu hoàn thành trên hồ sơ DEV của họ.

# # Mốc thời gian quan trọng

* Ngày 5 tháng 3: WeCoded Challenge bắt đầu!
* Ngày 8 tháng 3: Ngày Quốc tế Phụ nữ
* Ngày 6 tháng 4: Hạn chót nộp bài lúc 11:59 PM PDT
* Ngày 17 tháng 4: Công bố người chiến thắng

Có câu hỏi nào về thử thách không? Hãy hỏi bên dưới.

Chúc may mắn!

 # WeCoded Challenge: Cơ hội để bạn tỏa sáng trong lĩnh vực công nghệ (và nhận quà!)Chào mọi người! Mình là [Tên của bạn...
27/03/2025

# WeCoded Challenge: Cơ hội để bạn tỏa sáng trong lĩnh vực công nghệ (và nhận quà!)

Chào mọi người! Mình là [Tên của bạn], một người vừa yêu công nghệ, vừa thích sáng tạo nội dung. Hôm nay, mình muốn chia sẻ với các bạn một tin cực kỳ hấp dẫn: **WeCoded Challenge**!

Đây là một sân chơi mới toanh, được tổ chức để tôn vinh sự đa dạng, hòa nhập và trao quyền cho tất cả mọi người trong ngành công nghệ.

# # WeCoded: Từ SheCoded đến một không gian bao trùm

Nếu bạn là một thành viên lâu năm của cộng đồng DEV, chắc hẳn bạn đã từng nghe đến **SheCoded**, một sự kiện thường niên kỷ niệm Ngày Quốc tế Phụ nữ (8/3). Bắt đầu từ năm 2018, SheCoded là nơi để những người phụ nữ trong ngành chia sẻ những câu chuyện, thách thức và thành công của họ.

Nhưng từ năm 2023, SheCoded đã phát triển thành **WeCoded** – một không gian bao trùm hơn, nơi tất cả những tiếng nói bị thiệt thòi và ít được đại diện trong ngành công nghệ đều có thể được lắng nghe.

Sự thay đổi này thể hiện cam kết của DEV trong việc tạo ra một cộng đồng mà ở đó, ai cũng có thể thấy mình được đại diện, chia sẻ kinh nghiệm và tìm thấy nguồn cảm hứng.

# # WeCoded 2025: Thử thách dành cho tất cả

**Năm 2025, WeCoded sẽ được nâng lên một tầm cao mới bằng cách chuyển đổi thành một DEV Challenge thực thụ!** Điều này có nghĩa là sẽ có nhiều cơ hội hơn cho các thành viên cộng đồng tham gia, dù là chia sẻ những câu chuyện cá nhân *hoặc* thể hiện những kỹ năng kỹ thuật của bạn.

**Thử thách WeCoded sẽ diễn ra đến hết ngày 6 tháng 4**, với hai chủ đề khác nhau để bạn thỏa sức sáng tạo, chia sẻ kinh nghiệm và có cơ hội được vinh danh!

# # Hai chủ đề của WeCoded Challenge

# # # 1. Echoes of Experience (Tiếng vọng của trải nghiệm)

* **Nội dung:** Chia sẻ hành trình cá nhân của bạn hoặc những câu chuyện bạn đã chứng kiến trong ngành công nghệ. Hãy tập trung vào những thách thức, thành công và bài học kinh nghiệm.
* **Mục tiêu:** Truyền cảm hứng và trao quyền cho những người ít được đại diện trong ngành, hoặc giúp những người ủng hộ hiểu rõ hơn về cách xây dựng một môi trường hòa nhập hơn.
* **[Mẫu bài viết](https://dev.to/new?prefill=---%0Atitle%3A%20%0Apublished%3A%20%0Atags%3A%20devchallenge%2C%20wecoded%2C%20dei%2C%20career%0A---%0A%0A*This%20is%20a%20submission%20for%20the%20%5BWeCoded%20Challenge%5D(https%3A%2F%2Fdev.to%2Fchallenges%2Fwecoded)%3A%20Echoes%20of%20Experience*%0A%0A%3C!--%20Share%20your%20tech%20journey%20or%20stories%20you%27ve%20witnessed%20in%20the%20industry.%20You%20may%20discuss%20challenges%20faced%2C%20triumphs%20celebrated%2C%20lessons%20learned%2C%20or%20insights%20gained.%20Your%20story%20should%20aim%20to%20inspire%20other%20underrepresented%20individuals%20or%20educate%20allies.%20--%3E%0A%0A%3C!--%20Don%27t%20forget%20to%20add%20a%20cover%20image%20(if%20you%20want).%20--%3E%0A%0A%3C!--%20Thanks%20for%20participating!%20--%3E)

# # # 2. Celebrate in Code (Tôn vinh bằng code)

* **Nội dung:** Tạo ra một trang đích (landing page) thật ấn tượng và hấp dẫn cho địa chỉ `dev.to/wecoded`. Trang này sẽ là ngôi nhà vĩnh viễn cho WeCoded, nơi tôn vinh những câu chuyện truyền cảm hứng từ những tiếng nói ít được đại diện trong ngành công nghệ.
* **Yêu cầu:**
* Thiết kế của bạn cần làm nổi bật những bài viết WeCoded và SheCoded trước đây.
* Bạn có thể sử dụng [DEV Articles API](https://dev.to/api/articles) để hiển thị nội dung một cách động.
* Chỉ sử dụng frontend.
* **[Mẫu bài viết](https://dev.to/new?prefill=---%0Atitle%3A%20%0Apublished%3A%20%0Atags%3A%20devchallenge%2C%20wecoded%2C%20dei%2C%20webdev%0A---%0A%0A*This%20is%20a%20submission%20for%20the%20%5BWeCoded%20Challenge%5D(https%3A%2F%2Fdev.to%2Fchallenges%2Fwecoded)%3A%20Celebrate%20in%20Code*%0A%0A%23%23%20My%20WeCoded%20Landing%20Page%0A%0A%3C!--%20Tell%20us%20about%20your%20landing%20page%20design%20and%20what%20you%20were%20looking%20to%20achieve.%20--%3E%0A%0A%23%23%20Demo%0A%3C!--%20Share%20a%20link%20to%20your%20landing%20page%20and%20include%20some%20screenshots%20here.%20--%3E%0A%0A%23%23%20How%20I%20Built%20It%0A%3C!--%20Tell%20us%20about%20your%20process%2C%20what%20technologies%20you%20used%2C%20how%20you%20incorporated%20the%20DEV%20API%2C%20and%20anything%20you%20are%20particularly%20proud%20of.%20--%3E%0A%0A%3C!--%20Don%27t%20forget%20to%20add%20a%20cover%20image%20(if%20you%20want).%20--%3E%0A%0A%3C!--%20Final%20Note%3A%20By%20participating%20in%20this%20challenge%2C%20you%20agree%20that%20if%20your%20submission%20is%20selected%20as%20a%20winner%2C%20DEV%20may%20use%2C%20modify%2C%20and%20host%20your%20code%20as%20the%20official%20landing%20page%20for%20WeCoded.%20You%20retain%20full%20ownership%20of%20your%20work%2C%20and%20this%20agreement%20does%20not%20restrict%20how%20you%20use%20or%20share%20it%20elsewhere.%20Additionally%2C%20you%20confirm%20that%20your%20submission%20is%20your%20own%20original%20work%20and%20does%20not%20infringe%20on%20any%20third-party%20rights.%20--%3E%0A%0A%3C!--%20Thanks%20for%20participating!%20--%3E)

# # Cách tham gia

Để tham gia, bạn cần đăng một bài viết sử dụng mẫu bài viết tương ứng với mỗi chủ đề. Đừng quên đọc kỹ [rules, guidelines, and FAQ page](https://dev.to/challenges/wecoded) để hiểu rõ hơn về các quy định và điều kiện tham gia.

# # Giải thưởng

Người chiến thắng ở mỗi chủ đề sẽ nhận được:

* 6 tháng [DEV++ Membership](https://dev.to/++)
* Huy hiệu DEV độc quyền
* Quà từ [DEV Shop](https://shop.forem.com)

**Tất cả những người tham gia** với bài viết hợp lệ sẽ nhận được một huy hiệu hoàn thành trên hồ sơ DEV của họ.

# # Những ngày quan trọng

* **5 tháng 3:** WeCoded Challenge bắt đầu!
* **8 tháng 3:** Ngày Quốc tế Phụ nữ
* **6 tháng 4: Hạn chót nộp bài (11:59 PM PDT)**
* **17 tháng 4:** Công bố người chiến thắng

Nếu bạn có bất kỳ câu hỏi nào, đừng ngần ngại hỏi bên dưới nhé!

Chúc các bạn may mắn!

 # Chọn Cơ Sở Dữ Liệu Phân Tích Thời Gian Thực: RTABench Giúp Bạn!Chào mọi người! Nếu bạn đang đau đầu lựa chọn cơ sở dữ...
26/03/2025

# Chọn Cơ Sở Dữ Liệu Phân Tích Thời Gian Thực: RTABench Giúp Bạn!

Chào mọi người! Nếu bạn đang đau đầu lựa chọn cơ sở dữ liệu (CSDL) cho việc phân tích dữ liệu thời gian thực, thì bài viết này chính là dành cho bạn. Trong lĩnh vực IT, việc chọn đúng CSDL có thể tạo ra sự khác biệt lớn giữa một hệ thống nhanh nhạy và một hệ thống chậm chạp, đặc biệt khi nói đến các ứng dụng cần phản hồi tức thì.

# # Vấn Đề Muôn Thuở: Chọn CSDL Nào?

Hiện nay, có vô vàn các lựa chọn CSDL, mỗi loại lại được tối ưu hóa cho các mục đích sử dụng khác nhau. Một số được xây dựng để phân tích thời gian thực trong các ứng dụng tương tác trực tiếp với khách hàng, nơi độ trễ thấp và hiệu suất thu thập dữ liệu cao là yếu tố sống còn. Một số khác lại được thiết kế cho việc BI và báo cáo nội bộ, tối ưu hóa cho các phép tổng hợp quy mô lớn và xử lý theo lô. Thậm chí, có những CSDL đa năng, xử lý cả giao dịch và phân tích, trong khi số khác chỉ chuyên về khối lượng công việc phân tích.

Các bài kiểm tra hiệu năng (benchmark) có thể giúp ích, nhưng chỉ khi chúng phản ánh đúng khối lượng công việc thực tế của bạn.

# # Sự Ra Đời của RTABench

Để lấp đầy khoảng trống này, chúng tôi đã tạo ra **RTABench**, một benchmark mới giúp các nhà phát triển đánh giá hiệu suất của các CSDL khác nhau trong các tình huống phân tích thời gian thực. RTABench tập trung vào các mô hình truy vấn thiết yếu như joins, lọc và pre-aggregations.

**Vậy, phân tích thời gian thực có những đặc điểm chính nào?**

* **Multi-table Joins (Kết nối nhiều bảng):** Nhanh chóng kết hợp dữ liệu từ nhiều bảng khác nhau.
* **Selective Filtering (Lọc có chọn lọc):** Tra cứu nhanh chóng dữ liệu gần đây nhất và cụ thể nhất.
* **Pre-aggregated Results (Kết quả được tính toán trước):** Sử dụng materialized views (view vật hóa) được tính toán trước để có phản hồi nhanh chóng.

Việc denormalizing (phi chuẩn hóa) dữ liệu có thể tăng tốc độ truy vấn, nhưng nó lại làm phức tạp việc quản lý và tăng chi phí. Các ứng dụng thời gian thực thường ưu tiên các lược đồ đã chuẩn hóa và kết nối dữ liệu tại thời điểm truy vấn.

# # RTABench Hoạt Động Như Thế Nào?

RTABench mô phỏng một hệ thống theo dõi đơn hàng với các bảng đã chuẩn hóa để bắt chước các ứng dụng phân tích thời gian thực. Nó sử dụng khoảng 171 triệu bản ghi đơn hàng và đánh giá CSDL với 40 truy vấn khác nhau, bao gồm các phép đếm cơ bản, lọc có chọn lọc, kết nối nhiều bảng và truy vấn pre-aggregated.

**RTABench phân loại CSDL thành:**

1. **CSDL đa năng:** Ví dụ: PostgreSQL và MySQL.
2. **CSDL phân tích thời gian thực:** Được tối ưu hóa cho thông tin chi tiết nhanh chóng, thường là CSDL thứ cấp.
3. **CSDL phân tích theo lô:** Chủ yếu dành cho dữ liệu lịch sử và bị loại trừ khỏi các benchmark thời gian thực.

# # Kết Quả Benchmark: Những Gì Chúng Ta Học Được

Kết quả RTABench được công bố tại [rtabench.com](https://rtabench.com/). Dưới đây là một số điểm nổi bật:

1. **CSDL đa năng hoạt động tốt hơn trên RTABench so với ClickBench.** Điều này là dễ hiểu vì RTABench sử dụng một lược đồ đã chuẩn hóa tương tự như các ứng dụng thực tế, trong khi ClickBench dựa trên một tập dữ liệu đã denormalized được tối ưu hóa cho phân tích theo lô.
2. **TimescaleDB nhanh hơn 1.9 lần so với ClickHouse trên RTABench, mặc dù chậm hơn 6.8 lần trên ClickBench.** Điều này có thể là do TimescaleDB được tối ưu hóa cho các ứng dụng phân tích thời gian thực, thường dựa vào các lược đồ đã chuẩn hóa và tổng hợp có chọn lọc, trong khi ClickHouse nổi bật trong phân tích cột đã denormalized với tổng hợp quy mô lớn.
3. **Incremental materialized views (view vật hóa tăng dần) mang lại tốc độ vượt trội.** Chúng mang lại hiệu suất nhanh hơn hàng trăm hoặc thậm chí hàng nghìn lần so với truy vấn dữ liệu thô (từ vài giây xuống vài mili giây), chứng minh giá trị của chúng đối với phân tích thời gian thực. Tuy nhiên, trong số các CSDL được kiểm tra, chỉ ClickHouse và TimescaleDB hỗ trợ chúng.
4. **ClickHouse là nhà vô địch về khả năng tải dữ liệu và hiệu quả lưu trữ.** Nó nhanh hơn 4.8 lần khi tải dữ liệu và sử dụng ít hơn 1.7 lần dung lượng đĩa so với CSDL tốt nhất tiếp theo.
5. **PostgreSQL là CSDL đa năng nhanh nhất.** CSDL phổ biến nhất trong giới nhà phát triển thể hiện tính linh hoạt của nó. Với lập chỉ mục, nó chỉ chậm hơn 4.1 lần so với TimescaleDB trên các truy vấn thô - nhưng nó không thể sánh được với hiệu suất của incremental materialized views, mà PostgreSQL không hỗ trợ.

# # Tham Gia Cộng Đồng RTABench

Chúng tôi khuyến khích đóng góp từ cộng đồng cho RTABench! Cho dù đó là thêm CSDL mới, cải thiện các truy vấn hiện có hay thực hiện các điều chỉnh cấu hình, chúng tôi hy vọng bạn sẽ đóng góp vào kho lưu trữ. Tất cả các công cụ, tập dữ liệu và kết quả đều có sẵn trên GitHub, với phiên bản mới nhất [tại đây](https://rtabench.com/).

Hy vọng bài viết này giúp bạn có cái nhìn tổng quan và lựa chọn CSDL phù hợp cho nhu cầu phân tích thời gian thực của mình. Chúc các bạn thành công!

 # WeCoded Challenge: Chào mừng sự đa dạng và hòa nhập trong ngành công nghệ!Chào mọi người! Chúng tôi rất vui mừng thôn...
25/03/2025

# WeCoded Challenge: Chào mừng sự đa dạng và hòa nhập trong ngành công nghệ!

Chào mọi người! Chúng tôi rất vui mừng thông báo về sự ra mắt của **WeCoded Challenge** đầu tiên - một sân chơi mới để tôn vinh sự đa dạng, hòa nhập và trao quyền trong ngành công nghệ!

# # Từ SheCoded đến WeCoded: Một bước tiến lớn

Từ năm 2018, DEV đã kỷ niệm Ngày Quốc tế Phụ nữ với chương trình [SheCoded](https://dev.to/jess/everyone-please-join-us-for-shecoded-2018--56l2), một lời kêu gọi cộng đồng chia sẻ những câu chuyện mạnh mẽ từ phụ nữ trong lĩnh vực công nghệ về hành trình, thách thức và thành công của họ. Từ một nền tảng dành cho tiếng nói của phụ nữ, chương trình đã phát triển một cách tự nhiên thành [WeCoded](https://dev.to/devteam/join-us-for-wecoded-2023-9cj) vào năm 2023 - một không gian hòa nhập, khuếch đại *tất cả* những tiếng nói bị đại diện thiếu và bị thiệt thòi trong ngành của chúng ta.

Sự phát triển này phản ánh cam kết của chúng tôi trong việc tạo ra một cộng đồng nơi mọi người có thể thấy mình được đại diện, chia sẻ kinh nghiệm và tìm thấy nguồn cảm hứng. WeCoded xây dựng trên nền tảng của SheCoded đồng thời mở rộng phạm vi tôn vinh để đón nhận sự đa dạng phong phú về quan điểm, điều này làm cho cộng đồng của chúng ta mạnh mẽ hơn.

# # WeCoded 2025

**Trong năm 2025, chúng tôi đưa WeCoded lên một tầm cao mới bằng cách chuyển đổi nó thành định dạng [
DEV Challenge](https://dev.to/challenges/wecoded) lần đầu tiên.** Chúng tôi hy vọng điều này sẽ cho phép nhiều thành viên cộng đồng tham gia hơn, cho dù bằng cách chia sẻ những câu chuyện cá nhân *hoặc* thể hiện các kỹ năng kỹ thuật - tạo ra nhiều cơ hội hơn để tiếng nói được lắng nghe và tầm quan trọng tổng thể của sự đa dạng và hòa nhập được công nhận.

**Diễn ra đến hết ngày 6 tháng 4**, **[WeCoded Challenge](https://dev.to/challenges/wecoded)** cung cấp hai chủ đề riêng biệt để bạn thể hiện sự sáng tạo, chia sẻ kinh nghiệm và thấy tác phẩm của mình được giới thiệu như một phần của lễ kỷ niệm thường niên!

# # Các chủ đề của chúng tôi

# # # Echoes of Experience (Tiếng vọng của trải nghiệm)

Chia sẻ hành trình cá nhân của bạn hoặc những câu chuyện bạn đã chứng kiến trong ngành công nghệ - làm nổi bật những thách thức, thành công và hiểu biết sâu sắc.
Những chia sẻ của bạn nên truyền cảm hứng và trao quyền cho những cá nhân bị đại diện thiếu trên những con đường tương tự hoặc giáo dục những người ủng hộ về cách thúc đẩy một ngành công nghiệp hòa nhập hơn.

Đây là mẫu bài đăng cho bất kỳ ai muốn tham gia ngay:

[Echoes of Experience Submission Template](https://dev.to/new?prefill=---%0Atitle%3A%20%0Apublished%3A%20%0Atags%3A%20devchallenge%2C%20wecoded%2C%20dei%2C%20career%0A---%0A%0A*This%20is%20a%20submission%20for%20the%20%5BWeCoded%20Challenge%5D(https%3A%2F%2Fdev.to%2Fchallenges%2Fwecoded)%3A%20Echoes%20of%20Experience*%0A%0A%3C!--%20Share%20your%20tech%20journey%20or%20stories%20you%27ve%20witnessed%20in%20the%20industry.%20You%20may%20discuss%20challenges%20faced%2C%20triumphs%20celebrated%2C%20lessons%20learned%2C%20or%20insights%20gained.%20Your%20story%20should%20aim%20to%20inspire%20other%20underrepresented%20individuals%20or%20educate%20allies.%20--%3E%0A%0A%3C!--%20Don%27t%20forget%20to%20add%20a%20cover%20image%20(if%20you%20want).%20--%3E%0A%0A%3C!--%20Thanks%20for%20participating!%20--%3E)

# # # Celebrate in Code (Tôn vinh bằng code)

Tạo một trang đích (landing page) năng động và hấp dẫn cho dev.to/wecoded - một ngôi nhà vĩnh viễn cho lễ kỷ niệm WeCoded hàng năm của chúng tôi.

Thiết kế của bạn nên làm nổi bật các bài đăng WeCoded và SheCoded trước đây, thu hút những câu chuyện quan trọng và đầy cảm hứng từ những tiếng nói bị đại diện thiếu trong lĩnh vực công nghệ. Bạn có thể bao gồm thêm thông tin về lịch sử của WeCoded, Ngày Quốc tế Phụ nữ, các tài nguyên bổ sung và bất kỳ điều gì khác có thể áp dụng cho chủ đề lễ kỷ niệm của chúng ta.

Chúng tôi khuyến khích bạn sử dụng DEV Articles API để hiển thị nội dung một cách năng động và tạo ra một trải nghiệm tôn vinh tác động liên tục của những câu chuyện này.

Ví dụ về cách truy cập các bài đăng `wecoded` từ API:

```javascript
window.fetch('https://dev.to/api/articles?tag=wecoded')
.then(response => response.json()) // Parse the JSON from the response
.then(data => {
console.log(data)
});
```

Ngoài các yêu cầu DEV API, **bài nộp của bạn chỉ nên là frontend**.

Thiết kế chiến thắng (có thể có một vài sửa đổi nhỏ) sẽ được sử dụng làm trang đích WeCoded chính thức sau khi thử thách kết thúc! Hãy xem xét điều đó và đưa thông tin của bạn vào trang để bạn được ghi nhận đúng cách.

**Xem [trang đích thử thách](https://dev.to/challenges/wecoded) của chúng tôi để truy cập tài sản WeCoded và các tài nguyên bổ sung.**

Đây là mẫu bài đăng cho bất kỳ ai muốn tham gia ngay:

[Celebrate in Code Submission Template](https://dev.to/new?prefill=---%0Atitle%3A%20%0Apublished%3A%20%0Atags%3A%20devchallenge%2C%20wecoded%2C%20dei%2C%20webdev%0A---%0A%0A*This%20is%20a%20submission%20for%20the%20%5BWeCoded%20Challenge%5D(https%3A%2F%2Fdev.to%2Fchallenges%2Fwecoded)%3A%20Celebrate%20in%20Code*%0A%0A%23%23%20My%20WeCoded%20Landing%20Page%0A%0A%3C!--%20Tell%20us%20about%20your%20landing%20page%20design%20and%20what%20you%20were%20looking%20to%20achieve.%20--%3E%0A%0A%23%23%20Demo%0A%3C!--%20Share%20a%20link%20to%20your%20landing%20page%20and%20include%20some%20screenshots%20here.%20--%3E%0A%0A%23%23%20How%20I%20Built%20It%0A%3C!--%20Tell%20us%20about%20your%20process%2C%20what%20technologies%20you%20used%2C%20how%20you%20incorporated%20the%20DEV%20API%2C%20and%20anything%20you%20are%20particularly%20proud%20of.%20--%3E%0A%0A%3C!--%20Don%27t%20forget%20to%20add%20a%20cover%20image%20(if%20you%20want).%20--%3E%0A%0A%3C!--%20Final%20Note%3A%20By%20participating%20in%20this%20challenge%2C%20you%20agree%20that%20if%20your%20submission%20is%20selected%20as%20a%20winner%2C%20DEV%20may%20use%2C%20modify%2C%20and%20host%20your%20code%20as%20the%20official%20landing%20page%20for%20WeCoded.%20You%20retain%20full%20ownership%20of%20your%20work%2C%20and%20this%20agreement%20does%20not%20restrict%20how%20you%20use%20or%20share%20it%20elsewhere.%20Additionally%2C%20you%20confirm%20that%20your%20submission%20is%20your%20own%20original%20work%20and%20does%20not%20infringe%20on%20any%20third-party%20rights.%20--%3E%0A%0A%3C!--%20Thanks%20for%20participating!%20--%3E)

# # Cách tham gia

Để tham gia, bạn cần đăng một bài viết bằng mẫu bài đăng được liên kết với mỗi chủ đề.

Vui lòng xem xét đầy đủ [các quy tắc, hướng dẫn và trang Câu hỏi thường gặp](https://dev.to/challenges/wecoded) của chúng tôi trước khi gửi để bạn hiểu các hướng dẫn tham gia và các quy tắc chính thức của cuộc thi như yêu cầu về tính đủ điều kiện.

# # Giải thưởng

Người chiến thắng của mỗi chủ đề sẽ nhận được:

* 6 tháng [DEV++ Membership](https://dev.to/++)
* Huy hiệu DEV độc quyền
* Một món quà từ [DEV Shop](https://shop.forem.com) (mở trong tab mới)

**Tất cả người tham gia** với một bài nộp hợp lệ sẽ nhận được huy hiệu hoàn thành trên hồ sơ DEV của họ.

# # Các mốc thời gian quan trọng

* Ngày 5 tháng 3: WeCoded Challenge bắt đầu!
* Ngày 8 tháng 3: Ngày Quốc tế Phụ nữ
* **Ngày 6 tháng 4: Hạn chót nộp bài lúc 11:59 PM PDT**
* Ngày 17 tháng 4: Công bố người chiến thắng

Có câu hỏi về thử thách? Hãy hỏi chúng ở bên dưới.

Chúc may mắn!

Address

162 Đường Mỹ Đình, Phường Mỹ Đình 2, Quận Nam Từ Liêm
Hanoi
100000

Alerts

Be the first to know and let us send you an email when APPA SMART posts news and promotions. Your email address will not be used for any other purpose, and you can unsubscribe at any time.

Share

Category