Making Embedded Systems: סקירה וביקורת ספר

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

הספר Making Embedded Systems
הספר Making Embedded Systems

קצת נתונים "מסביב": הספר יצא לאור בסוף 2011. המחברת היא אליסיה ווייט – מייסדת חברת Logical Elegance לייעוץ בתחום מערכות Embedded, ובעלת הפודקאסט המעניין-אבל-לא-תמיד-מפוקס embedded.fm. יש בספר 290 עמודים (לא כולל ההקדמות והאינדקס). הכריכה רכה, הנייר איכותי, והגופן אמנם לא גדול, אבל מצד שני לא כזה שמצריך זכוכית מגדלת.

למי הספר מיועד

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

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

תכנים

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

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

סגנון ורמה

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

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

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

כדאי או לא?

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

קישור לקניית הספר באתר bookdepository.com (משלוח חינם).

הבהרה: זו לא ביקורת בתשלום ולא מוזמנת, פשוט קניתי את הספר בעקבות המלצות ועכשיו גמרתי לקרוא אותו, אז אני משתף 🙂

להרשמה
הודע לי על
1 תגובה
מהכי חדשה
מהכי ישנה לפי הצבעות
Inline Feedbacks
הראה את כל התגובות

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