Từ JavaScript tới .NET: Hành trình của một thằng mê code

Phong

Hồi đó, mình nhập môn lập trình cũng từ JavaScript cả thôi. JavaScript hồi đó còn là "món đồ chơi" để làm mấy cái hiệu ứng hover với popup trên web, ai dè sau này nó thành cả một hệ sinh thái bự chảng như bây giờ.

Mình nhớ có lần ngồi code nguyên một cái to-do app bằng JavaScript thuần, DOM manipulation tùm lum, mà lúc đó thấy vui ơi là vui. Cảm giác khi cái app chạy được trên trình duyệt, người ta click vô là nó hoạt động, thiệt sự rất có động lực.

Rồi TypeScript xuất hiện. Lúc đầu mĩnh cũng ngại, nghĩ "thêm kiểu, thêm phiền". Nhưng mà xài rồi mới thấy: sao hông xài sớm hơn. TypeScript giống như cái phao cứu sinh cho mấy cái dự án lớn vậy. Code xong, refactor, không sợ chỗ này chỗ kia sai kiểu.

Sau một thời gian dài chơi với JS/TS, mình bắt đầu tò mò qua .NET. Lý do cũng đơn giản: mình thấy C# có nhiều cái hay mà JS không có — kiểu static type mạnh hơn, performance tốt hơn, mà tooling Visual Studio cũng mượt. Hồi mới qua, mình cũng lơ tơ mơ mấy khái niệm kiểu async/await với LINQ, nhưng mà chơi riết rồi ghiền.

Bây giờ, mình vẫn xài JS/TS mỗi ngày (frontend với các tool nhỏ), .NET cho backend, rồi lân la qua Rust (làm mấy cái tool ffmpeg xử lý video) với Golang nữa. Mỗi cái mỗi vẻ, không có cái nào "nhất" hết, cái nào hợp việc thì xài thôi.

Mấy bạn mới vô nghề hay hỏi mình "học ngôn ngữ nào trước". Câu trả lời của mình luôn là: chọn một cái mà bạn thấy vui khi code, rồi từ từ mở rộng. Đừng lo chuyện "học cái này có lỗi thời không". Quan trọng nhất là cái tư duy — biết cách giải quyết vấn đề. Còn ngôn ngữ, cú pháp, sau này muốn chuyển đâu cũng dễ.

Còn chuyện mình đang học Rust, Golang, rồi .NET, chắc để dịp khác mình kể tiếp. Hẹn anh em bài sau nha!