קוד ותוכנה פתוחים במחקר

קוד ותוכנה פתוחים (Open Source Software) הם תוכנות, סקריפטים וכלים חישוביים הזמינים לצפייה, שימוש, התאמה ושיתוף, בהתאם לתנאי הרישיון שלהם. 

שיתוף קוד מאפשר לחוקרים אחרים להבין כיצד בוצע הניתוח, לשחזר את התוצאות ולהשתמש בכלים שפותחו לצורך מחקרי המשך.

חשוב לדעת:

  • שיתוף גמיש: שיתוף קוד אינו מחייב שכל הקוד או הנתונים יהיו פתוחים. במידה שקיים מידע רגיש, רכיבים מסחריים או מגבלות משפטיות, ניתן לשתף חלקים מוגדרים בלבד("Open as possible, closed as necessary").
  • רישיונות תוכנה ייעודיים: רישיונות תוכן נפוצים (כגון Creative Commons) אינם מתאימים לקוד. יש להשתמש ברישיונות תוכנה ייעודיים (כגון MIT, Apache 2.0 או GPL) ה"מכסים" סוגיות של פטנטים, אחריות הרצה ושימוש חוזר בתוכנה.
מדוע שיתוף קוד חשוב?
  • שחזוריות המחקר (Reproducibility): גישה לקוד המקור היא תנאי הכרחימרכיב מרכזי המאפשר לחוקרים אחרים לאמת את התוצאות, לבחון את תקפותן ולהימנע מטעויות בחישובים.
  • שקיפות מחקרית: הקוד אינו רק כלי טכני, אלא חלק בלתי נפרד מהמתודולוגיה המחקרית. שיתופו חושף את "הקופסה השחורה" של עיבוד הנתונים.
  • שימוש חוזר ושיתוף ידע: הנגשת קוד מאפשרת לחוקרים אחרים לעשות בו שימוש, להתאים אותו לשאלות מחקר חדשות, לשפר אותו ולהמשיך את פיתוחו. כך מצטמצמת כפילות במאמץ המחקרי ומתחזק שיתוף הידע בקהילה המדעית. 
  • שיתופי פעולה וקרדיט: שיתוף קוד פתוח מעודד עבודה משותפת בין קבוצות מחקר, מגביר את נראות המחקר ומאפשר לחוקרים לקבל ציטוטים וקרדיט אקדמי גם על פיתוח התוכנה עצמו.
אתגרים ושיקולים
  • הצורך בתיעוד מספק: קוד ללא הסברים ברורים אינו שימושי לאחרים. יש להשקיע זמן בכתיבת הנחיות ברורות.
  • הגנה על מידע רגיש: חובה לוודא שהקוד אינו מכיל נתונים חסויים, סיסמאות, מפתחות גישה (API keys), או פרטים מזהים של משתתפי המחקר. 
  • תחזוקה לאורך זמן: מערכות הפעלה וחבילות קוד מתעדכנות כל העת; ללא תחזוקה מתאימה עלול הקוד הישן להפסיק לעבוד (Software Rot).
  • בחירת רישיון מתאים: קוד פתוח דורש הצמדת רישיון (כגון MIT, GPL או Apache), המגדיר משפטית מהם גבולות המותר והאסור של השימוש בו בידי אחרים.
ארגז כלים

פלטפורמות לניהול, שיתוף ושימור קוד

  •  GitHub / GitLab: הפלטפורמות המובילות לניהול גרסאות (Git), שיתוף קוד ועבודה צוותית במחקר ובפיתוח.
  • Zenodo / Figshare: מאגרים לשימור גרסאות קוד לטווח ארוך והקצאת מזהה דיגיטלי קבוע (DOI) המאפשר ציטוט יציב של הקוד במאמרים.
  • Software Heritage: הארכיון העולמי לשימור קוד מקור מחקרי וציטוטו לטווח ארוך. 

כלים תומכים

  • Choose a License: מסייע בבחירת רישיון קוד פתוח מתאים.
  • Citation File Format: קובץ סטנדרטי המאפשר להוסיף לקוד הוראות ציטוט ולהקל על חוקרים לצטט את התוכנה.
  • CodeMeta: תקן למטא־נתונים של תוכנה מחקרית, המשפר את התיעוד, האיתור והשימוש החוזר בקוד.
טיפים לחוקרים
  • הוסיפו קובץ README
    צרו קובץ טקסט הסברים פשוט, הכולל את תיאור הקוד, מטרתו, והנחיות ברורות כיצד להתקין ולהפעיל אותו.
     
  • תעדו את סביבת העבודה
    ציינו במדויק באילו גרסאות של תוכנות, ספריות או חבילות (Packages) השתמשתם, כדי להבטיח שהקוד ירוץ בצורה זהה אצל אחרים.
     
  • נקו מידע רגיש
    ודאו שהסרתם מהקוד נתיבי תיקיות מקומיים המופיעים במחשב שלכם ומכילים שמות מלאים, וּודאו שאין בו נתונים גולמיים חסויים.
     
  • בחרו רישיון מתאים
    השתמשו בכלים דיגיטליים (כגון האתר Choose a License) כדי לבחור את הרישיון שמתאים לאופי הפרויקט שלכם.
     
  • בדקו את הקוד
    לפני הפרסום, מומלץ לבקש מעמית (או סטודנט) שאינו מכיר את הפרויקט לנסות להריץ את הקוד על מחשב אחר, כדי לוודא שהוא אכן עובד בצורה עצמאית.