Định kiến công nghệ
React Native cùi bắp, Javascript bullshit
Mấy tháng trước, lúc React Native (RN) chuẩn bị hot, Ionic cũng ra phiên bản version 2. Mình cũng bắt đầu học thử 2 món trên. Lúc đó cũng lên đọc sơ qua document của Javascript và nhảy vào RN và Ionic luôn.
Sau khi mò vài bữa, mình nhận xét là Javascript quá phổ biến mà cũng quá sida, syntax tào lao bí đao và quyết định hem học nữa. Với mình lúc đó Swift là số một, syntax rõ ràng, viết code như tiếng Anh rất sướng tay. Mình cũng khuyên mọi người nên chọn Swift làm ngôn ngữ lập trình đầu tiên luôn.
Thay đổi
Gần đây, mình nhận một dự án startup nên phải dùng công nghệ cross-platform để tiết kiệm chi phí. Thị trường đang hot bây giờ thì cũng những cái tên quen thuộc: Xamarin, React Native, Ionic.
Mình quyết định chọn React Native vì đơn giản nó đang trên đỉnh của trending, rất nhiều post trên Medium nói về RN. Lý do thứ hai là mình bắt đầu cảm thấy chán Swift, cũng không hiểu từ một thằng rất thích Swift lại đâm ra chán nhanh như vậy. Có lẽ mình muốn viết app cho Android luôn nhưng Swift chưa làm được nên đâm ra ức chế.
Lần này mình học từ từ, đi sâu vào cách hoạt động của RN như props, state, component, flexbox và học kĩ càng về Redux.
Khi bỏ thời gian nghiêm túc ra tìm hiểu, mình phải công nhận là RN nó hay thật. Nó rất dễ học và dễ làm hơn mình nghĩ mấy tháng trước, thiết kế UI rất đẹp, nhanh, app logic thì có Redux với unidirectional data flow khác hoàn toàn với MVC như trước đây mình thường làm.
Javascript cũng không sida như mình đã nghĩ. Nó lạ chứ không phải bullshit. Có nhiều cái hay như dynamic typing, destructuring assignment, spread syntax, arrow function, Và giờ mình lại thích ẻm nhiều hơn Swift luôn. Và mình lại muốn quay một khóa học về Javascript chứ không phải Swift nữa.
Định kiến về công nghệ
Định nghĩa từ định kiến trên wikipedia:
Định kiến hoặc thành kiến là những ý kiến, quan điểm đã được hình thành, trước khi nhận thức các dữ kiện có liên quan hoặc biết rõ những thông tin liên quan của một sự kiện cụ thể
Định kiến công nghệ
Định kiến công nghệ là quan điểm đã được hình thành trước khi hiểu rõ về một ngôn ngữ/công nghệ. Tệ hơn, khi thấy ai xài ngôn ngữ/công nghệ đó sẽ bĩu môi chê bai không thương tiếc.
Không phải riêng gì mình, mình từng nghe những ý kiến như Facebook không phải là công ty chuyên về dev tool như Microsoft nên React Native sẽ cùi hơn Xamarin, hay Facebook từng shutdown Parse rồi, nên React Native cũng có khả năng die.
Tác hại của định kiến công nghệ
Người nào có định kiến về một công nghệ rồi thì sẽ có xu hướng hem học nó, chê nó, tuyên truyền với mọi người đừng nên đụng vào nó. Chưa kể anh em mất lòng nhau khi một thằng cứ chê công nghệ/ngôn ngữ mình đang dùng mà nó chả hiểu gì về công nghệ đó. Đây cũng là nguyên nhân gây war trên mạng. Rồi mấy em mới học lập trình thấy nhiều ý kiến trái chiều vậy không biết học gì làm gì luôn.
Kết luận
Tiếng Anh có từ là open-minded, tức là sẵn sàng học cái mới, không định kiến và có suy nghĩ khách quan. Thiết nghĩ mỗi lập trình viên cũng nên open-minded về công nghệ. Mỗi công nghệ đều có cái hay, cũng đừng nên vội vàng kết luận chi chưa hiểu rõ về nó.