Developer learning styles — A chat with creator of Vue.js Evan You

Anh có cần bằng cấp để trở thành một nhà phát triển thành công? Phương pháp học tốt nhất để bắt phát triển web là gì? Tại sao ngôn ngữ lập trình JavaScript là một lựa chọn tốt? Và việc có người hướng dẫn quan trọng ra sao? Tôi hỏi những điều này và một vài câu hỏi khác với Evan You, tác giả của một JavaScript framework đang trở nên phổ biến – VueJS.

Evan đã ở Brussels, Bỉ để chạy hội thảo Vue 3 ngày trong sự kiện bHack To School 2017. Thời điểm tuyệt vời để nói chuyện về giáo dục công nghệ và lộ trình học tập cho những nhà phát triển web.

Đây là một số điểm trong buổi nói chuyện của chúng tôi về hội thảo và các khóa học online, tầm quan trọng của việc có bằng cấp khi trở thành một developer, sự quan tâm với JavaScript và phương pháp học tập riêng biệt của anh ấy. Nó bao gồm một số lời khuyên đầy cảm hứng từ Evan về việc làm thế nào để tận dụng tối đa con đường học tập và trở thành một nhà phát triển web thành công.

Nếu bạn muốn biết nhiều hơn về nghề nghiệp thú vị của Evan và câu chuyện đằng sau sự thành công của Vue.js. Hãy đọc phần một của buổi phỏng vấn trên trang blog của chúng tôi.

Enjoy the read!

Theo anh, một bằng cấp – chẳng hạn như khoa học máy tính có cần thiết cho sự thành công của một nhà phát triển?

Với cá nhân mình, tôi không có một bằng cấp khoa học máy tính. Ngành công nghiệp máy tính đã phát triển rộng lớn tới mức mà từ “developer” có rất nhiều khu vực hoặc đặc điểm liên quan đến nó. Bạn chắc chắn có thể trở thành một frontend developer mà không cần một bằng cấp khoa học máy tính, nó hoàn toàn có thể. Nhưng khi bạn nói chuyện về AI (trí thông minh nhân tạo), bạn cần một bằng tiến sĩ để cạnh tranh.

Chỉ riêng cho frontend, tôi tin rằng sở hữu một bằng cấp khoa học máy tính là không cần thiết. Nhưng có thì chắc chắn sẽ hữu ích. Do vậy, nếu bạn vẫn đang quyết định, nếu bạn muốn tham gia vào ngành công nghiệp này và bạn có cơ hội để lấy một bằng cấp, bạn có lẽ nên lấy nó. Nếu bạn đã tốt nghiệp nhưng bạn muốn tham gia vào ngành này thì việc đó cũng không thể ngăn bạn được.

“Có một bằng cấp hoặc không chỉ là cơ sở của thứ gì đó bạn đã làm trong quá khứ. Nó không chỉ ra được những gì bạn có thể hoặc không thể làm trong tương lai” — Evan You

Khi tôi lập trình, tôi thi thoảng phải mua một quyển sách và học vài giải thuật. Với tôi, tôi không nói rằng vì tôi không có bằng cấp nên tôi không bao giờ có thể học giải thuật. Tôi học nó bây giờ thay vì tìm hiểu nó trước đây.

Bạn có thể mua những cuốn sách hoặc chỉ đến Coursera/OpenCourseware, tất cả các lớp học MIT… Chúng đều có thể được học online.

“Nếu bạn có đủ động lực, bạn sẽ tìm ra được cách để học tất cả mọi thứ mà bạn cần” — Evan You

Anh nghĩ sao về hiệu quả của “live”, các khóa học offline như hội thảo anh đã làm trong một vài ngày qua? So sánh chúng với những khóa học online đang phổ biến hiện nay?

Offline, điều quan trọng nhất là phản hồi mà bạn có thể có ngay lập tức từ người hướng dẫn. Nếu bạn làm nó một mình, bạn có thể gặp vướng mắc ở một phần nào đó trong vài tháng mà không tìm được giải pháp. Nhưng với vài người ngay cạnh bạn, những người có lẽ đã trải qua việc đó và họ có thể chỉ cho bạn cách đi đúng hướng, giúp bạn tiết kiệm được nhiều công sức.

“Có lẽ 2 ngày mà bạn dành cho offline có thể tiết kiệm giúp bạn nhiều tháng để thử nghiệm.” — Evan You


Nó phụ thuộc vào những phong cách học tập khác nhau. Một số thích xem videos hơn, số khác thích đọc sách. Với một số nhà phát triển offline, những khóa học online sẽ tốt hơn. Tôi không nghĩ có một cách tốt nhất để học tập. Chắc chắn có những nhà phát triển cảm thấy tốt hơn khi offline thứ mà giúp họ đắm chìm trong bối cảnh và đem đến cho họ hiệu quả tốt nhất.

Cá nhân tôi chưa bao giờ tham gia vào một quy trình đào tạo nên tôi có cách học khác. Nhưng tôi chắc chắn biết về loại nhà phát triển thích phản hồi nhanh chóng khi họ trong môi trường offline và họ có thể nhận được nhiều hơn từ đào tạo offline.

Anh đã hoặc đang có một người hướng dẫn không?

Trong quá khi lập trình, tôi không có một người hướng dẫn trực tiếp chỉ đường giúp tôi. Cách tôi học trong phần lớn các trường hợp là đọc code của người khác. Nó gần tương tự như việc đọc chữ viết tay của ai đó. Bạn có thể hiểu hầu như mọi khía cạnh người này như thế nào hoặc họ thường làm gì chỉ bằng việc đọc code của họ. Và cố gắng đoán họ đang nghĩ gì, họ đã viết những đoạn code này khi nào. Đó chính xác là cách tôi học kỹ năng lập trình.

“Tôi sẽ coi tất cả những người mà tôi từng đọc code của họ như là người hướng dẫn của tôi.” — Evan You

Tôi đọc nhiều code từ TJ HolowaychuckGuillermo Rauch. Nó là những ngày đầu tiên với Node.js, Express,… Tôi đã bắt đầu với Node và hình dung xem “Tôi học nó như thế nào? I sẽ đọc những packages nổi tiếng”. Tôi mở mã nguồn và đọc nó và xem họ làm nó như thế nào. Nó thật tuyệt vời. Mỗi người nên thử nó. Tôi nghĩ rằng nó thực sự rất có ích và tôi muốn nói rằng nó thực sự quan trọng khi liên tục đọc code của người khác. Bản thân code là những thứ chính xác kết nối bạn với một người khác và cách suy nghĩ của họ. Thông thường, tôi thấy rất khó để trình bày bằng lời những ý tưởng lập trình, đặc biệt ở phần code thực tế.

Nó dễ dàng hơn để nói chuyện về những khái niệm trừu tượng và ý tưởng ở mức cao. Khi bạn đi sâu vào cụ thể, chỉ cần nhìn vào code là hiểu được nhiều hơn việc nói chuyện trong một giờ.

Điều đó khiến tôi nghĩ nó thực sự quan trọng và nó là lý do tôi code hơn là nói trong suốt thời gian hội thảo. Sau đó, mọi người ngay lập tức hiểu ý tôi là gì. Nếu tôi chỉ nói mà không có code thì nó không có tác dụng.

Điều gì thu hút anh đến việc học JavaScript?

Bạn có thứ gì đó chạy trong trình duyệt và trình duyệt mọi nơi. Vì vậy khi bạn code JavaScript, theo nghĩa đen thì nó chạy ở bất kỳ nơi nào. Node.js đã mới xuất hiện và tôi nghĩ rằng, khi tôi ở trường, Node vẫn còn ở trạng thái vô cùng sơ khai. Nhưng nó thuyết phục tôi rằng một ngày nào đó, JavaScript sẽ phổ cập rộng khắp.

Bạn có thể sử dụng nó phía server và client. Nó có thể chạy như native app với Electron, bạn có thể chạy nó trên điện thoại,… Nó thực sự chạy ở bất cứ nơi nào. Và chúng tôi có một cố thiết bị lập trình phần cứng tại trường học – cài mà cũng có thể chạy JavaScript. Do vậy, nó thật tuyệt vời.

Khi ở trường, nó là khoảng thời gian tôi nhận ra: “Oh, JavaScript sẽ ở mọi nơi. Nó là một ngôn ngữ lập trình tuyệt vời để tìm hiểu.”.

Cũng bởi vì tôi luôn luôn muốn chia sẻ những thứ tôi làm với mọi người. JavaScript giúp việc này trở nên cực kì dễ dàng. Tôi chỉ cần làm thứ gì đó và đẩy lên web và mọi người đều có thể thấy nó. Nếu bạn muốn làm một thứ gì đó như processing hoặc open frameworks, xây dựng những dự án đó và rất khó để chia sẻ.

“Tôi thực sự thích thực tế rằng web và JavaScript đi cùng nhau. Nó cho phép bạn có được những thứ của bạn trước mặt người khác ngay lập tức. ” — Evan You

Anh có nghĩ rằng đó là lý do tại sao nó trở thành một trong những ngôn ngữ lập trình phổ biến nhất?

Phải rồi, điểm mạnh nhất hoặc sức mạnh của JavaScript là những thứ mà nó hướng đến. Bạn học ngôn ngữ đó và bạn có thể chạy code của bạn ở hầu hết các môi trường bạn nghĩ đến. Ngay cả NASA cũng sử dụng Node.js.

Một vài người ghét JavaScript, nhưng tôi đoán tôi chỉ học để yêu mến nó nó. Một khi bạn sử dụng nó đủ lâu bạn biết tất cả những thứ kỳ dị một chút và bạn đơn giản là bỏ qua chúng. Và sau đó, bạn có thể tận hưởng phần hay còn lại của ngôn ngữ.

Làm thế nào anh có thể cập nhật kịp thời với sự thay đổi nhanh chóng của công nghệ? Anh có thời gian cho điều đó?

Tôi phải làm. Để duy trì Vue ecosystem hoạt động tôi cần nhận thức về những gì diễn ra trong viễn cảnh lớn hơn. Cách của tôi là theo dõi một lượng lớn con người trên Twitter. Nếu thứ gì đó hấp dẫn xuất hiện, mọi người sẽ nói về nó. Sau đó, tôi sẽ tự nghiên cứu và xem một vài Github repos, nhìn vào code của họ và thử chúng. Tôi cũng muốn nói chuyện với mọi người tại các hội nghị và hỏi suy nghĩ của họ, nó rất hữu ích.

Cảm ơn vì buổi nói chuyện thú vị, Evan!

Nguồn

https://blog.hackages.io/developer-learning-styles-a-chat-with-creator-of-vue-js-evan-you-a11f2dc5deac

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *