Các nhà khoa học dữ liệu có nên học JavaScript không?


Ưu và nhược điểm của việc sử dụng ngôn ngữ số 1 của web cho khoa học dữ liệu

Nếu bạn đã theo dõi bối cảnh công nghệ trong những năm gần đây, có lẽ bạn đã nhận thấy ít nhất hai điều.

Đầu tiên, bạn có thể nhận thấy rằng ngày nay JavaScript là một ngôn ngữ rất phổ biến. Nó đã trở nên phổ biến kể từ khi Node.js cho phép các nhà phát triển JavaScript viết mã phía máy chủ.

Gần đây hơn, các khung như Electron, Cordova và React-Native đã cho phép các nhà phát triển JavaScript xây dựng các ứng dụng gốc trên nhiều nền tảng khác nhau.

Có lẽ bạn cũng nhận thấy có rất nhiều điều thú vị xung quanh lĩnh vực khoa học dữ liệu, đặc biệt là học máy. Những tiến bộ gần đây về lý thuyết và công nghệ đã làm cho lĩnh vực từng là bí truyền này trở nên dễ tiếp cận hơn đối với các nhà phát triển.

Sau đó, bạn có thể hỏi liệu chúng có tạo thành một cặp đôi tự nhiên không? Các nhà khoa học dữ liệu có nên xem xét việc học JavaScript không?

Hầu hết các nhà khoa học dữ liệu làm việc với một số kết hợp của Python, R và SQL. Nếu bạn là người mới trong lĩnh vực này, đây là những ngôn ngữ bạn nên thành thạo trước.

Các nhà khoa học dữ liệu cũng có thể chuyên về một ngôn ngữ khác như Scala hoặc Java. Có nhiều lý do tại sao những ngôn ngữ này rất phổ biến.

Nhưng tương đối ít nhà khoa học dữ liệu chuyên về JavaScript.

Tuy nhiên, với tính phổ biến của JavaScript và tính phổ biến của khoa học dữ liệu, các nhà khoa học dữ liệu có thể hưởng lợi bao nhiêu từ việc học ngay cả những điều cơ bản của ngôn ngữ này? Còn những nhà phát triển JavaScript muốn khám phá khoa học dữ liệu thì sao?

Đọc thêm  Cách kiểm tra xem một mảng JavaScript có trống hay không với .length

Hãy bắt đầu bằng cách xem xét một số phản đối quan trọng, sau đó xem xét một số lập luận ủng hộ.

Chống lại

  • chức năng — JavaScript không có nhiều gói khoa học dữ liệu và chức năng sẵn có so với các ngôn ngữ như R và Python. Nếu bạn không ngại phát minh lại bánh xe, điều này có thể ít thành vấn đề hơn. Nhưng nếu bạn cần chạy các phân tích phức tạp hơn, bạn sẽ nhanh chóng hết các tùy chọn.
  • Năng suất — Một lợi thế khác của hệ sinh thái rộng lớn của Python và R là có rất nhiều hướng dẫn và cách thực hiện cho hầu hết mọi nhiệm vụ khoa học dữ liệu mà bạn muốn thực hiện. Đối với JavaScript, đây không thực sự là trường hợp. Bạn có thể sẽ mất nhiều thời gian hơn để tìm ra cách giải quyết vấn đề khoa học dữ liệu bằng JavaScript so với Python hoặc R.
  • đa luồng — Việc xử lý các tập dữ liệu lớn hoặc chạy mô phỏng song song thường rất hữu ích. Tuy nhiên, Node.js không phù hợp với các tác vụ liên quan đến CPU, đòi hỏi nhiều tính toán. Đối với các tác vụ như vậy, các ngôn ngữ như Python, Java hoặc Scala có ưu thế hơn JS. Tuy nhiên, hãy xem dự án Napa.js của Microsoft. Nó cung cấp thời gian chạy JavaScript đa luồng có thể bổ sung cho Node.js.
  • Chi phí cơ hội — Có lẽ lý do chính khiến các nhà khoa học dữ liệu có xu hướng không học nhiều ngôn ngữ ngoài Python và R là do ‘chi phí cơ hội’. Mỗi giờ dành cho việc học một ngôn ngữ khác là một giờ có thể được đầu tư vào việc học một khung Python mới hoặc một thư viện R khác. Mặc dù các ngôn ngữ này thống trị thị trường việc làm khoa học dữ liệu, nhưng sẽ có nhiều động lực hơn để học chúng. Và bởi vì khoa học dữ liệu là một lĩnh vực phát triển rất nhanh nên luôn có điều gì đó mới để học.
Đọc thêm  Cách lặp qua các đối tượng trong JavaScript

  • Hình dung — JavaScript vượt trội về trực quan hóa dữ liệu. Các thư viện như D3.js, Chart.js, Plotly.js và nhiều thư viện khác giúp tạo bảng điều khiển và trực quan hóa dữ liệu mạnh mẽ thực sự dễ dàng. Kiểm tra một số ví dụ D3 tuyệt vời!
  • Tích hợp sản phẩm — Ngày càng có nhiều công ty sử dụng công nghệ web với ngăn xếp dựa trên Nút để xây dựng sản phẩm hoặc dịch vụ cốt lõi của họ. Nếu vai trò của bạn với tư cách là một nhà khoa học dữ liệu yêu cầu bạn phải hợp tác chặt chẽ với các nhà phát triển sản phẩm, thì việc ‘nói’ cùng một ngôn ngữ sẽ không hại gì.
  • ETL — Các quy trình xử lý dữ liệu thường được triển khai bằng ngôn ngữ có mục đích chung, như Python, Scala hoặc Java. JavaScript thường không được xem. Tuy nhiên, điều này có thể không công bằng. Mô-đun hệ thống tệp ‘fs’ của nút cung cấp một API tuyệt vời cho phép bạn gọi các hoạt động của hệ thống tệp tiêu chuẩn đồng bộ hoặc không đồng bộ. Nút cũng hoạt động tốt với MongoDB và nhiều hệ thống cơ sở dữ liệu phổ biến khác. API Luồng giúp dễ dàng làm việc với các luồng dữ liệu lớn — một lợi thế tiềm năng khác cho ETL. Như đã đề cập ở trên, để xử lý đa luồng và xử lý song song, hãy xem dự án Napa.js của Microsoft.
  • Tensorflow.js — Ai nói JS không thể làm những công cụ học máy thú vị? Đầu năm 2018, Tensorflow.js đã được phát hành. Điều này mang lại khả năng học máy cho các nhà phát triển JavaScript — cả trong trình duyệt và phía máy chủ. Tensorflow là một thư viện máy học phổ biến, do Google phát triển và trở thành mã nguồn mở vào năm 2015. Nhận dạng cử chỉ, nhận dạng đối tượng, sáng tác nhạc… bạn đặt tên cho nó, bạn có thể có nó. Điều tốt nhất bạn có thể làm ngay bây giờ là xem qua một số bản trình diễn.
Đọc thêm  JavaScript setTimeout() – JS Timer để trì hoãn N giây

Phần kết luận

Vì vậy, các nhà khoa học dữ liệu có nên học JavaScript không?

Học JavaScript sẽ không gây hại cho sơ yếu lý lịch của bạn. Nhưng đừng học nó như một sự thay thế cho các ngôn ngữ khác.

Là ngôn ngữ đầu tiên, lời khuyên tốt nhất là học một trong hai ngôn ngữ Python hoặc R. Bạn cũng nên cảm thấy thoải mái khi sử dụng một số ngôn ngữ cơ sở dữ liệu, chẳng hạn như SQL hoặc MongoDB.

Tuy nhiên, một khi bạn đã quen thuộc với những điều cơ bản, bạn có thể muốn chuyên sâu hơn. Có lẽ bạn muốn tìm hiểu Apache Spark để làm việc với bộ dữ liệu phân tán khổng lồ. Hoặc có thể bạn muốn học một ngôn ngữ khác như Scala, MATLAB hoặc Julia.

Tại sao không xem xét JavaScript? Nó sẽ chứng tỏ giá trị nếu bạn muốn chuyên sâu về trực quan hóa dữ liệu hoặc nếu vai trò của bạn yêu cầu bạn phải hợp tác chặt chẽ với một sản phẩm được tạo bằng JavaScript hoặc công nghệ liên quan.

Khả năng học máy của JavaScript đang phát triển nhanh chóng. Đối với một số trường hợp sử dụng, nó có lẽ đã là một sự thay thế mạnh mẽ cho các ngôn ngữ khoa học dữ liệu thông thường.

Cuối cùng, quyết định là cả thực tế và cá nhân. Nó phụ thuộc vào khía cạnh nào của khoa học dữ liệu mà bạn thấy thú vị nhất và cơ hội nghề nghiệp nào khiến bạn phấn khích nhất.

Nhưng với xu hướng hiện tại, có một điều chắc chắn. Trong những năm tới, JavaScript sẽ mở ra nhiều cánh cửa hơn là đóng lại.



Zik.vn – Biên dịch & Biên soạn Lại

spot_img

Create a website from scratch

Just drag and drop elements in a page to get started with Newspaper Theme.

Buy Now ⟶

Bài viết liên quang

DMCA.com Protection Status