10 ขั้นตอน สู่การเป็น Frontend Developer ในปี 2025

1. เรียนรู้การทำงานของ Web Application พื้นฐาน เช่น domain names / DNS / http / https คืออะไร

.

2. เรียนรู้การเครื่องมือสำหรับเขียนโค้ด เช่น VS Code / การใช้ Extentions ต่างๆ เช่น Prettier (สำหรับ format code), ESLint (สำหรับตรวจสอบ error) เป็นต้น

.

3. เรียนรู้ HTML พื้นฐาน เช่น Tags, Elements, Attributes และเรียน CSS พื้นฐาน เช่น Selectors, Layout (Flexbox/Grid), Responsive Design และลองฝึกใช้ css framework เช่น bootstrap / tailwind css เป็นต้น

.

4. เรียนรู้ Modern JavaScript เช่น Variables, Functions, DOM, ES6+, Async JavaScript เป็นต้น

.

5. เรียนรู้ Version Control เช่น Git -> GitHub หรือ GitLab

.

6. เรียนรู้ Frontend Frameworks สักตัว แนะนำ React ก่อนหรืออื่นๆ และเรียนรู้ Package Manager ต่อ เช่น npm หรือ pnpm

.

7. เรียนรู้ TypeScript (ทดลองเขียนโปรเจคด้วย TypeScript)

.

8. เรียนรู้พวก meta framework เช่น Next.js / Nuxt.js เป็นต้น

.

9. เรียนรู้การเขียน Unit test เช่น Jest / Vitest หรือ E2E test เช่น playwright / cypress เป็นต้น

.

10. เรียนรู้การ deploy production ของโปรเจค

เลือก Node.js (docker image) ให้เหมาะสมกับโปรเจค

มาเลือก Node.js (docker image) ให้เหมาะสมกับโปรเจคของเรากันครับ

1. สำหรับ Development หรือ Build Stages:

ใช้ node:<version> หรือ bitnami/node:<version> เฉพาะในกรณีที่เราต้องคอมไพล์โมดูล Node.js ที่เป็น Native จาก C++ เช่นไลบรารี bcrypt, node-sqlite3, sharp เป็นต้น

สำหรับกรณีอื่นๆ ส่วนใหญ่ การเลือก node:<version>-slim ซึ่งมีขนาดเล็กกว่าและประสิทธิภาพดีกว่า จะเหมาะสมกว่า

.

2. สำหรับสภาพแวดล้อมการใช้งานจริง (Production Environments):

หากเรื่องช่องโหว่ความปลอดภัย (CVEs) และขนาดของ image ไม่ใช่สิ่งที่เราให้ความสำคัญสูงสุด การใช้ node:<version>-slim จะช่วยให้เราทำงานราบรื่น หากแอปพลิเคชันของเราต้องการแพ็กเกจ OS เพิ่มเติมหลายตัว การใช้ node:<version>-slim ก็ยังเป็นตัวเลือกที่เหมาะสมที่สุด

และสำหรับสภาพแวดล้อมที่ต้องการความปลอดภัยสูงหรืออยู่ภายใต้กฎระเบียบที่เข้มงวด:

เลือกใช้ gcr.io/distroless/nodejs ซึ่งเป็นตัวเลือกฟรี (แต่ควรระวังข้อจำกัดเกี่ยวกับ child_process.exec())

ใช้ cgr.dev/chainguard/node หากยอมรับเรื่องค่าใช้จ่ายหรือการใช้งานที่ต้องอ้างอิงเวอร์ชันล่าสุดเสมอ

.

3. สิ่งที่ควรหลีกเลี่ยง:

– หลีกเลี่ยงการใช้ node:latest นอกเหนือจากกรณีทดสอบหรือทดลอง

– หลีกเลี่ยง image อย่าง node:<version> ในงาน production เพราะมันมีขนาดใหญ่ เว้นแต่จำเป็นจริงๆ

– หลีกเลี่ยงการใช้ node:<version>-alpine หากเรายังไม่เข้าใจผลกระทบระหว่าง musl และ glibc (มีไลบรารีที่เราใช้มีปัญหากับ musl หรือไม่)

ลองไปอ่านเพิ่มเติมบทความเพิ่มเติมต้นทางได้ที่นี่นะครับ

https://labs.iximiuz.com/…/how-to-choose-nodejs…

แนะนำเว็บศูนย์กลางเช็ค End-of-Life (EOL) 

แนะนำเว็บศูนย์กลางเช็ค End-of-Life (EOL) ของซอฟต์แวร์ที่เราใช้อยู่ ไม่ว่าจะเป็น Databases, Programming language, Frameworks ครับ

ลองเข้าดูที่นี่ครับ ไม่ต้องเข้าเว็บเช็คทีละตัว https://endoflife.date/