הבלוג של ארתיום
בלוג על לינוקס, תוכנה חופשית, מוזיקה, סלסה, ומה לא!
אם אי פעם תרצו להעסיק Sysadmin...
תשאלו אותה על איזה מערכת הוא עובד בבית ולמה היא משמשת אותו. הרבה אירגונים מפעילים לינוקס במערכות המחשוב שלהם, שרתי אינטרנט, תחנות עבודה ומעסיקות עובדים שתמחזקים את המערכות. יש חברות גדולות שמפתחות מוצרים ייעודיים שרצים על לינוקס. יש חברות רבות שמספקות תכנה קניינית שרצה על לינוקס אבל... יש להם מחנה משותף גדול, הם לא מבינים איך לינוקס בנוי ובכלל איך עובדים איתו.
לצורך הבהרה, אני אתייחסס למאמר של שושנה פורבס, "חמש שגיאות נפוצות של משתמשי לינוקס חדשים" שבו מוצגים הדברים הבסיסיים ביותר שמשתמש לינוקס צריך להכיר, למי שלא יודע. אלה דברים בסיסיים, כמו שמשתמש "חלונות" צריך להכיר - מה זה אנטיוירוס ומדוע לא לפתוח קבצי exe שנשלחים במייל ממקורות לא מוכרים.
הורדה והתקנה תכנה שלא דרך מנהל החבילות:
בחברה "מזרח" (שם בדוי) שמספקת פתרונות בתחום שרתי תקשורת, יש מחשבי פיתוח ש-RHEL 3 רצה עליהם. כל אחד מהמפתחים בא ומתקין שם מה שבא לו (מקוד מקור). ברוב המקרים הם לא יודעים כיצד להשתמש ב-rpm, כי הם מסתבכים עם תלויות, up2date, מנהל חבילות של RHEL, לא מוגדר כראוי ולא עובד. כשמפתחים מנסים לפנות לתמיכה טכנית, הם פשוט לא מקבלים פתרונות, כי גם בתמיכה טכנית לא יודעים כיצד לתחזק את המערכות האלו.
בחברה "מערב" (גם שם בדוי), עזרתי למנהל מערכות UNIX שלנו, להתקין phpBB2 על אחד משרתי RHEL, תוך כדי שיחה איתו הסתבר, שהוא ממש שמח ש-LAMP כבר היה מותקן מראש, כי אחרת הוא היה צריך ללכת להוריד rpm-ים באופן ידני ולבדוק את התלויות בעצמו. (רגע - איפה מנהל חבילות?).
עבודה תור root:
בחברה "מזרח" המפתחים נוהגים לעבוד על מערכות פיתוח שלהם בתור root כי זה מקל על העבודה שלהם. כי כשהם עובדים עם משתמשים שלהם, יש בעיות של הרשאות, ותיקיות ה-home שלהם איטיות יותר. במילים אחרות, כל הפיתוח נעשה בהרשאות של root.
בחברה "מערב", מנהל מערכות UNIX נכנס למערכת גרפית מלאה בתור root ועבד בסביבה הזו (כולל הפעלה של כלים שונים, דפדפן) לצורך ביצוע כמה פעולות אדמיניסטרטיביות - כמו הגדרת בסיס נתונים MySQL. כששאלתי אותו: "למה אתה נכנס בתור root?" הוא שאל: "כיצד לעשות זאת אחרת? הרי אני צריך לנהל את המערכת"
אי הגדרת locale שהוא UTF-8.
למען האמת, עוד לא יצא לי להתקל במערכת Linux שבה ברירת המחדל של locale הייתה UTF-8 (וכן, אלה היו מערכות שעבדו איתן גם בעברית, כולל בארגונים גדולים).
פיתוח תכנה עבור לינוקס:
כאן יש רשימה מופלאה של בעיות שונות ומשונות שנובעיות מהעובדה שהמפתחים לא מבינים כיצד המערכת עובדת.
- Skype - באה (בעבר) כברירת מחדל עם תמיכה ב-OSS בלבד, מערכת קול מיושנת שנתמכת רק לתאימות לאחור.
- משחק Targetware - מקומפל מול ספריות כל כך מיושנות שזה כמעט ובלתי אפשרי להתקין אותו על הפצת לינוקס מודרנית כלשהי.
- Teamspeak - תכנה שמיועדת למשחקים ומתממשקת למערכת קול OSS שתוספת אותה באופן בלעדי (כיצד משחק ישמיע קול?)
- מנהלי התקנה של תכנות רבות - מישהו שמע על deb או rpm?
- Flash של Adobe - מניחים שפתרון כמו nsplugingwrapper לשימוש ב-Flash ב-64 ביט הוא קביל (מתי הם בדקו בפעם אחרונה את היציבות שלו)?
כמובן, ניתן להמשיך את הרשימה עוד ועוד - הכל בגלל אי הבנה של דברים בסיסיים.
המלצה:
אם אתם רוצים להעסיק מישהו שיתחזק את מערכות הלינוקס בחברה שלכם או יפתח מוצרים שירוצו בלינוקס, תשאלו אותו קודם כל - איזו הפצת לינוקס הוא מריץ בבית וכמה זמן, ומה שעוד יותר חשוב, האם היא משמשת כמערכת ראשית.
אם תקבלו תשובות שליליות, אתם יכולים לעצור את הראיון מיד. לפי דעתי, יותר משתלם להעסיק מישהו שחיי את המערכת וללמד אותו פרטים חשובים על תחזוקה שלה בארגונים גדולים, מאשר לקחת מישהו שאולי יודע להגדיר רשתות מורכבות אבל עושה שגיאות בסיסיות, שכל משתמש שעובד יותר מחצי שנה עם לינוקס בבית לא יעשה אותן.
תגובות
כל כך מסכים אתך מה שעוד יותר קשה לאנשים להבין ממעבר לחלונות הוא שאין דבר כזה להוריד תוכנות. כמה קשה להסביר את זה לאנשים.
"אם אתם רוצים להעסיק מישהו שיתחזק את מערכות הלינוקס בחברה שלכם או יפתח מוצרים שירוצו בלינוקס, תשאלו אותו קודם כל - איזו הפצת לינוקס הוא מריץ בבית וכמה זמן, ומה שעוד יותר חשוב, האם היא משמשת כמערכת ראשית.
אם תקבלו תשובות שליליות, אתם יכולים לעצור את הראיון מיד. "
לא עדיף פשוט לעשות מבחן עם השאלות האלה במקום להסיק מסקנות חפוזות שייתכן שלא נכונות.
לדוגמא אדם שיש לו משפחה ממוצעת ולא מסתדרת עם לינוקס בגלל תאימות של אתרים ומסמכים, ובנוסף גם לא קצת נמאס מיזה.
או בכלל שהוא משתמש בלינוקס רק בעבודה.
זה שהוא משתמש בלינוקס רק בעבודה מחייב שהוא לא יודע מה זה מנהל חבילות ולא יודע איך לינוקס בנוי?
נדב, מה שאמרתי, אמרתי בצורה מגמתית ברורה, אבל...
אם אדם לא מכיר לינוקס מקרוב, מעבודה יומיומית הוא לא יבין מה צריך לעשות על מנת לקבל מערכת טובה/לפתח מוצר טוב.
אם אתה עובד בלינוקס בעבודה, זה בהחלט לא מספיק! כי אז הוא עובד עם כמות מאוד מצומצמת של יישומים ולא מכיר את הבעיות של משתמש פשוט.
אני הבאתי כמה דוגמאות, אבל יש אינספור כאלה, שטויות שמפתחים/מנהלים עושים כי הם פשוט לא מבינים כיצד הדברים עובדים. נופלים על שגיאות בסיסיות.
לא לאבד את הסמנטיקה- על עיבוד תמלילים מול הדפסה...
ארתיום שלח לי לא מזמן את השאלה הבאה: רציתי לשאול את דעתך על סביבות הכנת מסמכים שהם לא WYSIWYG - כמו LaTeX. נכון שחבילות משרדיות טובות לעריכת מסמכים...
מסכים איתך בכל מילה!
לגבי התקנת תוכנות - אני לא אוהב להשתמש ב"מנהלי חבילות" למיניהם. המצאות של תוכנה בהן תלויה בכך שמישהו בנה RPM להפצה שלך, וזה לא תמיד נכון. אפשר למצוא שם בד"כ את רק אותם דברים שגם ככה באים עם ההפצה, ועדכונים שלהם. לעומת זאת, אם תחפש source tarball תוכל למצוא הכל.
בנוסף, אפשר לשאול האם הוא משתמש בGUI או בטרמינל. אם התשובה היא הראשונה, תוריד אותו לrunlevel 0.
אני רוצה לראות אותך מתקין מערכות מסובכות כמו LAMP או סביבות עבודה גדולות דרך קוד מקור.
מנהלי חבילות נועדו לפתור את הבעיות התלויות ולספק מערכת שלמה ועובדת ולא שבורה שחצי מהתכנות לא עובדות בה
[...] הסמכה וניסיון מקצועי עלולים להסתיר מועמדים טובים. התרשמות אישית היא מהותית, ולא חסר אלמנט של הימור. נושאים: מערכות [...]
הוסף תגובה:
חובה לאפשר JavaScript כדי להגיב.