יום שני, 7 בספטמבר 2009

אנחנו מתכנתים אחרת

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

אותו הירוק

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

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

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

הכל עניין של הסתכלות

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

דוגמה יפה לבעיה שכזאת היא תרגיל בו נתון לנו מערך דו מימדי, כלומר מערך בתוך מערך, כאשר בכל אחד מהם 2n איברים, וכאשר נבחר בערך מסוים בתוך המערך הדו מימדי נקבל מספר, שמציין את מיקומו של האיבר.
לדוגמה:
array[0][0]; // 1
array[0][1]; //2
array[0][2n-1]; //2n
array[2n-1][2n-1]; //4n^2
כעת משימתנו היא בעזרת קבלת מספר, למצוא את המפתחות של האיברים המתאימים ב-2 המערכים.
הפתרון הפשוט למשימה זאת הוא כמובן שימוש בלולאה לצורך זה:
for ( int i = 0; i < array.length; i++ )
for ( int n = 0; n < array[i].length; n++ )
if ( array[i][n] == myNumber )
return Array (i,n);
הפתרון דרש מאיתנו במקרה הקיצוני לעבור על כל אותם 4n^2 נתונים.

מקומות שהטבלה יפה להם

הפתרון של הלולאות הוא אפשרי, אבל לא יעיל במקרה הזה, ואם נקדיש טיפה מחשבה נוכל למצוא פתרון יעיל יותר.
כעת נחשוב על הנתונים בצורת טבלה:
  • המערך החיצוני מציין את השורות, כל איבר במערך זה הוא שורה בפני עצמה.
  • המערכים הפנימיים מציינים את התאים, כל איבר במערכים אלו מציין תא בתוך אותה שורה.
כעת נוכל לחשוב על פתרון יעיל הרבה יותר, כאשר נתייחס אל כל שורה כ-y, ואל כל תא בשורה כ-x, נוכל ליצור משוואות שיזהו את המקום ע"פ המספר אותו נקבל על פי העיקרון הבא:
  • מציאת X - מקומו של האיבר הפנימי הוא שארית של החילוק ב-2n (כמותה איברים בכל שורה), כלומר אנו נאתר את כמות האיברים שנותרים לנו אחרי פעולת החילוק, נשים לב כי המפתח הראשון הינו 0 ולכן נפחית את המספר שקיבלנו ב-1.
  • מציאת Y - לאחר שמצאנו את X נוכל לחסר אותו מהמספר שאת מיקומו אנחנו בודקים, דבר שייתן לנו מספר המתחלק ב-2n ללא שארית ומציין את המפתח של השורה בה אנו נמצאים, כאשר שוב נזכור כי המפתחות מתחילים מ-0, ולכן נצטרך להוסיף בתחילה ל-X את מה שהורדנו בשלב הקודם.
כעת נכתוב זאת בצורת משוואות:
// array[y][x] = myNumber;
int x = ( myNumber - 1 ) % 2n; // פעולת שארית
int y = ( myNumber - ( x + 1 ) ) / 2n;
כמה שהנכם רואים, הפתרון יעיל יותר, ואינו כולל כלל שימוש בלולאות.

בלי פאניקה

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

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

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

משדרגים את עצמינו

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

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

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

הקופסה של ההחלטות החשובות

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

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

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

סודות של תכנות

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

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

תכנות נעים.
נכתב על ידי איתי אלון

יום שישי, 21 באוגוסט 2009

המתכנת שבחיינו

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

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

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

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

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

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

בדומה לפוסט שהצגתי לפניכם, אני גם מוצא לנכון לקשר לקומיקס שעוסק באיך פרויקט באמת עובד:
http://www.projectcartoon.com/cartoon/2

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

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

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

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

שלכם,
איתי.
נכתב על ידי איתי אלון

יום ראשון, 7 ביוני 2009

הדרך ל-Windows 7

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

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

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

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

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

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

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

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

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

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

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

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

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

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

המשך גלישה מהנה.
נכתב על ידי איתי אלון