אני בעד UI!

ברצוני להעלות נושא שכאוב כמעט כמו שאלת הצורך של האישה לצאת מהמטבח. שהוא "טרמינל vs תצוגה גרפית" (בשמה הלועזי GUI)

אתמול הצטרפתי למפגש שיתוף ידע במטהקפה. הוזמנתי ע"י זוהר, עיניין אותי כרגע יותר GIT ופחות כלי ה-Deployment שעלו לדיון אח"כ. הגעתי עם המקבוק, הזדהיתי בתור תכניתנית ולא חשפנית. הבחורה היחידה בחבר'ה. טוב, לזה אני רגילה בערך מכיתה ט'.
ההסבר של רוני היה מעולה, במקביל אליו הורדתי GIT. לא ידעתי להתמודד איתו on the fly, החבר'ה הראו פקודות טרמינל והסבירו על branching. חיפשתי קליינט ויזואלי, מצאתי והתקנתי את GitX. פה חשוב לציין שיש לי Mac חצי שנה ורק אתמול בלילה מצאתי איך להכנס לטרמינל ואיפה יושב ה-hosts אצלו. אחרי שבערך התאפסתי על צורת העבודה של GitX, שאלתי את השאלה המתבקשת – איך אני מתחברת בתוך GitX למישהו מרוחק שעובד איתי על אותו החומר?
נראה לי אם היו לאנשים בחדר עגבניות – הן כולן היו עפות לתוך הראש שלי באותו רגע! קיבלתי בו זמנית הרצאה על כך, ששימוש בכלי ויזואלי זה לא לתכניתן אמיתי שמבין מה הוא עושה, ש-GUI זה רע ושאני לא אפחד להשתמש בטרמינל כי ממש מהר מתרגלים ואף אוהבים את זה ממש.
אני אמנם עדיין קצת פוחדת מאנשי לינוקס, אבל התעקשתי על שלי והצלחתי לסחוט הודעה שזה לא שGUI רע כקונספט, אלא ל-GIT אין GUI חזק מספיק.

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

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

תגים: , , , ,

9 תגובות לפוסט "אני בעד UI!"

  1. מאת xxxaxa:

    מה קשור אופן סורס ושורת קוד?

    • מאת KP:

      חשבתי שהקשר הוצג בבירור בפוסט, היתכן שטעיתי
      GIT הוא כלי אופן סורס אשר הגישה אליו מתבצעת דרך הטרמינל
      GITX הוא כלי אופן סורס המספק GUI ל-GIT
      GITX, מסתבר, לא מספיק חכם כדי להשתמש בו בלבד ועדיין יהיה צורך להשתמש בטרמינל
      שאלה: למה אין מי שיכתוב GUI שכן יהיה חכם מספיק?
      שאלת בונוס: למה בדרך כלל הGUI של מוצרי אופן סורס איננו מספיק ו/או עקום להחריד?

  2. מאת xxxaxa:

    ולמה את בסטייה של שעה? עכשיו זה 16:02 ולא 15:02

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

  3. מאת xxxaxa:

    זה כיף להגיב אצלך!

  4. מאת xxxaxa:

    можно и по-русски писать?

    ——-
    שלחת יותר מדי תגובות בבת אחת. לאט לך.
    ——-

    זהו, לא כיף לי יותר :(

  5. מאת xxxaxa:

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

  6. מאת רוני:

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

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

    1. לא ניתן לבצע דרך ה-GUI
    2. ניתן לבצע יותר בקלות דרך הממשק הטקסטואלי/מקורי/בסיסי
    3. ניתן לבצע יותר בקלות דרך ה-GUI

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

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

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

    לגבי השאלות שהעלית בסוף הכתוב, יש לי את הדברים הבאים לומר:

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

    לגבי קוד פתוח ותואר במדעי המחשב…

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

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

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

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

  7. מאת KP:

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

כתיבת תגובה