Ngôn ngữ lập trình Julia - bạn đã biết?

20:30 Unknown 0 Comments

Thế giới lập trình vốn vô cùng đa dạng , vì vậy , các nhà toán học, các nhà nghiên cứu và các nhà khoa học dữ liệu (data scientists) luôn phải đau đầu khi tìm kiếm một ngôn ngữ lập trình có thể giải quyết mọi vấn đề.
Để giải quyết vấn đề này , 2 nhà đồng sáng lập công ty khởi nghiệp trụ sở tại Mỹ, Julia Computing, đã phát triển một ngôn ngữ lập trình cơ bản-- Julia – cho những người không phải lập trình viên chuyên nghiệp.

“Julia chạy nhanh và dễ sử dụng hơn các ngôn ngữ lập trình khác, với khả năng mở rộng không giới hạn,” Stefan Karpinski - 1 trong những nhà sáng lập nói.  Vào năm 2009,Karpinski, cùng với  Viral Shah, Alan Edelman, Jeff Bezanson tạo ra Julia, một dự án nguồn mở. Nhận được sự ủng hộ nhiệt tình  , các nhà sáng lập cùng với  Deepak Vinchhi và Keno Fischer, mở công ty Julia Computing trong năm 2015.

Ngôn ngữ Julia
“Julia giúp các nhà khoa học dữ liệu , các nhà vật lý học, kỹ sư tài chính định lượng và kỹ sư robot giải quyết vấn đề mà không cần phải giỏi lập trình  hoặc phải thuê lập trình viên  để chuyển những chức năng họ thiết kế thành mã code,” Karpinski cho hay.
Đội ngũ công ty Julia Computing


Sự dung hòa của hai ngôn ngữ đối lập

Thông thường, ngôn ngữ lập trình được chia thành hai nhóm: ngôn ngữ tĩnh(static) như C, C++ and Fortran, thao tác nhanh nhưng phát triển khá chậm, và ngôn ngữ năng động như Python, R and Matlab, thường chậm trong quá trình thao tác nhưng cho phép tốc độ phát triển nhanh nhạy.

Kết hợp những ưu điểm của cả hai loại ngôn ngữ lập trình, Karpinski tuyên bố rằng Julia đã giải quyết được vấn đề tích hợp cả hai ngôn ngữ.

Ngôn ngữ Python
Ngôn ngữ C++

Thao tác với Julia

“Chúng tôi khao khát có
được một ngôn ngữ lập trình thao tác nhanh như C++, với hiệu năng cao như Python, R hay Matlab. Vì thế chúng tôi tạo ra một ngôn ngữ duy nhất -- Julia – cho phép chúng ta tạo mẫu và sản xuất bằng cùng một ngôn ngữ,”  Karpinski nói.

Không nhạc nhiên khi Julia 
được đón nhận một cách nhanh chóng. “Sự đón nhận nồng nhiệt của người dùng nằm ngoài dự đoán của chúng tôi,”  Karpinski chia sẻ.  Dự án được một số tập đoàn lớn trên thế giới tin dùng, từ tập đoàn quản lý đầu tư BlackRock, sử dụng Julia cho các nhà phân tích chuỗi thời gian, đến tập đoàn bảo hiểm Anh  Avivadùng nó để tính rủi ro.
Amazon, Apple, Disney, Facebook, Ford, Google, Grindr, IBM, Microsoft, NASA, Oracle and và  Uber là các tập đoàn khác cũng sử dụng Julia , đối tác  và các tổ chức thuê những nhà lập trình Julia,” Shah cho hay. Trong tháng 6, startup hai năm tuổi đã thu được 4.6 triệu USD seed funding từ các công ty đầu tư base ở Mỹ là General Catalyst và Founder Collective. “Ngày nay, Julia có hơn 1 triệu lượt tải, với chỉ số tăng trưởng hàng năm là 161% ” Shah,CEO của công ty Computing Julia chia sẻ thêm.

Sự khởi đầu

Tất cả bắt đầu vào năm 2009, khi Karpinski, cùng với Shah, một người bạn học tại trường đại học California Santa Barbara, kết hợp với Bezanson và Edelman từ đại học danh tiếng MIT – tất cả đều có kinh nghiệm ngôn ngữ lập trình và toán học ứng dụng – tìm cách đơn giản hóa quá trình mã hóa. Vì Shah chuyển tới Bengaluru, Ấn Độ để triển khai dự án Aadhaar, hệ thống nhận diện sinh trắc  mới của Quốc gia, nhóm Karpinski phải tiếp tục thực hiện ước mơ hầu hết qua email.
Phiên bản đầu tiên đưa ra công chúng vào năm 2012 của Julia, được thực hiện với sự giúp đỡ từ hơn 100 cộng tác viên nguồn mở. “Dự án nguồn mở được bắt đầu với mục đích "tự do hóa" việc lập trình, nhưng để đáp ứng nhu cầu của thị trường về một của thị trường về một sản phẩm thương mại, chúng tôi lập ra công ty Julia Computing,”  Shah cho biết. Công ty Julia Computing hỗ trợ, đào tạo và cung cấp dịch vụ tư vấn khách hàng, dù vậy bản thân Julia vẫn hoàn toàn miễn phí.
Các nhà đồng sáng lập Julia Computing
Đbắt kịp những nhu cầu của khách hàng về tính năng mới cũng như các gói sản phẩm chính là thử thách lớn nhất, Shah cho biết. “Quá trình có thể tốn từ vài thái cho tới một năm để ra một sản phẩm, và mỗi sản phẩm liên tục được cải thiện để tạo đòn bẩy cho  những sự phát triển mới nhất và nâng cấp/cải thiện ngôn ngữ lập trình mở Julia và cung cấp những tiện ích thêm được yêu cầu bởi người dùng và khách hàng.”

Ứng dụng của Julia tại Ấn Độ


Vì ngôn ngữ Julia là nguồn  mở và miễn phí, Shah cho hay, sản phẩm này cực kì hữu dụng ở Ấn Độ. "Nó có thể ứng dụng cho những dự án khởi nghiệp ở Ấn, những tổ chức hạn chế về chi phí, và có nguồn lực dồi dào về đội ngũ kỹ sư .”
Karpinski nói thêm, “Julia là lựa chọn tốt nhất cho trí tuệ nhân tạo, nghiên cứu về máy móc , nghiên cứu chiều sâu  và tính toán song song  – tất cả những lĩnh vực đang hiện hữu  và có mức tăng trưởng mạnh mẽ ở Ấn Độ” .


Julia ứng dụng trong nghiên cứu 

Ngoài ra, Julia cũng được sử dụng cho mục đích nghiên cứu tại NASA và Phòng thí nghiệm Quốc gia Lawrence Berkeley, trong khi đó ĐH MIT có một phòng nghiên cứu mang tên Julia dành riêng cho mục đích nghiên cứu và phát triển ngôn ngữ này.
“Các kỹ sư  tại Phòng thí nghiệm Lincoln
ĐH MIT cũng đang sử  Julia để phát triển một hệ thống phòng tránh va chạm mới tên NextGen của Cục quản lý Hàng không Liên bang (Federal Aviation Administration) cho máy bay. Theo đó, các nhà kỹ sư này có thể tính toán ra 650 tỉ điểm quyết định trong một bảng phân tích tối ưu để phát hiện ra sai sót, ” Shah giải thích.
Julia còn được dùng cho dự án Celeste, một mô hình phân tích thống kê thiết kế  cho việc khảo sát không gian. “Nhóm các nhà khoa học này xếp loại 188 triệu ngôi sao và thiên hà trong 14.6 phút sử dụng Julia trên siêu máy tính NERSC Cori-II – 1 trong 10 siêu máy tính mạnh nhất trên thế giới,” Shah nói thêm.

Mặc dù sự thống trị của hai ngôn ngữ Java và C++ sẽ không dễ dàng bị lung lay, Julia vẫn len lỏi giữa những ngôn ngữ lập trình hiện đại.

0 nhận xét: