Sunday, December 31, 2017

End of an era

For the past twenty years or so, our tv satellite provider, Yes, has broadcast the international channel "BBC Entertainment" (or its predecessor, "BBC Prime"). This is one of my favourite channels, and through it I was able to enjoy series such as "Cold Feet", "Teachers", "New Tricks", "Scott and Bailey", "Sherlock", "Silent Witness", "William and Mary" along with many others, especially the weekly medical drama/soap, "Casualty".

No more. As from midnight, the channel will no longer be broadcast in Israel. I wrote a letter to Yes, asking about this; their reply was that the content of the channel is old-fashioned, and that many suppliers around the world are dropping it. They claim that they will be broadcasting quality British programs taken from BBC, Sky, Channel 4, etc. over the coming year.

I'll believe that when I see it. Where am I going to see the coming episodes of "Casualty"? Probably nowhere.

Monday, December 25, 2017

Sheet music

No, that's not a reference to 10cc's second (and probably best) album, but rather referring to two PDFs which dropped into my mailbox yesterday evening. I wrote a few days ago that I spoke with Yoni Rechter after his show on Thursday night, and that he offered to send me the sheet music to one of the songs on his new album 'Svivenu' ('around us'). I sent him (or his facebook page) my details on Friday, and yesterday the music arrived! True, it didn't come from Yoni himself, but from someone in his production company.

One file contains music for the vocals whereas the other is for piano.  Looking at them makes me wonder whether Yoni (or a copyist) prepares such files for all his songs, for those playing with him.

I've chosen to display a part of the piano score which is probably the most interesting: the song starts in A minor, 5/8 time. In bar 26, there is a modulation to A major; bar 28 is in 6/8 but bar 29 is back in 5/8. Again, bar 33 is in 6/8 but bar 34 is in 5/8. The song returns to A minor at bar 44 (not shown). As it happens, I have yet to hear the song and follow it with the score, but I'm sure that will happen soon.

When we came home on Friday, I looked at the previous Yoni album, a live recording from 2011. To my surprise, almost all of those who appeared with him on Thursday also appeared on the 2011 recording; the only differences are the backing singers. The set list hasn't changed that much from 2011, either. I haven't looked at the musicians on the most recent album, but again, I would not be too surprised to see there some familiar names.

[SO: 4622; 5, 22, 43
MPP: 1027; 1, 6, 7]

Sunday, December 24, 2017

1,100 blogs

Another 100 blogs have flown by in just under a year (one blog every 3.5 days), and it's time to look at what occupied me this year. No surprises for first place.

PositionTagCount
1DBA16
2Priority tips14
3Personal13
4Holiday7
5=Guitar6
5=Rodos6
7=ERP5
7=TV series5
9=Grandfather4
9=Musical instruments4
9=Obituary4

The first two subjects are the same as last year (13 and 9 blogs respectively). Last year there were nineteen subject with four or more blogs whereas this year there are only eleven subjects with four or more. The total count of all the above is 84, although every blog about Rodos would also be marked as Holiday, and I imagine that most blogs about music instruments were also about guitars.

Two important subjects are missing from the above: health (only two blogs) and songwriting (0). Obviously this year I've been healthier than previous years. Disappointingly, I have created absolutely no music this year. I might have remixed a song or two, but apart from that ... nothing. I haven't felt the urge at all.

Who knows what will occupy me in the future.

Friday, December 22, 2017

Celebrating the Winter Solstice with Yoni Rechter

Several weeks ago, our daughter surprised us by saying that she had booked us a Thursday night/Friday morning stay in a boutique hotel, including a performance by Yoni Rechter. That's the way things happen: I haven't stayed in an Israeli hotel for over ten years, and then it happens to me twice in a few weeks.

The boutique hotel is situated in the top four stories of a ten story building in Rehovot; it is strategically place between the train station and the Science park, thus providing an ideal location for visiting scientists, investors and collaborators to stay. Quite how we ended up there is an unknown; I suspect that the hotel management noticed that they had a very low occupation rate for that night and so offered to their consumer club a deal with the Rechter concert (held in a winery some twenty miles away) as a sweetener. Supposition again, this deal was offered to my daughter who knows my fascination with Rechter along with my wife's upcoming birthday, so she decided to surprise us.

We arrived at the hotel just after 12pm; our room was ready - in fact, we had been upgraded (giving further strength to the under-booked theory) to a large room with a sofa and chairs as well as the double bed. Once we unpacked our few clothes, we descended to find somewhere to eat - an easy task. After a reasonable meal, we once again ascended in order to have a little rest.

Upon arising, we went to the hotel's tea room; it was 5 o'clock and my body was screaming for its daily fix of tea with milk. The hotel has a 'business lounge' open from 2-10pm, which serves hot and cold drinks, cakes and even light meals (potato latkes, noodles, salad): all free to hotel guests. So we had a cup of tea, a piece of cake, another cup of tea, a piece of a different cake, a third cup of tea and a biscuit. By this time, I was sated and knew that I wouldn't need to eat supper.

My wife, though, wanted to eat. I pointed out that the meagre information that we had about the show said that doors open at 8:30pm and that the concert begins at 10pm, implying that food was to be served. Despite that, she decided to have something to eat at a nearby cafe.

We set out for the winery, which is situated about half way between Rehovot and where we live. By the time we arrived at 9:30pm, the hall was almost completely full of people who had been eating well. This was not a concert hall with ramped seating, but rather a very large room filled with round tables and chairs - what we call a function room - with about 400 people. We were shown to one of the few tables which still had some room (the maitre d' maintained a list of who was to sit where) and turned our chairs to face the stage. I had very good sight lines of the stage (at least, when everyone sat down).

By counting microphones and instruments, I could see that Rechter would be accompanied by a four piece band (guitar, bass, percussion and drums) and three backing vocalists, although there were another two microphones and two guitars set up. At 10:01, the band came on and proceeded to play exquisitely for an hour and a half, followed by another fifteen minutes of encores. As I had guessed, there were the four piece and three singers: one of the singers spent half her time at the front of the stage (one of those microphones), and a guest singer/guitarist took the other place.

The set list was quite interesting: along with several Rechter standards, which he is almost obliged to play, there were also five songs from his new album (released two months ago) and some rather obscure material which first appeared on a live album in 1991.

After the show, we waited outside by the group van for the master to appear. We spoke to the percussionist and we spoke to the drummer, both of whom noted that the van couldn't go until Rechter turned up. Although there was quite a crowd hanging around at first, most of them disappeared quite quickly which is when we discerned that only about eight people were waiting for the man. Eventually Rechter came out; it transpires that he knows two of the girls who were waiting to speak to him. Then he spoke to a couple of boys from a nearby settlement, one of whom was clutching a book of Rechter's music; my wife took a picture of them with Rechter. One of the boys reciprocated and took a picture of us with Rechter, which unfortunately is somewhat blurred.

Then it was our turn; I mentioned that we had met with Rechter twenty years ago when he came to our kibbutz. He surprised me by saying that he had been there the night before (i.e. Wednesday night); when we asked how this was so, he said that there had been an orchestral evening held (true) for a friend of his and he had come as a personal favour and as a private person. I offered him the new album booklet for an autograph, joking that this showed that at least someone had bought the album (he had made a joking reference to a non-existent merchandise table during the show). I also asked about one of the songs on the disc (not one which was played, by the way), as to whether it was in a 5/8 rhythm all the way through; I had tried counting and got lost in the middle. No, he said, the time signature changes here and there. He asked if I read music, and when I said yes, he kindly offered to send me the sheet music! So I left a message today on his Facebook page, reminding him of my name, my kibbutz and my request; let's see what happens.

We then returned to the hotel, arriving at around 1am. It was hard to me to fall asleep (because my back had gotten cold while we were waiting outside), and noise from the railway station woke me in the early hours. We had breakfast in the hotel - the breakfast at the Dead Sea hotel was better - packed, and then headed home. All in all, an enjoyable 24 hours!

Monday, December 11, 2017

More on Delphi 7/Hebrew/Win10

After writing up my exploits from Saturday night, I took the dog for a walk - always a good time for thinking and reflecting. It occurred to me that maybe I don't have to rewrite the library program from scratch: I can take the original version, add in strategic places the two lines of code which handle the locale, and hey presto! I have a program which displays Hebrew in Windows 10. 

It was too late for me to check this idea on Saturday (unlike the stereotypical programmer, I don't like working at night) so I had to wait until I finished work on Sunday before trying out this idea. Unfortunately, it didn't work. There must be some extra magic in the TNT controls which sets up the Hebrew.

So I quickly finished the menu structure in the unicode program and checked that it worked properly both on my laptop and on the library's laptop. It does work properly.

When I get some more free time, I will try and find what the minimal amount of change is required in order to create a Hebrew/Win10 program in Delphi 7.

Saturday, December 09, 2017

Delphi 7/Hebrew programs running on Windows 10

Several years ago, I wrote a program for the local children's library so that they could keep track of all their books and see who had borrowed what. This is a classic database program, and like all of my programs, it was written with Delphi 7. Until recently, the library had an old PC which was running Windows XP, so there were no problems with my program (in terms of displaying Hebrew characters correctly).

A few months ago, their computer crashed and burned. Recently, the lady who runs the library (and who is also a neighbour of mine) got in touch: someone had donated an old laptop computer to the library, and she wanted me to get the program running on this new computer. Some of the data had been saved, some lost; she was prepared to compromise on this issue. When she showed me the laptop, it turned out that it was far from an old computer - it was running Windows 10!

I knew from experience that my programs would display as gibberish under this operating system, as it uses Unicode, whereas my programs are non-Unicode. In the past, I converted one of my programs to a unicode version, using the TNT components, so I wasn't too worried about this conversion ... until I started work on it.

The program which I had converted uses labels and edit boxes, but it doesn't use menus or data grids, which is what was required for the library program. After a great deal of faffing around yesterday, I discovered how I could implement menus and grids in the program - all the time, I was copying the program to my own laptop (running Windows 8.1) in order to see what had been converted successfully and what not.

I was having great difficulty with the data grids: they were showing gibberish despite the fact that they were TNT components. A database manager installed on my laptop displayed the Hebrew perfectly so I knew that the problem was not with the database. After a great deal of looking around on the Internet, I found one suggestion which seemed a little strange: set the computer's locale to display Hebrew (the question was about Hebrew, as it happens).

I copied the code (two lines) into my program, compiled it then tried it out on my laptop. It sort of worked: at first, the menu displayed in Hebrew and from right to left, but after I opened one of the forms which I had converted then closed it, I noticed that the menu had reverted to gibberish. Encouraged by this, I added the locale code at the form creation event and at its closing. On the laptop, the data grid displayed gibberish the first time it was displayed, but the second time, it displayed Hebrew! I then discovered that even forms which I had not converted displayed in Hebrew!!

So I added a little code which displayed this form before immediately destroying it. This should mean that everything would now display in Hebrew ... and it does! Just to make sure, I copied the program onto the target computer, and it worked perfectly the first time. I still have to hook up the menu to the various forms, but for all intents and purposes, the program has already been ported to display Hebrew on Windows 10 - seemingly without the TNT components.

Here is the magic code which seems to make the difference
SetThreadLocale ($040D); GetFormatSettings;

Friday, December 08, 2017

Dead sea, part 2

Whilst I was in the warm pool this morning, I remembered that in the 1960s, my family often traveled from Bristol to the nearby city of Bath, where we would bathe in the roman baths. The water was very warm and buoyant - maybe less so than in the Dead Sea - but very similar. As I remember it, we were allowed about 30 minutes in the water. The picture above seems similar to the pool in which we used to bathe, but I'm certain that there was a roof, unlike the picture above.

In the 1998, when on a trip to Britain, my young family and I visited Bath and we walked around the baths. What we saw didn't match my memories (apart from the Pump Room), so when asked the guide, I was told that people are no longer allowed to bathe in the water for safety reasons. This matches what is written in the Wiki entry. I note that it states that the newly constructed Thermae Bath Spa nearby and the refurbished Cross Bath allow modern-day bathers to experience the waters via a series of more recently drilled boreholes.

So once again, people can enjoy the warm water of Bath, although I doubt that I will ever return there.

Trip to the Dead Sea

Every year, the company for which I work holds a 'fun day': all employees are transported to a site - normally a country club or a coastal result - for a day (or at least, several hours) of relaxation, mixed with a short speech by the CEO and the awarding of 'Employer of the year' certificates (along with a 500 NIS bonus). One year we went rafting on the River Jordan, twice we went paddling in the Mediterranean. I get the feeling that I've never written about these events, probably because there isn't much to write about them (even though last year I was one of the employees of the year). I often have mixed feelings about these events; even though I know more employees than most (because I travel between all four company sites in Israel), I work with no one closely and so am not friends with anyone. My introverted nature doesn't help much either.

This day is normally in or around September, when it's still very hot but after most employees have had their annual holiday. This year, September came and went with no mention of the fun day; I was wondering whether it had been cancelled when we were informed that we would be traveling to the Dead Sea in December. Not only to the Dead Sea: we would travel on a Thursday, stay overnight in a hotel and return the following day. Those that can do the arithmetic will have realised by now that I came back from the Dead Sea today.

I know that I visited the Dead Sea in (or around) 1992: a day trip for the company (before the merger, when everyone worked in the factory situated in the kibbutz, so a day trip was possible). I'm fairly sure that we visited the area in the mid 1980s, although I'm not sure whether we actually stopped by the sea itself. I cannot recall for the life of me whether I visited the Dead Sea in the summer of 1972 or during my gap year (1973-4);  I imagine that we did as it's not far from Masada and I definitely remember visiting there twice.

Employees from my home factory were the first to arrive yesterday at about 10am, not surprising as we had the shortest distance to travel (about 1.5 hours). After an hour, the coach from Tel Aviv arrived and finally one from Karmiel in the far north. The coach from Haifa had broken down and the people traveling in it arrived only at around 3pm. This delay caused the postponement of the CEO's speech and awards from 11am to 5pm. We would receive the cards to our rooms only at 3pm, which prevented us from certain activities. One person organised a trip by jeep to a nearby historical site, but knowing how much I 'enjoy' riding in a jeep (see our trip to Hersonissos), I passed on this opportunity.


After lunch (fish and rice) in the restaurant, I went for a walk on the promenade, where I took the pictures accompanying this blog entry (I look a bit worried on the left as this is the first time I've ever taken a selfie). Then I went to lie down by the swimming pool for an hour, falling asleep and only awakening a few minutes before 3pm. Once I had the card to my room, I could change clothes and put on my swimming costume. First I swam a few lengths in the hotel pool (it was warmer in the water than out of the pool) and then went to the sea (which was only about 20m from the hotel).

I waded into the water (which was slightly on the cold side) but wondered how I could lie down. There was a metal framework to my side, so I walked over to it, held on and let my legs float up. I was floating on my back in an instant. I drifted around for a few minutes, but realised that I was very tense, so I decided to come out. It was very hard to get from a prone position on my back to having my legs back on the sea floor! A bit of kicking and acrobatics, and I could walk. The sea left a silky feeling on my skin (the Hebrew word normally translates as oily or greasy, but that doesn't really describe the feeling) so naturally I had to shower in my room.

After a cup of tea and some reading, I went to the company meeting, which finished shortly before dinner. After another meal of fish (sea bass fillets), I went for a walk around the hotel area and discovered a row of tatty shops. Coming back, I spent some time in the hotel lobby, talking with my colleagues, then went to bed.

This morning I woke at 6:15, and as silently as possible, got dressed then walked briskly for half an hour on the promenade. By this time, it was possible to have breakfast: I was one of the first people in. After a long breakfast including several cups of tea and chocolate milk, I waited in the lobby until I saw my room-mate; I hadn't wanted to go to the room and make noise, if he were still asleep. Again I changed into my swimming costume then went to the hotel spa: they have a pool which is filled with warm (37 degrees) Dead Sea water - I needn't have bothered going into the sea the day before. This pool is the closest one can get in terms of  'returning to the womb'; I held on to the bar running alongside the pool edge, lifted my legs - and straight away I was floating on my back.

I stayed in the pool for about 25 minutes, which were very relaxing, but this turned out to be a mistake: one shouldn't stay in the pool for more than 15 minutes. After showering and packing, I went down to sit in the lobby; by this time, I was feeling very washed out, which I attribute to my long stay in the pool. Shortly afterwards came the coaches, and by 12pm, I was home. This was definitely the most enjoyable 'fun day' that my company has held.

Tuesday, November 28, 2017

Research proposal accepted!

The research committee of my university met today, and amongst other subjects discussed my research proposal. Following is an extract from a letter sent to me by the DBA Operations Manager:

The Doctoral Review Committee considered your proposal at their meeting this morning and I am delighted to inform you that they believe you are now ready to proceed to the supervised stage of the programme. There are still some issues with your proposal but these can be addressed under guidance from a supervisor.

A supervisor has been appointed, although apparently the committee has to obtain university approval for his appointment. At least it's not the same person who 'mentored' me.

[Edit]
Looking back over the blogs, I see that there was no mention that I intended to submit my research proposal, so there is no background to it being accepted. What happened was that I worked on my proposal and sent it to my mentor; he wrote back suggesting a few things. I responded to what he wrote, and then he wrote back saying that there was no point continuing the mentoring if I don't adopt his suggestions; he told me to submit what I have written in order to obtain some objective criticism. That letter really annoyed me; there have been suggestions which I adopted. I felt quite misunderstood and asked for a new mentor, to which the mentor (who is the departmental head) replied that there is no mechanism for changing mentors. As I still had a few days before the submission deadline (once every seven weeks), I worked even more on my proposal, checking to see what I had done in my original proposal. I added a few bits and pieces then submitted. 

My mentor was gracious enough to congratulate me on having the proposal accepted; I hate to think how we could have carried on. The entire mentor stage had been very difficult. Since the acceptance, I have yet to hear from my new supervisor. Something tells me that he is sympathetic to IT (I think that my original supervisor mentioned him) which means that the supervised stage should be more fruitful than the mentoring stage.

Thursday, November 23, 2017

Two more people have passed away

We were informed two days ago about the death of another kibbutz member (that's four in less than two months); I think that I've had only one conversation with this man, ironically when we both visited a bereaved member a few years ago. It turns out that my wife had no small amount of contact with him via gardening, so she very much wanted to go to the funeral yesterday (I was in the north of Israel at the time).

I discovered a few hours later that Jerry Pournelle, science fiction writer who also wrote about computers, had died - albeit a few months ago. I think that I came across Pournelle first as a novelist - "Lucifer's Hammer" was a book that we passed around at the beginning of the 80s. But it was in Byte magazine (from about 85-95) that I really became acquainted with Pournelle with his "Computing at Chaos Manor" column, where he used to write about all the equipment that he received for review. The columns were entertaining, albeit fairly useless practically speaking, as the general Israeli computer nerd was several years behind with respect to equipment.

I did occasionally read Pournelle's blog but this turned more and more to internal American politics which don't interest me very much (especially when Pournelle described himself as being "to the right of Genghis Khan"). There were a couple of good books - "The mote in God's eye" and its sequel, as well as "Footfall" - but I also remember some which seem to have been knocked off in order to pay the bills ("King David's spaceship").

So, two more people who were peripheral to my life have passed away.

Wednesday, November 22, 2017

One more instrument in the developer's toolkit (using a trigger in a report)

The other day, I was asked to write a report about "Catalogue of parts with serial numbers"; the use of this screen is very important to companies which track where each individual product is found. The report had to include the status of each product. Normally, most tables (e.g. customer orders, purchase orders, customers, etc) have a corresponding status table; the ubiquitous documents and inventory line tables have their own status table which is very complicated. But for some unknown reason, the serial number products table does not have a corresponding table but rather uses the customers table! It would seem that the use of this table is shared with other tables.

The statuses stored in the customers table all have the 'statusflag' set; predefined statuses have their ID (cust) bearing a negative value, but user-added statuses have regular, positive, values for their ID.

In the first version of the report, I had defined the customers.custname field as a parameter and tried to limit the number of values displayed by requiring customers.statusflag to be 'Y'. This did not work; every time I tried to find a status, the report would present the entire list of customers.

There is a little known way around this problem which I intend to explain. One can define a choose-field trigger for a field in a report in the same way that one defines a trigger for a field in a screen. Each field has a sub-form called 'field triggers' which most developers are probably unaware of. Once I remembered the existence of this sub-form, writing the trigger was very easy:
SELECT CUSTDES, CUSTNAME FROM CUSTOMERS WHERE CUSTNAME <> '' AND STATUSFLAG = 'Y' ORDER BY 2
Once this code was in place, only the status 'customers' would be presented as possible values. It isn't often that one needs this technique, but like all esoteric techniques, it is the perfect solution to a specific problem. One more instrument in the developer's toolkit.

[Edit from much later] The reason why inventory statuses are stored in the customers table is because inventory can also be 'packed'/reserved for a customer, whereupon its status becomes the customer number (this is what happens after using the DOCUMENTS_A screen). In order to maintain a status that can be either a customer number or some general form of status (like 'goods', 'reject', etc), the general inventory statuses are stored in the customers table, but flagged. Thus 'real' customers can be displayed as can be 'real' statuses without the two intersecting.

Tuesday, November 21, 2017

Joe Cool

We haven't had a grandfather - granddaughter picture for some time. This is primarily because most of her pictures now are videos. 

Friday, November 10, 2017

INTQUANT and REALQUANT

Almost every programming language has at least two kinds of numbers: integers and reals. In the old 16 bit days, an unsigned integer could have a value between 0 and 65535 (that's 2 to the power of 16, less 1), whereas a signed integer could have a value between -32768 and 32767 (215 − 1). In these days of 32 bits, an integer can have a value between −2,147,483,648 (−231) and 2,147,483,647 (231 − 1). An integer does not have a fractional part; for this, one uses real numbers, which have a range of −238 to 238. Whilst real numbers have a much larger range than integers, they are also less accurate: there are certain fractions which are very difficult to store in binary. This lack of accuracy causes problems when real numbers are multiplied, and so some languages store real numbers as 'decimal shifted' integers (i.e. 3.333 is stored as 3333). This is very important for applications which deal with money as no accuracy is sacrificed.

As Priority deals with both monies and stock quantities, it provides integers, reals and decimal shifted integers. As usual, the documentation is not too clear how to use the different types, so this blog is intended to clarify matters, especially with regard to decimal shifted integers. The TRANSORDER (inventory movement) table - as well has other tables - contains a few fields whose name is like QUANT (quant, tquant, cquant); in the table directory screen, these fields are defined as integers with a width of 17.3. This means that they are stored as integers but their values should be shifted three columns to the left in order to obtain their real value; as written above, a quantity of 3.333 would be stored as 3333.

The screen manager knows automatically how to display such fields (3000 would be displayed as 3.00) so the beginning programmer doesn't have to convert anything. The problems begin when one wants to calculate something based on such a field: for example, the value of inventory is calculated by multiplying the amount in inventory by the part's cost. The unaware programmer will write this statement without change: if the amount is 3, then it will be stored as 3000, and multiplying by the cost (let's say 20 shekels/unit) would result in the value of the inventory being 60,000 shekels! Obviously the quantity has to be converted to a real number before multiplying, so one would actually write REALQUANT (TRANSORDER.QUANT) * PART.COST. This will give the desired result, 60 shekels.

The result of such a calculation should be stored in a variable which has been defined as a real. The easiest way to do this in a procedure is to initialise the variable in the following manner:
:VALUE = 0.0; /* this tells the parser that 'value' is a real */ SELECT REALQUANT (TRANSORDER.QUANT) * PART.COST INTO :VALUE FROM TRANSORDER, PART WHERE TRANSORDER.PART = PART.PART AND ...
Sometimes it is necessary to store the result of such a calculation back into a decimal shifted integer: for this one uses the INTQUANT function, which as its name suggests, turns a quant into an int. I've had to use this function recently as I was writing code which creates bills of materials; a quantity field in the interface requires a decimal shifted number which is calculated on the basis of a real number and another decimal shifted number. INTQUANT requires its operand to be a real number, so the easiest way of ensuring this is to include 0.0+ in the expression, as follows:
:NEWQUANT = INTQUANT (0.0 + :COEF * REALQUANT (:QUANT));
The variable :COEF has already been defined as a real (for example, this would hold the value of PARTARC.COEF, which defines the number of 'son parts' to its 'father part') whereas :QUANT would be a decimal shifted integer, such as ORDERITEMS.QUANT.

The parser in Priority procedures can be a bit stupid, so one should give it all the help one can by predefining variables. Otherwise one is liable to receive the error message that :VARIABLE has been defined having two different types.

I tend to use REALQUANT when I am writing cursors, so that I know that I am working with a real number; I find this makes life a bit easier. For example,
DECLARE CUR CURSOR FOR SELECT REALQUANT (TRANSORDER.QUANT), PART.COST FROM TRANSORDER, PART WHERE TRANSORDER.PART = PART.PART AND ...
Basic rule: never write an arithmetical expression using decimal shifted numbers without REALQUANT! That's about all there is to say about INTQUANT and REALQUANT.

Tuesday, November 07, 2017

ERP enhancement management

I spent about three hours on Friday, brainstorming with regard to my research proposal. The results of that thinking appeared in my previous blog entry. On Saturday I spent about the same amount of time looking for introductory papers in three disciplines - organisational change management, engineering change management (ECM) and product management. On Sunday I printed the papers and glanced at them but didn't have much time to concentrate on them.

Yesterday evening, I sat down with the printed papers and my mobile computer, and started reading the papers, extracting the salient points and adding them to the research proposal. I was very pleased to note that one of the papers on ECM contained a five stage model which was very similar to mine. I was able to contrast ECM with my proposed change management discipline and in doing so, I was able to present my model naturally, without feeling that I was pulling a rabbit out of a hat.

After I completed writing up the papers and introducing my model, I looked again at my mentor's post from last week which started this flurry of activity. He suggested looking at stakeholder literature, which is a topic which I hadn't considered. After entering that term into Google Scholar, I was presented with a list of papers from which I chose one, entitled "A roadmap for IT project implementation". This was exactly what I needed, as it provided some choice quotes. There was also room for critical evaluation: this paper deals with project implementation, e.g. implementing Priority, whereas my research is concerned with implementing enhancements, which of course are on a much smaller scale in all respects. Fewer people are involved, the costs are very low and the time span is negligible.

Once I had added a paragraph or two, I realised that I had a complete document which I could send back to my mentor. I was quite surprised that I had managed to implement the changes in such a short time. Now I can focus my time on other activities.

Monday, November 06, 2017

40 years ago

DayMonthYearArtist
6Nov1970Heron
12Nov1971Al Stewart
16Nov1975Richard and Linda Thompson
17Nov1976National Health
6Nov1977Sandy Denny

Above are extracts from the concert log which I used to maintain in the old days, when I went to concerts. The first and last entries are the most interesting, coincidentally on the same date. 

I've written about Heron and this concert before: it was a promotional tour, selling tickets for one old penny! I very much enjoyed their set, which persuaded me to buy their eponymous album (I listen to it to this day and still enjoy it very much). It was this concert which weaned me off rock acts such as Ten Years After; I was much more content to listen to this 'wooden music'.

The last concert on the list is the last time I had the pleasure of seeing Sandy Denny in her brief life. I know that there are plenty of fans who never saw her appear at all, so I should be thankful that I saw her three times - once with Fotheringay, once with Fairport and once on her own (well, with a supporting band of five musicians). To be honest, I remember almost nothing of the music, but fortunately some of the concerts on this tour were recorded; many many years later, we were treated to a cd of one of them. My name appears in the credits of this disc, which was very kind of the producers. My contribution was to send them a copy of my ticket (which was not for the date which was recorded) and an advert for an earlier Sandy record - none of which found their way into the final booklet. I admit that this is not a disc that I listen to - Sandy's voice had almost completely gone by this time.

This concert is also memorable for a more personal reason: I invited a girl to go out with me to this concert and she accepted. I don't remember whether this girl has ever crossed the pages of this blog so I had better introduce her; we had met about a month earlier at the inaugural meeting of the Jewish Society at my university. It turned out that she was in the new intake of my degree course whereas I was a final year student, so we had more than a few things in common. She also didn't live too far from me, in Swiss Cottage, which was a brisk 40 minute walk for me.

The memory which stands out about this girl (for whom I wrote the song 'M') was when I invited her about a month later to the communal house for our Chanuka party. The next morning I phoned her, asking whether she enjoyed herself; we proceeded to have a half-hour chat which left me slightly bemused. I remember saying to someone that her tone was far more friendly than it should have been. A minute later, M phoned and apologised: she thought she had been talking to someone else! Our relationship lasted only about another month, mainly because we had less in common that it might have seemed at first.

Friday, November 03, 2017

More thinking on the page (DBA)

This post is a continuation of a previous post from three weeks ago, so it's best first to read that post before continuing with this one. As the title alludes, I am going to be 'thinking on the page', so I can't guarantee that there will be an ending or any conclusions from what I write, although I certainly hope that there will be.

My mentor was not particularly impressed by my new version of my research proposal, which featured the seven stage model for developing enhancements. I too had certain doubts about this as I had asked him about where the model should be introduced; at the moment, it had a deus ex machina quality about it as it doesn't flow from the limited literature review. The mentor suggested that I not use the model in the proposal, which returns me to the stage I was in a few weeks ago: what is my research question? What are the aims and objectives?

After further cogitation, I am naming the concept which is to be researched as 'ERP enhancement management' (EEM), a term which I don't think exists in the literature. The definition is based on the seven stage model, but I'm going to ignore that for the moment; instead I will define it in terms of what it is not. EEM has similarities to organisational change management (OCM, a well researched topic) in that it affects the organisation and should achieve strategic or tactical objectives; it is also connected with several groups of stakeholders (which is defined as "members of the groups without whose support the organization would cease to exist"). But EEM is concerned with incremental and fairly minor changes, whereas OCM generally is concerned with major changes, often in critical situations. Also, the success rate of OCM is much lower than that of EEM.

There is also similarity to engineering change management (ECM) but differs in several aspects: ECM is generally concerned with the life cycle of a product, and not incremental changes to software. ECM also is much more technical that EEM - I am purposely leaving out all the technical aspects of EEM, leaving only the managerial aspects.

There is also similarity to software product management (SPM), but as its name hints, SPM is concerned with the life cycle of a complete software product and not with incremental change. That said, there may well be lessons to be learnt from a description of how (for example) Microsoft manages changes in Word or Excel (I doubt that I'll be able to find academic papers on this topic). But then again, these are changes to a product which completely ignore the effects of the software upon the organisation and stakeholders.

So it would seem that EEM is a distinct topic about which there appears to be no prior research. So this is a good example of a research gap.

I found a Doctor of Engineering thesis which examines the engineering change management process (William Rowell: 2013, University of Strathclyde); there is no research question, but the aim and objectives are illuminating. The aim: To characterise the variations in the engineering change management process within the product life cycle and explore the relationship between this process and artefact knowledge. Based on the findings from this study, recommendations for improving existing engineering change management practice shall be offered.

The objectives are (briefly):
  1. Synthesise and discuss relevant literature in the field of engineering change management
  2. Present empirical evidence of the activities that are enacted during the engineering change management process
  3. Present the impact of the research in terms of how the results should influence future engineering change management practice
  4. Discuss the benefits and limitations of the research findings and approach used to obtain these findings, offering conclusions and avenues for further research
These objectives can easily be reworded for my purposes. But what is the research question? At the moment, there are two:
  1. By what methods do organisations develop enhancements?
  2. How closely do those methods match the proposed process model?
Clearly, the second question has to be dropped as there is no proposed process model. The first question is in the right direction but needs to be developed a bit more. Going back to Rowell's thesis, his second research question is What types of artefact knowledge are used and created during the engineering change management process and what can be taken from this to improve the engineering change management process? So ...
  1. What are the steps taken by organisations in the ERP enhancement management process?
  2. How can these steps be generalised in order to create a model to improve the process?
That's not a bad beginning. This will require discarding (once again) a fair amount of material which is included in the current version of the proposal. Hopefully, the next version will tighter as well as being refocused; its title will now be Examining the ERP enhancement management process in Israeli SMEs.

Tuesday, October 31, 2017

Tom Paxton

Tom Paxton, the American folk-singer, celebrates his 80th birthday today.

Like many other things, I became aware of him at a summer camp - I think it was in 1969. Someone introduced us to the song 'Lyndon Johnson told the nation' (or as we knew it, 'LBJ') which was a protest song about the Vietnam war. Probably the war meant very little to me as a 13 year old, and anyway LBJ was no longer president in July 1969. Even so, I was very struck by the song.

By chance, the first concert which I went to at Bristol's Colston Hall, around September/October 1969 was by Tom Paxton. I saw him again at the same location about six months later. I enjoyed the concerts, but he didn't play 'LBJ' (not really surprising, as by then the song had long passed its "sell by" date). I also bought a double lp of Paxton and his small group (pianist and bassist) live in concert somewhere; some of the songs I recognised from the concerts which I had attended and some were new.

At some stage in those days, I wrote a letter and sent it (how?) to Tom Paxton. To my surprise, I received a very warm reply. Of course, I have no idea where that letter is now. It was sent from Long Island, which means that it was before Paxton, his wife and their two daughters lived in Holland Park, London for about four years in the early 1970s as per Wikipedia. After the double lp, Paxton dropped off my radar, which is rather sad considering how much closer he was to me geographically.

I came across his name again in a book about record producer Tony Visconti, in which Visconti talks about his "live plus" recording technique - recording someone performing live, when they are more relaxed, then adding and/or replacing parts.

I admit that it's been a very long time since I've given TP a thought; no doubt he was quickly replaced by Richard Thompson as a song writer to emulate. But I'm pleased to see that he's still with us.

Even to this day, I still sing to myself the couplet "Rained again last night/The streets are slowly drying" after evening rain - this comes from the Paxton song "The things I notice now".

Sunday, October 22, 2017

A conditional choose-field trigger (for use in a procedure)

In special circumstances, in which the value of one feature is dependent upon another, one needs to create a conditional choose-field trigger. Here's a forced example: let's say that there is a database of computer parts; certain computer models can accept certain types of disk drive. So first the user chooses a computer model; the disk drives will be displayed according to the computer model.

In order to implement the statement 'certain computer models can accept certain types of disk drive', there has to be a join-table, one field of which will be the computer model and one will be the disk drive.

A normal choose-field trigger looks like this:
SELECT DES, CODE FROM TEST_DISKDRIVES WHERE CODE LIKE '%' ORDER BY 2;
This trigger would be placed under the parameter defined under the appropriate step in the procedure. Assuming that the key of the computer model chosen has been stored in the variable :$.CM, one might be tempted to write the following trigger:
SELECT TEST_DISKDRIVES.DES, TEST_DISKDRIVES.CODE FROM TEST_DISKDRIVES, TEST_MODEL2DRIVE WHERE TEST_DISKDRIVES.CODE LIKE '%' AND TEST_DISKDRIVES.ID = TEST_MODEL2DRIVE.DRIVE AND TEST_MODEL2DRIVE.MODEL = :$.CM ORDER BY 2;
Unfortunately this won't work. The trigger is unaware of the supposedly global variable, :$.CM. The solution which I found to this problem is to define a table with two fields, 'USER', which will hold the current user number (i.e. SQL.USER), and 'VALUE', which contains the value chosen (i.e. :$.CM). The trigger then becomes
SELECT TEST_DISKDRIVES.DES, TEST_DISKDRIVES.CODE FROM TEST_DISKDRIVES, TEST_MODEL2DRIVE, TEST_USERVALUES WHERE TEST_DISKDRIVES.CODE LIKE '%' AND TEST_DISKDRIVES.ID = TEST_MODEL2DRIVE.DRIVE AND TEST_MODEL2DRIVE.MODEL = TEST_USERVALUES.VALUE AND TEST_USERVALUES.USER = SQL.USER ORDER BY 2;
This does work! One won't find this documented anywhere. Obviously it isn't something which one needs every day but it's the solution to a specific problem.

Saturday, October 21, 2017

Sumptuous Saturday Seven - baked hake with potatoes and vegetables

We haven't had a blog entry on cooking for some time: not because I've stopped cooking, but because I have been rotating all the dishes which I know how to cook and have not tried something new. Well, today I tried a new dish - baked hake - which went down well.

The impetus for this dish came from a few days ago when we volunteered to cook a meal for another bereaved family on the kibbutz. I didn't realise at the time that I would be working late every day during the week (due to travelling commitments), so I had to choose a dish which would be easy for my wife to cook. In the end, she made a salad and my daughter made a vegetarian dish, so I didn't have to coach her. After finding a recipe, I decided to try it myself.

The first instruction had me slightly baffled: julienne the onions.  I sliced an onion into strips and fried them. The next instruction had me adding potato slices to the frying onions and continuing to cook; after a minute or so, I realised that this was not a good idea as the potatoes were either sticking to the pan or not getting cooked at all. So I added a few cups of boiling water and boiled the potatoes. When making mashed potatoes, I cook for fifteen minutes, so I decided to remove the potatoes after only ten minutes, thus partially cooking them but leaving them whole.

I also decided to cook vegetables with the fish and potatoes, so I chopped some courgettes and carrots, cooking them in the microwave for ten minutes. I then placed a sheet of baking paper on the oven pan, placed the potatoes on the paper, then layered the fish and covered them with the vegetables. I sprinkled parsley on top of the fish, sprinkled salt and doused the food with olive oil (with rather more than the one tablespoon mentioned in the recipe; at the moment we have a bottle of oil with a larger opening than usual so I am using more oil than I need). I cooked the dish in the oven for thirty minutes at 150 degrees C.

The result was surprisingly good, although I thought it a little bland. No one had any criticism. I think that next time I will add some tomatoes to the vegetable layer - a little bit of acid will help the taste.


Saturday, October 14, 2017

The seven stage model for developing enhancements

My previous DBA post proposed the following framework for developing enhancements:

  1. Identify a misfit.
  2. Determine which stakeholders would gain from resolving this misfit: there will always be one group of stakeholders who benefit whilst entering data, but there should also be at least one group of stakeholders who benefit from retrieving improved data.
  3. Propose a solution which benefits the maximum number of stakeholders. The solution should consider dimensions such as improved data visibility, savings in user time and direct monetary savings.
  4. Enlist the support of all stakeholders connected to the enhancement.
  5. Implement the enhancement.
  6. Train the stakeholders in the use of the enhancement (in both the input and output stages).
  7. Evaluate the benefits obtained after the event with respect to those stated in stage 3.
I included this framework in my research proposal, writing This model will henceforth be known as the 'seven stage model for developing enhancements', aka SSMDE. After stage 7, evaluation, there are three options, depending on the evaluation: the enhancement may either be put into use, discarded or refined (returning to stage 5 in the model). I also developed new research questions and even changed the title of the research proposal, which is now Evaluating a framework for the creation of successful enhancements to an ERP system.

When walking the dog - always a good time for thinking - my mind turned to a training session which is going to be held in a few days, when I will be explaining to one group of stakeholders a new enhancement. A select group - primarily the CEO, the vice president for development, the purchasing manager and myself - have been discussing this enhancement for several months (the protracted time period is due to the CEO and VP having other commitments) and now is the time to show one group of users how to use the system, which replaces an ad hoc system of paper notes.

It occurs to me that we didn't carry out stage 4 of SSMDE. As hinted above, there are two major groups of stakeholders: those that enter the data (in this case, sales reps) and those that retrieve the data (purchasing). Training for the purchasing people has already taken place; the training session in a few days time will be with the sales reps. We haven't informed them of the coming change - in other words, we haven't enlisted them. It doesn't matter how technically good the enhancement is: it's a failure if no one uses it.

There was a similar situation a few months ago, when together with the CEO I developed a system for recording information about upcoming sales within the ERP system, as opposed to a manual system based on spreadsheets. The training session was so difficult - even acrimonious - that I informed several managers that I was not prepared to teach such sessions in the future. As  a result, the CEO said that he would be present in such sessions: he will take the heat, not me. As it happens, as that enhancement was activated automatically, it became adopted fairly quickly and so can be defined as successful.

Getting back to SSMDE, it would seem at the moment that stage 4 is essential to the success of an enhancement. There's no problem when there is only one group of stakeholders involved, but frequently - at least, in my experience - major enhancements are developed without the enlistment of one group of stakeholders. This lack of enlistment is liable to lead to the enhancement not being adopted and thus failing.

Whilst the research proposal contains a paragraph which refers to the practice of 'parachuting' enhancements into use without the prior knowledge and involvement of at least one group of stakeholders, it was written many months ago, before the development of SSMDE. I should make this clearer in the next version of the research proposal.

Thursday, October 12, 2017

Madam Secretary

I have referred to this 'government procedural' tv series a few times over the years. I knew that a fourth series had been commissioned but I didn't know when it was to be screened. Imagine my delight when I discovered yesterday that the opening episode of the fourth series was to be broadcast that very same night (i.e. yesterday evening, 11 Oct 2017) in Israel.

Surfing the net this morning, I read that 'Madam Secretary is set to premiere its fourth season on 8 October 2017'. In other words, we in Israel are seeing a programme only three days after its screening in USA. Very up-to-date!

My opinion about the series hasn't changed: very good (but not excellent). The scriptwriters must have had a fine time, writing extremely moral and uplifting lines for the eponymous secretary. I am sure that this is not what happens in real life.

Wednesday, October 11, 2017

Research questions

I wrote a few weeks ago that there seems to be mutual incomprehension between my doctoral mentor and myself. I added material to my research proposal which was obliquely suggested by my mentor; he wrote back writing (amongst other things) that something "is reinforced by your having ten research questions when one is usually sufficient and best". Thinking about this, I realise that what I have noted as "the research questions" (i.e. what the research is supposed to answer) are actually the questions which I intend to ask the participants.

Here are those questions:
  1. What are examples of gaps between existing and desired functionality ("misfits")?
  2. How do organisations enhance their ERP systems in order to overcome those misfits?
  3. Is there any mechanism for examining the justifications for enhancements?
  4. Is an enhancement's success dependent on who proposed it?
  5. How are the enhancements authorised?
  6. Are enhancements added in a systematic (as opposed to ad hoc) fashion?
  7. How much time is required for developing those enhancements?
  8. How successful are the enhancements and how is this success measured?
  9. What are the economic benefits of those enhancements?
  10. How are users trained to use the enhancements?
I have read a recent doctoral thesis (Badewi, 2016) entitled "Investigating Benefits Realisation Process for ERP Systems" (sic) which tries to develop a benefit realization road map whereby organisations can realize the maximum potential of their ERP systems  (it's curious that the thesis uses British spelling for 'organisation' but American spelling for 'realize', but then the grammar of this thesis is all over the place). The research question is "How organisations can realise the maximum benefits from the ERP system?" Apart from the fact that the second and third words should be reversed, I am starting from the position that enhancements are the way that organisations realise the benefits, and so I have answered that question before I even begin.

I am less interested in developing a mechanism for evaluating enhancements (although my mentor seems very keen on this) and more concerned with the enhancements themselves. The interrogative word seems to be very important - the above question begins with "How", not "is" nor "can", which can be answered either yes or no. 

So one possible research question would be How can an organisation develop a framework for creating successful enhancements to their ERP system? This assumes that there are means of assessing enhancements; this is already listed as one of the research's objectives. This suggests that I would have to develop a framework, which is not particularly in line with my interests, but would be more academically sound.

Presumably the framework would be something like:
  1. Identify a misfit.
  2. Determine which stakeholders would gain from resolving this misfit: there will always be one group of stakeholders who benefit whilst entering data, but there should also be at least one group of stakeholders who benefit from retrieving improved data.
  3. Propose a solution which benefits the maximum number of stakeholders. The solution should consider dimensions such as improved data visibility, savings in user time and direct monetary savings.
  4. Enlist the support of all stakeholders connected to the enhancement.
  5. Implement the enhancement.
  6. Train the stakeholders in the use of the enhancement (in both the input and output stages).
  7. Evaluate the benefits obtained after the event with respect to those stated in stage 3. 
It would be great if the above methodology could be reduced to a catchy acronym; IDPEITE doesn't really roll off the tongue. 

Should I change the direction of the research proposal to use the above, the research methodology which I have proposed so far - grounded theory - goes out of the window. One of the important tenets of grounded theory is that there be no a priori theory; to my surprise, I have now delineated a methodology in advance! A qualitative approach is still possible, asking how organisations carry out each stage in the methodology. What worries me at the moment is that proposing such a methodology in advance means that the research would be looking for support; I'm not phrasing this well (most of this blog is me 'thinking on the page'), but it's almost a hypothesis based theory. Or ... the above theory could be developed on the basis of the user interviews.

I will leave this entry as it is, but it is clear (at least to me) that my next step is reviewing doctoral theses which propose a theory and seeing which methodology they use.

Tuesday, October 10, 2017

Hersonissos

I confess: I was one of the 2-3 million Israelis who took advantage of the extended holiday period and nipped abroad for a long weekend. This was very much a last minute event; we had asked our son what he wanted for his 25th birthday: originally this was going to be a mobile computer but then he changed his mind and asked for a few days abroad. Our agent found a reasonably cheap package deal to Crete, staying in Hersonissos, but something went wrong with the hotels, so we ended up booking our own hotel.

Hersonissos is a town on the northern coast of Crete, about half an hour away from the airport of Heraklion. There isn't that much to do there, which makes it an ideal destination for a long weekend, but not a good one for a longer stay. With hindsight, there is no real reason why we had to stay there once the package deal broke down. We chose to stay in the Infinity Blue boutique hotel which was a very nice place to stay - very close to the beach, beautifully designed, good breakfasts and helpful staff.


We arrived at about 12 pm on Friday: after some unpacking, we went to look for a place to eat. Coming out of the hotel, we turned right, which turned out to be a mistake - the sea was on the left. We found our way to a dusty street which we took to be the main road of Hersonissos - obviously this was hunger talking. It seems that every third shop was hiring out vehicles, every third shop was a tourist agency and those left over were gift shops. After eating, we returned to the hotel to get organised better. I went out for a walk, turning left, and discovered not only the beach but also the promenade from the Port of Hersonissos. There were plenty of people about, but it wasn't particularly crowded. After having a mint chocolate ice cream at one stand (good, but not as good as Italy), I returned to the hotel to relay my news. In the evening, we ate in the hotel's dining room, where a buffet meal with many options is served. This costs 10 euro per head, which is quite reasonable, although all drinks (including water) are extra.


The next morning I woke early, so I went out and filmed the empty streets, getting a better idea of how everything was laid out. After a very full breakfast, we rode on the 'tourist train', which makes a big circuit around Hersonissos and out to outlying hotels and villages. The ride lasts nearly two hours, which is a bit too long, although this is in order to include as many stopping points as possible (some are quite some way out of town). We discovered what is the main 'strip' of Hersonissos, not too far from the promenade, but not particularly interesting. I had filmed a great deal of our trip, which included being passed by a lorry in a very narrow space, but when I came to look at the footage, it turned out that I had missed a press on the record button. This means that I stopped recording when I wanted to start, and started when I wanted to stop. As a result, I filmed the inside of my bag very thoroughly. No wonder the camera was very hot.


We had a fish lunch at one of the beach-side restaurants which took forever to be cooked. The meal was good but not astounding. After this, my son and wife wanted to go to the beach, although I demurred as I wasn't feeling too well (I think that the train ride might have dehydrated me). After a lay-down, I too went to the beach, when it wasn't too hot and even went into the sea. The water was cold, but more annoying was the sea floor, which was rocky and treacherous. I slipped on it a few times before immersing myself and swimming a little; I found it easier to swim into the sea than return to the beach. In the evening, we ate again in the hotel restaurant - quieter and more sympathetic than the beach restaurants. The dining room is on the top of the hotel and allowed a good view of the neighbourhood, which is how we discovered that the next door hotel was having a Greek folklore evening. We were able to watch the dancing from our table.


On the third morning, we set out to buy souvenirs; having completed this task, we were then set upon by a series of buggies roaring out from a garage. My son had wanted to hire a buggy but we had demurred as he wouldn't have known where to go and could possibly get lost (he thought differently). This sight inspired us to enter the rental shop and enquire about the possibility of a guide; in two seconds, they arranged a trip for us from 14:00-16:30 with a guide. The buggies have only two seats, which should mean that we would need two buggies, but I knew that all the bumping around would prevent me from enjoying the trip and so I opted out. While the other half of the family rode around the hills behind Hersonissos, I had a massage in the hotel spa. They enjoyed themselves much more than I did!

In the evening, we once again ate in the hotel: tonight we had fish and chips! Possibly in emulation of the other hotels, we also had live entertainment, with a trio (singer, guitarist and drums) playing a variety of songs. This was mildly enjoyable, the minor problem being that I could barely make out a word that the singer sang. The major problem was that the drummer had a very inappropriate crash cymbal which he played every four bars; the sustain on the crash was quite long and basically ruined the sound. My wife concurred. I'm surprised that the musicians seemed oblivious to this.

On the final morning, we took a taxi to the 'centre' of Hersonissos, which was a mistake. We were there too early and the shops had yet to open. We decided to return to the beach area, so we walked down a road - and I realised that I knew exactly where we were: at the end of the walk which I had taken the first day. With serendipity, there was a shop selling children's clothing on that small road, so we waited a few minutes for the shop to open then found some dresses for our grand-daughter. We then stopped at one of the shops which sells t-shirts "with your own design", so we had a white t-shirt made with a picture of our grand-daughter. I wonder how she will react to this.

Eventually we left the hotel just after 12 pm; a short taxi ride deposited us back in the Heraklion airport. After waiting a while, we were eventually processed; just after passport control, the checkers found the raki and olive oil which my wife had bought earlier in the morning in her hand luggage - forbidden! This was swiftly thrown away. In the duty free shop, we bought similar items, although more expensive. This is a lesson to be learned: do not store liquids in one's hand luggage!!!!

The flight to Ben Gurion lasted about an hour and a half, but it took us even longer to get home. First, half of the suitcases took a long time to emerge on the carousel; secondly, my son had problems in getting to the remote car-park where we had parked our car on Friday morning. Finally, there was a traffic jam on the way to Jerusalem. Eventually we got home.

Now we're unpacking and I am writing this belated blog entry.

Thursday, October 05, 2017

A kibbutz day

I didn't work yesterday, as the evening was the first night of the Succot festival - office workers don't normally work on such days; the day is deducted from our holidays. Even so, I was up at 5:30 am, walked the dog and went to the kibbutz mini-market to buy some dairy products; two people said how much they enjoyed my song at the Yom Kippur evening.

After that, I went to the Occupational Psychologist, where I worked for a few hours programming bonuses into their 'ERP' program. I had programmed a module which allows a percentage bonus provided that certain criteria had been met; unfortunately the OP promised a psychologist a bonus which couldn't be expressed as a percentage (two different activities having different increases). So I figured out a way of allowing this and then programmed what was necessary. I had problems checking what I had written due to a rather stupid mistake; once that was corrected, I verified that my code was correct.

Then it was to the kibbutz graveyard for the funeral of a member aged 87. We had worked in the same office during the 90s and had remained in contact ever since, although in the past few months his illness had prevented him getting about. I had heard the news the day before and immediately wrote a small eulogy which I hoped I would be able to read at the funeral; I have never done this before, mainly because I've never been that close - or felt that much contact - with the deceased. When we got to the graveyard, I informed the organiser - the man who reads whatever prayers are said and tells the life story of the deceased - that I wanted to speak; he was only too pleased. I discovered why later on: after the immediate family spoke, another elderly kibbutz member rambled for a while, then I was 'on'. My short eulogy was very well received. And that was it, apart from one distant relative. Thinking about it later, I was quite surprised at how few people outside of the family who spoke. Several more people approached me before the funeral, saying how much they enjoyed my song (see first paragraph).

The sons and daughter were very touched by what I had to said and thanked me after the funeral. I have just returned from the traditional condolence visit and they thanked me once more, even though I protested that I had said virtually nothing.

As mentioned at the beginning, the evening was the first evening of Succot, with a short ceremony, a communal meal and light activities planned. We received a message in the morning that the bereaved family wanted the evening to take place as planned, although as a mark of respect, the jugglers have been postponed until Friday. So we sat on the lawn outside of the kibbutz dining room - once a frequent activity, now sadly rare - and waited for the ceremony to begin.

There was a small musical group - acoustic guitar, tenor recorder and three singers - who sang three or four songs throughout the ceremony. They were passable, but wearing my record producer's hat, I felt that there was so much that they could do to improve their performance with only a little effort. The guitarist was so-so; he should learn how to play with syncopation. The recordist is very good (she's a music therapist) but she played the tunes along with the singers which is a total waste! She could have played an introduction, then played fills when the singers weren't singing. And if she had to play when the singers sung, then at least she should have played a harmony line instead of doubling the tune. The singers weren't bad (they weren't wonderful either) and every now and then one even sang harmonies; this could have been timed better to make the harmonies stand out (for example, singing the first chorus in unison then singing harmonies on the second chorus, or singing one line in unison followed by one line in harmony). The problem is how to tell them. I don't come into contact with any of them so it's a bit difficult to even get to point of telling them how to improve. 

A few more people told me how much they enjoyed my song and told me how well I play and sing. Doesn't anyone realise that I didn't play a note? The computer made the music, although I wrote the notes. I don't remember many problems when singing, although I did correct the singing via software. I also added a harmony via software on one line. I wonder whether any of the people mentioned in the previous paragraph were at the Yom Kippur evening; they would have heard that I know how to arrange a song. I think that I will make a copy of my last cd for one of the singers - he's been abroad for several years but was here at the end of 2013 and said something complementary to me.