עברית Hebrew
From The Joel on Software Translation Project
הגעתם לתרגום העברי של JOEL ON SOFTWARE: יואל אודות תוכנה.
[edit] מאמרים שתורגמו לעברית
"זוכר את התרמית עליה דיברתי לפני חודש?" שאל אותי ג'ארד כשעבר על התיק שלי.
בחודש שעבר, הוא תיאר בפני תרמית מחוכמת הנפוצה בוול-סטריט המשמשת עבור המשקיעים באיגרות חוב. הוא הסביר לי אותה בפירוט והסיפור נשמע לי הגיוני.
אני זכרתי.
"ובכן, נפלת בה".
למרבה המזל, רוב הסטודנטים שחצנים מספיק כדי לעולם לא להיזקק לעצת המבוגרים, דבר נכון לעשותו בעולם מדעי המחשב, משום שבעולם הזה, המבוגרים נוטים לאמר דברים כמו "הדרישה למחשבים שפועלים עם כרטיסיות ניקוב תעלה על מאה מיליון עד שנת 2010" ו"מתכנתי LISP מבוקשים מאוד בימינו".
כאשר אתה קובע מחיר, אתה שולח איתות. אם המחיר של המתחרה שלך נע בין $100 לבערך $500, ואתה מחליט, מה יכול להיות, המוצר שלי הוא בערך באמצע הדרך, אז אני אמכור אותו ב- $300, אז, איזה מסר אתה חושב שאתה משדר ללקוחות? אתה אומר להם שאתה חושב שהתוכנה שלך היא "ככה." יש לי רעיון יותר טוב: קח $1350. עכשיו לקוחותיך יחשבו, "בוא-נה, הדבר הזה צריך להיות הדובדבן שבקצפת היות והם לוקחים פצצה של מחיר בעבורו!"
במחשבותי על עקרון המוצר המשלים במיקרו כלכלה, שמתי לב למשהו מענין לגבי תוכנות 'קוד פתוח': רוב החברות שמשקיעות הרבה כסף על פיתוח קוד פתוח עושות את זה כי זו אסטרטגיה עסקית טובה בשבילן, לא בגלל שהן פתאום הפסיקו להאמין בקפיטליזם והתאהבו בעקרונות החופש.
אתה מפתח תוכנה. גם אני. אבל ייתכן שאין לנו את אותם מטרות ודרישות. למעשה, יש מספר עולמות שונים של פיתוח תוכנה, וחוקים שונים חלים לעולמות שונים.
סיבה אחת שמפתה אנשים לכתוב את כל הקוד שלהם מחדש היא שבסיס הקוד המקורי לא תוכנן בשביל מה שהוא עושה עכשיו. הוא תוכנן כאב-טיפוס, כניסוי, כתרגיל למידה, כדרך להגיע מאפס להנפקה ראשונית של מניות בבורסה בתשעה חודשים, או כהדגמה חד-פעמית. ועכשיו הוא צמח לבלגן גדול ושביר וכזה שבלתי אפשרי להוסיף לו קוד; וכולם מתלוננים, והמתכנתים הישנים מתפטרים מתוך יאוש והחדשים שמביאים במקומם אינם יכולים להבין ממנו שום דבר, אז הם איכשהו משכנעים את ההנהלה לוותר ולהתחיל מחדש, בזמן שמיקרוסופט משתלטת על נתח השוק שלהם. היום תנו לי לספר לכם סיפור על מה שהם יכלו לעשות במקום זאת.
רבים מהימים שלי הולכים כך: (1) נכנס לעבודה (2) בודק דואר אלקטרוני, קורא באינטרנט וכו' (3) מחליט שאולי אלך לאכול צהריים לפני שאני מתחיל לעבוד (4) חוזר מארוחת צהריים (5) בודק דואר אלקטרוני, קורא באינטרנט וכו' (6) לבסוף מחליט שאני חייב להתחיל (7) בודק דואר אלקטרוני, קורא באינטרנט וכו' (8) מחליט שוב שאני באמת חייב להתחיל (9) מפעיל את העורך המקולל ו (10) כותב קוד ללא הפסק עד שאני מגלה שכבר 7:30 בערב. איפשהו בין שלב 8 שלב 9 נראה שיש איזשהו באג, מפני שאני לא תמיד מצליח לחצות את התהום הזאת.
כשמשתמשים מתחילים לעבוד עם תוכנה חדשה, הם לא מגיעים עם דף ריק. יש להם ציפיות לגבי האופן שבו התוכנה תעבוד. אם הם כבר עבדו עם תוכנה דומה בעבר, הם יצפים שהתוכנה תפעל על פי כללים בסיסיים מסויימים, והם ינחשו איך אמור לעבוד ממשק המשתמש.
מבחן יואל: 12 צעדים לקוד טוב יותר
האם שמעתם על SEMA? זו מערכת אזוטרית למדי למדידת האיכות של קבוצות תוכנה. יקח לכם בערך שש שנים להבין אותו. לכן המצאתי מבחן משלי, מאוד לא אחראי, דווקא רשלני במיוחד, במטרה למדוד את האיכות של קבוצות תוכנה. החלק הכי טוב בו הוא שהוא לוקח בערך שלוש דקות. בזמן שתחסכו, תוכלו ללמוד רפואה.
יש סיבה מוסתרת שמתכנתים תמיד רוצים לזרוק את הקוד ולהתחיל מחדש. הסיבה היא שם חושבים שהקוד הישן הוא זבל. והנה השקפה מעניינת: הם קרוב לוודאי טועים.
במיקרוסופט, אם אתה מנהל התוכנית שעובד על אסטרטגית מאקרו של אקסל, ואפילו אם אתה בחברה בקושי ששה חודשים, זה לא משנה – אתה האלהים של אסטרטגית מאקרו של אקסל, ואין אף אחד, אפילו לא עובד מספר 6, שיכול להפריע לך. נקודה.
קיבלתם פעם מייל מהחברים שלכם בבולגריה, עם כותרת בסגנון "????? ??????? ??? ????"?
במאמר הזה אשלים לך את הידע שכל מתכנת פעיל צריך. כל הקטע הזה של "טקסט פשוט = ASCII = כל תו הוא 8 סיביות", לא רק שהוא שגוי, הוא חסר תקנה, ואם אתה עדיין מתכנת ככה, אתה לא הרבה יותר טוב מרופא שלא מאמין בחיידקים. אנא, אל תכתוב שורת קוד נוספת לפני שתגמור לקרוא את המאמר.
אם אתה רוצה להנהיג צוות, חברה, צבא או מדינה, הבעיה המרכזית שלפניך היא לגרום לכל האנשים לזוז באותו כיוון, שזו צורה מנומסת להגיד "לגרום לאנשים לעשות מה שאתה רוצה" ...
הנה שלוש גישות שאתה יכול לנקוט בהן :
העסקת האנשים הנכונים היא נושא מאוד מכריע לחברה שלי. ... החוכמה היא לזהות את ההבדל בין ה"כוכבים" ובין ה"אולי-ים", כי אנחנו רוצים רק את הטובים ביותר. הנה מספר שיטות לעשות זאת.
