JavaRush /Blog Java /Random-VI /Các dự án nguồn mở: nó là gì và tại sao bạn nên trở thành...

Các dự án nguồn mở: nó là gì và tại sao bạn nên trở thành một phần của cộng đồng nguồn mở

Xuất bản trong nhóm
Chúng tôi mang đến cho bạn sự chú ý từ bản chuyển thể từ một bài viết của Jonathan Beckman , một nhà phát triển đến từ Hoa Kỳ, người đã mô tả trải nghiệm cá nhân của anh ấy khi tham gia vào một dự án nguồn mở. Dự án nguồn mở: nó là gì và tại sao bạn nên trở thành một phần của cộng đồng nguồn mở - 1Từ tài liệu này bạn sẽ học được:
  • dự án nguồn mở là gì;
  • Làm thế nào bạn có thể đóng góp;
  • nơi để tìm kiếm các dự án và nhiệm vụ.

Tại sao nó đáng tham gia vào các dự án nguồn mở?

Trước hết, đây là thực hành lập trình miễn phí. Bạn cũng có thể thêm những dự án như vậy vào sơ yếu lý lịch của mình và tin tôi đi, nếu bạn có thể giải thích sự đóng góp của mình cho sự nghiệp chung, việc nhận được vị trí “cấp dưới” sẽ dễ dàng hơn nhiều so với trường hợp “vừa mới hoàn thành khóa học”.

Dự án nguồn mở trong tầm tay bạn

Bạn có thích đi dạo trong công viên không? Có lẽ không phải bây giờ, vì đã là tháng 11, như người ta nói “mùa đông đang đến!” Tôi chắc chắn rằng khi thời tiết tốt, bạn sẽ thích thú khi lang thang giữa những hàng cây dọc theo những con hẻm được chăm sóc cẩn thận. Nhưng điều gì sẽ xảy ra nếu công viên yêu thích của bạn bị các cơ quan thành phố bỏ rơi? Nó sẽ trở thành một mớ hỗn độn rất nhanh. Rác sẽ vương vãi khắp nơi, trộn lẫn với phân chó, hồi hộp chờ đợi ai đó bước vào. Không chắc là bạn sẽ tiếp tục đến đó để đi dạo.
Dự án nguồn mở: nó là gì và tại sao bạn nên trở thành một phần của cộng đồng nguồn mở - 2
Bây giờ hãy tưởng tượng một bức tranh vui vẻ hơn: một nhóm tình nguyện viên chịu trách nhiệm bảo trì công viên yêu thích của họ. Cô thường xuyên phân bổ kinh phí để biến những thứ nhếch nhác và bị bỏ quên thành thứ gì đó rất đẹp đẽ và hữu ích cho người khác. Và anh ấy làm điều này không chỉ vì niềm vui cá nhân mà còn vì niềm vui của công chúng. Rất có thể, công viên yêu thích của bạn được hỗ trợ bởi thuế của chúng tôi, nhưng nhìn chung, tình huống trên mô tả cách các dự án nguồn mở hoạt động.
Phần mềm nguồn mở và miễn phí là những ứng dụng có mã nguồn mở cho tất cả mọi người. Chúng có thể được tải xuống và/hoặc sử dụng trên bất kỳ số lượng thiết bị nào. Bạn có thể tự do lấy mã chương trình và làm bất cứ điều gì bạn muốn với nó, sau đó phân phối nó cho bạn bè của bạn. Điều này là như vậy vì các chương trình như vậy được phân phối theo giấy phép miễn phí, chẳng hạn như giấy phép MIT.
Mặc dù tất cả phần mềm về cơ bản đều được thiết kế cho người dùng cuối, nhưng với tư cách là nhà phát triển, bạn có thể đóng góp cho một dự án nguồn mở và biến thế giới thành một nơi tốt đẹp hơn với phần mềm mới có sẵn. Nếu bạn muốn tham gia vào một dự án nguồn mở, bạn cần hiểu ai chịu trách nhiệm về dự án đó và cố gắng thiết lập sự tương tác với những người này. Ý tôi không phải là hành hạ họ đến chết với những câu hỏi và mong đợi sự giám sát toàn diện trong quá trình làm việc. Bạn là một người trưởng thành tự lập (ngay cả khi bạn chưa trưởng thành, độc lập là một ý tưởng tuyệt vời!). Tôi hy vọng bạn không còn cần phải dẫn dắt và mô tả từng bước nữa. Tôi không giúp gì được cho bạn việc này. Nhưng tôi có thể cho bạn một số lời khuyên hữu ích để giúp bạn khi bạn cố gắng thực hiện đóng góp đầu tiên của mình và có khả năng đưa đoạn mã của bạn vào một dự án nguồn mở.

Tìm kiếm một dự án

Nếu bạn đang tìm kiếm một dự án nguồn mở để tham gia, hãy tìm một dự án mà bạn thực sự quan tâm. Điều mong muốn là có nhiều nhiệm vụ mà bạn có thể lựa chọn. Đừng chấp nhận dự án đầu tiên bạn gặp. Bằng cách này, bạn sẽ có động lực hơn và có thể thực hiện nhiệm vụ một cách nghiêm túc.

Nơi tìm kiếm các dự án Nguồn mở

Chúng có thể được tìm thấy trong kho GitHub công khai. Thực ra đó là nơi mọi người đang tìm kiếm họ. Có rất nhiều điều thú vị ở đó .

Tìm kiếm một vấn đề tốt đầu tiên

Tìm được nhiệm vụ đầu tiên tốt là chìa khóa thành công. Đừng đảm nhận nhiều hơn những gì bạn có thể xử lý. Đừng cố gắng thể hiện tất cả kiến ​​thức của bạn cùng một lúc: hãy tìm vấn đề đơn giản nhất có thể. Đây là cách tốt nhất để hiểu cách thức hoạt động của sự tương tác giữa bạn và người phụ trách dự án. Trong một số dự án, các nhiệm vụ được đánh dấu bằng các nhãn đặc biệt cho biết mức độ khó nếu người phụ trách cho rằng chúng phù hợp với các nhà phát triển mới vào nghề. Hãy tìm những điều tương tự khi bạn xem xét các mục tiêu của dự án bạn đã chọn.
Dự án nguồn mở: nó là gì và tại sao bạn nên trở thành một phần của cộng đồng nguồn mở - 3
Khi bạn tìm thấy một nhiệm vụ phù hợp, hãy viết bình luận cho người phụ trách dự án nói rằng bạn muốn thực hiện nó. Thông thường, họ sẽ cho phép bạn tiếp tục, nhưng có lẽ vì lý do nào đó họ sẽ yêu cầu bạn chọn một phương án khác. Đừng cảm thấy như bạn không thể bắt đầu trước khi câu trả lời đến, nhưng hãy linh hoạt nếu bạn được yêu cầu dừng lại và làm việc khác. Đối với nhiệm vụ đầu tiên của tôi, tôi đã chọn một cái gì đó cần thiết để điều chỉnh css một chút. Đối với tôi, dường như tôi có thể thực hiện được nó và nó không làm tôi chán nản.

Bắt đầu và giới thiệu

Bắt đầu một dự án tưởng chừng như dễ dàng nhưng lại có rất nhiều cạm bẫy. Khi đã chọn được vấn đề cần giải quyết, bạn cần triển khai dự án trên máy của mình. Nhiều khả năng, nguồn của dự án sẽ “nặng” (mặc dù điều này còn phụ thuộc vào dự án). Bạn có thể phải cài đặt một số lượng lớn các phần phụ thuộc chỉ để dự án có thể chạy được.
Dự án nguồn mở: nó là gì và tại sao bạn nên trở thành một phần của cộng đồng nguồn mở - 4
Trong dự án mà tôi tham gia, có rất ít khoảnh khắc như vậy, nhưng điều này không có nghĩa là nó dễ dàng. Ví dụ: chúng tôi phải cài đặt các phiên bản cụ thể của Ruby và các phiên bản cụ thể của Rails, PostgreSQL, Phantom JS và Gemfile cùng với danh sách Đá quý để cài đặt. Điều này có vẻ không hẳn là một yêu cầu, nhưng tôi gặp vấn đề lớn khi tìm phiên bản cụ thể của Ruby cần thiết để phát triển dự án có thể hoạt động trên máy tính của tôi. Cuối cùng, tôi đã sử dụng RVM để chuyển đổi các phiên bản: đây là một điều khác mà tôi đã học được, chỉ là cài đặt dự án và làm cho nó hoạt động trên máy tính. Khi khởi động dự án, tôi thấy nó được viết bằng Angular và Coffee Script, sử dụng Active Record để tương tác với dữ liệu đến từ back-end. Đây là những điều mới mẻ đối với chúng tôi và chúng tôi phải tự mình tìm ra chúng trước khi bắt đầu thực hiện dự án.

Tìm kiếm nhiệm vụ khác

Bạn có thể không cần điều này ngay bây giờ hoặc thậm chí cần nó trong tương lai gần, nhưng tôi gần như ngay lập tức gặp phải nó. Thật may mắn khi nhận thấy ngay rằng có điều gì đó không ổn trong dự án. Nếu bạn tìm thấy một lỗi như vậy, hãy truy cập trang web đang hoạt động và xem liệu nó có ở đó không. Đừng vội viết thư để hỗ trợ, có thể mọi thứ đều ổn. Thông thường người quản lý sẽ kiểm soát tình hình và không được có lỗi nghiêm trọng. Nhưng nếu bạn tìm thấy điều gì đó cần chú ý, hãy tìm và kiểm tra trong số các nhiệm vụ đã tồn tại. Rất có thể, nhiệm vụ có vấn đề đã được viết ra và rất có thể bạn không cần phải làm gì cả. Mặc dù bạn có thể tự mình giải quyết vấn đề này sau khi hoàn thành công việc đang làm.
Dự án nguồn mở: nó là gì và tại sao bạn nên trở thành một phần của cộng đồng nguồn mở - 5
Khi bạn thiết kế và viết ra một nhiệm vụ mới, hãy đảm bảo bạn mô tả nó càng chi tiết càng tốt. Sử dụng ảnh chụp màn hình để minh họa rõ ràng những gì bạn đang muốn nói và giúp mọi người xem trang web của bạn hiểu được vấn đề bạn đang mô tả dễ dàng nhất có thể. Trong trường hợp của tôi, tôi đã phải bổ sung thêm hai nhiệm vụ ngoài nhiệm vụ được giao. Tôi thậm chí không thể thực hiện yêu cầu kéo (điều này là do các hạn chế về bảo mật). Có vẻ như tôi đã lùi lại hai bước cho dự án, nhưng trên thực tế, việc mô tả và sắp xếp các nhiệm vụ vẫn giúp dự án tiến lên phía trước. Tạo yêu cầu kéo (PR)
Yêu cầu kéo - đề xuất thay đổi mã trong kho lưu trữ (kho lưu trữ mã dự án). Nếu bạn đang làm việc trên một dự án mở, bạn phải luôn tạo nhánh của riêng mình và chỉ nên thực hiện các thay đổi đối với mã chính (chính) sau khi các yêu cầu kéo đã được người quản lý dự án phê duyệt.
Bạn đã giải quyết được vấn đề được giao cho bạn. Trước khi viết báo cáo tiến độ, hãy trình bày giải pháp cho người có thể đánh giá nó. Xem trước luôn là một ý tưởng tuyệt vời, nhưng đối với đóng góp đầu tiên của bạn cho một dự án nguồn mở, đó là điều bắt buộc . Bạn không muốn đỏ mặt vì một đoạn code chưa hoàn thiện hoặc làm việc không chính xác? Vì lý do tương tự, người phụ trách dự án sẽ yêu cầu bạn vượt qua tất cả các bài kiểm tra cần thiết trước khi gửi yêu cầu kéo. Vì vậy, hãy tự kiểm tra trước để tự tin vào tác phẩm của mình và sửa chữa nếu cần thiết trước khi nhận được xác nhận từ người phụ trách. Đảm bảo rằng bạn tuân theo các tên hoặc phong cách đã được người phụ trách dự án chấp nhận. Bạn có thể tìm thông tin trong file CONTRIBUTING.md , hầu hết các dự án đều có. Ngoài ra, ở đó bạn có thể làm rõ bạn nên tạo thông báo cam kết dưới dạng nào, mô tả về yêu cầu kéo của bạn sẽ như thế nào và cách tạo một tác vụ mới.

Rời khỏi nhiệm vụ

Đôi khi bạn nhận ra rằng mình không hoàn thành được nhiệm vụ. Hoặc bạn nghĩ rằng bạn có thời gian cho một dự án, nhưng thực tế thì không, công việc khẩn cấp ập đến và bạn cần phải tiếp tục thực hiện nó. Điều này là bình thường. Điều chính là hủy đăng ký nhiệm vụ và để lại tin nhắn cho người phụ trách để họ biết rằng bạn sẽ không thể tiếp tục thực hiện dự án. Nhưng trong mọi trường hợp, hãy từ bỏ nhiệm vụ mà không thông báo cho người phụ trách và hủy đăng ký nhiệm vụ đó.
Dự án nguồn mở: nó là gì và tại sao bạn nên trở thành một phần của cộng đồng nguồn mở - 6

Phần kết luận

Tôi tin rằng việc tham gia phát triển một dự án nguồn mở là một lợi ích rất lớn. Bạn đang thực hành và đồng thời làm điều gì đó có ích cho người khác. Mặt khác, dự án này có thể trở thành một điểm khác trong sơ yếu lý lịch của bạn và mang lại những lợi thế bổ sung khi tranh giành vị trí mong muốn. Mới thứ Sáu tuần trước, tôi đã nói chuyện với một lập trình viên đã nhận được công việc của anh ấy (một công việc rất hay và thú vị, một công việc có thể thay đổi thế giới tốt đẹp hơn và tôi thực sự không đùa đâu) nhờ vào công việc của anh ấy trong các dự án nguồn mở.
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION