English
תנועה
נגישותפרטיות
סיפור הפרויקט11 / 15סוף 2024 – מאי 2026

שעון דוברים

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

תפקיד
מפתח ראשי של המוצר
ארגון
תקשוב אכ״א – ענף התקשוב והדיגיטל של אגף כוח האדם (אכ״א), צה״ל
תקופה
סוף 2024 – מאי 2026
הקשר
פרויקט בין-יחידתי עם אכ״א, בזמן עבודתי בתע״ץ
צוות וקרדיטים
  • עידן אחרק — פיתח אותו מחדש למוצר: מודל נתונים, לוגיקת זמנים, ניהול, תצוגה, תיעוד והפצה
  • נועם שדמי — בנה את הגרסה המוקדמת ועזר לגבש את הרעיון, עד לפני גרסת המוצר הראשונה

01 / האתגר

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

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

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

02 / מה בניתי

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

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

איך זה נבנה

  1. סוף 2024הגרסה הראשונהנועם שדמי בנה את הגרסה המוקדמת ועזר לגבש את הרעיון, ועבד עליה עד לפני גרסת המוצר המלאה הראשונה.
  2. אוגוסט 2025לקחתי את הפרויקט ופיתחתי מחדשבניתי מחדש את הליבה עם Gemini ו-ChatGPT: הרצאות, הפסקות וכרטיסי כותרת בציר זמן אחד, עם שעות מחושבות ושמירה בדפדפן.
  3. 2025-2026מסך שקוראים במבטפס התקדמות חלק בתוך הכרטיס של כל דובר, מסך חי יותר עם אנימציות, ובקרת גודל תצוגה שמתאימה לכל מסך באולם.
  4. 2025-2026מעבר ברור בין דיוניםהפסקה שלפני דיון חדש הופכת למסך "הדיון הבא" ולא נספרת כחלק מהדיון שלפניה.
  5. מאי 2026גרסה 4.0.1יצאה עם מדריך מפעיל ורשימת בדיקות לפני אירוע, תיעוד ארכיטקטורה, פריסה ותחזוקה, ובנייה אוטומטית.

03 / דגשים

01

תכנון כל היום מראש

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

02

ספירה לאחור ברורה

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

03

עדכון בלחיצה אחת

במצב ידני, "+1 דקה" או "הבא (והתאם זמן)" מזיזים את כל המשבצות הבאות.

04

כמה דיונים ביום

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

05

סמלים ורקעים

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

06

נפתח בכל דפדפן

בלי התקנה ובלי מסד נתונים: הלו"ז והתבניות נשמרים בדפדפן.

04 / מסכים

13 מסכים · נתוני דמה

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

המסך באולם באמצע הרצאה: כרטיס הדובר עם פס התקדמות חי, כל לו"ז היום בצד והתקדמות היום בתחתית (לו"ז הדגמה).
01 המסך באולם באמצע הרצאה: כרטיס הדובר עם פס התקדמות חי, כל לו"ז היום בצד והתקדמות היום בתחתית (לו"ז הדגמה).
שתי הדקות האחרונות של הרצאה, באדום
02 אותו מסך בשתי הדקות האחרונות של הדובר: הפס, ההילה של הכרטיס והספירה הופכים לאדומים, והספירה עוברת לדקות ושניות ("נותרו 01:19").
הרצאה שחרגה מהזמן, עם הכפתורים הידניים של המפעיל
03 מצב ידני, עם הרצאה שחרגה מהזמן שלה: פס אדום מלא והכיתוב "הזמן אזל". כפתורי המפעיל בשורה התחתונה: "+1 דקה", "הקודם", "הבא" ו"הבא (והתאם זמן)".
פאנל הניהול עם עורך ציר הזמן ותצוגה מקדימה חיה
04 פאנל הניהול: שם הלו"ז ובוחר התבניות למעלה; עורך ציר הזמן עם כרטיס הכותרת, הדוברים והפסקת קפה, כל אחד עם שעת ההתחלה המחושבת שלו; תצוגה מקדימה מוקטנת וחיה של המסך הגדול; וההגדרות הכלליות (תאריך ושעת התחלה, מצב ידני או אוטומטי, ושניות ההתראה לפני סוף).
מסך הפסקת הקפה
05 מסך ההפסקה: "הפסקת קפה / נחזור בקרוב / נותרו 14 דקות".
מסך המעבר לפני דיון חדש
06 הפסקה לפני דיון חדש הופכת למסך מעבר: "הדיון הסתיים / הדיון הבא: פאנל: עתיד השירות / יתחיל בעוד 19 דקות".
לפני תחילת היום
07 לפני תחילת היום: בכרטיס של הדובר הראשון כתוב בצהוב "מתחיל בעוד 13 דקות".
הדיון השני על רקע המעגלים האלקטרוניים
08 הדיון השני, תחת כרטיס הכותרת "פאנל: עתיד השירות", על רקע המעגלים האלקטרוניים המובנה. הרשימה בצד מציגה רק את "הבאים בתור", והשורה התחתונה סופרת את הזמן שנשאר לדיון הזה במקום לכל היום.
מסך סוף היום
09 סוף היום: "היום הסתיים / תודה לכל המשתתפים!".
עריכת דובר, עם בוחר הסמלים פתוח
10 עריכת דובר במקום: שם, נושא, בוחר הסמלים (החיפוש "אגף" מצמצם את המאגר לאגפים), משך בדקות, ו"שמור" או "ביטול". עמודת ההגדרות נמצאת לצידו.
כל עמוד הניהול עם היום המלא
11 עמוד הניהול המלא (1920×1740): שני דיונים, הפסקות וכל שעות ההתחלה המחושבות. בשורת הקרדיט למטה כתוב "עוצב ופותח על ידי נועם שדמי ועידן אחרק", לצד v4.0.1.
תבניות הלו"ז השמורות
12 התבניות השמורות: "יום עיון אכ"א", "כנס מפקדים שנתי", "טקס סיום קורס" ו"יום טכנולוגיה – תקשוב", ליד כפתורי תבנית חדשה, שמירה ומחיקה (חיתוך מצילום בהגדלה כפולה, 2268×1276).
מסך ההמתנה לפני האירוע
13 מסך ההמתנה שמוצג במסך מלא לפני האירוע: סמל אכ"א על רקע שמיים (פריים מתוך סרטון הלולאה של האפליקציה עצמה, חתוך לרצועה האנכית שלו, 1204×2160).

05 / השפעה

מעל 25אירועים
מאותהרצאות תוזמנו
יותר מ-4,000אנשים בקהל
1לחיצה לעדכון המשך היום

השעון שימש ביותר מ-25 אירועים ותזמן מאות הרצאות, מול יותר מ-4,000 איש בסך הכול; בקהל הגדול ביותר לבדו ישבו מעל 500 איש. לפחות 7 מפעילים ניהלו איתו אירועים, עבור למעלה מ-10 יחידות ואגפים.

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

06 / התפקיד והטכנולוגיה

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

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

טכנולוגיות

  • React 18
  • TypeScript
  • Vite
  • Tailwind CSS
  • Zustand
  • Immer
  • React Router
  • dnd-kit
  • pnpm
  • GitHub Actions
  • Gemini
  • ChatGPT
  • ESLint

איך זה בנוי

אפליקציית עמוד יחיד ב-React וב-TypeScript, שנבנית ב-Vite ומעוצבת ב-Tailwind CSS. אין קוד צד-שרת ואין מסד נתונים: כל היום הוא ציר זמן אחד במאגר מצב קטן של Zustand שנשמר בדפדפן, ולכן כל שרת ווב יכול להגיש אותה כקבצים רגילים. תהליך GitHub Actions בונה כל דחיפת קוד, ופיתחתי אותה עם Gemini ו-ChatGPT, לפי תדריכים כתובים, ובדקתי בעצמי כל תוצאה.

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

פרקים