נכון לעכשיו החומר מכיל 3 רכיבים:
- החומר העיקרי: קבצי PPTX להצגה בזמן ההרצאה (עבור המרצה)
- דוגמאות קוד מורחבות בקבצי HTML ו-JS
- קבצי פתרון לדוגמא עבור התרגילים
כל קובץ PPTX מכיל שקף התחלה, ושלשה שקפי סיום: "זמן שאלות", "בדיקת רמת ידע", ו-"סוף".
עיקר החומר מחולק למקטעים, אשר כל מקטע יש לו:
- שקף הקדמה
- אחד או יותר שקפי תוכן - רשימת נקודות
- אפס או יותר שקפי תרגילים
הכנת החומר במצגות:
- גל/יהונתן מכינים מצגת
- גל מעלה ל-tools-plan
יהונתן מעתיק צילומי מסך לקובץ PPTXזאב כותב הגהות בתוך קובץ ה-PPTX בהערות- זאב כותב הערות בקובץ נפרד על סמך המצגת ב-tools-plan
- יהונתן עובר על ההערות, מוריד/מוסיף הערות נוספות
- יהונתן וגל נפגשים כדי לשלב את הכל לקובץ הסופי
- גל מעדכן את הקובץ ומעלה שוב ל-tools-plan
יהונתן וזאב סיכמו שמכיוון שגל מעדכן את ה-tools-plan מדי פעם ואין ליהונתן דיווח מתי זה קורה, זאב יכתוב הערות בקובץ נפרד, במקום להסתמך על קובץ PPTX שיכין יהונתן.
הכנת קוד ופתרונות לדוגמא:
- גל/יונתן מכינים קוד ופתרונות לדוגמא
- זאב מגיה את החומר. את הגירסא הישנה מעביר לתיקיה X ומעלה גירסה חדשה.
- ההתייחסות לשיקופית/שורה טעונת תיקון ב-PPTX מורכבת: יש לציין את מס' השיקופית + כותרת וכן את מס' השורה אליה מתייחסים. במידה ונדרש תיקון ניסוח יש לציין גם את הטקסט המקורי וגם את הטקסט החדש.
- מחזיקים 2 תהליכי ניהול גרסאות התלויים בהרבה פעולות ידניות. למשל, תיקון שגיאה בפתרונות לדוגמא דורש לזכור קודם כל להעביר את הגרסא הקודמת לתיקיה X.
- שגיאות בקוד המוטמע בשקופיות דורש תיקון פעמיים: גם בשקף עצמו, וגם בקבצים הנלווים. מיותר ועלול לגרום לאי תאימויות.
- כל דרישה לפעולה ידנית שחוזרת על עצמה שוב ושוב, מגדילה את הסיכון שהיא תשכח. למשל, חלק מהשקפים חסר להם תמונת רקע, וחלק מהמקטעים אין להם שקף הקדמה.
- מערכת אחת לניהול גרסאות של כל הקבצים
- שימוש במערכת ייעודית לניהול גרסאות, כדי לנהל גרסאות גם של קבצי החומר וגם של הקבצים הנלווים (ולא מערכת עיצוב קבצים אשר ניהול גרסות הוברגה עליה כלאחר יד).
- קבצי החומר כולו יהיו קבצי טקסט. מהם ייבנו אוטומטית קבצי הסוף, ה-PPTX.
- קוד לדוגמא יישאב מקבצי מקור בזמן בניית קבצי הסוף.
החומר והקבצים הנלווים יישמרו כקבצי טקסט (עם תוספת תמונות כפי הצורך) ב-GitHub. רק לגל תהיה אפשרות לבצע commit על ה-branch הראשי.
- גל/יהונתן יכתבו חומר, ויעלו למאגר ב-branch נפרד (ע"פ הנחיות Git Flow)
- זאב ויהונתן יגישו PR
- גל עובר על ה-PR ומגיש ביקורת (חוזר חלילה ל-2 אם יש צורך)
- פגישה אם יש צורך
- גל ממזג את ה-PR לתוך ה-branch הראשי
- מתבצעת יצירה אוטומטית של ה-PPTX (ובהמשך אולי גם העלאה ל- tools-plan)
כלי | תאור ותכונות | אתר |
---|---|---|
git | מערכת ניהול גרסאות | |
GitHub | מאפשר עבודת צוות משותפת עם כלים חזקים נוספים: נושאים (Issues) שכל משתמש רשום ב-GitHub יכול לפתוח בקשה למשיכת קוד לתוך ההמאגר/הענף המרכזי (Pull Request) כלי ניהול פרוייקט ומשימות פעולות אוטונטיות לאחר commit או אירוע אחר (Actions) |
|
Markdown | שפת markup קריאה גם לאנשים | |
markdown-it | ספריית JS לפירוק ופיענוח Markdown | https://markdown-it.github.io/ |
remark | ספריית JS לפירוק ופיענוח Markdown | https://remark.js.org |
remarkable | ספריית JS לפירוק ופיענוח Markdown | https://github.com/jonschlinkert/remarkable |
marked | ספריית JS לפירוק ופיענוח Markdown | https://marked.js.org |
PptxGenJS | ספרית JS ליצירת PPTX | https://gitbrent.github.io/PptxGenJS/ |
תאור |
---|
קוד המשתמש באחת הספריות הנ"ל לפירוק Markdown ומייצר PPTX בהתאם |
קריאה ליצירת PPTX כנ"ל מתוך Github Actions |
מערכת בדיקות, לדוגמא שכל קישור לקוד מוטמע מוביל לאנשהו |
- תחביר קוד מוטמע
- בחירת ספריה לפירוק Markdown
- תמיכה ב-RTL
- תמיכה ב-RTL בעורך Markdown
- אבטחת מידע של החומר
ה-repository מכיל קוד שממיר קבצי Markdown ל-PPTX. יש להריץ את index.ts, ויווצר קובץ PPTX בתיקיית dist.
המאגר מכיל גם קובץ לדוגמא output.pptx בתיקיית השורש.