תרבות הקוד הפתוח: באיזו מידה הסתגל הממסד הביטחוני שלנו לתרבות התוכנה, ומה בדיוק זה אומר על מידת חדשנותו? - גב' אור

01.04.16
גב' כרמל אור היא עמיתת מחקר במרכז דדו.

פורסם לראשונה באפריל 2016

לקריאת המאמר בפורמט PDF לחץ כאן

תקציר המערכת - 

קוד פתוח מהווה גם הזדמנות עצומה וגם, בעיני רבים, איום לבניין הכוח הצה"לי. אימוץ הקוד הפתוח הוא מדד לרמת החדשנות והסתגלנות בתוך צה"ל, כביטוי ליכולת ולרצון הצה"ליים להתאים עצמו לעידן הדיגיטלי. שימוש בקוד פתוח יזרז את פיתוח התוכנה, וישפר את איכותה באופן דרמטי. בד בבד, קיים חשש מהנזק לאבטחת  מידע בשיתוף קוד עם קהל מתכנתים אזרחי. ברם, לקוד פתוח יש יתרונות ביטחוניות, מפאת כמות המתכנתים הבודקים את הקוד ומתקנים מגרעות ("חוכמת המונים"). עדות לכך היא שהעולם העסקי ומערכת הביטחון האמריקאית אימצו את הקוד הפתוח, ומניבים ממנו תועלת. מנגד צה"ל, מפא"ת והתעשיות הביטחוניות מתאפיינים בתרבות ביורוקרטית ושונאת־-סיכונים, ובכך מתעכבים את עדכוןות לעדכן את בניין הכוח הצה"לי.

"Given enough eyeballs, all bugs are shallow" [2]

מבוא

קצב השינויים בעולמנו מהיר כל כך, עד כי מקובל להניח כי חדשנות בארגונים מהווה במידה רבה תנאי להצלחתם. אותו קצב גובר של שינויים קשור במידה משמעותית למהפכה הדיגיטאלית שעברה על העולם ושבמרכזה נמצאת שפת הביטים, כלומר: תוכנה. לכן, יש עניין רב בבחינה של מידת ההסתגלות של ארגון כמו צה"ל לעולם התוכנה (בשונה ממיקוד החומרה המסורתי). יתר על-כן, יש מקום להניח כי מידת ההסתגלות הזו, בשל מרכזיות עולם התוכנה לכל היבט אחר בפיתוח עוצמה צבאית, יש בו גם משום מדד למידת החדשנות הכללית של הארגון. באופן קונקרטי יותר, מתוך ההבנה כי תופעת פיתוח תוכנה בתרבות של קוד פתוח היא המגמה המובילה בעולם זה, יבקש המחקר הנוכחי להאיר את מידת חדשנותו של צה"ל מתוך פריזמה זו.

מכאן עולה כי בבסיס שאלת המחקר עומדת טענה שלפיה הקוד הפתוח הוא הדרך הנכונה לעשות תוכנה כיום בארגונים – טענה אותה נתמוך בתחילת הדברים.

על מנת לקבוע מדדים המבטאים "אימוץ קוד פתוח" הצבנו שלושה "סרגלי מדידה". על בסיס "סרגלים" מושגיים אלה ננסה למקם את מערכת הביטחון הישראלית ובתוכה את צה"ל, ביחס לשני מקרי-בוחן אחרים – התעשייה האזרחית והממסד הצבאי-ביטחוני האמריקאי. אנו מאמינים ומקווים כי תובנות המחקר יוכלו לשמש עזר לגופי בניין הכוח בצה"ל, למפא"ת ואף לגורמים בתעשייה הביטחונית.

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

ניתן לראות את מבנה התוכנה כמבנה שכבתי שבו כל שכבה משמשת כתשתית לזו שמעליה. הדבר נובע מהאופי האיטרטיבי של תהליך פיתוח התוכנה – יצירת מקטעי קוד, שימוש בהם באופן היוצר מקטעי קוד נוספים, וחוזר חלילה. התהליך נעצר ב"שכבה דקה" של קוד שאינו נועד לשימוש חוזר. שכבה זו מבטאת את הממד הפונקציונלי של המוצר – אותן שורות קוד המשרתות תפקודים ספציפיים במוצר ספציפי אחד. השכבות שמתחת ל"שכבה הדקה" הן האמצעי המאפשר זאת, והן רלוונטיות גם בהקשרים של מוצרים אחרים. הקוד הפתוח, מטבעו, נועד לשרת פרויקטי תוכנה שונים, לכן הוא ממלא את תפקיד שכבות התשתית. מפתחים הבוחרים להשתמש בקוד פתוח מניחים בצדק כי קוד תשתית המשרת מספר רב של פרויקטים הינו ככל הנראה קוד תשתית טוב יותר מאשר זה שפותח רק בעבור פרויקט מסוים. מעבר לכך, אימוץ הקוד הפתוח מאפשר למפתחים לצמצם את ההשקעה הנדרשת בשכבות הלא פונקציונאליות של המוצר ולמקד את המשאבים בתכליתו.

המחקר הנוכחי מבוסס על מקורות מחקריים שונים ועל ראיונות עם אישים מסביבת המו"פ ובניין הכוח של המערכת הביטחונית הישראלית. שיטת המחקר כללה, כאמור, העמדה של סרגלי מדידה בשלושה מימדים ודירוג השוואתי של שלושה מקרי בוחן על מערכת צירים אחת המורכבת משלושה ממדים:

הממד הראשון והבסיסי הינו ציר מידת השימוש בקוד פתוח. הציר נע בין אי-שימוש מוחלט בקוד פתוח לשימוש בקוד פתוח כפי שהוא ולבסוף "שימוש מקצועי" שבו עורכים שינויים והתאמות בקוד.

הממד השני הינו ציר הקהילה. הכוונה כאן היא לקהילת מפתחי התוכנה עצמם. הציר נע בין שימוש בקוד פתוח בלבד לבין פרסום של קוד שנכתב באופן עצמאי. באמצע ניתן לראות את פרסום השינויים וההתאמות שנערכו על גבי קוד פתוח קיים, מעין "החזרת טובה תחת טובה".

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

בהתאם לכך, מבנה המחקר כולל הסבר על קוד פתוח ומדוע הוא ההתפתחות הטבעית של עולם התוכנה; החלק השני הוא דיון השוואתי – המערכת הביטחונית הישראלית ביחס לאחרים; ואילו החלק האחרון עוסק בחסמים ובתמריצים לאימוץ קוד פתוח בארגונים ומדוע יש צורך בתוכנות קוד פתוח בצבא.

על קוד פתוח

חלק זה של המאמר יגדיר מהו קוד פתוח ויפרט את יתרונותיו ואת חסרונותיו על פי הספרות.

קוד מקור[3] המפותח בשיטה של "קוד פתוח"[4] הוא בהגדרה נגיש למפתחים אחרים וניתן לשימוש, להפצה ולהעתקה. הצרכנים יכולים לבצע בקוד המקור שינויים היכולים להיות מוצעים בשוק ללא כל עלות או עמה. מפתחים המבצעים שינויים בקוד יכולים לבחור אם לשומרם או לפרסמם חזרה לקהילת המפתחים על מנת שאלו ישמשו בגרסאות התוכנה העתידיות. הדבר כפוף כמובן לסוג רישיון קוד המקור הקובע את כללי השימוש בו מבחינה משפטית. בתוכנות קוד פתוח, באופן עקרוני ומכוון, לא קיימת חובת הגדרה או דיווח באשר לסוגי השימוש ולזהות המשתמשים. רישוי השימוש בקוד פתוח הינו בעבור הקוד גרידא ואינו כולל מוצר ספציפי. מכאן נובע כי הזיקה בין זכות השימוש לבין מוצר מסוים מתבטלת.[5] בה בעת, בתוכנות קנייניות, הצרכנים וקהילת המפתחים שמחוץ לחברה המפתחת, אינם חשופים לקוד המקור. לאור זאת, היכולת שלהם לבצע התאמות אישיות ושינויים מוגבלת להגדרות החברה המפתחת.[6]

עם תחילת השיח הציבורי אודות הקוד הפתוח, יוחסה לו אידיאולוגיה של קריאת תיגר על מושגי הקניין הרוחני והבעלות מתוך ראייה כי ניתן להביא לתועלת חברתית רבה באמצעות צמצום היבטי הקניין הרוחני בתוכנה. כיום, לעומת זאת, הגישה הרווחת רואה בקוד הפתוח מודל עסקי חדש. בניגוד לחברות תוכנה קנייניות המתבססות על מכירת רישיונות שימוש (Licensing), בבסיס המודל העסקי של חברות קוד פתוח עומדים שירותים ותמיכה טכנית. לפיכך, ניתן לראות כי לצד אפשרויות ההורדה והשימוש בתוכנות ללא תשלום, ישנם גם שירותים נוספים אשר בעבורם גובות החברות תשלום.[7] ריצ'ארד סטולמן, נשיא הקרן לתוכנה חופשית, ניסח זאת באופן הבא: "קוד פתוח הוא מתודולוגיית פיתוח; תוכנה חופשית היא תנועה חברתית".[8]

הקוד הפתוח בתוכנה יכול להיות מפותח באופן "חברתי" כאשר מספר מפתחים משתפים ביניהם פעולה לפיתוחו. פיתוח זה, המבוצע על ידי מקורות בלתי תלויים, יוצר קשת הסתכלות רחבה ומגוונת יותר מאשר זו הנוצרת בחברה בודדת לאורך זמן.[9]

בהשוואה לפיתוח תוכנה "סגור" הנעשה באופן יזום ומתוכנן על ידי חברה ספציפית, ניתן למנות מספר סיבות לנטייה לעבר הפיתוח בקוד פתוח. ביניהן: העלות הנמוכה, שיפור איכות התוצר, החופש להתנתק מספק התוכנה וכן הגברת האבטחה. לאור זאת, תוכנות קוד פתוח מספקות מענה לבעיות נקודתיות באופן המביא לכך ש-98 אחוזים מהתאגידים משתמשים בו במגוון דרכים.[10]

תומכים רבים של הקוד הפתוח טוענים כי הוא מאפשר את הגברת האבטחה באופן אינטגרלי, בשל העובדה כי כל אדם יכול לצפות בקוד, לעורכו ולשנותו.[11] מחקר הבא לאשש אמרה זו מצא כי בעוד בתוכנת קוד סגור ישנם כ-30-20 תקלים ("באגים") בממוצע ל-1000 רשומות, בלינוקס המייצגת את תוכנות הקוד הפתוח, נמצאו בממוצע כ-0.17 תקלים ל-1000 רשומות.[12] בהקשר זה ניתן לציין את "חוק לינוס" (Linus) הקובע כי בהינתן מספיק זוגות עיניים בוחנות, כל התקלים מתגלים, ומכאן שגם מוצאים דרכים לפתרונם.[13]

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

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

יתרה מזו, השילוב של נקודות מבט שונות, יעדי הארגון והמטרות האישיות של המשתתפים בפיתוח, שילוב שהוא מובנה בשיטת הקוד הפתוח, מאיץ את החדשנות.[15]

לעומת זאת, ישנם מומחים הטוענים כי לתוכנות קוד פתוח יש צד שלילי. בין החסרונות ניתן למנות את העובדה כי לעיתים תהליך הפיתוח בקוד פתוח אינו מוגדר באופן בהיר וששלבים בפיתוח, כגון בחינת המערכת והתיעוד, עשויים להיזנח. חלק ממומחי התוכנה והחוקרים מציינים כי הקוד הפתוח אינו מביא ליצירת מערכות איכותיות, בעיקר בשל חוסר הבהירות בתהליכי הפיתוח, הגילוי המאוחר של הפגמים וחיסרון של ראיות אמפיריות.[16] כאשר בוחנים את הפן העסקי, יש הטוענים כי פיתוח הקוד הפתוח מספק את הדרישות הטכניות גרידא, בעוד אלו של השוק נותרות ללא מענה. באשר לאלמנט אבטחת התוכנה, קוד פתוח עלול לאפשר לפצחנים ("האקרים") לגלות את החולשות והפרצות בתוכנה ביתר קלות, מאשר בפיתוח תוכנה "סגור".[17]

קוד פתוח הוא התפתחות טבעית של עולם התוכנה[18]

פיתוח תוכנה הינו תהליך איטרטיבי (חזרור) היוצר נכסים בדמות מקטעי קוד ושימוש חוזר בהם (re-use) ליצירת נכנסים מורכבים יותר שגם הם מקטעי קוד. התהליך נעצר בשלב שבו מתקבלת "שכבה דקה", ככל הניתן, של קוד שאיננו בר שימוש חוזר. שכבה זו מבטאת את הממד הפונקציונלי של המוצר שאותו מפתחים (Business Logic). לאור זאת, שכבה זו היא האחראית למלא את הדרישות הספציפיות של המוצר, והיא אינה מהווה תשתית לשכבות תוכנה אחרות שייכתבו מעליה.

 

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

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

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

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

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

שני ממדים אלו – הראשון שמייצג את ההיבט הפסיכולוגי-סוציולוגי והשני שמייצג את הפרקטיקה של שיח כפיתוח ידע – מוכרים בתחום פיתוח התוכנה. דוגמאות לכך ניתן לראות בטכניקות כגון Code Review שבה מפתח אחד מציג את הקוד שפיתח למפתח אחר ומלמד סנגוריה על עבודתו. בנוסף לכך, Extreme Programming מהווה דוגמה נוספת שבה שני מפתחים עובדים יחדיו על קוד אחד. המרחב הסוציולוגי הנוצר בתהליך פיתוחו של הקוד הפתוח, משרת באופן ישיר את שני הממדים האלו.

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

לפיכך, אם הצבא נכנס לעולם התוכנה, הוא אינו יכול שלא להשתלב גם בזה.

לאחר שסקרנו את עולם הקוד הפתוח והבנו את הטעמים העמוקים המגדירים את השיטה הזו כתנאי לאפקטיביות בסיסית בעולם הפיתוח, ניתן להבין מדוע טענו למִתְאם בין מידת האימוץ של קוד פתוח לסוגיית החדשנות הכללית של הארגון. "קוד פתוח" הוא מהלך אלמנטרי של הסתגלות ארגונית לסביבה הדיגיטאלית החדשה. לכן, המידה שבה צה"ל מאמץ את הקוד הפתוח ומבין ארגונית את חשיבותו, מהווה אינדיקציה חשובה, להבנתנו, על יכולות ההסתגלות והחדשנות שלו גם ברמה הכללית יותר.

דיון השוואתי – המערכת הביטחונית הישראלית ביחס לאחרים

בחלק זה של המחקר נעמיד סרגל מדידה על מנת לעמוד על מצבה היחסי של המערכת הביטחונית הישראלית, בכלל, ושל צה"ל, בפרט, לעומת המגזר העסקי והמערכת הביטחונית בארצות הברית. מכיוון שהקוד הפתוח מאומץ על ידי ארגונים בטווח נרחב, ניתן לכאורה לבחון אותו באמצעות מידת השימוש בו. עם זאת, בכדי לענות על שאלת המחקר נרצה להציע בחינה של שלושה מדדים נפרדים:

ציר מידת השימוש – הממד הראשון והבסיסי הינו ציר מידת השימוש בקוד פתוח. הציר נע בין אי-שימוש מוחלט בקוד פתוח לבין שימוש בקוד פתוח כפי שהוא ולבסוף, "שימוש מקצועי" שבו עורכים שינויים והתאמות בקוד. ציר זה מראה מטבעו האם בכלל נעשה שימוש בקוד פתוח בארגון, וכן הוא מעיד על טיב השימוש בקוד – האם הארגון אימץ את הקוד הפתוח כפי שהוא, משמע שימוש שניתן לכנותו כ"בסיסי" או שמא ערך הארגון פיתוח נוסף והתאים לעצמו את הקוד הקיים, קרי שימוש "מקצועי".

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

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


איור 1: שלושת מדדי הבחינה ההשוואתית

בהמשך המחקר יוצגו על גבי מערכת הצירים שהוצגה כאן – המערכת הביטחונית האמריקאית, המערכת הביטחונית הישראלית וכן מודל של חברה עסקית בעלת אוריינטציה לקוד פתוח.

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

בשנת 2002 הוגשה הצעת חוק בנוגע לשימוש במערכות קוד פתוח על ידי חברת הכנסת לשעבר נחמה רונן. ההצעה כללה תיקון לחוק חובת המכרזים (תיקון – רכישת תוכנות קוד מקור פתוח), התשס"ג-2002 ושבה הוצע לקבוע ש"המדינה, תאגיד ממשלתי, וגוף ציבורי אחר שקבע שר האוצר לא יתקשרו בחוזה לרכישת תוכנה, אלא אם כן היא פותחה במודל קוד מקור פתוח", מלבד מקרים מיוחדים שבהם אישר שר האוצר לעשות זאת. בהקדמה להצעת החוק נכתב, בין היתר, כך:

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

בנוסף נכתב:

יש לציין כי הצעת תיקון זו, באה בעקבות מגמה כללית במדינות שונות כמו ארה"ב (קליפורניה), פינלנד, צרפת, גרמניה, תאילנד, טאיוואן וסין שהחלו בהליכי חקיקה המעודדים את המוסדות הציבוריים והממשלתיים להשתמש בתוכנת קוד מקור פתוח".

ההצעה הונחה לפני דיון מוקדם, אך הליך החקיקה בנושא נפסק.[19]

מסמך אחר פורסם באפריל 2012 על ידי ממשלת בריטניה תחת הכותרת "הכל על קוד פתוח". במסמך נאמר כי מידת שימוש נמוכה בקוד פתוח נובעת לרוב מחוסר הבנה של יתרונותיו ונלוות לתרבות ארגונית "שונאת סיכון". עוד נכתב שם כי מידת השימוש הנמוכה מלווה גם בתפיסות שגויות בכל הנוגע לאבטחת המידע בקוד פתוח והשירותים הנלווים אליו. האתגר, על פי ממשלת בריטניה, הינו להציע הן פתרונות קנייניים והן פתרונות קוד פתוח, ולבצע הערכה והשוואה שלהם באופן הוגן לפי איכותם.[20] 

חסמים ותמריצים לאימוץ קוד פתוח בארגונים

בהסתכלות על הפן העסקי ניתן לומר כי לקוד הפתוח השפעות חיוביות רבות על ארגונים. הוא מאיץ תהליכים באמצעות העובדה שהוא "חוסך" את הצורך בכתיבת קוד תשתיתי רב והתחלה מאפס פעם אחר פעם. הקוד הפתוח הינו חלק בלתי נפרד מקהילת המפתחים, והדבר מאפשר את השימוש בכוחו של ההמון ובשכלו – הרבה מעבר למשאבים הפנימיים של כל ארגון עסקי. הדבר תורם, כמובן, לתחזוקה לאורך זמן ולפתרון תקלים, וחשוב מכך, הקוד הפתוח מהווה כר פורה לרעיונות חדשים ומגביר את החדשנות בארגון ובכך מעלה את היתרון התחרותי שלו.[21]

גל הגלובליזציה הסוחף את העולם בשנים האחרונות, מראה כי הבעיות בתוכנה הן בעיות גלובליות. אותן הבעיות המעסיקות ארגון בצד אחד של העולם, מעסיקות גם ארגון בצד הנגדי. על כן, השימוש בקוד פתוח על ידי ארגונים מאפשר שיתוף פעולה רחב היקף התורם לפתרון בעיות בצורה מיטבית.[22]

למרות כל היתרונות הללו, ידועים גם חסמים הפוגעים באימוץ הקוד הפתוח על ידי ארגונים וחברות. ביניהם ניתן למנות את התלות בחיבור לרשת האינטרנט. ישנם ארגונים, לרוב ביטחוניים, אשר לא לכל העובדים יש גישה חופשית לרשת האינטרנט העולמית.[23] במיוחד בארגונים אלה, אך גם באחרים, העקרונות המסורתיים של בטחון המידע מהווים לעיתים קושי הנוסף על האתגר הטכני הזה.[24] בעייתיות אחרת נוגעת לרישיונות הקוד הפתוח וחסמים הנובעים מהחוסר בתמיכה והדרכה פורמליים וכן מהמחסור בתכנון ארוך-הטווח.[25]

כל החסמים הללו רלוונטיים, כמובן, גם לארגונים צבאיים. נוסף עליהם מזכירים מרואיינים מקרב הארגונים הביטחוניים והצבאיים חסמים כמו תופעת ה-NIH (not invented here), המלווה בחשיבה כי "רק אני יודע לפתח", "אני יודע הכי טוב" וכדומה.[26] 

למה בכלל צריך תוכנות קוד פתוח בצבא?

הצבא מתמודד עם אותן בעיות IT כמו התעשייה. יחד עם זאת, עיקר העשייה והמחקר הטכנולוגים מתמקדים במערכות המשפיעות באופן ישיר על הלחימה בשטח. מערכות הבולטות לעין פחות, נוטות באופן טבעי לפיתוח איטי יותר עקב מדיניות ביורוקרטית מורכבת של יחסי התעשייה והצבא. מטבעו של הצבא צפות בעיות רבות במרחבים שונים. תוכנות הקוד הפתוח מאפשרות את השימוש החוזר בפתרונות לבעיות הנפוצות וכן את הגמישות לפתח פתרונות ושירותים חדשים. לכן, כמו באזרחות כך גם בשימושים צבאיים, הקוד הפתוח אמור לאפשר הוזלה במחירי הפיתוח וקיצור משמעותי בזמני הפיתוח, במיוחד בשכבות התשתית של התוכנה.[27]

יתר על כן, בשל היותו של קוד המקור פתוח, אמורה להפוך את התלות של הצבא בספק בודד לפחות משמעותית. קוד פתוח אמור לאפשר לצבא ליהנות מהתחרות בין הספקים ומפוטנציאל פיתוח ופריסה מהירים. לא זאת בלבד, לקוד הפתוח יש גמישות רבה. היותו של קוד המקור פתוח מאפשר את התאמתו לצרכים ולצרכנים שונים. אותה הגמישות היא ההופכת את הקוד הפתוח לפתרון פרקטי בעבור הצבא.[28]

הקוד הפתוח, בפרט בשכבות התשתית, מוכן לשימוש באופן מידי, מה שכאמור מאפשר למפתחים לפעול ביעילות ולהתמקד בהתאמות לדרישות הצרכנים, במקום להקדיש זמן לפיתוח מערכת מאפס. לכן, קוד פתוח מאפשר הן לקצר את משכי הפיתוח והן לעודד חדשנות. הקטנת המאמץ הנדרש למשימות התשתית מאפשרת לרכז את אנרגיות הפיתוח בחדשנות ובפתרון בעיות בעולם האמתי ולא בתוכנה. חשובה במיוחד, להבנתנו, היא ההערכה כי פרויקטים הכוללים קוד פתוח מגבירים את שיתוף הפעולה על ידי פיתוח קהילות סביב עניין מסוים. קהילות אלה מהוות בסיס איתן לשיתופי פעולה, רעיונות וידע. כאמור, שיתוף הפעולה מגביר גם את המודעות והחדשנות של הפרויקט.[29] אלה הן תועלות משמעותיות במיוחד עבור ארגונים ביטחוניים שנטייתם להסתגרות, גם במחיר של פיתוחים כפולים, היא מן הידועות.

עם זאת, יש הטוענים כי הקוד הפתוח פוגע באבטחת התוכנה, לכן אין להשתמש בו בסביבה מסווגת. תפיסה זו נובעת, לאור החומר שנסקר במחקר זה, מחוסר הכרות מספקת עם תחום התוכנה. אבטחת תוכנות קוד פתוח מבוססת על שיפור הקוד ובחינתו בידי מספר רב של מפתחים ובמגוון מצבים. ישנם מצבים שבהם תוכנות קוד פתוח מאובטחות פחות, אך מודל הקוד הפתוח הראה כי ביכולתו לתקן את האבטחה באופן מהיר יותר. יתרה מזאת, הסתרת הקוד אינה מונעת בפועל את ההתקפות על התוכנה[30]. משרד ההגנה האמריקאי(!) ציין כי:

הבדיקה המקיפה והרחבה של המפתחים שהתאפשרה בזכות חשיפת הקוד בפומבי, מחזקת את אמינות ואבטחת התוכנה באמצעות ההצבעה על חולשות ותיקונן; דבר אשר קבוצת מפתחים מצומצמת יותר, הייתה יכולה לפספס.[31]

כמו כן, לארגון הצבאי נותרת עדיין שליטה על הקוד הפתוח שהוא מאמץ, ולכן הוא יכול לבצע בקרה ולהחליט אלו חלקים מהקוד להכניס למערכות ואלו לא. לפיכך, פוחת החשש מהכנסת "סוס טרויאני" בקוד הפתוח.[32] 

בחינה השוואתית – ארגונים שונים על גבי מנעד האימוץ של קוד פתוח

חברה עסקית בעלת אוריינטציה גבוהה לקוד פתוח כמודל

במגזר העסקי ניתן לראות את אימוץ הקוד הפתוח באופן נרחב. כפי שצוין, לארגונים יש יתרונות רבים מהשימוש בקוד פתוח, החל מייעול תהליכים ועד לצמצום התקציבים. לכן, חברה עסקית השואפת למקסם את רווחיה ושיש לה אוריינטציה גבוהה לקוד פתוח, תוצג במערכת הצירים באופן הבא:

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

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

מבחינת ציר ההכוונה המוסדית, החברה תציג את אימוץ הקוד הפתוח בכל הרמות, החל מהפיתוח ועד להנהלה. כמו כן, החברה תשנה את המודל העסקי שלה, לאור אימוץ הקוד הפתוח, בכדי ליהנות ממרב יתרונותיו. יש לציין כי גם חברות אחרות במשק פועלות לאימוץ הקוד הפתוח, על כן הנהלת החברה תפעל לאימוצו במהרה בכדי לשמור על מעמדה בשוק התחרותי. אימוץ הקוד הפתוח באופן מלא בדרג הבכיר הוא שיאפשר, בראיית החברה, את אימוצו מבחינת צירי מידת השימוש והקהילה. 

המערכת הביטחונית האמריקאית

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

מערכת הביטחון האמריקאית נחשפה ליתרונות הקוד הפתוח בשלב מוקדם יחסית. מחקרים מצביעים על אימוץ הקוד הפתוח בצבא האמריקאי ובמשרד ההגנה החל משנת 2003 בשכיחות הגוברת בכל שנה. תחילה, התרחש תהליך אימוצו של הקוד הפתוח באופן נקודתי במקומות שונים ברמה הצבאית הנמוכה. ברם, לאור הצלחתם של מספר פרויקטים ראה משרד ההגנה כי טוב, ויצר הליך שילוב פורמלי של הקוד הפתוח במערכת.[33] לאחרונה אף פרסם הבית הלבן עצמו טיוטת מדיניות לגבי פיתוח קוד פתוח לכל הסוכנויות הפדרליות, נייר שמטרתו היתה להגדיל את זמינות הממשל הפדרלי לאפליקציות ולצמצם את העלויות בתחום.[34]

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

כמעט בכל המקרים תוכנת קוד פתוח זהה להגדרה של תוכנה קניינית, לכן היא צריכה לקבל עדיפות בהתאם על-פי החוק [...] סוכנויות הביצוע, כולל משרד ההגנה, נדרשות לבצע סקר שוק כאשר הן מתכוונות לבצע רכישה של מוצרים ושירותים [...] סקר השוק לתוכנה צריך לכלול תוכנות קוד פתוח, כאשר הדבר יכול לענות על צרכי המשימה.[35]

מצד פיתוח התוכנה, ניתן לראות את דבריה של בת' מקגרת', סגנית קצין הניהול הראשי, שהושמעו בפני ועדה של בית הנבחרים האמריקאי בשנת 2010:

הגישה הנוכחית שלנו ליישום מערכות  IT (מערכות מידע) לוקחת יותר מידי זמן, עולה יותר מידי כסף ולעיתים קרובות נכשלת בשיפור הביצועים שאנחנו מחפשים. בממוצע במשרד ההגנה, טווח הזמן בין מימון תוכנת IT לפרישתה, אורך כ-81 חודשים. בהתחשב בקצב השיפורים המהיר בתחום ה-IT, משמעות הדבר היא שאנחנו מספקים מערכות מיושנות, עוד טרם הפעלתן.[36]

פיתוח קוד פתוח במסגרת משרד ההגנה נע בין פלטפורמה של ענן פרטי לבין ציבורי. הענן הציבורי מהווה [37]GitHub המחייב גישה וכתובת באינטרנט העולמי. בנוסף, בענן הציבורי קיימים שני מודלים: הראשון כולל את חשיפת הקוד לכלל העולם, אך ללא כל עלות; ואילו המודל השני כולל מאגרים פרטיים, שהגישה אליהם מותנית באישור מנהלי הפרויקטים. כלומר, הקוד חשוף לקבוצה מסוימת של אנשים ובתשלום. לעומת זאת, הענן הפרטי של משרד ההגנה תלוי בגישה לאינטרנט, אך הכתובת אינה נגישה לכל אחד. הגישה לענן היא למורשי משרד ההגנה בלבד על פי הזדהות. גם בענן זה קיימים שני מודלים: הראשון, פיתוח המאפשר לכל המורשים לאתר גישה לקוד. באופן זה המודל מאפשר פיתוח בסביבה רחבה אך מוגנת וללא עלות; המודל השני כולל פיתוח פרטי של קבוצה בתוך הענן, והגישה לקוד תלויה באישור מנהלי הפרויקטים ובתשלום.[38]

פורום המורשה על ידי משרד ההגנה, הינו Mill-OSS (Military Open Source Software) אשר הוקם בשנת 2003. מטרתו של הפורום ליצור ולשמר קהילה פעילה של מפתחים, הן אזרחים והן צבאיים, המשתמשים, משפרים וחולקים תוכנות קוד פיתוח במסגרת משרד ההגנה (DoD). מרבית חברי הקהילה עובדים עם המשרד באופן ישיר או כקבלנים, ורואים את עבודתם כתמיכה במאמצי הלחימה של ארצות הברית.[39]

מודל אחר הוא אתר Forge.mil אשר הכניסה אליו מותנית באישור על פי מספר זהות וסיווג. אתר זה ייחודי שכן ניתן למצוא בו קוד צבאי על שרת אינטרנט רגיל. נוסף על כך, על מנת לחזק קהילה זו, יצר משרד ההגנה תמריצים עסקיים וקבע כי כל המעלה קוד ל- "Forge.mil" יכול להיכנס לצבא האמריקאי ללא הצורך לעבור את הליך הרכש הביורוקרטי והארוך, ולקבל הכרה כספק של משרד ההגנה.[40]

מבחינת סרגלי המדידה שלנו למידת אימוץ הקוד הפתוח במערכת הביטחונית האמריקאית ניתן, אם כן, לקבוע כי: מבחינת ציר השימוש, אפשר לראות כי נעשה שימוש רב בקוד פתוח במערכת הביטחונית האמריקאית. השימוש בקוד הפתוח מוסדר ופורמלי, והוא מתבצע הן באופן "בסיסי", ללא שינוי הקוד הקיים, והן באופן "מקצועי" כאשר מפתחים עורכים שינויים בקוד הפתוח ומתאימים אותו לצרכי הצבא השונים.

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

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

המערכת הביטחונית הישראלית וקוד פתוח

המערכת הביטחונית הישראלית, בהקשר של המחקר הנוכחי, מורכבת ממשרד הביטחון, צה"ל, התעשיות הביטחוניות (התעשייה האווירית, התעשייה הצבאית, אלביט ורפא"ל) ומפא"ת. בהתאם לכך, נבחן את המערכת הביטחונית על מרכיביה.

התעשיות הביטחוניות

התעשיות הביטחוניות בישראל מאמצות את הקוד הפתוח לפעולתן אך התהליך איטי ומורכב בשל התרבות הארגונית המאפיינת אותן. ראשית, מדובר בארגונים גדולים עם תהליכים ביורוקרטים רבים, ועל כן, כל שינוי באשר הוא, מהווה אתגר. שנית, בשל אופי פעולתן המסווג של התעשיות, מפתחי התוכנה בהן אינם נגישים לאינטרנט האזרחי בכל זמן, כפי שפורט בתחילה. בנוסף לכך, על מנת לשמר את אבטחת התוכנות מונעים או מעכבים לעיתים קציני הביטחון בתעשיות את אימוץ הקוד הפתוח. ניסיונם המקצועי של רבים מעובדי התעשיות הביטחוניות לא כולל את השימוש בקוד הפתוח, ועל כן הדבר מקשה במידה מסוימת על שינוי הרגלי העבודה ועל אימוצו בפועל של הקוד הפתוח. עם זאת, יש לציין כי קיימת ועדת היגוי לנושא הקוד הפתוח בתעשיות שבה חברות התעשייה האווירית (אלתא), אלביט, רפא"ל ומפא"ת. גופים אלו חולקים ביניהם מידע שאינו מסווג, על מנת ליהנות מיתרונות הגודל בבניית הליכי שימוש והטמעה של תוכנות קוד פתוח. הוועדה דנה, בין היתר, בכל הנוגע לסוגיות הרישוי, הקניין הרוחני, אבטחת המידע והתמיכה במוצרים.[41]

יתר על כן, יש ניסיון של התעשיות הביטחוניות לקיים שיתוף פעולה בכל הנוגע לאמנת וסנר (Wassenaar Arrangement). מטרת אמנה זו היא למנוע את השימוש הכפול בין תעשיה אזרחית לצבאית. המדינות הנוהגות על פי האמנה, מחויבות לדווח על מוצרים מסוימים, ביניהם תוכנה, את השימוש והמשתמש הסופי (end use and user). מטבע הדברים, חובת דיווח זו מהווה בעיה ולעיתים אף חסם בפני התעשיות הביטחוניות הישראליות אשר לעיתים מוצאות עצמן ללא יכולת לקנות תוכנות ולשדרגן. מכאן שהפנייה לשימוש בקוד הפתוח מהווה עבורן פתרון בתחום זה שהרי העקרונות הבסיסיים של הקוד הפתוח קוראים להפצה חופשית ללא כל התחייבות לדיווח.[42] בישראל, בדומה לארצות הברית, הוקמו פורומים ועמותות השואפים לקדם את נושא הקוד הפתוח. בהקשר הביטחוני ניתן למנות את פורום Mill-OSS.il. בפורומים אלו חברים נציגים מחילות צה"ל השונים, אנשי התעשייה הביטחונית ועוד. הפורום עורך כנסים מדי שנה לכלל המערכת הביטחונית הישראלית, על מנת לקדם את נושא הקוד הפתוח בקרבם.[43]

בתעשייה האווירית (אלתא) קיים שימוש רווח בתוכנות קוד פתוח כתחליף לקוד קנייני. כמו כן, כחלק מתהליכי ההצטיידות הנוגעים למחשוב, בוחנים בנוסף גם פתרונות קוד פתוח. כיום ניתן לראות את הקוד הפתוח בכל שלבי הפיתוח.[44]

גם ברפא"ל נעשה שימוש במערכות הפעלה ובסביבות פיתוח המבוססות קוד פתוח. מערכות ההפעלה עברו התאמות לצרכים השונים של הפרויקטים, והן נמצאות במספר מערכות. כמו כן, לטענת החברה היקף הידע בנושא גדל ועמו מתווספות לחברה יכולות חדשות.[45]

בדומה לחברות אחרות, גם באלביט נעשה שימוש מבוקר בתוכנות קוד פתוח. החברה אף פועלת לגיבוש מדיניות ברורה בנושא הקוד הפתוח, תוך מתן הדגש על נוהל עבודה סדור וקביעת מאפייני הרישוי, הפיקוח והבקרה. אלביט, בשיתוף גופים נוספים מהתעשייה הביטחונית, תומכת ב"עמותת המקור" המקדמת את נושא הקוד הפתוח בישראל. עמותה זו, עורכת כנסים שנתיים בנושא הקוד הפתוח בתעשיות הביטחוניות.[46]

צה"ל

בעוד שבתעשיות נעשו צעדים לאימוצו של הקוד הפתוח, החל צה"ל את דרכו לעולם זה באיחור יחסי.[47]

אימוץ הקוד הפתוח בצה"ל, כמו בממסד הביטחוני האמריקאי בתחילת הדרך, מתחיל מלמטה.[48] מפתחים צעירים המגיעים עם ידע וניסיון קודם בשימוש בקוד פתוח, הם הסיבה העיקרית לכניסתו למערכת הצבאית.

בשנת 2013, עם כניסתו של תא"ל דני ברן לתפקיד מפקד לוטם (היחידה הטכנולוגית לתקשוב מבצעי באגף התקשוב), החל מאמץ מכוון להנחיל באגף, ואחר כך ליתר צה"ל, את תרבות פיתוח התכונה בשיטת Agile, ש'קוד פתוח' הוא חלק ממנה. כמו במקרים אחרים, הדור הצעיר, דרגי הסרן ביחידה, היו הראשונים לדחוף לאימוץ שיטות 'קוד פתוח'. דווקא דרגי הביניים - דרגי הסא"ל - אופיינו באי-נכונות ובעיכוב תהליכי השינוי.[49] החסם של דרגי הביניים הביא את מפקד לוטם להקמתו הפורמאלית של פורום "טורקים צעירים" שהורכב ממתכנתים בדרגי הסרן ואשר הוביל את גיבוש התהליכים לפיתוח בפילוסופיית Agile.[50]

הרקע למהפך התפיסתי בלוטם היה הבנה מודעת וברורה באשר לחשיבות ההסתגלות לעולם התוכנה. בדברים שנשא תא"ל ברן במסגרת כנס התקשוב הבינלאומי השלישי של Israel Defense, הוא טען כי לא רק שצה"ל עומד כיום מול איומים רבים אלא שעיקר האתגר הוא בקצבם ובעוצמתם. בעבר, קצב השינויים היה איטי יותר, והתאים לתוכניות של חמש שנים שבהן ניתן היה לפתח מערכות. אך כיום, קצב השינויים דרמטי מאוד ואף מהיר יותר מהזמן שלצה"ל לוקח להשתנות אל מולם. פרק הזמן הנדרש כיום לפיתוח מערכת מהצגת הצורך ועד הטמעתה, הינו בין שנה וחצי לשנתיים. ברם, הטמעת מערכת אחרי שנתיים כבר איננה רלוונטית. לכן, לדידו, יש לבצע שינוי ולבחור באופן פעולה שיהיה יעיל, נכון ורלוונטי יותר. השינוי יכלול בין היתר אימוץ והכלה, שהינם עמוד תווך מרכזי המאפשר להביא רלוונטיות ויתרון תחרותי בעולם המסחרי. PFE (proudly found elsewhere) הוא ההופכי של NIH (not invented here), ולטענתו אם קיים פתרון על המדף, יש לאמצו אם הוא מתאים. הסיבה לכך היא כי צה"ל נמדד על קצב ורלוונטיות ולא רק על איכות הפיתוח.[51]

תא"ל ברן הוסיף ואמר כי המשאב היכול לאפשר את השינוי הזה, הוא המשאב האנושי אך יש לתת את הדעת על פער הדורות. האופן שבו המפקדים הבכירים חושבים שונה מהאופן שבו החיילים הצעירים חושבים. מחד, יש יתרון לניסיון, לבגרות ולבשלות של הדור הבוגר אך מאידך, קיימים יתרונות רבים להבנה הרשתית והטכנולוגית של הדור הצעיר.[52] בשיחה עמו הרחיב ואמר ברן כי הקושי המרכזי, כאמור, לפחות בתוך היחידה עליה פיקוד, היה נעוץ בדרגי הביניים.[53]

באופן ההולם את דבריו של תא"ל ברן, בוצעו באגף התקשוב מאמצים ניכרים ועבודת מטה שמטרתם היתה הכוונה פורמאלית, יצירת תקנים ועידוד מעבר להליכי 'קוד פתוח'.[54] יתר על-כן, נעשו מאמצים להקמתה של תשתית לקהילת קוד פתוח ברשת הצבאית הפנימית. למרות כל אלה נראה כי רוב המרואיינים למחקר זה לא הכירו את המאמצים הללו ולא היו שותפים לפיתוח קוד מקור ע"ג התשתית המשותפת הזו. גם בשיחה עם מפקד לוטם עצמו ציין ברן כי ברמה הבין-זרועית הכלל-צה"לית נראה כי צה"ל עדיין "מקבל ציון 6" למידת הטמעתו של עולם פיתוח התוכנה הפתוחה. יתכן כי קשיי ההטמעה קשורים לקשייו את אגף התקשוב להיות מכווין אפקטיבי של מדיניות, מצד אחד, ולהעדרה של סביבת רשת בין-זרועית משותפת, מצד שני.[55]


איור 2: מערכת "יוחנן" – אתר הקוד הפתוח ברשת הצה"לנט

לסיכום, צה"ל נמצא בדרכו לקראת הפנמה של עולם הפיתוח הפתוח. הכשרת תכניתנים ע"י אגף התקשוב מכניסה מעגלים הולכים וגדלים של בעלי תפקידים בצה"ל לתוך מעגל של קהילת קוד פתוח צה"לית פנימית.[56] קשיים פנים-צה"ליים בתחום קבלת מדיניות אגף התקשוב ע"י זרועות שונות ובתחום תשתית תקשוב משותפות עודם מהווים חסם משמעותי על התהליך.

מפא"ת

מפא"ת, המנהל למחקר, פיתוח אמצעי לחימה ותשתיות טכנולוגיות של משרד הביטחון, אחראית על הקשר בין צה"ל לבין תעשיות הביטחוניות.

מפא"ת, מבחינתה, מעודדת את אימוץ הקוד הפתוח במערכת הביטחונית. הוחלט כי יש לקדם תוכנות אשר באפשרותן לשמש מספר צרכנים, כאשר כל אחד מהם ישקיע בחלק הייחודי לו בלבד ולא בשכבות התשתית.[57] כמו כן, היא מאשרת בפועל תכניות רכש שבהן נעשה שימוש בקוד פתוח. עם זאת, בשונה מהנעשה במשרד ההגנה האמריקאי, מפא"ת פועלת בהתאם לנוהל 10/1 לרכישת אמל"ח (נוהל אג"ת), אשר אינו מתייחס כלל להיבטי תוכנה, קל וחומר לענייני קוד פתוח.[58] מכאן נובע כי מפא"ת אמנם תורמת לאימוץ הקוד הפתוח במערכת הביטחונית, אך נראה כי באופן פסיבי בלבד.[59]

בניסיון להתחקות אחר הסיבות לעיכוב במדיניות מפא"תית אקטיבית רשמית הועלו על ידי המרואיינים למחקר זה מספר השערות ופרשנויות. לפי אחת מהן, הסיבה שבגינה מפא"ת נמנעת מקידום נושא זה נעוצה בתרבות ארגונית ובבירוקרטיה. מבחינת התרבות הארגונית מפא"ת כנראה לא רואה את התוכנה כגורם מרכזי במדידת ההישגים של אנשיה.[60]

באשר לסיבה הביורוקרטית, הנכונה גם לכל המערכת הביטחונית, בטחון המידע הוא עדיין מעכב בירוקרטי מרכזי. חרף טענות המומחים הגורסים כי לא קיים קוד מסווג, כי קיימת הפרדה בין קוד למידע מסווג ותוך ההקבלה של הקוד לשולחן והמידע למחשב, עדיין נוטה ממסד בטחון המידע לראות ב"פתיחות" כאיום. ההדגש הרב שניתן לביטחון המידע משקף, לטענת חלק מהמרואיינים, תרבות של שנאת-סיכון הנמנעת מלשקלל את התרומה הצפויה של קוד פתוח ומגזימה בשקלול הסיכונים.[61] 

המחסור במדיניות רשמית ברורה התחדד על רקע פניות מצד גורמים בתעשיות הביטחוניות לקדם את תחום הקוד הפתוח, ולאור העיכוב המתמשך, כך על פי העדויות שעלו בדיון בעניין.[62]

המיקום הייחודי של מפא"ת כגורם מתווך בין העולם הצבאי לבין העולם התעשייתי-טכנולוגי מעצים את משמעויות העיכוב בגיבושה של מדיניות ברורה. אמנם לא נכון לפתור את הצבא מאחריותו על עצמו. יחד עם זאת, הצבא "מתקשר" עם העולם הטכנולוגי החיצוני לו בעיקר דרך מפא"ת. כלומר, זהו הגוף האמור לתווך את הבשורה הטכנולוגית העדכנית לתוך הצבא, ובהקשר זה הצבא תלוי בו במידה מסוימת. תלות זו מתחזקת נוכח העובדה כי הצבא מנותק ברובו מרשת האינטרנט האזרחית. אך בכל הנוגע לקוד פתוח, העדכון מהתעשיות הביטחוניות התאחר להופיע. הסיבה לכך נעוצה בעובדה שהתעשיות הביטחוניות הישראליות והחברות הגדולות, כדוגמת מייקרוסופט, היו אף הן בפער מהעולם לכן, לא היו להן כלל אינטרסים "לספר לצבא" על התופעה המתפתחת.[63] כאמור, נראה כי גם מפא"ת עצמה עדיין לא גיבשה לעצמה מדיניות ברורה ועקבית בנושא, ועל כן גם היא לא מתווכת את הפער שנוצר לצבא.

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

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

מבחינת ציר ההכוונה המוסדית, ניתן לראות הפנמה מוגבלת בלבד של סגולות הקוד הפתוח. ההתייחסות הרשמית הקיימת היא מוגבלת ומוכרת למעטים. בקרב שדרת הפיקוד הצה"לית יש בודדים המתייחסים בבירור לקוד הפתוח, כמו מפקד יחידת לוטם. בפרקטיקות המרכזיות הנוהגות בניהול פרויקטים בצה"ל ובמפא"ת, לא מצאנו ביטויים ברורים למדיניות בנושא.

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

סיכום

לא ניתן לעצור את הנחשול הטכנולוגי של המעבר לשימוש בקוד פתוח לאורך זמן. בהשוואה למגזר העסקי ניתן לומר כי חברות אשר יעמדו נגד הזרם תיפולנה. הצבא, בהיעדר מנגנון למידה עסקי, צריך לרכוש מודעות עצמית ביקורתית, להבין את המהפכה, ולהשתנות.[64] ואכן, כפי שמצאנו, אגף התקשוב זיהה את הצורך והחל בתהליך של הטמעה, עיקרו באמצעות מהפכה "מלמטה".

באשר למנעד האימוץ של הקוד הפתוח, ניתן לראות כעת כי המערכת הביטחונית הישראלית מאחרת, יחסית, בעוד הצבא האמריקאי, לפחות על פי פרסומיו הרשמיים, והמגזר העסקי עוקפים אותה באופן נחרץ.


איור 3: מבט השוואתי על המגזר העסקי, מערכת הביטחון האמריקאית ומערכת הביטחון הישראלית

מכאן עולה כי על המערכת הביטחונית, הכוללת את צה"ל, מפא"ת והתעשיות הביטחוניות, לבצע שינויים בכדי לשפר את מעמדה, לייעל את עבודתה ולמקסם את יכולותיה.

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

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

כאמור, השינויים שצוינו תלויים ומושפעים מציר ההכוונה המוסדית.

בעבור ציר ההכוונה המוסדית, נכון יהיה עבור צה"ל לאמץ את המדיניות שגובשה לאחרונה, להפיצה ולהטמיעה, ולוודא שהיא מגובה בתשתיות רשתיות מתאימות. מערכת הביטחון במובנה הרחב יותר – מפא"ת והתעשיות – צריכה לסייע לצה"ל לגבש את המדיניות הזו ולבצע את הטרנספורמציה הנדרשת.

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

בין השינויים הנדרשים ניתן למנות את המענה לחסמים שהוזכרו קודם. מבחינת הצורך בתמיכה, לדעת תא"ל ברן, זרוע אשר תפתח שירות ותשים אותו על הענן הצה"לי, תצטרך לתמוך גם במשתמשים מהזרועות האחרים, דבר המהווה שינוי פרדיגמטי בצה"ל. נוסף על כך, יש לשנות את התפיסה הישנה כי תוכנה מלווה באופן טבעי באחריות ותמיכה שהרי את הקוד הפתוח לרוב לא קונים, ולכן יש ליצור תמיכה פנים-ארגונית בקוד בכדי ליהנות מיתרונותיו. יתרה מזאת, ישנם מודלים של תשלום עבור הקוד, עבור התמיכה, עבור מוצרים משלימים ועוד. בהתאם לכך, יש לקדם את השימוש במערכות פתוחות בין הזרועות השונים בצבא. באשר לסוגיית אבטחת המידע, טוען תא"ל ברן כי הימנעות מיישום טכנולוגיה החיונית לפתרון בעיה מבצעית בשל החשש מהתמודדות עם בעיית הגנה - מובילה להפסד במערכה. וכן, כי החוכמה היא להביא את הטכנולוגיה המתקדמת ולייצר עבורה ארכיטקטורה של הגנה.[65] יחד עם זאת, יש להכיר בכך כי סוגיות בטחון המידע אכן דורשות התייחסות מוסדית ומקצועית מעמיקה, לרבות בהיבטים של ביטחון אישי בקרב המשרתים במערכת הביטחון.[66]

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

יש לאן לשאוף מבחינת האימוץ בדרגים הבכירים כלל המערכת הביטחונית וכן מבחינת הקהילה – הוצאת קוד החוצה, על מנת לשפרו. 

רשימת מקורות:

הערות שוליים:

[1] גב' כרמל אור היא עמיתת מחקר במרכז דדו.

המחקר מבוסס בחלקו על ראיונות עם ממלאי תפקידים בצה"ל ובמערכת הביטחון ששמם לא פורסם. המחקר נבדק על ידי ממלאי תפקידים רלבנטיים ונמצא על ידם כמבוסס.

[2] Linus's Law, by Eric S. Raymond מתוך אתר: MIL-OSS

[3] ראו הגדרה במבוא.

[4] ראו הסבר במבוא.

[5] גולדשמידט, 2014.

[6] שם.

[7] שם.

[8] Stallman,  2007

[9] Verts, 2008

[10] Murphy, 2010.

[11] Seltzer, 2004.

[12] Michelle Delio. "Linux: Fewer Bugs Than Rivals". Wired.com. Retrieved 2015-11-22.

[13] Raymond, 1999.

[14] Sharma; Vijayan; Balaji, 2002.

[15] Plotkin, 1998.

[16] Stamelos; Lefteris; Apostolos; Georgios, 2002.

[17] שם.

[18] חניה, 2015.

[19] גולדשמידט, 2014.

[20] שם.

[21] מקור מספר 1: שיחה עם גורם באמ"ן.

[22] שם.

[23] שם.

[24] מקור מספר 2: שיחה עם גורם במערכת הביטחון הישראלית.

[25] מקור מספר 1: שיחה עם גורם באמ"ן.

[26] שם.

[27] http://www.mil-oss.org נדלה ב-17.1.16.

[28] שם.

[29] שם.

[30] http://www.mil-oss.org נדלה ב-17.1.16.

[31] DOD, 2009.

[32] מקור מספר 2: שיחה עם גורם במערכת הביטחון הישראלית.

[33] מקור מספר 3: שיחה עם גורם במערכת הביטחון הישראלית.

[34] "White House to share Custom Code with Open Source Community"

בתוך:  Opensourceforu.efytimes.com נדלה ביום 16 במרץ 2016. 

[35] DOD, 2009. To ensure efficiency and reduce the potential for waste, the Federal Government has enacted legislation directing its agencies exercise a preference for commercial and non developmental items (NDI) "to the maximum extent practicable"

[36] Statement by Ms. Elizabeth A. McGrath Deputy Chief Management Officer before the House Armed Services Committee, 2010

[37] GitHub הוא שירות לאחסון קוד ברשת עבור פרויקטים של פיתוח תוכנה, הכוללים תוכנת Git לניהול גרסאות. בשנת 2011 הוא הוכר כשירות אחסון הקוד הנפוץ לקוד פתוח.

[38] מקור מספר 3: שיחה עם גורם במערכת הביטחון הישראלית.

[39] http://www.mil-oss.org נדלה ביום 17 בינואר 2016.

[40] מקור מספר 2: שיחה עם גורם במערכת הביטחון הישראלית.

[41] גולדשמידט, 2014.

[42] מקור מספר 2: שיחה עם גורם במערכת הביטחון הישראלית; ומקור מספר 3: שיחה עם גורם במערכת הביטחון הישראלית.

[43] מקור מספר 3: שיחה עם גורם במערכת הביטחון הישראלית.

[44] גולדשמידט, 2014.

[45] שם.

[46] שם.

[47] מקור מספר 3: שיחה עם גורם במערכת הביטחון הישראלית.

[48] מקור 8- שיחה עם תא"ל דני ברן, מפקד לוטם.

[49] שם.

[50] אגף התקשוב, היחידה הטכנולוגית לתקשוב מבצעי (לוטם), סיכום מ' לוטם להצגת תוצרי צוות "הטורקים הצעירים", 24/315, סעיפים ד' ו-ז'. סימוכין – 00010-11-872.

[51] ברן, 2015.

[52] שם.

[53] מקור 8 (שיחה עם דני ברן).

[54] לוט"ם, מדיניות אימוץ בקוד פתוח בצה"ל, טיוטה פנימית, 2016. וכן – ועדת התקינה הטכנולוגית הצה"לית מס' 22 – סיכום מ' לוטם, 8/7/14.

[55] שיחה עם מקור מספר 7: גורם באגף התקשוב

[56] ר' טבלת נתוני שימוש באתר "יוחנן" של חיל התקשוב, המצביעים על עלייה תלולה בהיקף המשתמשים ממאות בודדות ב-2013, לאלפים בודדים במרץ 2013.

[57] מקור מספר 3: שיחה עם גורם במערכת הביטחון הישראלית.

[58] נוהל 10/1 לרכישת אמל"ח בצה"ל.

[59] שם.

[60] מקור מספר 3: שיחה עם גורם במערכת הביטחון הישראלית.

[61] שם.

[62] שם.

[63] מקור מספר 4: שיחה עם גורם באמ"ן; מקור מספר 5: שיחה עם גורם באמ"ן.

[64] מקור מספר 2: שיחה עם גורם במערכת הביטחון הישראלית.

[65] ברן, 2015.

[66] שכן על מנת להיות שותף בקהילת פיתוח ברשת, יש להזדהות כמשתמש ולצבור מוניטין חיובי לאורך זמן (מקור 7).

לקריאת המאמר בפורמט PDF מונגש לחץ כאן