Nên học gì trong thời đại số 2018

Trong thời đại công nghệ số như bây giờ, IT đã bão hòa rồi và bạn có quá nhiều lựa chọn để học, bạn không biết nên chọn cái gì, bài viết này sẽ giúp bạn có cái nhìn chính xác hơn.

Vì cá nhân mình làm android developer nên có thể những lời khuyên không hợp lý với các bạn nhưng hãy coi như một sự tham khảo nhé.

Nên học gì trong thời đại số 2018

Từ 2018 thì block chain là một thuật ngữ nổi lên như một xu hướng, cùng với đó là sự lên ngôi của react-js, react-native, swift, kotlin... vậy chúng ta hãy lựa một cái làm nền tảng nhé.

Tuyệt đối không được quên "Một nghề thì sống đống nghề thì chết" hay "trăm hay không bằng tay quen" nhé.

Block chain

Chắc hẳn cũng có bạn chưa nghe thấy cái này nhưng mình tin 100% các bạn đã nghe tới "bitcoin" rồi. Vâng Bitcoin chỉ là một thể hiện của công nghệ block chain thôi nhé.

Vì sao mình đưa Blockchain là công nghệ đáng học số 1 thì các bạn xem ở đây nhé:

Hoặc bạn có thể lên google search "blockchain interview" thì bạn sẽ thấy số kết quả và salary dành cho nó ở mức mà khiến bạn sock luôn, bạn có thể tham khảo kỹ hơn ở bài viết này

https://hackernoon.com/blockchain-jobs-and-salaries-2018-report-45d3e7741c19

Vậy Blockchain có khó học không, xin thưa với các bạn là cực dễ mình cũng chỉ học blockchain qua 2 bài viết sau đây thôi:

Vậy tại sao bạn không học blockchain nhỉ, một lĩnh vực mới, lương cao, dễ học, nhiều cơ hội, không bị cạnh tranh và là xu hướng của tương lai ( nó giống như facebook năm 2011 vậy)

React-native

RN đã và đang là hot trend của các developer trong ngành mobile. Đây có thể coi là một framework ngon cho business đồng thời cú pháp js hiện đại cũng giúp cho việc bạn phát triển ứng dụng nhẹ nhàng hơn rất nhiều.

Hiện RN support 2 nền tảng ios & android. Tuy nhiên khi bạn đã ngon RN rồi thì bạn có thể học thêm React-js để có thể cân cả mobile client lẫn web client luôn nhé ^^ Học RN rất đơn giản, bạn chỉ cần ngốn hết các thứ basic ở đây https://facebook.github.io/react-native/ Official website của RN hoặc để nâng cao thêm 1 chút thì bạn nên tham khảo thêm ở đây https://reactnavigation.org/

Và một phần thú vị của RN đang chờ bạn https://reactnavigation.org/docs/en/redux-integration.html

Bạn có thể tham khảo series về redux trong blog của mình luôn nhé

Mình xin tóm lược một số ý kiến cá nhân về RN như sau - Ưu điểm: + Code nhanh, ngắn gọn + Hỗ trợ đa nền tảng + Yêu cầu phần cứng thấp ( máy tính nào cũng code đc, ko quan trọng mac hay windows) + Số lượng developer ít + Maintain nhanh + Thay đổi spec linh hoạt ( thực hiện các chiến lược quảng cáo ) + Gọi api native -> tốc độ + performance ngon như native

- Nhược điểm: + Biết code js là một lợi thế nhưng bạn vẫn cần có basic kiến thức về native (objective-c, swift, java-android...) + Qúa nhiều thư viện nên khó lựa chọn cái phù hợp + Vẫn còn thay đổi quá nhiều -> độ ổn định thấp + Nhiều phần nâng cao (qrcode, camera, service, map) hỗ trợ chưa ngon

Kotlin & Swift (4)

Đây không phải là một ngôn ngữ không phải ra đời quá sớm nhưng nó đã và đang dần thay thế các ngôn ngữ cũ ( swift 1,2,3, objective-c, java) và được ưa chuộng trong cộng đồng mobile developer.

Và lời khuyên của mình với các bạn mới đi học hãy nên học chuyên sâu một nền tảng native rồi sau đó hãy tính đến chuyện học thêm ngôn ngữ khác hoặc ngôn ngữ lập trình đa nền tảng để có cái nhìn khái quát và có khả năng tùy biến cao khi tham gia dự án.

Thứ nhất là độ ổn định, thứ 2 là con đẻ của các ông lớn (apple, google) nên bạn có thể yên tâm về độ an toàn, tính bền vững và quan trọng là đất sống khó có thể cạnh tranh bởi các ngôn ngữ khác.

https://kotlinlang.org/ https://developer.apple.com/swift/

Kết luận

Trên đây chỉ là một số ý kiến cá nhân của mình dành cho các bạn mới ra trường hoặc muốn chuyển sang ngành mobile developer.

Các bạn có thể tham khảo thêm một số bài viết khác bên dưới để có sự lựa chọn đúng đắn nhé: