VnReview
Hà Nội

Viết phần mềm nghiên cứu khoa học - Những người hùng thầm lặng kỷ nguyên số (Phần 1)

Tác giả của các phần mềm làm nên "xương sống" của các chương trình nghiên cứu khoa học thường không được mọi người biết tới dù có công rất lớn. Để trân trọng đóng góp của họ, một dự án có tên Depsy đã ra đời.

Với những nhà nghiên cứu thực hiện công việc lập trình, các tiêu chuẩn hàn lâm "cũ kỹ" nhằm đánh giá công sức của họ đang tỏ ra rất không hợp lý. Những nhà nghiên cứu này bỏ ra hàng giờ liền để đóng góp vào những phần mềm làm nên cốt lõi trong các nghiên cứu khoa học. Nhưng tên tuổi của họ thường không được ghi vào danh sách các tác giả thực hiện nghiên cứu hoặc trên các văn bản hay tài liệu liên quan. Và đóng góp của họ sẽ không thể được ghi nhận đúng mức. Bài viết sau do tạp chí Nature, một trang đầu ngành về các nghiên cứu khoa học thực hiện.

Thực trạng "buồn" của phần mềm khoa học

Thử lấy Klaus Schliep, một tiến sĩ bộ môn sinh học tiến hoá tại ĐH Massachusetts, Boston (Mỹ) làm ví dụ. Trang Google Scholar của ông liệt kê ra những công trình mà ông tham gia, bao gồm cả một tài liệu được trích dẫn rất nhiều nói về một phần mềm nghiên cứu lịch sử tiến hóa có tên Phangorn. Thế nhưng trang này lại không hề ghi nhận những đóng góp của Shliep đối với phần mềm của những người khác: "So với việc viết tài liệu khoa học thì lập trình đang bị coi là công việc 'hạng hai' trong bộ môn khoa học".

Lời giải cho vấn đề này là Depsy, một trang web miễn phí mới ra đời vào tháng 11 vừa qua với mục đích "đo đạc giá trị của các phần mềm hỗ trợ khoa học".

Tác giả của các phần mềm làm nên

Trang cá nhân của Schliep trên Depsy cho thấy ông đã đóng góp vào 7 phần mềm khoa học và nắm giữ 34% khối lượng công việc của Phangorn. Những phần mềm này đã được tải về hơn 2.600 lần, được sử dụng và ghi nhận trong 89 tài liệu nghiên cứu và cũng đã được tái sử dụng rất nhiều trong các phần mềm khác. Mức độ ảnh hưởng của Schliep đang ở mức tương đương với 99% những người được Depsy thống kê.

"Trang web này đã thực hiện rất tốt việc tìm hiểu các đóng góp của tôi cho phần mềm khoa học", Schliep khẳng định.

Các tác giả của Depsy hy vọng rằng nền tảng của họ sẽ cung cấp một biện pháp theo dõi mức ảnh hưởng của các phần mềm khoa học một cách có ý nghĩa và minh bạch. Công nghệ làm nên Depsy được phát triển bởi Impactstory, một công ty phi lợi nhuận có trụ sở tại Vancouver (Canada) được thành lập từ 4 năm trước để giúp các nhà khoa học có thể theo dõi sức ảnh hưởng của sự đóng góp của họ. Điều này không chỉ bao gồm các tài liệu mà gồm cả các bài viết blog, các bộ dữ liệu (data set), phần mềm và cả quá trình đánh giá bằng những yếu tố đa dạng như tin vắn Twitter, số lượt xem, số lượt tải phần mềm, số lượt tái sử dụng mã nguồn bên cạnh số lượt trích dẫn thông thường.

Jason Priem, nhà đồng sáng lập của Impactstory, khẳng định Depsy đang cố gắng ghi nhận "những vị anh hùng bị lãng quên" của thế giới phần mềm khoa học. Impactstory hiện đang được tài trợ vốn bởi Tổ chức Khoa học Quốc gia Hoa Kỳ và nhiều tổ chức nhân đạo khác.

Theo Neil Chue Hong, giám đốc của Viện Phần mềm Bền vững tại Edinburg (Anh), một công cụ như Depsy là rất cần thiết bởi hiện nay người ta vẫn chưa có cách nào để ghi nhận lại ảnh hưởng từ các phần mềm do các nhà khoa học đóng góp. Ông khẳng định các nhà nghiên cứu trẻ tuổi rất hứng thú với công việc lập trình. Năm ngoái, một cuộc khảo sát do Hong thực hiện trên 1.000 nhà khoa học tại Anh đã cho thấy có tới 50% số người tham gia đang tự phát triển những dòng lệnh của riêng mình.

Thế nhưng, rất ít các học giả tại Anh coi phần mềm là một thành quả khoa học thực sự trong cuộc thống kê nghiên cứu mới nhất ("Nền tảng Chất lượng Nghiên cứu") được thực hiện tại nước này. Tình trạng đáng buồn này xảy ra cả với những bộ môn phụ thuộc đáng kể vào phần mềm như khoa học máy tính. "Đang có một luồng suy nghĩ củng cố cho quan niệm rằng việc tạo ra và phát hành các dòng mã nguồn không đem lại lợi ích dễ thấy nào cho nhà nghiên cứu", Hong cho biết.

Đánh giá ảnh hưởng của phần mềm

Đếm số lượt tài liệu được trích dẫn trong các công trình khác - phương thức theo dõi độ ảnh hưởng của các tài liệu khoa học thường được sử dụng nhất - cũng có thể được sử dụng trong lĩnh vực phần mềm. Các nhà nghiên cứu có thể viết tài liệu để mô tả phần mềm của họ, giống như cách mà Schliep đã làm với phần mềm Phangorn của mình. Nhờ đó mà các nhà nghiên cứu có thể trích dẫn lại phần mềm này khi sử dụng nó trong công trình của mình.

Tác giả của các phần mềm làm nên

Tuy vậy, số lượt trích dẫn là một thông số không hoàn hảo. Priem cho rằng các nhà nghiên cứu có thể không biết phải trích dẫn tài liệu nào, do mỗi gói phần mềm thường có rất nhiều văn bản đi kèm. Một số dự án phần mềm tối quan trọng, ví dụ như thư viện GDAL, không đi kèm một tài liệu chính thức nào cả.

Cộng đồng khoa học vẫn chưa tìm ra một cách thống nhất để ghi nhận một phần mềm nếu như phần mềm này không đi kèm một văn bản nào cả. Tuy vậy, theo Martin Fenner, giám đốc kỹ thuật của kho lưu trữ mã nguồn trực tuyến DataCite, các nhà lập trình hiện tại thường gắn số định danh (DOI) vào mã nguồn cũng như các bộ dữ liệu của họ.

Đầu tiên, phần mềm sẽ được lưu trữ lên GitHub (một dịch vụ lưu mã nguồn phổ biến). Từ đó, các dịch vụ lưu trữ mã nguồn tập trung vào lĩnh vực học thuật như Zenodo hay Figshare sẽ gắn mã DOI cho các phần mềm, cho phép các nhà khoa học khác có thể trích dẫn chúng. Một vài dự án khác lại cố gắng đảm bảo rằng các tài liệu nghiên cứu trích dẫn phần mềm theo một định dạng chuẩn, ví dụ như bằng cách sử dụng Mã định danh Tài nguyên Nghiên cứu RRI.

Phangorn

Nhưng cả biện pháp đếm số lượt trích dẫn cho các mã định danh, các văn bản đi kèm hay các định dạng khác đều không đem lại cái nhìn đầy đủ về ảnh hưởng của phần mềm lên ngành khoa học, bởi các phần mềm thường không được ghi nhận chính thức trong các công trình khoa học. Một cuộc khảo sát thực hiện trên 90 tài liệu sinh học gần đây cho thấy 2/3 các công trình này đã đề cập tới việc sử dụng phần mềm, nhưng không đầy một nửa trong số này ghi nhận phần mềm đã dùng một cách chính thức.

Depsy sẽ thực hiện tìm kiếm trên các tài liệu khoa học để tìm ra cả các trích dẫn chính thức lẫn không chính thức về việc sử dụng phần mềm. Không mấy bất ngờ, trang web này đã tìm được rất nhiều rất nhiều các lượt ghi nhận như vậy. Điểm yếu lớn nhất của Depsy hiện tại là trang web này chỉ có thể tìm kiếm được các tài liệu được công bố dạng "mở" và do đó sẽ bỏ qua phần lớn các công trình nghiên cứu phải trả phí để truy cập. Impactstory hiện đang tìm cách thương lượng với các nhà xuất bản để được phép dò tìm các văn bản trả phí này.

Tìm kiếm các văn bản nghiên cứu chỉ là một trong số 3 cách Depsy nghiên cứu sự đóng góp của phần mềm đối với khoa học. Cách thứ 2 là theo dõi quá trình các đoạn mã được tái sử dụng bởi các nhà nghiên cứu khác. Tên gọi "Depsy" bắt nguồn từ "dependency network" (mạng lưới phụ thuộc) - một cụm từ để chỉ các nhân tố phụ thuộc lẫn nhau, ví dụ như một gói phần mềm tái sử dụng mã nguồn từ các gói khác. Depsy sẽ tính toán mức độ tái sử dụng mã nguồn bằng thuật toán PageRank của Google. Nhìn từ góc độ đánh giá ảnh hưởng, đo mức tái sử dụng mã nguồn sẽ có ý nghĩa hơn là đếm số lượt trích dẫn.

Cuối cùng, Depsy sẽ đếm số lượt tải về của mỗi gói phần mềm bằng cách đo đạc trên 2 kho lưu trữ mã nguồn CRAN (cho ngôn ngữ R) và PyPI (cho ngôn ngữ Python).

(còn tiếp)

Lê Hoàng

Chủ đề khác