נובמבר 28th, 2009אקדמיה וקוד פתוח
האקדמיה במצבה הנוכחית עובדת במתכונת לא הכי יעילה. הסטודנטים לומדים במשך כמה שנים חומר קיים במסגרת תואר ראשון, ומעטים מהם ממשיכים להמשך.
במקום זאת ניתן ללמד את אותם תכנים בצורה פרודוקטיבית יותר שתתרום קצת יותר לחברה. אני אציג מגמות שקורות היום, הרעיון שלי ואיך הוא יכול לעזור רבות לקוד הפתוח ולתרבות החופשית.
מגמות כיום
- שימור עבודות – כאלו שייעלמו אחרי שסטודנט קיבל עליהם ציון. ליאור קפלן שהיה באקדמיית ויקיפדיה ישראל 2009, כתב בין היתר על כתיבה לויקיפדיה בתור מטלה אקדמאית שהוצג בהרצאה של עופר איתן.
- עבודה שיתופית – אפשרות של סטודנטים לעבוד על פרויקטים משלהם ולערוך את של אחרים (כמו ויקי)
- wikiversity – פרויקט של ארגון ויקימדיה שמוקדש למשאבי למידה, פרויקטים לימודיים ומחקר לכל הרמות מגן עד חוקרים מקצועיים באקדמיה על בסיס ויקי כמובן שכל אחד יוכל להצטרף.
- במספר אוניברסיטאות נעשה שימוש בויקי ללמידה שיתופית לדוגמה באוניברסיטת חיפה
- פרויקטים תוכנה פתוחה באקדמיה – לא מעט אוניברסיטאות יוצרות, מתחזקות ונעזרות למחקריהם בפרויקטי תוכנה פתוחה שהציבור יכול להשתתף בהם, לדוגמה התוכנה Sphinx לזיהוי דיבור
אז איך אפשר לשפר את ה"בזבוז" באקדמיה?
במקום שיעורים פורמליים של חומר קבוע, הם יעבדו על פרויקטים ומחקרים כאשר המרצה דואג שהמטלות שקשורות לחומר של התואר וכך בסופו של דבר הסטודנטים ידעו את החומר שהיה מועבר בצורה פורמלית. הסטודנטים עקב כך יעבדו על מחקרים אמיתיים ואולי אף יגלו דברים חדשים, ופרויקטים על דברים קיימים.
למרצה יש רשימת תכנים שהוא צריך להעביר והוא צריך לשלב בצורה עקיפה בעבודתם. הציונים על סמך איכות עבודתם, הגשת מטלות וכו'.
ברוב האוניברסיטאות יש כמות רבה של סטודנטים לכל מרצה, אז אפשר לפתור את הבעיה שכולם יעבדו על משהו דומה, זה אומנם בזבוז מקומי, אבל עדין עדיף ברמה כללית. לחלופין, המתרגלים יעבדו ישירות עם קבוצת סטודנטים שהמרצה רק ינחה וידריך את המתרגלים וכו'
גם במחקרים הכי חדשים נדרש ידע "ישן" שנלמד כיום בתואר ראשון, ו"שחיה" באותו מחקר ניתן לשלב לימוד זה. המטרה כאן היא לא בהכרח שקבוצת סטודנטים לתואר ראשון יגיעו לתוצאות מחקר מדעי מתקדם וחדשני ואף הם לא חייבים להגיע לתוצאות שמישות בכלל, אולם עדיין יש להם פוטנציאל להגיע לכך ואף לעזור במעט
דוגמאות:
פרויקטי תוכנה וכך תרומה לקוד פתוח
כמו בכל התעשייה, גם בקוד פתוח יש תמיד עבודה על אותם דברים, אם זה מימוש בסביבות אחרות וכו', לכן ניתן ליישם את כל מדעי המחשב בעבודה על פרויקטי תוכנה, אם זה ניתוח ולמידת האלגוריתמים שם, מימוש חלקים בתוכנות אחרות שנדרשת חשיבה אלגוריתמית לממש אותם והרשימה ממשיכה.
כמו כן, אין כאן הגבלה למדעי המחשב, גם שאר חוגי המדעים יכולים להיכנס בקטגוריה זו, אפילו אם הם לא נדרשים ליכולות תכנות, למשל תיעוד צמחים ורשימת תנאים למצבים מסוימים שקשורים לצמח בתוכנה יעודית לכך וכו'…
ואם זה יהפוך לנפוץ באוניברסיטאות, אז בהחלט יהיה קידום משמעותי לאיכות והיקף השימוש בקוד הפתוח.
מקצועות דורשי מעבדות כמו מדעי החיים, כימיה וכו'
נעשה רדוקציה למדעי המחשב, במקום עבודה על פרויקטי מחשב, יהיו מעבדות, ולימוד שלא דורש מעבדה יוכל להתבצע בדומה למדעי הרוח והחברה דרך מחקרי משותפים של ויקי וכו'
אם כבר משתמשים בויקי לצורכי לימוד לקורסים הומנים, למה לו לעשות משהו דומה למדעים?
מחקרים פתוחים בדומה לקוד פתוח
המחקר יתועד באינטרנט, כלל הציבור שחושב שהוא יכול לתרום משהו, יכול לשלוח פאטץ. אם פרויקטי תוכנה גדולים יכולים להתמודד עם אפשרות של הצפה של פאטצים לא טובים מציבור לא מיומן, גם מחקרים פתוחים יכולים. זה יכול להועיל גם למחקרי פיזיקה לדוגמה שדורשים מתקנים מיוחדים שמספרם ספור בעולם ע"י כך שאנשים יכולים לעקוב על הממצאים, להציע ניסוים, לעבד את התוצאות וכו'
אם מישהו יודע על קיומם של מחקרים מדעיים מסוג זה, מוזמן לציין בתגובות (יכולת החיפוש שלי בגוגל לא עזרה כאן, וייתכן שיש בויקברסיטי, רק אני צריך לחפור יותר לעומק…)
נובמבר 28th, 2009 בשעה 10:07
לאוניבריסטאות, אין אינטרס לעשות את זה.
היוקרה של האוניבריסטאות נובעת מהעובדה שמחקרים חייבים לרשום את שמה של האוניברסיטה על שער העבודה, וככה ליצבוק יוקרה.
אתה חייב לעשות את זה, כיוון שבתקנון כתוב שזכויות היוצרים שייכות לאוניברסיטה ולא לך, לכן, אפילו עם עשית עבודה, אתה לא יכול לשחרר אותה בצורה חופשית – כי לא אתה בעל הזכויות עליה, אלא רק בהחלתה מערכתית של האוניברסיטה של לשחרר הכל באופן חופשי.
אגב, כסטודנט, לרוב אני מעדיף מבחן מעבודה…
אסף.
נובמבר 28th, 2009 בשעה 12:41
אתה מבלבל כאן בין כמה דברים שונים:
1. שימור עבודות: רוב מוחלט של התרגילים שמוגשים במסגרת אקדמית לא ראויים להשמר. עבודות יותר מורכבות, כגון עבודות סיום, או עבודות שמוגשות כחלק מסמינרים, נשמרות במקרים רבים. צריך גם לזכור שעבודות של תואר ראשון אינן חדשניות במיוחד לרוב.
2. עבודה שיתופית: יש צורת לימוד שבה שבמקום ללמוד חומר פורמלי לומדים בכל שיעור לפי הרצאה של סטוטנט אחד או שניים. היא נקראת "סמינר". את הרוב המוחלט של מקצועות הלימוד אתה לא יכול ללמוד כך.
צריך לא מעט ידע בסיסי כדי שלמחקר שלך תהיה משמעות ולכן אין טעם לגשת לזה לפני שאתה עמוק בתוך התואר הראשון. צורת לימוד נפוצה אחרת היא "מעבדה" שבה לומדים איך לחקור מחקר אמפירי. אולם לפחות בשלבים הבסיסיים מעבדות מפגישות את התלמיד עם ידע בסיסי.
נקודה אחרת היא חומר הלימוד. אפשר לטעון שחומר הלימוד צריך להיות חופשי. אבל איפה זה יעזור עם ה"בזבוז"? MIT שחררה את כל חומר הלימוד שלה ברשת. האם זה עזר לה לכתוב חומר לימוד יותר ביעילות? יש כאן שיקולים נכבדים של זכויות יוצרים. זה נושא מעניין כשלעצמו, אבל הטענה שלך שצריך פשוט לזרוק את כל הלימודים ולהחליפם בסמינרים מרדדת אותו.
3. פרוייקטי תוכנה: רוב ה"פרוייקטים" שכותבים במהלך התואר בקורסים השונים לא ממש מעניינים את העולם. פרוייקטי הסיום לקראת סוף התואר הראשון כבר מתחילים להיות מעניינים. כמוכן צריך לזכור שלמדעי המחשב המחשב יש חפיפה חלקית למדי עם תכנות. אתה רוצה שבקורס בחישוביות יגישו פרוייקט בתכנות מכונת טיורינג?
4. "מחקר בקוד פתוח" – מה הטעם "לשלוח פאטצ'" למחקר אם אין לי את היכולת לשחזר אותו אצלי? את התיקונים שאני שולח אני בד"כ בודק אצלי. נראה לי שהצלחת להתעלם ממשהו שנקרא "דיון אקדמי" – יש דיונים בתוצאות של מחקרים. כך היה מאז ומעולם.
נראה לי שאתה לוקה בחוסר הבנה בסיסי של עבודת המערכת. כדי לבקר משהו צריך קודם כל להבין אותו. יש לך כאן גם כמה הצעות מוצלחות, אבל הרוב פשוט לא מועיל. נסה לשבת לשיחה ידידותית עם אחד המרצים על הנושא.
נובמבר 28th, 2009 בשעה 14:08
"לאוניבריסטאות, אין אינטרס לעשות את זה.
היוקרה של האוניבריסטאות נובעת מהעובדה שמחקרים חייבים לרשום את שמה של האוניברסיטה על שער העבודה, וככה לצבור יוקרה."
אין כאן בעיית יוקרה, ברוב עם לא כל הרישיונות החופשים נדרש לציין את יוצרי העבודה/מחזיקי הזכויות וכו', אתה לא יכול לטעון שעבודה היא שלך אם עשית שינוי של אחוז, מצד שני אם אתה משתמש בעשרה אחוז מהעבודה, תוכל לצטט במסגרת שימוש הוגן ועדיין לטעון שהעבודה שלך.
"נראה לי שאתה לוקה בחוסר הבנה בסיסי של עבודת המערכת. כדי לבקר משהו צריך קודם כל להבין אותו. יש לך כאן גם כמה הצעות מוצלחות, אבל הרוב פשוט לא מועיל. נסה לשבת לשיחה ידידותית עם אחד המרצים על הנושא."
כן אני בהחלט לוקה, ויש לי עוד לחקור בעניין, וזה בטח עדיף על הפוסט הקודם… אני בהחלט אחפש עוד מחקרים בענין ועוד, עקב היות האתר בלוג, עדיף לדעתי לפרסם התקדמות בחלקים מאשר לחקות עד שאגיע לרמה כלשהיא של ביצוע מחקר מספיק מקיף ואגעה לרמת כתיבה אקדמית סבירה.
כמו הצגה של הרעיונות שלי כאן אפילו עוד יותר לוקה בחסר ותורחב בהמשך שנותנת פתרון לרוב טענותיך ובשלב מסוים אציג אותם טוב יותר…
4. אתה יכול לטעון באופן דומה מה הטעם לשלוח פאטצ' לפרויקטי תוכנה שדורשים מערך מחשוב מיוחד, עדיין הם יכולים לקבל פאצים גם מכאלה שאין, כאלה שמראים שהאלגוריתם עובד ולכן זה אמור לעבוד בסביבה המיוחדת וכו'. אין לך אולי אפשרות לערוך ניסויים במעבדה מיוחדת שנמצאת במקום ספציפי בחו"ל, אבל באופן דומה, תוכל לעלות טענה.דרך מוכחת תאורתי שכדאי להם לנסות וכו', הרי אף אחד לא מתחיל ניסוי בלי מטרה או סיבה כלשהיא…
3. לא אמרתי שצריך לעשות פרויקטי תוכנה, אבל בהחלט יש כאן מקום וגם קיימים מחקרים תאורטיים וחישובים וכו', באותה מידה שכרגע תלמידים פותרים מטלות תאורטיות על דף ניר
2. האם רק בוגרי תואר ראשון מורשים לשלוח פאטצים של שינויי אלגוריתמים לפרוייקטי תוכנה מתקדמים כדוגמת זיהוי הדיבור? סביר להניח שמי ששלוח פאטצים מסוג זה יש ידע אקדמי מתאים, אומנם זה לא דרישה, אבל גם אם מישהו למד רק קורס אלגוריתמים אבל חובב של התחום ועוקב אחריו, עדיין יכול לעזור. דוגמה יותר טובה היא בתחום התלת מימד שיש יותר חובבים כאלה, שלא בהכרח יש להם תואר, אבל עקב התעניינותם הם מקרים את שפת המונחים שם ואת האלגוריתמים ובאותה מידה יכולים לתרום משהו.
אפשר נגיד בקורס אלגוריתמים (הדוגמה נלקחת כי זה מה שאני לומד כרגע) לתת לקבוצות להכיר תוכנה לבחון אלגוריתמים בשימוש בה, ולנסות לעשות רדוקציות למקרים אחרים, וכך להרחיב את השימוש שלה, או ליעל אותה…
נובמבר 28th, 2009 בשעה 15:57
דרישה מוקדמת ליכולת לשנות היא הכרה סבירה של התחום. בד"כ נושאים שנמצאים בחזית המחקר דורשים לימוד שהוא מעבר לתואר ראשון כדי להבין מספיק טוב מה קורה שם. אתה צריך להבין את החישובים (לדוגמה) כדי לדעת איך לשנות אותם או איך לבצע אותם יותר ביעילות.
לגבי הקורס באלגוריתמים: העולם יוכל לשרוד בלי עוד מימוש של סריקת BFS או של חיפוש מסלול קצר ביותר. בקורסים של אלגוריתמים ושל מבני נתונים לומדים כלים חשובים בתכנות. מתנסים בד"כ גם במימוש של חלקם. אבל הרעיון הוא להתמודד בעצמך עם הבעיה ולא לקבל את התשובה מן המוכן.
בקורסים יותר מתקדמים בוחנים לעומק בעיות סיבוכיות, מנתחים סיבוכיות בצורה מעשית ומעניינת יותר ועוד. אבל לזה מגיעים מאוחר יותר, כשיש כבר רקע בסיסי וכשחומר הבסיס של אלגוריתמים ומבני נתונים יכול לשמש כמסד לקורסים אחרים (לדוגמה: מערכות קבצים).
שוב: סמינר זו דרך לימוד נחמדה לקבוצות קטנות. היא דורשת הרבה יותר השקעה מצד כולם. בד"כ התוצאה היא שכל אחד לומד רק את החומר שהוא העביר ולא משכיל מספיק מההרצאות של האחרים (לא נבחנים על זה). אתה לא יכול לארגן סמינרים לקורסי מבוא המוניים של מעל לחמישים סטודנטים.
נסה כתרגיל פשוט לקחת את חומר הקורס (לפי הסילבוס) ולראות איך מעבירים אותו שלא בדרך המקובלת של הרצאות ותרגולים.
נובמבר 28th, 2009 בשעה 18:17
האם שמעתה על פרויקט BioBricks של קבוצה מ-MIT?
http://bbf.openwetware.org
לאומרות שזה לא התחום שלי, יצא לי לקרוא עליהם בספר "The Public Domain: Enclosing the Commons of the Mind"
זמין כאן: http://www.thepublicdomain.org ברישיון CC-BY-NC-SA
ספר די ערוך אך מרתק (לאומרות שאני גם לא סטודנט משפטים) שעוסק בעניין קניין רוחני ובכלל זה ביצירה ותוכנה חופשית.
כתוב בצורה שניתנת להבנה גם ע"י בני אדם רגילים (לא עו"ד).
החוקרים שהתחילו את BioBricks חששו שהתחום החדש יחסית והמבטיח של ביוטכנולוגיה ינעל ויחסם ע"י גורמים שונים דרך פטנטים על דברים בסיסיים ביותר בתחום (למשל פטנטים על גנים אנושיים) וכך יגרום להאטת הפיתוח וימנע מאנשים שרוצים לעסוק בתחום את הכניסה עליו.
לכן הם רצו ליצור מאגר של חומרי גלם ויחידות בסיס ביולוגיות שהרישיון שלו יאפשר לכל אחד בין אם הוא חברה מסחרית או אדם פרטי שחוקר דברים במוסך שלו בסוף שבוע להשתמש בהם ללא מגבלות ובעיות רישוי.
לאחר התייעצות עם כמה פרופסורים למשפטים הם הגיעו למסקנה שהדרך הכי טובה היא לשחרר את החומר לרשות הציבור (Public Domain) כדי להימנע מבעיות Copyright ופטנטים.
הם גם עורכים תחרויות לסטודנטים ומדענים צעירים לפיתוח דברים שונים בהתבסס על היחידות המסופקות וכמובן שגם המחקרים האלה פתוחים.
בקיצור צעד קטן (ואולי גדול) בכיוון של מדע פתוח.