Category Archives: software development

קוד בירושה (לגאסי)

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

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

Continue reading קוד בירושה (לגאסי)
Pin It

speeding up python on the raspberry pi

As a young engineer I was writing image processing real-time embedded software for a living. we used the DSP chips for all they could offer, and used to rewrote parts of the algorithms in assembly so we can shave off a few cycles per pixel and squese out a bit more of proccessor power.

recently i’ve been writeing a piece of software for my High Altitude Balloon. the original code was written in C and bash, but was hard to manage. so for this release I used python as the programming language. for most used this is a great choise. it’s robust, easy to write and debug, and a pleassure to use it’s flexible data stractures.

while python it not concidered a “fast” language due to the use of an interpreter, it was quite all right for most of my not-so-ergent needs.

but then I got a piece of code that converts a data stream to audio file that is transmitted back to ground. when I needed to send a large image file, this modem took several minutes to do the jobs. this was not ok. so I started to dig into the code to see what’s going on.

Continue reading speeding up python on the raspberry pi
Pin It

SSDV over APRS

one of the good things that worked during my last balloon launch was the transmission of images from the balloon using SSTV.

Due to the geography of my country, it’s very difficult to catch the balloon after it lands. so up until now I wasn’t able to recover the memory stick from the camera. so, it was great fun to finally see some pictures from up there.

it was especially important as the GPS broke down 5 minutes into the flight. but I was able to identify some landscape features and draw a rough map of its heading.

but the technology did start to show it age.

Continue reading SSDV over APRS
Pin It

מודול מונדאל ל MagicMirror

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

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

את הנתונים אני לוקח מאתר כאן 11

המעוניינים יכולים להוריד ולנסות MMM-Mondeal

Pin It

why i decided to write yet another ham radio logbook software

TL;DR It’s all about the User eXperience, design and making software fit you, and not the other way around.

I’m an amateur radio operator. as all hams, we are required to save a log of our contacts with other people. besides the legalities, it’s nice to have a record of places & people I’ve talked with. when I’ve started my hobby, some 30 years back, I received a paper logbook which I’ve been using untill recently, and I’ve been very happy with it.

I’ve been thinking of using a computerized logbook software, but to be honest, I really had no incentive. pen and paper were good enough for me. plus, the ones I’ve tried to use (out of the thousands out there) left me with a horrible experience. i consider my self as a savvy computer user, but most of the programs I’ve tried had a “designed by an engineer” look and feel, which in this day and age is simply a crime.

Continue reading why i decided to write yet another ham radio logbook software

Pin It

ריבוי משימות בארדואינו

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

גם מיקום הקריאה, וגם המינוח yield (״תן זכות קדימה״ בתרגום חופשי) עוררו בי את החשד שמדובר בתשתית למתזמן (scheduler) עבור מערכת הפעלה. חיפוש קצר באינטרנט אישר את החשד. מדובר בספרית ריבוי משימות, אך כרגע רק לארכיטקטורות 32 ביט של ATMEL ולכן מוגבל בלוחות שנתמכים.

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

Pin It

a few home made, MagicMirror² Modules

I’ve been playing around with MagicMirror², and ended up jotting down a few modules of my own.

first was MMM-DailyWeather – which is the missing link between the default CurrentWeather and WeatherForecast. it shows the upcoming weather for the next 24 hour in 6 hour intervals and helps the fashion aware people in the house better prepare their look to the temperature outside.

Continue reading a few home made, MagicMirror² Modules

Pin It

שיחותי עם אלכסה

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

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

Continue reading שיחותי עם אלכסה

Pin It

lean software development (english version)

It was a sleepless night, when I first learned of the lean manufacturing idea. just arriving back from the US, I was fighting the jet lag by watching random programs on the history channel. then came a program about the car production lines, which overall is a fascinating subject (and if you think otherwise, then there is something is terribly wrong with you)

what caught my attention was the problems that Mr. Toyota encountered when studying Henry Ford’s production plant. while Mr. Ford could sell cars “painted any color he wants as long as it’s black”, then Mr. Toyota had to make small quantities of various types and models. My production manager used to frequently complain: “every day you ask me to make a product with different color pom-poms”. manufacturing people naturally like to create production line a-la Henry Ford (who actually took many of his ideas from Eli Whitney) Continue reading lean software development (english version)

Pin It

lean software development

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

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

Continue reading lean software development

Pin It