Sinh viên Đại học nghĩ ra công cụ tìm kiếm dành riêng cho coder, kỳ vọng thay thế Google Search

0

Chủ nhân của nó đang nuôi tham vọng cỗ máy tìm kiếm này sẽ trở thành nguồn dẫn chiếu quan trọng cho các ngôn ngữ lập trình.

 

Cỗ máy tìm kiếm hữu hiệu hiện tại cho cú pháp ngôn ngữ lập trình là Google. Việc biết cách tìm kiếm thông tin như thế nào là một kỹ năng quan trọng trong việc làm thế nào để lập trình mọi thứ. Bạn có thể biết tất cả các thuật toán và khoảng nửa tá ngôn ngữ lập trình, nhưng dù sao đến một thời điểm, bạn vẫn sẽ phải tìm kiếm cách để làm một điều gì đó, cho dù nó có liên quan đến một vài chức năng mới hay tối nghĩa, hay chỉ đơn giản để biết cách biên dịch một số tính năng trong ngôn ngữ lập trình sang ngôn ngữ khác.

Hay nói cách khác, biết cách lập trình như thế nào cũng có nghĩa bạn sẽ phải biết cách làm thế nào truy cập thông tin – một nhận thức sâu sắc về việc học như thế nào và khi nào.

Kỹ năng này càng trở nên quan trọng hơn nếu bạn là loại lập trình viên thường xuyên ám ảnh với việc học tập những kỹ năng mới vì một điều gì đó – điều thường xẩy ra với các lập trình viên khi họ phải học những điều mới để áp dụng chúng vào một dự án hoặc một nhiệm vụ mới.

Ví dụ khi một lập trình viên cần sử dụng một framework máy học, được thực thi trong một loại ngôn ngữ lập trình tối nghĩa, Lua, vốn là một phiên bản siêu nhẹ của Python. Nếu lập trình viên đó không biết mấy về ngôn ngữ này, anh ta sẽ phải dành phần lớn thời gian suy diễn cú pháp lập trình từ các dòng code khác của Lua và Google những từ khóa như “Lua for loop break”.

Nhưng một sinh viên về kỹ thuật máy tính của Đại học Queen’s tại Ontario có tên Anthony Nguyen đã phát hành ra một công cụ mà anh hy vọng sẽ thay thế được Google trong việc tìm kiếm các cú pháp lập trình cần thiết. Có tên gọi SyntaxDB, nó được kỳ vọng “một ngày nào đó sẽ trở thành nguồn tham khảo về ngôn ngữ lập trình nhanh nhất thế giới.”

Giao diện của SyntaxDB rất sáng sủa và đơn giản. Khi tìm thử với từ khóa “Java iterator” (biến lặp Java) sẽ cho ra một vài kết quả cho các cấu trúc điều khiển dòng của Java, và một thanh menu ở bên cạnh trang kết quả để người dùng có thể khám phá thêm về ngôn ngữ Java. Các kết quả tìm kiếm đều ở ngay bên trong SyntaxDB và các chất liệu tham khảo dường như được viết riêng cho cơ sở dữ liệu. SyntaxDB giống như một nguồn dẫn chiếu nhanh cho nhiều ngôn ngữ hơn là một cỗ máy tìm kiếm.

Đối với ví dụ cho từ khóa “Java iterator”, bạn sẽ không hoàn toàn nhận được một trang kết quả cho các biến lặp trong Java, có lẽ đây cũng là một điểm giới hạn khi bạn dựa vào các nội dung tự làm thay vì thử khai thác những nguồn thông tin không giới hạn từ các tài liệu về ngôn ngữ lập trình đang tồn tại trên internet.

Tuy nhiên, ưu điểm lớn nhất của SyntaxDB là tính ngắn gọn của tài liệu dẫn chiếu. Một mục từ đơn giản cho cú pháp nào đó sẽ không cho bạn biết mọi chi tiết, hay phần lớn chi tiết về nó, tất cả chỉ là nó sẽ trông như thế nào và khả năng sử dụng cơ bản của cú pháp đó. Và thông thường đó lại là những thông tin mà bạn tìm kiếm – một khái niệm hay một tính năng đã biết của một ngôn ngữ lập trình lạ trông sẽ như thế nào.

SyntaxDB có tích hợp với một công cụ tìm kiếm thông dụng trên internet là DuckDuckGo, một sự kết hợp có vẻ hữu ích hơn việc sử dụng trực tiếp SyntaxDB. Bạn có thể nhập một thuật ngữ tìm kiếm cú pháp trong thanh tìm kiếm như thông thường và DuckDuckGo sẽ cho bạn kết quả nhanh từ SyntaxDB, nếu có, đi kèm theo đó là một danh sách các kết quả tìm kiếm từ internet. Nếu không có kết quả từ SyntaxDB, DuckDuckGo sẽ cho ra kết quả tốt nhất trong số còn lại.

Vậy công cụ này có nên sử dụng không? Nếu bạn là người giỏi trong việc tìm hiểu sâu một vấn đề phức tạp nào đó chỉ thông qua những câu trả lời đơn giản và nhanh chóng từ SyntaxDB, thì câu trả lời là có thể bạn nên dùng thử. Và tất nhiên, cũng như nhiều lập trình viên khác, trước tiên bạn nên chuẩn bị cho mình những kho kiến thức đủ lớn từ những diễn đàn cho lập trình viên như StackOverFlow. Đó là những điều mà có lẽ Google, chứ không phải SyntaxDB có thể mang đến cho bạn.

Tham khảo Motherboard

Leave A Reply

Your email address will not be published.