Shooting Your Foot through the Windows

When I was studying programming, some million years ago, I encountered a nice explanation about the difference between programming languages. It used a simply uniform “challenge” for each language: “How would you shoot yourself in the foot?” The different implementations were used to explain the special characteristics of each shooting your leglanguage. It stated with “C” where you simply point your gun at your foot and shoot (and nobody will understand what you did). In some more structured languages you will need to construct much more complicated structures to accomplish (or fail to accomplish) the same daily programming task… for good or bad.

Writing software (SW) is sometimes a boring routine work, but new bugs come in all shapes and colors and they always succeed to thrill and astonish me. And the real joy is when you find at last that it was not your bug after all. So here is a nice story from my work.

I had to analyze data from some experiments. To save the results in an orderly way, my SW builds a special directory for each experiment, using the experiment’s ID as part of the directory’s name.

When I first came to install the SW on a customer’s computer, it looked as if everything was running just fine. But when we tried to look at the results there were not one but two directories with the same name and both seemed to be empty. We tried to delete the directories. One was easily deleted but Windows Explorer failed to delete the other. Now I tried to look at the contents of the undeletable directory, but couldn’t view its content (even though initially it seemed to be empty).

I wanted to repeat the experiment, so I tried to rename the undeleted directory and failed. I tried to rename its father directory and Window Explorer refused to do this either. Finally I succeeded to rename the grandfather directory. I repeated the experiment and had another pair of same-name apparently empty directories, one deletable and one stubbornly persistent.

I went back to my development station to scratch my head. I googled “two directories with the same name in Windows”. There were more dummies like me asking “how come I have two directories with the same name” and the only answer I’ve seen there was “no, you don’t”.

I investigated it farther, adding prints at my directory-creating function, and found the answer. The experiment’s data contained the ID string with a blank as the last character. Somehow my SW created two directories, one with the blank on the end of the name and one without it. My customer and I, looking at the two directories’ names, were right to judge that we see exactly the same name.

But apparently it was Windows Explorer that was shooting itself (and me) in the foot most effectively. The data was actually (and correctly) saved in the directory with the blank in its name, but when I selected this directory for display in the Explorer it showed the content of the other empty directory. When the empty directory was removed the blanky directory refused to show its contents, or to be deleted or renamed.

To be fair and technically helpful, it was an old Windows Vista operation system on the customer’s computer. If you succeed to repeat such a bug on any other system please let me know.

* * *

Feedback about UNIX

I have a good friend from the UNIX world. He would regularly reproach me for sticking with MS Windows…

But when he called today he said the problem of file names that end with blanks is well known in UNIX. It is common practice to create files by scripts, so there are more opportunities to add blanks to names by mistake. And, there also, common graphical file-handling tools fail to handle these files. He even mentioned that intentionally creating such files is a known “practical joke” in the community.

Advertisements

It is so wired… wrongly wired

Only in Israel: Personally Delivered SMS – straight from the Shabak

At first glance it looked like a foolish error – or the now so common tech firms’ scam.

Iris received a short SMS from Bezeq, informing that her time of reduced pay for fast internet connection will soon be over, and that, starting October 13, she will pay 120.97 shekel monthly.

sms from bezek - renewal

Misdirected SMS

The first question that came to her mind was, of course, for how long she was already paying for Bezeq “services” without her knowledge, as she never even requested their service to connect to the net? So she immediately called Bezeq and they checked her id number, and checked her telephone number, and checked my id number and my telephone number, and promised that they don’t hold these numbers in their databases and never charged us anything.

Somewhat relieved, Iris reread the short note carefully and noticed that the telephone number of the client that was mentioned there was not her number… But that number seemed familiar; it was the number of a comrade from Tel Aviv.

Iris called the comrade and it came out that she was connected through Bezeq, and that her special agreement was really due to expire sometime soon. She thanked Iris for informing her that she should take care before her monthly pay will be automatically hiked.

Scrolling up in the same SMS application, Iris found that she also received a message from Bezeq in March, concerning the expected visit of a technician. The comrade from Tel Aviv recalled that she really applied for the technician to come and was disappointed with Bezeq that promised to send her a message but their message never arrived…

Simple explanation

Well, you might think that the numbers are somewhat similar and it could be a simple typo, but they are not similar in any way. They differ by almost all digits… And Iris’s number was never registered in Bezeq’s database anyway, so there is no way that Bezeq could have made this mistake.

But Bezeq is only the first station on the SMS’s Via Dolorosa. Before it could land in the comrade’s phone it had to pass by the Shabak’s office and have a short chat with a Tonton Macoute wearing black glasses. After it explains itself and proves its innocence and good intentions, the SMS is kicked out and rolls all the way down to its original destination… or to another comrade, as there are so few Jewish leftists and they all look the same.

Retrospective view

This wired experience reminded us of the eighties and nineties of the previous century…

It was not rare up then to have your phone ringing, or raise the phone’s receiver to make a call, and hear a conversation by some comrades in other towns around the country, who thought they were speaking just between themselves. We would then curse the Shabak for using such old leaky wires in their wiretapping centers.

On a second thought, the new SMS misdirection errors may be just the teething problems of a new Artificial Intelligence start-up that was hired to catch the data balls in the air and throw them on in almost real-time. We really shouldn’t be angry with the novice techies for not yet recognizing all the old comrades by their names and phone numbers.

Message from the Shabak Caricature

Dareen Tatour’s Trial: Step by Step

As I tried to make some order in the new “Free Dareen Tatour” site – I found it might be helpful to have all the hearings of the trial described in chronological order – with links to detailed reports for each hearing. I liked it so much that I re-publish it here. Any comment or proposals for additional links will be most welcomed.

On October 11, 2015, Palestinian poet Dareen Tatour was arrested by the Israeli police in a pre-dawn raid on her house in Reineh.

The Indictment

On November 2, 2015, she was indicted in the Magistrates’ Court in Nazareth for “incitement to violence” and “support of a terrorist organization”.

The indictment is all based on three publications by Tatour:

1) The poem “Resist My People, Resist Them” – which Tatour published in her Youtube channel and Facebook page. A distorted Hebrew translation of the poem, made by a policeman with no qualification in translation or literature, is fully cited in the indictment document.

2) A Facebook post mentioning that Islamic Jihad called for an intifada in the West Bank and later contains a call for intifada within the green line to support Muslim’s rights to pray in the Al-Aqsa mosque. From this post the indictment infers the accusation of “supporting a terrorist organization”. Clearly the reference to Islamic Jihad is just citing a news item and Tatour explained her call for intifada as a call for legitimate mass struggle.

3) The last publication mentioned in the indictment is composed of two pictures: A picture of Israa Abed (a women from Nazareth that was wrongly suspected as a terrorist attacker) lying on the floor of the Afula central bus station after she was shot by Israeli police and guards – posted as Tatour’s wallpaper on Facebook – and a small black picture with white Arabic writing “I am the next martyr”, that was her profile picture. The prosecution claims that by posting these two pictures together Tatour was inciting for violence. Tatour explained that the profile picture “I’m the next martyr” was first posted by her and by many activists after the burning alive of Palestinian teen Muhammad Abu-Khdeir in Jerusalem in June 2014. It was a protest at the killing of innocent Palestinians that was reused after the murder of Kheir Hamdan by Israeli police in Kafr Kana in November 2014. And she published the picture of Israa Abed after watching a video of her shooting and being sure that she was shot even though she didn’t attack anyone – a claim currently accepted by the Israeli authorities.

First hearing, April 13, 2016 – The police translator

In the first hearing of the trial, on April 13, 2016, the prosecutor chose to start presenting her case with the Hebrew translation of the “Resist” poem. For this purpose she brought the police translator, Warrant Officer Nissim Bishara. The veteran policeman testified in court that his qualification for translating the poem was his study of literature in high school and his love for the Arab language.

You can follow the links for a report in English about this hearing, or for a more detailed Hebrew report.

Second hearing, May 5, 2016 – Demonstration and closed doors

Before the second hearing on May 5, 2016, there was a solidarity vigil with Tatour in front of the Nazareth court. As a result there was more media attention and Haaretz wrote about the trial for the first time (in English and Hebrew).

Because of the vigil, many people, including some Arab Knesset members, came to attend the hearing. The judge didn’t like it and held the hearing beyond closed doors.

Another policeman gave evidence about details of Tatour’s interrogation. See a report here (and in Hebrew).

Third hearing, July 17, 2016 – Proving the Facebook

On the 3rd hearing on July 17, 2016, the prosecutor brought as witnesses Tatour’s best friend Samira and her young brother Ahmad to prove that her Facebook page belongs to her – a fact that she herself testified to repeatedly in her interrogations in the police.

The prosecutor also brought as a witness Rami Amer from Kafr Qasim, one of the organizers of the yearly commemoration of the Kafr Qasim massacre. They brought him to witness how and why he invited Tatour to read from her poems in the commemoration ceremony. Initially Tatour was interrogated about her participation in this commemoration as part of the accusations against her. Later the prosecutor tried to use it to prove that she is a famous poet, and for this reason her incitement constitutes severe danger to state security. In the court Amer explained that “the fact that I know her as a poet doesn’t mean that she is a known poet”.

You can see detailed reports about this hearing in Arabic and Hebrew.

Forth hearing, September 6, 2016 – Interrogating the interrogator

For this hearing Tatour’s lawyer Abed Fahoum made the not-so-common effort to go over the video that documented her interrogation by Officer Samer Khalil. He confronted the prosecutor witness with big gaps between what was recorded on the video and what was written in the interrogation’s protocol.

Finally the video proved, and the officer had to admit, that Tatour was forced to sign the protocol (written by Khalil in Hebrew, even though the interrogation was held in Arabic), without being allowed to read it, as she explicitly requested to do.

With this testimony the prosecutor rested her case.

Tatour had to start her testimony on the same day, but the court failed to find a translator.

You can follow the link for a detailed report about this hearing (and in Hebrew).

Fifth to seventh hearings, November 17 & 24, 2016 and January 26, 2017 – Tatour’s testimony

On November 17 the trial resumed and Tatour had new lawyers, Gaby Lasky from Tel Aviv, accompanied by Nery Ramati from her office.

In her testimony Tatour admitted to posting all the publications that were attributed to her in their original Arabic form, but explained that the police translation distorted her words and that the police and prosecution distorted their meaning. She explained how all her publications were legitimate expression of protest against the crimes of the Israeli occupation and the settlers, and that all her calls for struggle are not meant to incite violence.

In three long sessions of counter interrogation the prosecutor Alina Hardak grilled Tatour again and again about many details from her publications, her interrogations in the police, other posts on her Facebook page and even comments by other people on her page. She tried to mislead Tatour, enter words to her mouth and find contradictions in her explanations – but couldn’t divert Tatour from her simple and sincere explanation of her publications.

You can read more about it here in Mondoweiss (and in Hebrew here and here).

Eighth hearing, March 19, 2017 – Experts’ opinion for the defense

On March 19, 2017, the defense presented two expert witnesses, Professor Nissim Calderon and Dr. Yoni Mendel.

Professor Calderon, an expert in Hebrew literature, explained how the most famous Hebrew poets expressed furious protest under Tsarist Russia and the British Mandate in Palestine. They were never prosecuted for their poetry by these undemocratic regimes like Tatour is now targeted by supposedly “democratic” Israel.

Dr. Mendel presented his own translation to Hebrew of the “Resist” poem and explained how the police translation distorted its meaning.

They were both grilled in counter interrogation by the prosecutor, trying to prove that they were not objective, that Tatour was not a poet and that the Palestinians were not living under occupation.

These counter interrogations produced many surrealistic dialogues that were cited in many articles and some of it has even constituted the text of a short play that was shown in the Yaffa Theater in a solidarity event with Tatour on August 30, 2017.

You can read more about it in English (also here and here), in Spanishin Hebrew (also here and here) and in Arabic.

Ninth hearing, March 28, 2017 – The defense claims discrimination in the enforcement of the law

On March 28 the defense brought as a witness a police officer, who presented to the court a statistical report about interrogations and indictments concerning incitement. The defense claimed that these statistics prove that the enforcement of the incitement law is one-sided against Arabs, ignoring severe Anti-Arab incitement by Jewish Israelis.

The defense rested its case, but then the prosecution surprised everybody with a request to present more evidence.

You can read about it here (and in Hebrew).

Tenth hearing, April 27, 2017 – The prosecution tries to use Tatour’s first lawyer against her

The trial of poet Dareen Tatour was resumed in Nazareth Magistrate’s Court on Thursday, April 27, at 12:00, before Judge Adi Bambiliya.

In this hearing the last prosecution witness testified, after all defense witnesses were heard in March. The witness was a lawyer who advised Tatour on the first day of her detention, in October 2015. As Tatour mentioned his advice in her testimony, the prosecutor took the rare step to force the lawyer to testify for the prosecution in order to disproof Tatour’s words. In the court the lawyer, Hussam Mow’ed, didn’t remember any details from his meeting with Tatour, only how shocked he was at her situation after being dragged from bed to the police station at the middle of the night. Anyway, with this nonsense the prosecutor prolonged the trial and added another full month to Tatour’s house detention. This was the last hearing before the verdict. The judge gave each of the sides 45 days to prepare written summaries. She didn’t set a date for herself for giving the verdict, saying that she will set a date for the verdict only after she will have the summaries, “as they are likely to be delayed anyway”.

Detailed report in Hebrew about this hearing was published in Free Haifa and Local Call.

As of April 27, Dareen Tatour was still under strict house arrest. She is allowed to go out of her house only for 2 hours a day, from 17:00 till 19:00. At any time, at home and while going out, she should be accompanied by one of the “guardians” – her parents, two brothers and a sister in law – who deposited and signed big bail sums and will pay them to the court in case that Tatour will access the internet.

 

‘A Poet’s Hallucinations,’ by Dareen Tatour

Arabic Literature (in English)

Dareen Tatour’s “A Poet’s Hallucinations,” translated by Jonathan Wright, comes ahead of PEN America’s planned month of solidarity with Tatour, who was first arrested in October 2015, charged with incitement to violence primarily over a poem (translated to English here), and has been in jail and on house arrest since.

The verdict in Tatour’s trial is currently set for October 17 at noon in the Nazareth court. By this time, the poet will be exactly two years and a week in detention.

You can follow the course of her trial at freedareentatour.org/trial.

  1. The Desire Hallucination

Desire builds a nest

Between the branches of my love.

It sings like a bulbul, night and day

And sweeps through me like fire through straw.

It tears my eyes from my face

And disfigures my features.

It steals all the furniture in my soul

So I sit and lament my luck.

  1. The…

View original post 385 more words