- Nên tìm những open source ở đâu và như thế nào để vừa sức với bản thân: Câu trả lời là ở github, nhưng:
- Đầu tiên em phải biết mình đang làm cái gì đã, ví dụ em đang làm ứng dụng android, thì hãy tìm các opensource android để contribute
- Chẳng ai có thể contribute ngay cho 1 project cả, đầu tiên là phải sử dụng nó ở mức thuần thục, hiểu rất rõ về nó sau đó mới có thể biết nó thiếu cái gì, bug ở đâu để tạo PR được, đó không phải là việc trong 1 sớm 1 chiều em ạ
- Những kiến thức/ kỹ năng mà một lập trình viên cần nâng cao bản thân để có thể đủ sức tham gia vào một dự án open source?
- Đầu tiên là kiến thức sử dụng git, phải biết fork, tạo commit, merge và rebase
- Tiếp theo nữa là design pattern, làm thư viện mà không biết design pattern thì ngang với cho ông thợ xây đi thiết kế kiến trúc
- Tuỳ vào mỗi loại dự án lại yêu cầu các kiến thức khác nhau, cái này phải vào dự án cụ thể anh mới trả lời được
- Ngoài đóng góp vào các dự án mã nguồn mở, còn những phương thức nào để nâng cao giá trị bản thân nữa.
- Làm tốt các công việc ở công ty, đến mức mà người ghét em nhất cũng phải công nhận em và công ty sẽ tự biết mà trả lương cao cho em
- Làm các dự án cá nhân và giới thiệu nó đến mọi người, tuy nhiên các dự án này phải hoàn chỉnh và có mục tiêu cụ thể, không thì cũng chẳng ai dùng và cũng chẳng tạo ra giá trị gì cả
- Làm video, blog, chia sẻ các kiến thức của em
- Trả lời các câu hỏi trên stackask này, em sẽ có level và mọi người và các nhà tuyển dụng sẽ chú ý và muốn có được em
- Em thấy mã nguồn mở Eazy Fox của anh Dũng rất hay và nhiều ý nghĩa ạ, em cần phát triển thêm những gì để bản thân phù hợp với dự án ạ
- EzyFox không phải của anh mà nó là của cộng đồng, của thế giới em ạ, khi đã public source trên github thì nó không còn là của anh nữa em ạ
- Em không cần phát triển gì để phù hợp với dự án em ạ, mà chính dự án phải phát triển để phù hợp với nhu cầu sử dụng của em em ạ
- Bên cạnh đó thì với mảng Flutter thì em cần học thêm hay tìm hiểu thêm những gì để nâng cao và phát triển bản thân ạ?
- Cái này để anh hỏi thêm bạn bè anh nhé, tuy nhiên với anh thì Flutter hay các framework khác phía client đều cơ bản là lấy dữ liệu và hiển thị dữ liệu vậy nên nếu em muốn thực sự giỏi thì:
+ Hãy tìm cách master phần giao diện và animation, phần này có thể phải động đến cả OpenGL
+ Master phần http để lấy dữ liệu
+ Master phần socket vì realtime sẽ là tương lai của thế giới
+ Master các phần làm video, livestreaming
Đây là các ý kiến chủ quan của anh, em có thể tham khảo nhé