Actions

Blog/November 2012/Nov 23rd

From RonWareWiki

< Blog‎ | November 2012
Nov 23rd (See this week's devar torah) Comments or questions? Click here!


Hi, again!

Thunder and lightning, mortars and missiles; this week had everything. By now you're aware, I'm sure, of the cease-fire which has taken effect here. So for now, the mortars and missiles have stopped. More on that in a bit. Right now, as I write this, we are being treated to a wonderful thunderstorm, bringing us much needed rain along with a nice light-show. According to the forecast we were supposed to only have "occasional showers". Not sure what the occasion is, but the rain is welcome!

After the traditional eight days of gift-giving, the celebrations were called-off and a cease-fire went into effect. In case you were counting, they gave us 1,500 missiles of various kinds (mortars, Qassams, Grads and Fajrs) and we gave them 1,500 aerial sorties. Proportional, if you think along those lines. Personally, I think we should give far more lavishly, to the point where they can't accept any more. If you get my drift.

Esther has been cheerfully unemployed, enjoying her first week of no-work. She's entirely too cheerful, I think. Maybe I should assign her tasks? I'm sure I could find all sorts of things for her to do! Or maybe I should just shut-up and enjoy the fact that my wife is happy. Yeah, on second thought, that's probably the best course to take.

Daniela and Jeremy are enjoying a long Thanksgiving weekend in Baltimore. It seems that the situation on the ground in NY/NJ has mostly cleared up after the series of serious weather events they've had, so they're both back to work.

Sarah's got a lot of homework to deal with now. They apparently expect the students in that film-school to, you know, make films! So she's having to learn how to actually stitch together snippets and sound tracks and make a film. Her first effort was pretty cool, even if I say so myself!

I know it's probably hard for you in the Exile to understand, but the majority of Israelis were very deeply disappointed by our government's decision to cease-fire. You probably think, "isn't it better to have quiet, even for a short while, than to continue having missile fire?". That sounds nice, but the fact is that Hamas (and Fatah for that matter) don't consider a "cease-fire" as anything but an opportunity to regroup and rearm. By not exterminating the terrorists and making it impossible for them to rearm, we are guaranteeing a resumption of hostilities in the not so distant future, with a probability of higher loss of life on our part. This is unacceptable to the majority here.

As a result, a recent poll (just this week after the cease-fire) gave the leading Likud/Israel Beitenu ten fewer seats in the Knesset. There are only 120 seats, so ten fewer is a huge loss. The winners? The opposition Labor gained, and the two right-wing parties gained a lot. The losers? Well, Kadima (the party of Olmert, Livni, Mofaz et. al., with no actual stance on anything) will apparently have no seats. Nor will Ehud Barak's "Independence" party. Well, there are two months until the elections. In case you want to know, I'm voting עוצמה לישראל, the only party as far as I'm concerned which represents my views in general. It promises to be an "interesting" election season.

I know most of you are not computer programmers, which is why I don't give details about my work. But this week I spent a lot of time working on interesting bugs, and thought I would share a little (in layman's terms). We use a programming language called C++, which has been around a long time. We are specifically taking over some code somebody wrote for us, and adapting it for our own use. This is normal practice in the industry.

One of the problems I had to figure out this week had to do with a C++ feature called "inheritance". Basically, what that means is that you have a hierarchy of "classes" (think of it as "generic kinds of things"), which "inherit" from each other. So for example, you might have a class called "quadrupeds", and another class "dogs" which inherits from "quadrupeds". The reason this is a good idea (sometimes) is that all dogs are quadrupeds -- so you can put whatever features are common to all four-legged animals in the quadruped class, and any class you derive from it (e.g. which inherits from it) automatically gets all the features of a quadruped. This means that you don't have to specifically say that dogs have four legs, since a dog "is a" quadruped, which by definition has four legs. With me so far? Great!

The problem in this case was that the person who wrote the classes in question does not seem to understand the point of inheritance. So instead of just inheriting the behavior of the ancestor class, he reimplemented the behavior in each inheriting class. That is fine if the derived behavior changes -- for example in our case above if you want to say there are "split hoofed" quadrupeds vs. "solid hoofed". But in the case at work, he simply duplicated the ancestral behavior.

Why is this a Bad Thing? Well, for one, it needlessly duplicates code and makes the application bigger and possibly slower. But in our case, the actual problem was that we changed the behavior of the ancestral class, and expected the descendants to behave the same way. When they didn't, we had a fun time tracking down just why our change wasn't taking effect in some cases. See what fun programmers can have?

This shabbat we're having some of our friends over for dinner. Sorry, Sarah, but I don't think it will be a "politics free" shabbat! Dans le menu: barley soup, salatim, sticky chicken-wings, baked chicken, roasted vegetables, leek pashtida, meatball cholent, and pumpkin pie.

Until next week,
shabbat shalom!



Top: Blog Prev: Nov 16th Next: Nov 30th