איך לקיים פרויקט קוד פתוח מצליח?
מדריך זה מלמד כיצד להתחיל ולתחזק פרויקט קוד פתוח מצליח. מלבד עבודה קשה והתמקדות במטרה הסופית, המפתח ליצירת פרויקט קוד פתוח מוצלח טמון לעתים קרובות בהגדרת המטרות שלך בשלב מוקדם בתהליך וקבלת עזרה מהקהילה.
חלק 1 מתוך 3: הכנה להתחלה
- 1דע מאיפה להתחיל. בבסיסו, פרויקט הקוד הפתוח שלך אמור לספק מענה לבעיה, במיוחד אם הבעיה עשויה להתפתח בעתיד. הצעד הראשון בטיפוח פרויקט קוד פתוח מצליח טמון במציאת בעיה לפתרון, בקביעה האם הבעיה חשובה מספיק כדי לטפל בה, והגדרת היעדים שלך משם.
- אם כבר יש לך פרויקט בתנועה, הקפד לרשום את הבעיה שהוא פותר לפני שתמשיך.
- 2ודא שהפרויקט שלך נחוץ. הביקוש הוא אחד המרכיבים העיקריים בפרויקטים מוצלחים של קוד פתוח. אם אין ביקוש או צורך לרעיון הפרויקט הראשוני שלך - או אם הדרישה הנוכחית מתמלאת על ידי פרויקט אחר, תוכל לשקול להצטרף לפרויקט מתמשך אחר או לבחור בבעיה אחרת להתמקד בה.
- פרויקטים רבים של קוד פתוח מתמשך מקבלים קלט קהילתי קפדני, אז אל תפחד לחפש ולהצטרף לגרסה קיימת של הפרויקט שלך במקום זאת.
- 3הימנע מלהתמודד עם בעיות גדולות או מעורפלות. לא רק שבעיות אלה בדרך כלל ישיגו פתרונות רשמיים יותר בזמן, ניסיון להתמקד בבעיה גדולה גם מדלל את המיקוד שלך וגם מקשה על פנייה לכל צרכי הקהל שלך מבלי להשקיע זמן בלתי סביר בפרויקט.
- במקום זאת, התמקדו בבעיה קטנה שמשפיעה על מספר רב של אנשים (למשל, באג בהפצת לינוקס).
- 4הגדירו את הצלחת הפרויקט שלכם. מכיוון שפרויקטים של קוד פתוח עוסקים בקטגוריות שונות של נושאים, "הצלחה" עבור הפרויקט שלך ישתנה. רישום הערה של מה שאתה מנסה להשיג ואיך תדע שהשגת את זה יעזור לך להתמקד במטרה עיקרית אחת למשך הפרויקט.
- לדוגמה, ייתכן שתחשיב את פרויקט הקוד הפתוח שלך כמוצלח אם הוא יופעל, בעוד שאחרים עשויים להחשיב פרויקט כמוצלח רק כאשר הוא מגיע למספר מסוים של הורדות.
- 5בחר רישיון קוד פתוח קיים ומאושר לפרויקט שלך. רוב המפתחים יודעים מה המשמעות של "GPL", "LGPL" "BSD" (הפצת תוכנת ברקלי) ו"אפצ'י ", כלומר הם גם יודעים מה הם יכולים לעשות עם קוד כזה ומה אסור להם לעשות. זה יעזור לך להימנע מבעיות משפטיות או קניין רוחני בדרך.
- כתיבת רישיון משלך עלולה לקחת זמן רב, וסביר להניח שתצטרך להזמין עורך דין שיאשר שהמסמך בודק את כל התיבות.
- 6כתוב את הקובץ README עבור הפרויקט שלך. זה אולי נשמע כמו פעולה הנשמרת בצורה הטובה ביותר אחרונה ולא ראשונה, אך כתיבת ה- README כמיטב יכולתך ללא הפרויקט בפועל שלפניך תאלץ אותך להגדיר שלושה דברים מכריעים: למי מיועד הפרוייקט שלך (קהל) הפרויקט משמש (לשימוש), ובו תוכלו למצוא משאבים נוספים (עזרה).
- באופן טבעי, לא תוכל לרשום את ההוראות הטכניות לפרויקט שלך בקובץ README.
חלק 2 מתוך 3: התחלת הפרויקט
- 1מצא תורמים מראש. אמנם יכול להיות שיש לך משהו מהשלד הראשוני של הפרויקט שלך לגירסת בטא עובדת, אך גיוס כמה תורמים קרובים שיעזרו בפרויקט לפני פרסום הפרויקט בכל מקום יעזור להקים צוות; באופן דומה, תהיה לך גישה ישירה למשוב של כמה אנשים קרובים כאשר אתה מתחיל במקום שתצטרך למיין משוב קהילתי מפוזר.
- כישלון למצוא תורמים לפני הפעלת הפרויקט עלול לגרום לשותפי פעולה לא להרגיש כאילו הם חלק פעיל בתהליך.
- מנהיגי פרויקטים קוד פתוח רבים מציעים שיעורי קידוד או פיצוי אחר שאינו מהותי לתורמים הראשונים שלהם.
- 2קבל אירוח. קל יחסית להירשם לאירוח בחינם לפרויקט קוד פתוח; האפשרויות הנפוצות כוללות את SourceForge ו- GitHub. לא רק פעולה זו חוסכת כסף, אלא גם מעמידה את הפרויקט שלך במקום בו אנשים עשויים לחפש פרויקטים קודמים קודמים.
- 3ציין כי הפרויקט שלך הוא קוד פתוח. למרות שזה נראה כמו דבר פשוט מאוד, זה אחד ההיבטים המתעלמים ביותר מפרויקט קוד פתוח. זכור, אנשים יראו את הפרויקט שלך רק למספר שניות לפני שיחליטו אם להוריד אותו או לא; הידיעה שהפרויקט שלך הוא קוד פתוח (ובכך עבודה בתהליך) עשויה לעזור להם לגבש דעה אחרת.
- 4קבע שקיפות. החלק "הפתוח" של קוד פתוח פירושו שאנשים צריכים להיות מסוגלים לראות מה אתה עושה עם הקוד. כמה דרכים קלות להבטיח שלכולם תהיה גישה שווה למשאבים שלך כוללות את הפעולות הבאות:
- אחסן את הקוד שלך באופן מקוון כך שכל אחד יוכל לגשת אליו.
- פרסם את הרישיון שלך, ה- README ואת לוח הזמנים לשחרורך במיקום קל לגישה.
- ציין את יעדיך לפרויקט.
- הקלט ושחרר כל מידע מפגש "פרטי" (למשל, הקלטות שמע או תמלילים).
- 5שחרר איטרציות של הפרויקט שלך. במיוחד כשיש לך תורמים או נותני חסות עקביים, תרצה לעמוד בלוח הזמנים שלך בצורה מדויקת ככל האפשר. זה יאפשר לקהילה לקבל מושג כיצד מרגיש הפרויקט שלך לפני שהפרסום המלא שלו יפורסם, ותוכל לקבל כמות גדולה של משוב שתוכל להשתמש בו כדי לשנות את המהדורות העתידיות.
- חשוב לזכור שלמרות שאינך צריך להשתמש בכל פיסת משוב מהקהילה, הם ירצו לראות שאתה מיישם כמה הצעות נפוצות.
- 6אפשר לערוך קהילות בקוד שלך. למרות שתצטרך להחזיר ונדליזם ועריכות שאינן הגיוניות מבחינת הקוד עצמו, הפיכת הקוד שלך לציבורי תעזור לך למצוא תורמים חדשים. זה יתאים גם לתרבות השקיפות שמוצאים עם פרויקטים רבים של קוד פתוח, שעשויים להשפיע על נותני החסות העתידיים.
- אתה תמיד יכול להגן על הקוד המבני ולאסור תורמים שזבל או משחיתים את הפרויקט שלך במידת הצורך.
חלק 3 מתוך 3: אחזקת הפרויקט
- 1אינטראקציה עם הקהילה. לא משנה כמה הפרויקט נמוך או גבוה, עבודת הקוד הפתוח שלך תמשוך בסופו של דבר עניין ו / או ביקורת מהקהילה. במקום לסלק אותם או להתעלם מהם, עדיף לדבר עם חברי הקהילה המעוניינים בכדי להגדיל את הסיכוי שהם יהיו תורמים.
- 2אל תעשו את כל העבודה בעצמכם. כאמור לעיל, חברי קהילה רבים עשויים להגיע אליך עם הצעות או רעיונות כיצד לשפר את הפרויקט שלך. קל לקחת זאת כהזמנה לבצע את השינויים בעצמך; במקום זאת, שקול לבקש מחבר בקהילה המעוניין לבצע את השינויים.
- פעולה זו מקימה תחושת עבודת צוות עם חברי הקהילה המעורבים ומפנה זמן מה להתמקד בנושאים אחרים.
- 3הימנע מתקשורת פרטית. החלק "הפתוח" בפרויקטים של קוד פתוח אינו תורם לפגישות פרטיות או ליישום מידע ללא שקיפות מוחלטת.
- אם בסופו של דבר תהיה לך פגישה פרטית על תכונה או רעיון, דאג להקליט את הפגישה ולהעלות אותה לדף הפרויקט שלך.
- 4יישום בקשות משיכה. בקשות משיכה הן דרכים בהן חברי הקהילה יכולים לתרום לפרויקט שלך. אמנם תרצה לבחון אותם בשלבים המאוחרים יותר של הפרויקט שלך, אך לאפשר לחברי הקהילה לשנות את הקוד שלך ככל שהפרויקט מתקדם יבטיח שהוא יהיה מעוגל ככל האפשר.
- 5שווק את הפרויקט שלך. בדיוק כמו שהיית משווק מוצר בתשלום, יהיה עליך לקדם את פרויקט הקוד הפתוח שלך באמצעות דפי מדיה חברתית ומעורבות כללית.
- יש כמעט אינספור דרכים לקדם את הפרויקט שלך, אך שימוש בתכנות משנה Reddit של Reddit יאפשר לך לשאול שאלות, להגיב להערות, ואחר כך לעסוק בקהל היעד שלך.
- 6שיהיה מישהו שימשיך את הפרויקט. תמיד ההצלחה של הפרויקט תביא לכך שתזדקק לתשומת לב פחותה משמעותית ממה שנתת לו עד כה. במידת האפשר, למנות מנהל פרויקט שישתלט על רווחת הפרויקט עד שהוא לא יהיה רלוונטי או יצטרך עדכון; זה יאפשר לך להתמקד בפרויקטים אחרים (או לקחת הפסקה נחוצה).
- אם אתה מעוניין לצלול למקור פתוח אך עדיין לא מוכן לארח את הפרויקט שלך, שקול לתרום לפרויקטים של משתמשים אחרים עד שתתמצא את התהליך.
- דע מה באמת אומר רישיון הקוד הפתוח שלך:
- אפאצ'י מאפשר לכולם לשנות את הקוד שלך ולהשתמש בו בתוכנת המקור הסגור שלהם. לפיכך, הקוד תחת רישיון זה הוא אטרקטיבי עבור החברות ויהיה הרבה יותר קל להשיג את הפופולריות הראשונית. עם זאת, יתכן שלא תקבל משוב רב מאנשים שמשתמשים בעבודה שלך בשקט בשקט.
- LGPL (רישיון ציבורי פחות כללי) מאפשר להשתמש בתוכנה שלך בנגזרות המקור הסגור, אך דורש מהמשתמש לחשוף את כל השינויים שביצע בקוד שלך. ניתן לצפות למשוב נוסף.
- GPL (רישיון ציבורי כללי) הוא רישיון אגרסיבי המחייב את המשתמש לחשוף את הקוד שלו שמתקשר לקוד שלך. חברות מעטות יאהבו את זה, אך אם הן מעוניינות בתוכנה שלך, הן יצורו איתך קשר ותציע תשלום עבור מתן הקוד עבורן בתנאים שהם אוהבים. אף על פי ש"רישוי כפול "זה אינו מכובד על ידי האקרים רבים של תוכנות חינמיות וארגוני GNU, הוא חוקי ופופולרי למדי.
- ודא שאתה בודק איות כל יצירה כתובה שאתה מייצר. השתמש תמיד בדקדוק תקין.
- היה מקצועי ובוגר ככל האפשר, גם אם מישהו שמתקשר איתך לא.
- אם אתה משתמש בכמה רכיבי קוד פתוח מפרויקטים אחרים, ודא שאתה מכבד את הרישיונות שלהם. לא כל רישיונות קוד פתוח תואמים זה לזה.
- בדרך כלל לא רעיון טוב למצוא ולנסות להחיות פרויקט נטוש קיים. פרויקטים כאלה ננטשים בדרך כלל מסיבה טובה.
- אל תכיר יותר מדי אנשים שמייצרים עבורך עבודה. אם תתחיל להודות לכולם, או שתפספס בסופו של דבר מישהו שירגיש מוזנח, או שלא תדע איפה לעצור. תודה רק לחבר בקהילה שעושה משהו יוצא מן הכלל; זה מעלה את הרף של מה שצריך לעשות כדי לקבל את הכרת התודה שלך.