tag:blogger.com,1999:blog-43080176032752673352024-03-05T18:40:16.657-08:00Neil KeskarNeil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.comBlogger42125tag:blogger.com,1999:blog-4308017603275267335.post-48886288350193661302022-01-27T13:34:00.001-08:002022-01-27T13:34:27.418-08:00An Act of Kindness
Acts of kindness, I have come to realise, are not entirely the province of the pious and the virtuous. Ordinary people routinely carry out acts of kindness simply through a desire to be helpful to those who may be in need of help. I was recently a pleasantly surprised but immensely grateful beneficiary of just such an act of kindness whilst travelling on my local train. On my journeys on my local train I often avail myself of the free newspaper that, these days, is widely available to passengers. I am particularly fond of whiling away my journey time by grappling with Soduku puzzles. But despite my fondness for Soduku, I do not always have the foresight to equip myself with the one implement that is indispensable when working with Soduku : a pen. Consequently, I often find myself attempting to solve a Soduku puzzle in my head rather than on paper, - by working out the appropriate square where a particular number needs to be placed and then retaining the position of that square in my mind. I should add that when exercising my mind in this way over a Soduku, I often find myself moving my fingers along the rows and columns of the puzzle to determine the right square for the right digit, which of course is the key for the solution of a Soduku puzzle. My finger movements, in a sense, betray the mental processes that I am engaged in. And indeed they did just that the other day, when I was on the train engrossed in mentally solving the Soduku challenge contained in my copy of the local free paper. I was scarcely aware of my finger moving back and forth across the Soduku grid in front of me but unknown to me, it did not escape the attention of a young lady who was sitting opposite me, reading a book. She might have been intrigued by my strange antics but she quickly realised the predicament that I was in. She was clearly a Good Samaritan who wouldn’t walk by on the other side in a biblical sense and realising that I was in want of a pen to do my Soduku puzzle, decided to come to my aid. Rummaging into her handbag, she found a pen and held it out to me with a charming smile that invited me to use it. It was an invitation that took me by surprise. I was momentarily overwhelmed and humbled by this act of heart-warming kindness, which was as unexpected as it was spontaneous. I was only too eager of course, to accept her invitation but I like to think that even in my excitement at obtaining a much needed pen, I accepted her kind offer with a graciousness that matched her generosity. Having now been provided with a much needed pen, I was able to make rapid progress with my Soduku and even managed to finish it before arriving at my destination. It meant of course that I was able give the pen back to my benefactor and thank her profusely, although I am quite sure she would not have thought that a profusion of thanks on my part were necessary. She seemed to me to be one of those genuinely kind hearted souls that one meets infrequently but sufficiently regularly to serve as a constant reminder that kindness is by no means at a premium but abounds in the hearts of ordinary men and women. Indeed, just as it is often ordinary men and women who carry out extraordinary acts of courage and bravery, it seems to me that it is similarly ordinary men and women that carry out extraordinary acts of kindness. This lady’s kindness was extraordinary not perhaps in its enormity but certainly in its spontaneity. If kindness were measured simply on some scale of generosity, then this lady’s kindness to me might not be considered particularly out of the ordinary but kind acts are more than testimonials to munificence. On occasion they are an expression of a nature that is moved by an irrepressible desire to aid those in need, however small that need may be. Such acts of instinctive altruism become, in the enormity of their compassion, irrespective of the modesty of their largess, acts of kindness that may be perceived as truly extraordinary. The alacrity with which this lady came to my aid when I was in need, was just such an act of extraordinary kindness.
PermalinkPeNeil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-56608437932380457342022-01-27T13:32:00.000-08:002022-01-27T13:32:06.129-08:00Unexpected Acts of Kindness
In a world which is increasingly notorious for being uncaring, there occur every now then, extraordinary acts of kindness which reaffirm one’s faith in the decency and generosity of ordinary men and women. One such act of kindness recently came my way on my recent visit to Scotland. I was attending a regimental reunion in the little town of Bathgate in Scotland. I arrived at Bathgate by train at what must be, for Bathgate, an ungodly hour of 7 P.M. The hotel that I was heading for was a good three or four miles from the station and was clearly to be reached by a taxi, - a bus service being non-existent. I made my way to the cab rank outside the station only to find it completely devoid of cabs. A couple of men and young girl were already there ahead of me, obviously waiting for a taxi to arrive. After waiting in vain for five minutes or so with no sign of any vehicle, let alone a taxi in the vicinity, I was on the verge of despair when I noticed that one of the men was speaking into his mobile. Suddenly fearful that the perhaps at this quaint rural Scottish railway station, a taxi might need to be ordered by a mobile rather than be awaited at the cab rank, I decided to ask the man on the mobile whether I too needed to phone for a taxi. It turned out that the man wasn’t phoning for a Taxi at all and as a local man he assured me that the cab rank operated in the normal way that all cab ranks did, except that we appeared to have arrived at at an inopportune time when there seemed to be a dearth of available cabs. In our shared frustration of prolonged waiting, we started a casual conversation to while away the time, in the course of which the man asked me if I had a long way to travel. When I gave him the name of the hotel that I was headed for, he remarked casually that it was on the way to the address that he and his friend were going to. After another, seemingly interminable wait of about 10 minutes, a taxi finally arrived and although I was resigned to this taxi not being for me but rather for the two men ahead of me in the queue, I was glad at least to have moved to the top of the queue. I only needed to wait now for the next taxi to arrive and indeed I might have done so, had it not been for the unexpected act of kindness that I received from the two men in front of me. Whereas I would have expected them simply to have got into the taxi and set off for their destination, they in fact did something that probably would not have occurred to me. They were clearly people of a much kinder disposition than I could ever have been and rather than leaving me to wait for the next taxi, they offered me a lift with their own taxi, since, as they explained, they would be going past the hotel that I was headed for and besides, it was unthinkable to them that I should have to wait another possible eternity in the cold for a taxi that probably might not arrive anytime soon. It was an offer that certainly appealed to me, - although had I been a man of principle I should have had none of it: it was something of an imposition on these two good men, albeit at their own invitation, to allow myself to intrude into their private taxi. Overwhelmed by their generosity, I attempted to show my gratitude by offering to share the taxi bill with them but they refused outright to countenance it. It was as though they personified the old cliche that doing a good deed is in itself an ample reward. Humbled as I was by their innate decency, I climbed into the taxi and was naturally profuse in my thanks. Needless to say, that with two such eminently likeable people it turned out to be a thoroughly pleasant journey. We spoke about our plans for the evening: the regimental reunion in my case and a visit to a favourite pub in theirs. They dropped me off at my hotel and we said our good-byes, and once again they refused to accede to any of my repeated offers to pay. As the taxi pulled away, I found myself overcome with a profound sense of elation, - elation at having just experienced a moment that reaffirmed my faith in the basic decency of ordinary people, - a moment that made me realise once again that the world is not awash with wickedness, but rather the opposite, - that there is an abundance of good will and kindness amongst ordinary men and women, even though the proof of that premise may not reveal itself nearly as often as it deserves to do. This unexpected act of kindness buoyed me through the entire weekend that I spent in Bathgate and remained, for a long time thereafter, an uplifting source of warm comforting thoughts. Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-12670057518959555192021-10-14T11:19:00.000-07:002021-10-14T11:19:37.689-07:00Certainties of LifeThere are times in life when one’s own certainties, however trivial, take an unexpected tumble in a crushing and spectacular way to end up in a heap of embarrassment. One such moment of embarrassment occurred to me recently when something that I was convinced was a certainty turned out to be nothing more than a fervent belief. I hasten to add that the certainty that I am referring to is quite trivial as certainties of life go. It is by no means some profound truth that is universally held to be undeniable.
The episode that led to this modest certainty being embarrassingly shattered began with my attempt at using the fairly recent innovation of on-line banking. I use on-line banking sparingly. I am not yet weaned from the pen and cheque method of money transfer. It so happened that I had not used the on-line facility of my bank for over a year. Had I known that sporadic use of on-line banking only caused the bank’s computer system to treat an occasional customer with suspicion, if not downright hostility, I may well have foregone its use altogether. But bliss as I was in my ignorance of the mysterious ways in which the security of on-line banking worked, I proceeded blithely to tackle the first hurdle that confronts all customers of internet banking: the secure log-on. This consisted of a combination of three security parameters including a user-id, a so-called passcode, and a six-digit pin number. I had entered all of these with great care and utmost attention, when to my alarm, the log-on process asked for further, entirely unexpected security information that I was totally unprepared for. The log-on process, quite capriciously as far as I could make out, suddenly demanded to know what my father’s middle name was. Now I am aware that these kind of personal questions are a part of the checks and safeguards that are embedded in on-line banking systems for security purposes. Typically such security questions are asked when the user is unable to provide a valid password or has completely forgotten what it is. But I was incredulous that of all the questions that the system could have put to me for an additional security check, it should have been that about my father’s middle name. My incredulity was not as misconceived as might be imagined. It so happens that in the matter of security questions of this kind, the user usually has a choice of several security related questions from which he may choose one, whose answer would be something personal to him. Thus the user may opt, for example, to use the name of the last school that he attended, as the security question for an additional security check, - should it become necessary. My preferred security question has always been the one that asked for my mother’s maiden name, or so I had always believed until recently. I have a good reason for preferring to do so. My mother’s maiden name although of Indian origin happens to be sufficiently short and simple to make it easily pronounceable, even for those who as a matter of principle remain averse to pronouncing foreign names. My father’s middle name on the other hand, whilst also of Indian origin or perhaps because of it, is a tongue twister of such ferocity as to defy all normal rules of English pronunciation. To attempt to pronounce it is to submit to a verbal form of sado-masochism. I would therefore never have inflicted it on anyone even as a response to a security question, - or so I had convinced myself until being asked for it unexpectedly by the bank’s security system. My unshakable belief that I could never have used my father’s middle name, provoked in me such an unsettling feeling of paranoia that I convinced myself that somehow my personal details on the bank’s security system had been compromised, - most likely as a consequence of some nefarious hacking activity of which lately there seems to be so much coverage in the media.
The dark underworld of hacking and cyber fraud holds unspeakable terrors for ordinary mortals like me. Amateurs that we are, we only skirt on the edges of the internet and have only a superficial understanding of its intricacies. I decided therefore that I needed urgently to seek expert help to deal with this frightening security beach. In great agitation, I phoned the helpdesk of my bank. The helpdesk assistant that I was connected to, was almost a model of courtesy and effortless efficiency. After successfully completing the inevitable security checks, I explained to him the purpose of my call: my possibly baseless but firm conviction that my security details had been tampered with. If this grave pronouncement had the Helpdesk adviser sitting up in alarm, my account of what had actually occurred may well have had him intrigued and possibly even hanging his head in despair: what was he to make of a customer who alleges that his so-called unique security question has been tampered with and replaced by a fake one? Conscious of the likely implausibility of my contention, I was hesitant myself as I began to explain to the adviser my reason for believing that the security question I was presented with could never have been one of my choice, - that my father’s middle name was so excruciatingly unpronounceable to native English speakers, that I would never have embarrassed myself or them by using it as part of a security question. I asked the adviser if he could tell me from his computer records exactly what my security question should have been, as that would address my fear that some hacking activity had maliciously altered my real security question to a spurious one that wasn’t of my choice. The adviser did appear to understand my concerns but such is the nature of the checks and safeguards that protect security information of my bank’s clients, that even the adviser could not tell me exactly what my security question was or should have been, as that information was withheld even from him. This of course was not what I had expected from the helpdesk, reassuring though it was to me that my personal data was seemingly inviolate even from casual access by the bank’s helpdesk advisers.
Despairing at what I might do next, I asked the adviser, rather in the manner of a confused old man muttering to himself, whether I ought to try and reply to the security question, as requested, provide my father’s middle name, and be done with it, - no matter how hopelessly unpronounceable the name was. The helpdesk adviser’s reaction was one of enthusiastic support. “Why not,” he said, “Go for it”. I wasn’t sure if I was quite so ready to go forth as boldly as the adviser’s exhortation had implied but under the circumstances I had no option but to act on my own suggestion and put my elaborately constructed theory of a security breach to the test. Certain in my belief that I would be vindicated by the outcome of the test, I typed in my father’s middle name as required by the security system and waited with smug confidence for the expected error message that would prove my point. I waited in vain. For to my consternation, and perversely to my horror, the system accepted my father’s middle name as the correct response to the security question. In an instant I realised that everything that I had averred about the impossibility of my ever using my father’s middle name in response to a security question now seemed utterly foolish. I made a pretence of being excited that that my security problems were finally over but I was actually quite wretched. I announced with fake excitement to the helpdesk advisor that the system had accepted my security response and allowed me in. I offered my apologies for having contacted him unnecessarily for a problem that turned out not to have been a problem at all. He was of course gracious about it, - indeed delighted for me, and bid me a cheery good day as he concluded our conversation. He may well have hung up with the satisfaction of having done a good job but to me the whole encounter had been an extraordinary experience.
What had begun as a perfectly innocuous attempt at using internet banking had somehow left me pondering on the nature of life’s certainties. If a certainty of life could be as fragile as mine had proven to be, then my understanding of a certainty was seriously flawed. I can now apprehend that certainties of life are least prone to being shattered when they are based on empirical evidence or received wisdom of many generations. Regrettably, the certainty that I had assumed, and which prompted me to phone the helpdesk in some panic, was based on neither. If I had only paused to think, I would have realised that my certainty was not a certainty of my life. It was rather a certainty of my imagination: I had conjured up a certainty in my mind from nothing more than a fervent belief that I would never have contemplated using my father’s middle name as a memorable security word. On reflection, I should have been wiser than to allow myself to commit the folly of ascribing to my fervent belief the attributes of a certainty. But I had done so and had accordingly suffered a shock when the assumptions of my imagined certainty had been proven false by the evidence of my own actions carried out in reality.Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-38934714711649015082016-07-30T15:51:00.000-07:002016-07-30T15:51:01.862-07:00The Utility of CowardlinessI have lost count of the number of times I have been spared embarrassment, - not by any exercise of wisdom on my part but rather by my unfortunate propensity to cowardliness. If fortune, as it is often said, favours the brave, then it cannot be denied that it sometimes intervenes on the side of the cowardly to save them from their own folly. This was amply illustrated in my own case recently when I foolishly took it upon myself to be civic minded. I had just set out on my usual gentle jog when going past my neighbour’s garden, I noticed a woman closing the lid of his “wheelie bin” (wheeled dust bin) as though she had just dropped something in it. My neighbour’s dust bins, like those of nearly all others in the road, are usually kept right next to the front garden gate, so that it is quite easy for strangers to drop waste material in it surreptitiously. Indeed, this kind of fly tipping, as it is called, has become quite a hot topic of public debate in recent months within the borough that I live in. The Borough Council has even coined a new label for it, - “Envirocrime”, and its monthly newspaper, exhorts civic minded borough residents to be active in helping to combat this new menace. The council’s exhortations seldom penetrate the dull brain of a 75-year old like me but somehow its campaign against fly-tipping had made a deep impression on me, and I was something of a recent convert to the need for vigilance against “Envirocrime” as I stepped out of the house that morning. Unsurprisingly therefore, it only needed the sight of a woman furtively closing the lid of my neighbour’s dust bin to stir the hesitant enviro-vigilante in me into a creature of fiery resolve, - or so I imagined. My initial reaction was one of indignation with words like “would you mind not dumping rubbish in my neighbour’s dustbin please, etc.” forming in my head. But predictably they never passed my lips, for that would have required uncharacteristic courage on my part. Resorting instead to discretion, I merely sauntered past the lady pretending that I had not noticed whatever it was that had just occurred. But however straight-faced I may have tried to appear, I realised straight away that in choosing to be non-confrontational, when nothing but bold action would have sufficed, I had failed miserably at the very first hurdle in my newfound mission to fight enviro-crime. The realisation made me feel wretched at my own cowardliness. But cowardliness had thankfully not diminished my capacity for cunning and in an instant it came to me that I could use guile to atone for my failure where courage had so miserably deserted me. So it was that I proceeded to enact an elaborate charade, which began by my stopping abruptly in my tracks and doing an about turn, having just scurried meekly past the fly-tipping lady. I then assumed a puzzled look and made an ostentatious show of checking my pockets in the manner of a perplexed man who had suddenly found himself bereft of something that should have been on his person. These actions of mine were of course designed to allow me to take a good look at the fly-tipping woman and more importantly, the registration number of the car that she was in, without arousing her suspicion or heaven forfend, her wrath at being observed. In the latter aim I succeeded admirably. Having noted the registration number of the car, I kept repeating it in my mind as I walked back to my house in order to commit it to paper before my notoriously non-retentive memory could set in. With the culprit’s registration number carefully recorded on paper for later action, I felt that I had done enough to take at least the first faltering steps to discharge the civic obligation that the council had urged on me in their crusade against enviro-crime. My next step was to go up to my neighbour’s house to advise him of what had taken place. It was of course quite safe to do so. There was no intimidating presence of a possibly wrathful fly-tipping lady to deter me, for I had taken good care to check that the lady had already departed from the scene in her car. To my dismay, my neighbour was out but that was probably just as well, as in my state of excitement, he would probably have found my breathless account of what had occurred a little too unnerving. Disappointing though it was, there was little to be done about my neighbour’s unavailability. As events were to prove, the unavailability of my neighbour was a fortuitous boon to me as it spared me some embarrassment subsequently. My neighbour’s unavailability meant that I could carry on with the jogging that I had intended to go on when I had first come out of the house that morning. Later that day, long after I had returned from my leisurely jogging exercise (it could actually be characterised as an exercise in “shambling”), I decided to go round to my neighbour once again to inform him of the “fly tipping” outrage that he had been the victim of in his absence. This time my neighbour was in and I proceeded to appraise him of exactly what I had seen. Recounting what I had witnessed only served to bring back an onset of righteous indignation, that left me spluttering incoherent phrases as I sought to offer my neighbour my sympathies, for having had to endure the outrage of his dustbin being misappropriated for fly-tipping. In contrast to my embarrassing agitation, my neighbour was the epitome of unruffled sang-froid. In a matter-of-fact voice, he merely said “let’s see what they have dumped in the bin. It was emptied only yesterday by the bin men”. We walked up to the bins with foreboding on my part as to what horrors were about to be uncovered inside the bins, when to my astonishment the first bin opened by my neighbour revealed nothing more shocking than an empty coke bottle. The other two bins were completely empty! For a second or two I was stunned and in a state of disbelief and complete denial: I could not possibly have been so mistaken about what I had seen that morning! I had most emphatically seen someone furtively opening a dust bin and dropping something in it! How could that be explained as anything other than outrageous fly tipping? But faced with the incontrovertible proof of the absence of any fly tipping, in the form of a solitary empty coke bottle, it began slowly to dawn on me that what I had witnessed earlier was not so much an act of environmental criminality, - rather a well-intentioned action of a civic minded woman anxious to avoid littering the street. It is perhaps a moot point as to whether the lady should have first sought the permission of the owner of the bin before proceeding to use it. I am aware that using someone else’s property without prior permission is not something that is to be indulged: it is termed colloquially as “taking liberties”. But in this case, the unauthorised use of a private bin was arguably not as reprehensible as the dropping of litter might have been. The pursuit of a higher goal sometimes outweighs the impropriety of its method and although the lady’s unauthorised use of a private dustbin was to be deprecated, it did achieve the laudable aim of keeping the street litter free. I was ashamed that I had attributed to this lady’s actions base motives that I had only conjured up in my own mind, but in my shame and misery I blamed not myself for my mind’s paranoia, but rather the high powered “enviro-crime” awareness campaign of the council. The campaign undoubtedly pursued a worthy aim but as often happens with well-intentioned plans, it seems to have been struck by the dreaded law of unintended consequences. In this instance, in trying to make placid mild mannered borough residents like me “enviro-crime aware”, the council had only succeeded in making us “enviro-crime paranoid”. As it was, it took all my innate cowardliness to ward off the embarrassment that could have befallen me. And therein lies perhaps a profound truth. Although, cowardliness can scarcely be considered a virtue, it too has its uses: as my example has shown, it is the best curb to rash acts of paranoia. If discretion, as the Bard tells us in Henry IV, is the better part of valour, then cowardliness is arguably the safer part of paranoia. Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-44397952137791306412016-07-14T13:20:00.001-07:002016-07-14T13:20:08.705-07:00Old PeopleThat I am now quite an old man, is no longer in contention. The mere fact that many men and women that I meet in the street address me as “Sir” is ample evidence that I am perceived as person of pitiable old age. But it never ceases to amaze me how so many youngsters routinely associate appearance of old age with some by-gone era that predates even the oldest living person of to-day: they may quite easily, for instance, associate a man of seventy with the trenches of the First World War, as has happened in my case. I recently visited my optician for a routine eye test. On arrival, I was greeted by a very pleasant young receptionist who asked me if I had visited the optician before, in which case, she informed me, she could easily find all my details on the optician’s computer system. On my assuring her that I was indeed an old client of the optician’s returning for a check-up, she asked me for my name and date of birth. With some, entirely irrational, trepidation I provided her with the required information: my forename, surname and my date of birth, which was of course, 22-2-1940. A flurry of finger tapping followed, to the accompaniment of echoing clicks from the ubiquitous computer keyboard that now adorns all shops and businesses. When the clicking ended, there was an ominous silence which I apprehended boded some inexplicable problem for which I might be held accountable. My foreboding was justified: my record, contrary to the receptionist’s expectations, seemed not to exist on the Optician’s computer system. And as I had feared, this eventuality only seemed to suggest to the receptionist that the information I had provided could not have been accurate; that she might have made an error in transcribing it into the computer, was a possibility that she was not about to entertain. Youth in its innocence tends to be oblivious to its own fallibility. Be that as it may, it was with the utmost courtesy that she asked me to repeat the details of my name and date of birth. More bemused than irritated, I re-stated my full name, followed by my date of birth. As I intoned my year of birth, 1940, I detected a faint smile on the receptionist’s face which left me in no doubt that she had just solved the mystery of my missing computer record. Curious to know how a computer record that had eluded the receptionist only moments ago, could now be about to make its appearance, I waited eagerly to hear what the explanation might have been. Alas when the explanation came, it scarcely served to flatter my ego. Showing scant recognition of any faux-pas that she might have committed, she said “Ah nineteen forty, - I thought you said nineteen fourteen!”. Unflattering as the assumption behind her remark was, it caused me more mirth than outrage. Mental arithmetic was clearly not her forte, or else she might have realised that even with my age-worn face, I was an unlikely centenarian. More to my disappointment however, what her unabashed explanation really revealed, was the inability of the young to comprehend the world of old age. To the still youthful, the aged live in a world in which there are no age differences: it is, in their perception, a world in which all the different generations of the elderly, however many decades apart, somehow coalesce into a single blob of longevity called “the old people”.Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-80783531096656472032015-11-28T12:21:00.002-08:002015-11-28T12:21:13.765-08:00Senior MomentDespite having reached an age that most would regard as being quite old, I cannot say that I am always cognisant of that fact, although my awareness of my old age does return swiftly whenever I find myself beset by the aches and pains that seem to accompany the arrival of old age. However, I have always convinced myself that whilst as an old man I might be more feeble now in body, my mind remains as agile as it ever was in my youth, - as evidenced, for example, by my considerable ability to solve Soduku puzzles and my still undiminished facility to recite poems that I had learned as a schoolboy. Indeed, like some keep-fit fanatic submitting his body to tortuous exercise, I tend to subject my mind to some energetic mental exercises such as reciting the 75 times table, - which, as countless devotees of “Countdown” will no doubt vouch for, is extremely useful with the show’s numbers game. Sadly, I have discovered that even meticulous care and painstaking nurturing of one’s mental faculties is no safeguard against the mind’s susceptibility to the sporadic stupidity that the ageing process engenders. One such episode of stupidity occurred to me recently when I tried to leave an underground car park in Walthamstow. It was early morning, - about seven o’clock, and the timing of the occurrence, - the early hour, may well have had some significance for the lack of rapidity with which my mind reacted on that occasion. I offer this as an excuse because there is, I believe, a theory that holds that the human mind tends to react rather lethargically to events in the wee small hours of the morning. Indeed it is this theory apparently, that underlies the police practice of staging early morning arrests, predicated as they are on the belief that the pre-dawn lethargy of the human mind makes it less likely to be disposed to offering resistance to arresting officers. At any rate, my mind was not disposed that morning to offering any resistance to the vagaries of technology that confronted me, even though they amounted to nothing more than a malfunction of an automatic door, in an underground car park. At that time of the morning, the car park was virtually deserted, as I parked my car and walked up to the exit that led to the street above. The exit was clearly marked “automatic doors” and on approaching it, I fully expected the doors to part before me like some biblical sea before fleeing Israelites but to my surprise they remained unyielding. It was annoying and it might have been tempting to blame modern technology. However, I am not as cynical about the efficiency of modern British engineering as many people these days affect to be. I therefore attributed this system failure, perhaps somewhat charitably, not to poor engineering but to a possible cost-cutting measure instituted by a parsimonious local council, whereby the automatic functionality of the doors was switched off outside of normal working hours. Undaunted, I made every effort to open the door manually but no amount of pushing at the door was of any avail: it remained firmly shut. Somewhat disappointed, I turned round to try and find another door that I could use to let myself out and as I did so, noticed a young girl walking in my direction. To my alarm, this young girl appeared to be heading for the same door that I had just tried and found wanting. Normally, as an old man I would be wary of accosting young girls but on this occasion my sense of civic responsibility welled up in me. In a display of public-spiritedness, I assumed my most polite manner as the girl approached and announced to her that the door that she was about to use “was not working”. The girl’s immediate reaction surprised and delighted me, - because she responded to my pronouncement with the sweetest smile that I could possibly have encountered from a stranger. To my dismay however, she seemed to take no notice of my warning about the problematic door. Charmed as I was by her smile, I could not help entertaining the uncharitable thought that this girl was so full of youthful confidence that she could not be bothered with good advice that was not only well intentioned but would soon prove to be to her clear advantage. Like some wise old sage about to prove the sceptics wrong, I waited with smug expectation to see the girl make a fool of herself. But my smugness turned the next instant to acute embarrassment when I saw to my mortification that the girl, far from being thwarted by the door, had sailed right through it by the simple expedient of pulling it open rather than pushing it shut, - as I had been doing. I stood open mouthed in grudging admiration, marvelling at this young girl’s mental alertness which enabled her to make light of a situation that had confounded me and which now made me feel feeble minded. Why, like her, hadn’t I thought to pull the door when pushing it did not work? Why wasn’t I sufficiently compos mentis to cope with this most unchallenging of situations? Slowly, the realisation came upon me that that my mental faculties for all their daily exercise had not overcome the perennial problem of age related stupidity, known euphemistically as a “senior moment”.Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-1442807932278513792015-10-20T13:30:00.002-07:002015-10-20T13:30:41.535-07:00Beware Card Fraud - It Can Make a Fool of YouLife often has a disconcerting habit of making a person feel a fool just as he is beginning to think that he is being smart. I was a victim of this cruel propensity of life quite recently, although thankfully in my case, the experience, far from leaving me scarred, turned out to be a blessing in disguise, as the narrative below reveals. About a fortnight ago, quite unexpectedly, I received an unsolicited phone call, purportedly from my credit card provider. I had compelling reasons to believe that it was a purported, as opposed to a genuine call from my card provider, for reasons that I am about to explain. I am a septuagenarian, – at an age at which an old man’s mind apparently acquires a child-like gullibility that makes him an easy prey for tricksters and fraudsters. Friends and relations, with my best interest at heart, are constantly warning me of some diabolical swindle or the other, that they have heard of, that is targeted especially at unwary senior citizens. One such swindle that has been brought to my attention concerns credit card fraud. The intended victim of this fraud receives an unsolicited phone call, supposedly from the fraud prevention department of his credit card provider. The caller informs him that some fraudulent transactions, involving his credit card, have been detected and advises him to phone immediately, the emergency number shown on his card. The devilish part of this fraud is that although the victim phones the correct helpdesk number, - as shown on his card, he in fact ends up speaking to the fraudsters. Extraordinary as this may seem, this remarkable feat is easily achieved, allegedly, by the simple expedient of the fraudster’s continuing to remain on the line at his end and thus intercepting any subsequent call that the victim may make from his phone, - including the call to the card provider’s helpdesk. Having thus intercepted the victim’s call and duped him into believing that he is speaking to his card provider’s helpdesk, the fraudsters then inveigle from him, the card number and the pin details and use the information to make fraudulent transactions, - which now are of course actual as opposed to the fictitious ones used initially as a pretext for calling the victim. All of this detail, in this frightening scenario, had been firmly implanted in my mind by well-wishers, with an admonition not to allow myself to be caught out as other slow witted pensioners had been hitherto.
Despite being thus forewarned, I was totally unprepared for the unsolicited phone call that I received one morning and heard the dread words that announced that the caller was from my card provider and that there had been a fraudulent transaction on my card. Although I recognised this to be the opening gambit of the diabolical fraud that I had been warned of, I could scarcely believe that I was actually being ensnared by it. Like many an optimist, I had imagined that the law of averages would somehow ensure that I would be amongst the numerous who on the balance of probabilities could expect to remain untouched by this unwelcome event.
It was therefore a disappointment, that my justifiable optimism had not been rewarded. The laws of probability had clearly not worked in my favour but it was no use pondering over the vagaries of probability theory. Undeterred, I rose to the occasion and with great presence of mind informed the would-be fraudster that I was “right in the middle of something” and would he therefore call later. Congratulating myself as I put the phone down on having skilfully warded off an attempted fraud, I allowed myself a moment of triumphalism: these fraudsters would have to get up very early indeed to catch me out! But my elation did not last long and soon gave way to alarm as events began rapidly to take on a sinister turn. Having cut short the warning call that I had just received, I was keenly aware that I needed quickly to contact my card provider, to ascertain whether or not the call had been authentic. But mindful of the warning that the telephone must not be used on such occasions, to avoid being intercepted by the fraudsters, I rushed to my mobile to contact my card provider, - only to discover that someone had already placed an ominous message there, asking me to phone my card provider. This was now becoming a worryingly fiendish episode. Not only were the fraudsters lying in wait for me on my landline but they had also sealed off my only other avenue of help, - my mobile. For a moment I seriously contemplated going straight to the police but it so happened that I had a previous engagement to attend, - the computer class for senior citizens where I tutor. Reluctantly I decided that for the moment I had no option but to defer contacting my card provider until later. As events were to prove, that was the most sensible decision on my part that morning. For as I went to my local supermarket after my computer class and tried to pay for my shopping with my credit card, I found that it was no longer valid. This was an embarrassing development but it occurred to me that it could scarcely have been engineered by the fraudsters. They would have wanted to use the card, albeit unauthorisedly, but would not have sought to block it from use. Rather perplexed, I went home to phone the card company. By now the house phone, some four hours after the initial call from the people whom I had assumed to be fraudsters, should have unblocked itself and be available for normal communication. My inquiry at the card provider’s helpdesk, after the usual security related questions, brought forth an immediate explanation of the morning’s events. “We tried to contact you contact this morning, Mr. Keskar” the girl at the helpdesk informed me, “we were expecting your call, did you get our text ?”. It then transpired that my card had indeed been used for fraudulent transactions in Atlanta, Georgia, USA, of all places. In consequence, the card had been cancelled. As is normal in such circumstances, my card provider did not hold me liable for these transactions and asked me simply to await the issue of a new card.
That the prospect of being a fraud victim had been averted, was indeed a great relief. But it was at the same time curiously disappointing, that what had appeared earlier in the morning to have all the appearance of becoming a drama, should have ended in such an anticlimactic fashion. There was really no fraud after all, - at least none associated with the phone call that I had received that morning. I had not acted with great presence of mind. Rather, I had been tilting at windmills. Fired by the tales of fraud that I had been subjected to, my wild imagination had conjured up villainy where none existed. In reality the fate of being the victim of a vicious phone scam had not befallen me, - nor had I been the plucky victim who had fought back. My ego, which had begun to inflate itself with the thought of having turned the tables on some despicable fraudsters, was rudely pricked. There was ultimately nothing to boast about in what I had done, and certainly no danger of resting on my laurels after a great triumph. There remained only the realisation that I had narrowly escaped making a fool of myself, - which I certainly would have done, had I gone to the police that morning as I had intended.
Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-22947055713382321342014-08-14T15:23:00.000-07:002014-08-14T15:23:12.805-07:00Epping ForestI live pretty close to the Epping Forest in Essex and the changing of the seasons in the forest, particularly at year-end when nature is at its mellowest, has always been a fascinating phenomenon to me. My favourite season of the year happens to be the autumn. The tranquillity of autumn with its hint of the approaching bleakness of winter cannot be matched, for somebody of my disposition, by the vigour and exuberance of spring, - even with its promise of the glories of summer yet to come. I enjoy the gentler pace of life that is engendered by the rapidly shortening days of autumn and I warm to the thrill and anticipation of Christmas that the onset of autumn brings. But above all autumn enchants me with its brilliant display of colours as the trees prepare to shed their leaves. I can think of nothing more enchanting than a gentle drive along the Epping Road in early November soaking in the grandeur of trees bedecked in the hues of autumn. The red and gold of autumn leaves never fails to fascinate me even though I scarcely have the artistic sensibilities that one surely needs to appreciate such splendour of nature. And nature at its most splendid had been just as evident this last autumn in the Epping Forest as ever. However, last autumn, as though in an attempt to entice me away from my beloved Epping Forest, circumstances combined to present to me an altogether different autumnal scene which appeared to rival, if not surpass, that of the Epping Forest. I was in Canada last October and saw for the first time, in several years, the amazing variety of colours that autumn brings to the forests of North America. Here the trees are adorned not simply with reds and golds but also with shades of purple, orange and blue, - indeed all the colours, virtually, of the rainbow except, of course, green, although that is still to be seen on the evergreens. Faced with this extravaganza of myriad colours, I had to concede, much to my chagrin, that the Epping Forest had a worthy rival after all in the Canadian forests. Driving at autumn time along Canadian freeways, which seemed unfailingly to be flanked by forests, it was impossible not to be awestruck by the blaze of colours that stretched for miles on either side. Nevertheless, as someone whose aesthetic sense is lamentably shallow, the breathtaking beauty of the Canadian forests only served to remind me absurdly of the title of the famous song from the musical “West Side Story”, “Everything big in America”, and it occurred to me that like most things in North America, nature’s display of autumn beauty was on a much grander scale there than anywhere in the Epping Forest. Not that it in any way diminished my affection for the Epping Forest. The grandeur of the Canadian forests may have turned my head momentarily but I was always going to return to the charms of the Epping Forest rather like a man who returns ultimately to his first love. For the Epping Forest doesn’t just enchant in the autumn, in the winter too it has an allure that is irresistible. I took the opportunity to drive through the forest this winter during a particularly cold spell, - not long after a heavy fall of snow. As often happens in the days that follow a heavy snowfall, the landscape was still covered in snow but the road had mercifully been cleared so that I wasn’t beset by my usual anxiety about driving on snow-covered roads. On either side of the road, the trees, which had long since lost their red and gold of autumn and had stood bare in early winter, were now a frosty white, - their snow-covered branches strangely florescent in the gloom of mid-winter. Further into the forest, the forest floor that had once been strewn with the leaves of autumn was now resplendent in a blanket of snow. Under a grey winter sky, the snow on the ground had acquired its characteristic strip-light effect which in urban streets lights up the faces of passers-by and which here in the emptiness of the wild illuminated the forest in a cold white light. In the subdued light of a winter afternoon, the forest seemed to exude, to a town person such as myself at any rate, an inexplicable air of almost transcendental calm and quietude. Those attuned to the ways of nature might attribute it simply to the oft-talked-about winter absence of birdsong. Others with a more poetic imagination might ascribe it to winter’s eternal magic. I am scarcely poetic and seldom rise above the mundane. But that afternoon, even I recognised something in the beauty of the forest’s winter scene that was wondrous and quite sublime.Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-15961366771385512292014-08-14T15:21:00.000-07:002014-08-14T15:21:14.925-07:00HalloweenHalloween up until recently had meant very little to me other than as a day in the calendar that had some strangely rustic associations with the world of witches, warlocks and ghouls. Until recently also, it was not a day that was marked by the observance of any particular custom. Children especially were as unaware of the passing of Halloween as the Ides of March. The 31st of October, in those days of pre-Halloween-bliss, was not a day that children awaited with anticipation, thrilling at the prospect of dressing up in ever more expensive witch-costumes and frightening the neighbours into handing over money and sweets. The thought of wreaking such havoc at Halloween scarcely stirred the childish imagination in those days and peace and normalcy prevailed at Halloween just as it did over Christmas. Little did any of my generation then suspect that these happy times would soon be a thing of the past. It is not possible to-day to say when exactly it was that the idyll of Halloween-obliviousness ended and the purgatory of Halloween “trick or treat” began. But “trick or treat” has now found a firm foothold amongst the popular customs that children in England follow; and the children’s adoption of this American custom has had some serious repercussions for the adult population as well. For adults, “All Hallows Eve” is no longer the inconsequential day in the church calendar that could easily be ignored. It has become a day that must be noted and carefully prepared for, - to ensure survival at the end of a demanding evening of “trick or treat”. Preparation for the rigours of modern Halloween can be a daunting task but the elderly like myself have found that they can do worse than to begin by acquiring a plentiful supply of sweets and chocolates in readiness for the evening’s trials. Also to be advised is the precautionary step of ensuring that a sufficient amount of small change is to hand to dispense to groups of importunate children arriving at the doorstep. Following these two simple guidelines has served me well over the past few Halloweens. I have always managed to send away “trick or treat” children knocking on my door with very little to complain about and in the process have given myself what I consider to be a well-deserved feeling of smug satisfaction at having coped adequately with a formidable challenge. However, life is always full of surprises and even great wisdom acquired through long experience is not immune to being frustrated by the turn of events, - as I found out for myself at this year’s Halloween. This year, to my great disappointment, all my diligent preparation for meeting the challenges of Halloween turned out to have been totally in vain. I followed all my carefully devised plans this year as in previous years, to prepare myself for Halloween. On the day, I went to my local Sainsbury’s and purchased a goodly quantity of sweets and chocolates. Next, to obtain some loose change, I decided to forego my usual custom of paying by credit card and chose instead to pay by cash at the check-out. With some trepidation but with all the charm I could muster, I asked the check-out girl if she would oblige me with some twenty-pence coins. Noticing that she showed not the slightest bit of irritation at this possible impertinence on my part, I went on to impose on her good nature by explaining that my strange request was actually intended to spread happiness amongst “trick or treat” children who were sure to be around later that evening. The check-out girl exceeded all my expectations and let me have three pounds’ worth of twenty-pence coins. Armed with my shopping bag full of sweets and weighed down with my small change, I felt confident that I was fully prepared for the ordeal that lay ahead that evening. Little was I to know, as I awaited the arrival of fearsome mask-wearing Halloween children, that the evening was to end without a single child deigning to grace my doorstep with his presence. I waited nonchalantly, with the confidence that comes with good preparation, for the ring on the doorbell but to my complete surprise and some disappointment the doorbell remained silent. The hours ticked by, - six o’clock, seven o’clock, eight, nine! At half past nine, I conceded that this Halloween night had gone by without troubling me with the ritual of “trick or treat”. I was more amazed than relieved. How could this have happened? Could this have been Sod’s Law working in my favour or had Providence rewarded me with a lucky escape for some good deed that I might unwittingly have performed in past life. With my usual mistrust of children, I was even tempted to believe that this might have been a fiendish trick played on me by the kids, out of sheer wickedness, deliberately to deny me the opportunity of giving them a treat and feeling smug about it, - but deep down I would have to admit that I was quite glad that this Halloween, “trick or treat” for once, seemed to have gone back to being what to me it always was, - not at all a very English custom, at least in my little corner of England.Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-16797470058514432352014-02-04T15:04:00.002-08:002014-02-04T15:04:32.439-08:00A Visit to the DentistLast week I visited my dentist for my periodic dental check-up and came away, much to my surprise, quite elated. Dental check-ups are not an activity that I can claim to be able to take in my stride and my attendances at dental check-ups tend not be nearly as frequent as they ought to be. Received wisdom about the frequency of dental check-ups has equivocated over the years, - sometimes declaring six-monthly check-ups to be essential for good dental care and other times conceding that check-ups might be undertaken at longer interval such as a year, for example, without serious detriment to one's long-term dental health. This division of opinion as to whether six monthly or yearly check-ups are the more beneficial has been a welcome gift to a phobic like me whose fear of dental check-ups is incurable. With blatant opportunism, I have seized on the apparent rift in expert opinion, to allow myself to conclude that my own check-ups could be made at an even more extended interval of fifteen months instead of twelve months. I haven't of course taken care to appraise my dentist of this unilateral decision of mine to institute fifteen monthly check-ups. Consequently, at regular intervals of about six months or so, his practice continues to send me polite communications reminding me of the imminence of my dental check-up and inviting me to attend at my earliest convenience. I steadfastly ignore the first several of these entreaties in pursuit of my own agenda of fifteen monthly check-ups, although I am aware that this practice might well lead even some close friends to shake their heads and conclude wearily that this is simply procrastination on my part, designed to disguise a phobia of dental treatment. I choose on the other hand to characterise it, perhaps rather grandly, as my iron determination to adhere unflinchingly to my aim of extending the intervals between dental check-ups. Unsurprisingly therefore, when the usual series of reminders arrived in the post just prior to my last check-up, I carefully ignored the first several, until deciding in due course that it was at last timely to make an actual appointment with the dentist. As usual, on the day of the appointment, I was assailed, almost from the moment that I woke up, by a feeling of foreboding, which precedes all my encounters with the dentist. On my way up to the surgery I even tried to invoke the power of prayer to ensure an easy passage through the ordeal that I imagined awaited me. But the efficacy of prayer seldom offers much hope to frayed nerves, and I arrived at the surgery in a state of despondency and somewhat disappointed that prayers had proved so futile in my particular case. Mercifully, I didn't have to wait long before the nurse came out to escort me into the dentist's presence. My dentist greeted me cheerfully as usual. He is the personification of charm and good manners, and when it comes to examining teeth, he happens to have the gentlest touch that I have encountered amongst dentists - and I have been under the care of several over the years, including one who easily qualified as the "Butcher of Walthamstow". As I reclined in the dentist's chair and closed my eyes, as is my wont when undergoing dental examination, I could feel the dentist carefully probing my teeth and uttering the ritual intonations that dentists resort to during dental check-ups: upper right four, upper right five, upper right six missing, etc. They made little sense to me but I apprehended that they might possibly be a damning verdict on the state of my teeth. After what appeared an eternity, which in reality was no more than five minutes, the dentist stepped back and with a most pleasant smile announced that everything seemed to be alright, and that he didn't think we needed to anything to them, - meaning my teeth -, 'this time'. It took a moment or two before the import of his words sank in. If there were such an emotion as 'stunned happiness' then I had just experienced it and I was having some difficulty containing my joy. I should have remained calm and thanked the dentist politely but I did no such thing, and probably to my dentist's horror, disgraced myself by bestowing on him an undignified profusion of thanks, accompanied by several incoherent expressions of gratitude. The dental nurse, possibly mistaking my emotion for distress, came to my aid and escorted me out to the receptionist, to complete the formalities of form-filling and charge-payment. I left the surgery in a state that some dental surgeons might describe as 'post check-up' euphoria. Its effect was to cram my head with all kinds of joyful thoughts and as the euphoria subsided, the realisation gradually dawned on me that the most exhilarating moments in life were not necessarily engendered by extraordinary events such as one's rare achievements or even rarer strokes of good fortune but quite often by the ordinary and mundane things in life such as a visit to the dentist.
Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-59935268854888610712014-02-04T15:02:00.001-08:002022-08-13T05:47:31.622-07:00Tale of an IdiosyncrasyOne of my recreational activities, for some time now, has been that of jogging. Despite being a long-time jogger, I have to confess that jogging remains an activity that does not come easily to me. As a jogger my efforts are risible and my jogging is probably best described as "shambling". I cannot claim to be naturally athletic and somehow the fitness that most joggers acquire through regular exercise eludes me. To compensate for my natural lack of fitness, I have been compelled to resort to such desperate stratagems as running in as lightweight a running attire as possible and wearing the thinnest-soled trainers available in sports-shops. The latter of course has a drawback: lightweight, thin soled, trainers are not really considered to be best suited for running. The received wisdom about appropriate footwear for running has it that they should be specially moulded to provide support for the arches of the foot and have soles which are stout enough to absorb the shock that the human frame receives as each foot lands on a hard road surface. Such shoes however, could scarcely be my preferred choice since the thought of running in stout-soled shoes rekindles in me all the painful memories I have of gasping for breath whilst running in army boots in my younger days as a serving soldier. I always regarded it then as a form of torture inflicted on less fit soldiers like me by the Army's sadistic PT instructors. I therefore studiously ignored all good advice about the correct running shoes and remained steadfast in wearing the minimalist footwear that I fondly imagined to be performance-enhancing for non-athletes like me. I may well have persisted in pursing this course of idiosyncrasy had it not been for a chance event that normally need not have concerned me at all. The event itself was quite dreadful: a ram-raid on a sports-goods shop at Chingford Mount, - not very far from where I live in London. I happened to be walking past the shop and was quite saddened by the scene that I witnessed. The shattered shop-front and the ransacked interior of the shop were a grim testimony to what had occurred. I recognised the man standing in what remained of the shop-doorway as the owner of the shop. I had seen him before on my occasional visits to the shop with my late wife to get trainers for our grandchildren. The shop happens to be a family-run business and the courtesy and good manners of family members who serve in the shop had always made my shopping trips there a pleasant experience for me. Seeing the owner standing in front of his now devastated shop, I could not help feeling an overwhelming sense of sympathy, although what I did next was, I realise now to my embarrassment, something prompted more by an idle curiosity than my deeply felt sympathy: I asked the man what had happened, - a question that he had probably already been asked a dozen times that morning. To his great credit he retained his good manners, and even managed to raise a friendly smile as he informed me that the shop had been ram-raided in the night. Everything in his demeanour was a lesson in stoicism in the face of adversity which I found so touching that I felt it deserved some helpful gesture on my part in return, no matter how trivial. I decided therefore that this was the time to get the new trainers that I had been contemplating buying for some time but had hitherto procrastinated for various reasons. I walked into the shop and after trying out one or two pairs of trainers, selected a pair that was predictably of the thin-soled variety that I always preferred. This turned out, to my surprise, to be a pair of ladies' gym trainers, as the owner soon informed me when I took the pair to the till for payment. I am not sure if my disappointment and confusion were all too obvious, but the owner felt obliged to offer to help me with the selection of a suitable pair of men's trainers. He showed me a couple of pairs which he recommended as being good quality as well as reasonably cheap. To my alarm both had the thick soles that I had always imagined to be inimical to my puny efforts at jogging. Not wishing to offend the shop owner, I rather hesitantly mentioned my absurd paranoia that thick soled trainers were akin to heavy army boots and would therefore prove my nemesis when engaged in jogging. If the good shop owner were perplexed by this bizarre assertion of mine, he did a remarkable job of keeping a straight face and maintaining his professional manner. With commendable forbearance he explained that there was no question of these shoes being heavy. They were ergonomically designed to be both light on the foot and provide maximum support for the foot's arches. Normally, I should have dismissed this explanation as typical sales talk but there was something disarming about this shop owner's obvious honesty which persuaded me that perhaps what I was being told was simply a frank comment on the merits of the trainers that deserved to be heeded. It was time, I felt, that I rose above my phobia and committed myself to using the kind of running shoe that was regarded by most sensible people as being the most appropriate one. Assailed as I was with lingering doubts, I willed myself to putting aside my reservations and agreed to the purchase of the trainers that the owner had recommended to me. I need not have tortured myself as to whether I had made the right decision. My trust in the shop owner's advice was fully vindicated. The shoes, as it happened, turned out to be the most comfortable as well as the most lightweight shoes that I had run in to-date.
This happy outcome nevertheless gave me some food for thought. Rational beings like to believe that their actions are the result of rational thought. That I should have eschewed the use of what might be regarded as the ideal footwear for jogging for so long, appeared to me on reflection not so much a harmless idiosyncrasy as an illustration of irrational fears harboured by otherwise rational minds, - if such a generalisation might be permitted from my own particular example. Even more irksome to me was the realisation that my irrational fears were not dispelled by any application of rational thought on my part but rather by a chance random event, i.e. a ram-raid on a shoe shop. This realisation was itself quite unsettling in that it seemed to confront me with what I believed to be a different kind of irrationality, - that of the phenomenon known as chaos in which chance random events result in equally random unforeseen consequences. I am not sure however, whether my unease about my brush with chaos was well-founded. The very unpredictability of chaos has now become, I believe, the subject of a rigorous mathematical theory. One of its better known propositions concerns the so-called Butterfly Effect, which holds that a random event such as a butterfly fluttering somewhere on the edge of the world can be the determinant of a full-blown hurricane, thousands of miles away in mid-ocean. The romantic in me likes to believe that researchers into the Butterfly Effect will perhaps be able to construct a neat mathematical formula to explain how a random ram-raid on a shoe shop somewhere in Chingford, came to be the determinant of my burst of rational thought, which dispelled my phobia of thick soled trainers. The realist in me, on the other hand, tells me that such a formulation would be unlikely. I do harbour the hope however, that I might have provided mathematicians with some interesting empirical evidence, - that of my experiences with my trainers, with which to validate, or otherwise, their Chaos Theory. Perhaps my episode with the trainers had served some higher purpose after all.
Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-7876733026980624492011-12-11T14:07:00.000-08:002011-12-11T14:11:39.010-08:00Anno Domini or simply a year in the Common Era ?The Daily Mail in one of its strident editorials, recently launched a vigorous attack on the BBC for its declared intention of using the terms "BCE" and "CE" rather than "BC" and "AD" when referring to a year within a given date, - "BC" and "AD" of course being the well familiar "Before Christ" and "Anno Domini", while "BCE" and "CE" are purportedly the more modern usage that stands for "Before Common Era" and "Common Era". The editorial for all its vitriol had a serious content that was thought provoking and struck a chord with me. I am a regular Daily Mail reader, - it is my daily paper of choice, although I am probably not a typical Daily Mail reader. I read the Mail for the quality of its journalism rather than its political stance, but of late I have been finding myself in sympathy with the Mail in at least one regard: its oft repeated contention that the BBC is prepared to disavow almost every custom or tradition of the British Isles, in order simply to be piously multicultural and "politically correct". I was therefore as exasperated as the Mail was indignant to learn that in future the BBC was to use the designations of BCE and CE instead of AD and BC. The BBC's explanation that it was simply conforming to modern usage did not carry with it the ring of conviction that it might have hoped. This is probably unsurprising given that the BBC's has in recent times introduced a number of practices which it may well characterise as being "modern" but which in fact are arguably motivated by "political correctness". One such "modern" practice that has now been introduced by the BBC, for example, is the use of the term "settled communities" when reporting on immigration issues. The BBC now prefers to use this bizarre Orwellian term to refer to the native English of the British Isles, rather than referring to them simply as "the English", lest the term "the English" should give offence to recent immigrants. Given this kind of BBC "modernity", I felt quite justified in being smugly confident that what I was witnessing was not at all a BBC about to embrace modernity, rather a BBC that was descending further into political correctness. I was however, soon to discover that I might have been over-hasty in decrying the BBC's actions in this instance, - for I have learned to my consternation that the terms CE and BCE, which I thought were indicative of the BBC's desire to disassociate itself from the Christian origins of the modern calendar, are in fact being used by no less a Christian body than the Jehovah's Witnesses. I am no stranger to Jehovah's Witnesses. A very charming lady regularly knocks on my door and engages me in a gentle discourse about the Bible, as well as inquiring about my well-being. She always ends these door-step conversations by pressing a copy of the Watchtower (a publication of the Jehovah's Witnesses organisation) in my hand and urging me to read some article therein together with some additional Bible reading that she recommends. Although I have little inclination to be a Jehovah's Witness, I quite look forward to my encounters with our Jehovah's Witness lady, not least because she is such a mild mannered gentle old soul. I also like reading the Watchtower as it contains not just the usual evangelical message but also articles about historical events and personalities referred to in the Bible, - such as for example, the kings of Persia and the Babylonian Empire. Interestingly, these articles always refer to dates as either CE or BCE. Seeing these articles referring to the Year of Our Lord as years of the Common Era, was to me an unexpected discovery and it just occurred to me that the BBC might have a point after all, and that CE and BCE might indeed be modern usage, and not as I had imagined an attempt on the part of the BBC to eschew practices that happen to be rooted in Christian tradition. It is always chastening to have to admit to one's misjudgements and I am obliged to do so this on this occasion since the BBC can clearly substantiate its case by reference, at the very least, to the Watchtower. But this episode is illustrative of how institutions, like individuals, are frequently judged on their reputation rather than their actions. The BBC has acquired a dubious reputation as an incorrigible recidivist when it comes to acts of political correctness. On this occasion the BBC's reputation would appear to have gone ahead of it and those like me who value the role of the BBC as a public service broadcaster might be forgiven for attributing to it motives that it did not in fact harbour.Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-82465236898106285932011-10-08T15:57:00.000-07:002011-10-08T15:58:32.120-07:00Web AdvertisementsThe facility that the HTTP protocol provides for extracting the IP address of a Web user's computer and its subsequent use by many Websites to determine the country or the geographical region in which the computer is located, has always seemed to me to be an unnecessary intrusion of my privacy. For Websites of course this information is quite useful as it facilitates the display of highly targeted advertisements that focus on products and services that might be of local interest. However, a slightly unnerving aspect of this type of IP-targeted advertising is sometimes witnessed by those of us who occasionally visit foreign-language websites. Here we find to our alarm that the website's advertisements suddenly change of their own volition from the local language to English, as if sensing somehow that we are actually native English speakers. Of course as IT experts know, the website has no such sensory perception, - only the ability to associate the visitor's IP address with the appropriate geographical location and thereby determine his native language. I am a student of German and frequently visit the website of the German newspaper "Bild", with the aim of improving my German, - although that might well be a forlorn hope. To my chagrin, the "Bild" website is also given to this propensity to recast all its advertisements from their normal German into English, the instant it recognises my UK-based IP address. I am now resigned to this, and try to console myself with the thought that as the products being advertised are usually of the kind that have an international market, such as Nokia mobiles or BMW cars, their advertising can not really be characterised as deliberate targeting of unsuspecting UK-based web-surfers, - even when facilitated by the unscrupulous use of surreptitiously obtained IP-address data. However, I was not so sanguine about one particular advertisement that recently appeared on the "Bild" website' The advertisement was in fact a recruiting poster for the Royal Air Force, exhorting its readers to enlist and promising them a rewarding career as an airman. I found this poster bizarre. I could not imagine something so definingly British as service with the RAF being allowed to be sponsored by a foreign website. No rational being in the Air Force, I would have thought, would ever have authorised such a course of action , - not least because of the obvious potential for cruel parody that such a poster had, with its use of a German website as a recruiting agency for one of Her Majesty's services. In my mind's eye I could well see a Monty Pythonesque sketch, with a Prussian recruiting sergeant barking at cowering English recruits. It occurred to me that such thoughtless form of advertising could only be encountered in the wholly computerised world of the Internet, where human wisdom takes a back seat and so-called intelligent software undertakes action and decisions which in the real world belong to humans. Reflecting on this extra-ordinary advertisement and chuckling to myself with amusement as well as disbelief, I could not help wallowing in a certain schadenfreude at the amazing faux-pas that this advertisement had managed to commit. For it told me that the so called artificial intelligence of modern computers, that we humans are constantly reminded of, is in reality only a step away from artificial stupidity, as this astonishing advertisement has clearly demonstrated.Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-877595490085461442011-09-19T16:03:00.000-07:002011-09-19T16:04:00.622-07:00HolidaysIt is quite well-known that when you are retired, the distinction between holidays and working days is blurred and holidays become nothing special as every day tends to be yet another rest day. Life as a continuous holiday is not necessarily a boon as some, as yet unretired, might imagine. It has some distinct drawbacks, not least of which is the state of oblivion it induces in which the individual is completely unaware of the many real world holidays such as Bank Holidays and school vacations which form an integral part of normal working life. Just how easy it is to succumb to this peculiar affliction became apparent to me only last week when I went on a shopping trip to Morrison's accompanied by our great-granddaughter Chenelle. Chenelle had been baby-sitting for her little nephew and niece, so they came along as well. Naturally with youngsters in tow, our first stop was not the store's groceries' section, rather its cafeteria. Two youngsters on school holidays, descending on a counter full of scrumptious goodies, can cause a mayhem that some individuals of a certain age can scarcely cope with. I was never good at controlling grandchildren. My late wife would never entrust me with them, on my own that is, without her presence to keep them in order. It was entirely predictable therefore that I should rapidly be beset, as I was on this occasion, with helpless bewilderment, - not knowing what the children had ordered, nor indeed what I had agreed they could order. As I came up to the cash desk, the man at the till noticed my obvious harassment and said sympathetically, "Well, they should be back at school tomorrow, shouldn't they ?". It took me a little while to comprehend the relevance of his comment. It had completely slipped my mind that schools had been on holidays for the past four weeks. I could only reply sheepishly that I had no idea when the kids were going back to school. "They are our grandchildren you see", I offered by way of an explanation. He laughed, "I have seen more kids in here with their grandparents in the last four weeks, than with their parents", he said, "it seems to be the thing to do". It didn't really surprise me that more kids had been there with their grandparents than their parents. And I had no doubt at all that their grandparents had derived immense pleasure from taking them there and giving them a "treat", as indeed I had. But I did wonder how many of these grandparents had had the awareness to realise that what was for them a normal day, was in fact a day in their schools' holidays for the kids. I like to think that I am not the only, uniquely sad, person who had lost his ability through old age, to distinguish between holidays and normal working days.Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-60062429919031096002011-09-05T15:52:00.000-07:002011-09-05T15:57:37.218-07:00BirthdaysRemembering birthdays has always caused me some difficulties, and on occasion my indifferent memory has inevitably been the cause of some acute embarrassment and even guilt-ridden shame. My late wife Doris fortunately always kept a book in which she carefully listed all the birthdays. Every grandchild, son, family relation and close friend appeared in that book. Indeed the book has proved to be just the idiot's guide that I needed for remembering birthdays. So much so that I have been able to put it to good use over the past year and gain much kudos through it as someone who does not forget birthdays. Family members and friends have been genuinely pleased at of my thoughtfulness in remembering their birthdays and I have been basking inwardly in the feeling of warm glow that their expressions of appreciation have engendered. Yet last week, despite all the help available from the "birthday book" , I nearly slipped up with the date of our great-grand-daughter Jessica's birthday. Having got Jessica's birthday card ready, I phoned our grand-daughter Shelby on the Thursday of the week before last, to announce that I was going to take the card over to them, adding smugly that I knew Jessica's birthday was on the Friday and I did not want to miss it. To which Shelby informed me, rather deflatingly for my ego, that Jessica's birthday was actually that Thursday rather than the Friday. Squirming with embarrassment, I blurted out that I had got the date from Nan's birthday book and never imagined it would be wrong , but Shelby knew exactly why I had got it wrong. Apparently, she had had a conversation every year with Nan about the date of Jessica's birthday and every year she had had to remind her that it was the 25th of August and not the 26th. Quite clearly Shelby's reminders had gone unheeded and Nan's birthday book had remained steadfastly unaltered as far as Jessica's birthday was concerned. It was of course all my own fault. I should have expected something that, - after all these are the endearing ways of grandmothers that make them so lovable.Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-7554112941547495412011-08-25T08:17:00.000-07:002011-08-25T08:23:32.250-07:00ReflectionThis is a blog entry on a rather personal note and not all connected with MCT-Mass-Writing project activity, - but a note nonetheless that I feel compelled to make at this particular time. It has been just over a year since my wife Doris passed away and I cannot really say that I have coped with bereavement as easily as I had hoped I would have done, - being as I am, an adult of 71 years. Of course, my family have been the greatest comfort to me in getting through my sad times. I hate even to think how difficult it might have been otherwise, had I not had their support and their concern for my well being. At the time of the funeral, the vicar had said to me that it takes something like 18 months to get over a bereavement. I had been disbelieving of that, - imagining that whilst that may be true of the grandchildren, who would undoubtedly miss their nan, I as an adult of 71 years would do better than that. I now realise that the vicar was right. Each one of us copes with his bereavement in his own way. For me bereavement, amidst its sorrow, has also been about an intense feeling of missing someone constantly. Friends and family often ask me solicitously if I am lonely. I am not in the least bit lonely but I have this intense feeling of missing Doris at every turn, whether it is in the morning when I am making myself a cup of coffee, or hoovering the front room or even shopping at Morrison's. The feeling that someone, who was always by my side and whose presence in my vicinity I had always taken for granted, should no longer be there, is a feeling of sad bewilderment and even helplessness that is difficult to describe. Certainly I had not experienced it before, either with the death of my mother or my father, both of whom passed away some years ago. I harbour every hope that I will in time get over my bereavement, not least because I have always believed in the old maxim of "picking yourself up and carrying on". Perhaps my memories of Doris and those of our years together, ever increasing in preciousness to me, and which often give me a feeling of both happiness and elation, will give me the strength to "carry on", as they say.
<br />Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-91496450515036693872009-12-23T10:29:00.001-08:002009-12-27T13:04:41.423-08:00Latest Update from DarrelIt was nice to hear the good news that Darrel was fit again and back to work but I felt that it was a bit unfair that he was left with some ten or so Chunks to complete. I am always torn between being willing to help and not wishing to bite off more than I can chew. So I hope I have done right thing by volunteering to write another Chunk !Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-1269179631123940412009-10-11T15:52:00.000-07:002009-10-14T11:04:22.001-07:00Good News About Darrel's ConvalescenceIt was good to hear that Darrel was back at work. A family friend was recently off work with the same sort of eye problem (detached retina) and from talking to her, the recuperation period following treatment wouldn't appear to be a particularly relaxing experience. In her case, for example, sleeping at night was quite a bit uncomfortable as she had to ensure that her head lay in a certain position at all times. More frustratingly, she said, everyday activities such as driving were prohibited. I don't know how well or otherwise Darrel coped with his convalescence, but it must surely be a good sign that he is back at work.Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-72694897004573270722009-08-30T15:24:00.000-07:002009-08-31T15:50:21.960-07:00Rest Cure for DarrelI was sorry to hear about Darrel's eye problems. Health problems are nearly always a cause for anxiety, even when not particularly debilitating but an eye ailment can be quite incapacitating and therfore all the more depressing. I sincerely hope that Darrel makes a full recovery from his eye injury and gets back to his normal routine soon.Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-48996878788313134192009-06-22T14:25:00.000-07:002009-06-22T14:44:58.346-07:00Stand-by ListI have put my name down for the Stand-by list for additional Chunks. I hope I haven't bitten off more than I can chew. I still haven't manged to watch the webcast for 15 June. The instructions on the web page advise you to "click below" for the webcast but I can't seem to find the right web-link to click on !Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-20697508616189801092009-06-11T13:53:00.000-07:002009-06-12T13:38:34.096-07:00June 15 SessionStill in two minds whether to go the June 15 Session. The problem is that I usually have to drive our 16-year old grand-daughter to work in the morning, - my wife having decided that she is too young to be taking a bus. So I'll need to get a stand-in somehow. Other than that there is no reason at all why I shouldn't be able to go. The expense should not be much of a problem as I have my Senior Citizen Railcard. I'll need to find out the exact location of the venue though, - I imagine the OU campus in Milton Keynes is spread over a pretty large area.Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-33783617043838845742009-05-16T15:06:00.000-07:002009-05-17T15:00:59.600-07:00Chunk 38 - Final VersionJust to keep my earlier promise, the final version of Chunk 38 is posted below.<br /><br /><strong>CHUNK 38<br /><br />Introduction</strong><br /><br />The previous chapter introduced the functions that are available in Processing for depicting lines, as well as explaining the programming constructs of loops and arrays which are widely used in almost all non-trivial programs for code efficiency and elegance. In this chapter we are going to continue to explore the topic of "Drawing Lines" and write a simple program that demonstrates the use of Processing's "Line" functions, with the aid of a few loops and some arrays. Additionally, to maintain the element of spontaneity that characterises all good graphics design, we will use the “Random” function provided by Processing.<br /><br /><strong>Functions in Processing for Drawing Lines</strong><br /><br />The set of functions in Processing, that might be considered as being designed primarily for drawing lines, consists of the following:<br /><br />(a) the “line( )” function, which creates a line by joining two points <br />(b) the “point( )” function, which crates a line by plotting a series of points<br />(c) the "image( )" function, which generates a line by plotting a series of pixels<br />(d) the "vertex( )" function, which produces shapes from interconnected lines, each of which connects two vertices (or points). <br /><br />Additionally, Processing provides functions that are concerned with line attributes such as thickness and colour. These are :<br /><br />(a) the “strokeWeight( )” function that controls the thickness of lines<br />(b) the "stroke( ) " function which determines the colour of line<br />(c) the "strokeCap( )" functions which determines the shape of line end-caps (in JAVA2D mode)<br /><br /><strong>Functions Used for Drawing Lines in this Chapter</strong><br /><br />It is not the intention in this chapter to explore all of the above functions for the purposes of the program that we are going to construct for drawing lines. The sub-set of the above functions that we shall use consists of the following:<br /><br />(a) the “line( )” function<br />(b) the "vertex( )" function<br />(c) the “strokeWeight( )” function<br />(d) the "stroke( )" function<br /><br />Our program will also include Processing's iteration construct of the "For" loop, the curve function of "ellipse( )", the "random( )" function and some arrays.<br /><br />The line-drawing functions, “line( )”, “strokeWeight( )”, "stroke( )" and "vertex( )", are briefly explained below.<br /><br />The "line ( )" Function<br /><br />The "Line ( )" function in Processing has the following format:<br /><br />line (x1, y1, x2, y2)<br /><br />where x1, y1 are the X and Y co-ordinates of the start point of the line<br />and x2, y2 are the X and Y co-ordinates of the end point of he line.<br /><br />The co-ordinates associated with the start and end points above are used in the same way as Cartesian X and Y co-ordinates commonly encountered in mathematical expressions. However, it should be noted that in Processing the origin (the point where x=0 and y=0), is located at the top left hand corner of the graphics display window, with the positive y-axis being formed by the window's left edge (see figure 1 below).<br /><br /><br />The "strokeWeight( )" Function<br /><br />The "strokeWeight( )" functions can be used to set the thickness of a line. The syntax of the function is as follows:<br /><br />strokeWeight (width), where the width can be an integer or a float. The "width" value sets the thickness of the line in units of pixels.<br /><br />The "stroke( )" Function<br /><br />The "stroke( )" function sets the colour that is used to draw a line. The syntax of the "stroke( )" function has seven variants. The two that are used in this chapter are:<br /><br />(1) stroke (grey), - where "grey " is an integer or a float between 0 and 255 that specifies a shade between white and black. Note that "stroke(0)" is black while "stroke(255)" is white.<br /><br />(2) stroke (value1, value2, valu3), - where value1 is an integer or a float between 0 and 255 that denotes a shade of the colour red. Likewise values2 and 3 are integers or floats between 0 and 255 that denote shades of green and blue respectively. In each case 255 is the deepest shade of the colour, while 0 indicates its absence.<br /><br /><br /><br />The "vertex( )" Function<br /><br />The "vertex( )" function identifies a point within the display window by its X and Y co-ordinates. When enclosed within a pair of "beginShape( )" and "endShape( )" functions, points declared by a "vertex( )" function are connected together with lines to produce a variety of different shapes. The "beginShape( )" functions can have a number of different "modes" which determine the type of shape produced but the default "mode" produces the shape of an irregular polygon. The syntax of the "vertex ()" function, in 2D space, is:<br /> <br /> vertex (x, y) - where "x" and "y" are the X and Y co-ordinates respectively.<br /><br />Figure-2 below shows the construction of a square using the "vertex( )" function together with "beginShape( )" and "endShape( )" functions.<br />Drawing Lines<br /><br />Having acquainted ourselves with the "line( )" and "vertex( )" functions above we can now proceed to the next stage of putting them together in a program for drawing lines. The program that we aim to construct concerns "oscillations". The program is modelled on the "Ying Yang" program of Ira Greenberg (see Processing pp 188-189), in that, it is concerned with drawing randomly oscillating lines. It has however, been intentionally designed to avoid using the same "points( )" function that Greenberg uses. <br /><br />"Drawing Lines 3 - Oscillations" - Program Outline<br /><br />Our program for drawing oscillating lines, which is being labelled "Drawing Lines 3 - Oscillations" to distinguish it from the line drawing programs of earlier chapters, is in outline as follows:<br /><br />(a) define the size and background shading to be used for the display window<br />(b) declare and initialise the constants and the variables to be used in the program<br />(c) declare and initialise the matrices to be used in the program<br />(d) Use the "line( )" function to draw oscillating lines of random fluctuations in the display window<br />(e) use the "vertex( )" function to construct lines that form a "maze" structure as background<br />(f) Use the "line( )" function to draw diagonal lines with random spacing in the display window<br />(g) use the "ellipse( )" function to draw a series of concentric ellipses to add to the visual impact of the background<br /><br />"Drawing Lines 3-Oscillations"- Program Code<br /><br />In Processing code, the "Drawing Lines 3 - Oscillations" program is as follows:<br /><br />size (600, 600);<br />background (0);<br /><br />//oscillations variables horizontal<br /><br />float vertices = 60;<br />int totalRows= 10; // need to be <= height)<br />int rowGap = height/totalRows;<br />float rowPush = -1;<br />float rowFlip = 0;<br />int randPush = 10;<br /><br />//diagonal lines variables<br /><br />int cellWidth = width/int(vertices);<br />int cellHeight = height/int(vertices);<br />int randHt = 5;<br />int randWidth = 5;<br /><br />//maze pattern variables <br /><br />float x1, y1;<br />x1= width/2;<br />y1= height/2;<br />int spacing=10;<br /><br />// strokeWt matrix for zig zag lines thickness<br /><br />float[] strokeWt = new float [totalRows+1];<br /> for (int j=1; j <totalRows+1; j++){<br /> strokeWt[j] = 1+(3*j/10);<br /> }<br /><br />//randCellHt matrix for diagonal lines bottom right hand corner<br /><br />float[] randCellHt = new float [int(vertices)+1];<br /> for (int j=1; j <int(vertices)+1; j++){<br /> randCellHt[j] = cellHeight+int(random(randHt));<br /> }<br /><br />//randCellWidth matrix for diagonal lines top left hand corner<br /><br />float[] randCellWidth = new float [int(vertices)+1];<br /> for (int j=1; j <int(vertices)+1; j++){<br /> randCellWidth[j] = cellWidth+int(random(randWidth));<br /> }<br /><br />//oscillating horizontal lines<br /><br />stroke (0,255,0);<br />for (int y=rowGap; y<height; y+=rowGap ){<br /> for (int x=1; x< vertices; x+=3){<br /> rowFlip -= rowPush;<br /> if ( x % (1 + int(random(randPush))) == 0){<br /> rowPush*=-1;<br /> }<br /> strokeWeight (strokeWt[y/rowGap]);<br /> if ( (s = strokeWt[y/rowGap]) > 3){<br /> strokeWeight (3);<br /> }<br /> line((width/vertices*x), y, (width/vertices*(x+1)), (y+rowFlip));<br /> line((width/vertices*(x+1)), (y+rowFlip), (width/vertices*(x+2)), y-(2*rowFlip));<br /> line((width/vertices*(x+2)), y-(2*rowFlip), (width/vertices*(x+3)), y);<br /> }<br /> }<br /><br />// maze pattern lines<br /><br />stroke (255);<br />strokeWeight (1);<br />noFill();<br /><br />beginShape();<br /> vertex (x1,y1);<br /> vertex ((x1+(spacing*2)), y1);<br /> for (int j=1, k=1; j < (width/(spacing*2)); j++, k++) {<br /> vertex (x1+(spacing*(j+1)), y1+(spacing*k));<br /> vertex (x1-(spacing*j), y1+(spacing*k));<br /> vertex (x1-(spacing*j), y1-(spacing*k));<br /> vertex (x1+(spacing*(j+2)), y1-(spacing*k));<br /> }<br />endShape();<br /> <br />//Diagonal lines bottom right corner<br /><br />stroke(150);<br />strokeWeight (1);<br />for (int i=cellHeight, k=1; i<height; i+=cellHeight, k++){<br /> line(width-(i+randCellHt[k]), height, width, height-(i+randCellHt[k]));<br /> }<br /><br />//Diagonal lines top left corner<br /><br />stroke(150);<br />strokeWeight (1);<br /> for (int i=cellWidth, k=1; i<width; i+=cellWidth, k++){<br /> line(0, height-(i+randCellWidth[k]), width-(i+randCellWidth[k]), 0);<br /> }<br /><br />// background ellipse<br /><br /> strokeWeight (1);<br /> stroke (150);<br /> noFill();<br /> for (int x=1; x< vertices; x+=2){<br /> ellipse((width/2), (height/2), width,((height/2)+(x*5)));<br /> }<br /> <br />A detailed explanation of the program code is given below<br /><br />Display Window Definitions<br /><br />The first two lines of the program code, i.e.<br /><br /> size (600, 600);<br /> background (0);<br /><br />set the size of Processing's display window and its background colour which in this case is black. Note that "background (255)" would have had the opposite effect of displaying the background as white. In the "size" statement, the first parameter refers the width of the display window, while the second sets the height.<br /><br />Definition of Variables Used with Oscillations Display<br /><br />This section of the code defines and initialises the variables that are used for the display of oscillating lines. The variables are:<br /><br />float vertices = 60;<br />int totalRows= 10; // need to be <= height)<br />int rowGap = height/totalRows;<br />float rowPush = -1;<br />float rowFlip = 0;<br />int randPush = 10;<br /><br />The variable "vertices" refers to the points along the x-axis, at which the line displayed changes direction to exhibit an oscillating pattern. The "totalRows" variable sets the number of lines that are to be displayed in the window. In this case, the number is set to be ten and as the associated comment indicates, this number cannot be allowed to exceed the display window's height, as declared in the "size" statement. The "rowGap" variable, as the name suggest, refers to the distance between each horizontal line shown in the window. The "rowPush" and the "rowFlip" variables are used, to control the amount by which the line fluctuates in the vertical direction. These two variables are used in conjunction with the "random( )" function, to make the fluctuations more stochastic. The "randPush" variable is used to "seed" the "random( )" function. In this instance, the function will return a random number between zero and ten. <br /><br />Variables Used with Diagonal Lines Display<br /><br />The next set of variables in the program code are concerned with displaying diagonal lines. They are:<br /><br />int cellWidth = width/int(vertices);<br />int cellHeight = height/int(vertices);<br />int randHt = 5;<br />int randWidth = 5;<br /><br />The "cellWidth" and "cellHeight" variables set the "fixed" distance between the diagonal lines. To add an element of creative spontaneity, the "fixed" distance is augmented by a random factor which is calculated by using "randHt" and "randWidth" variables as "seeds" for the "random( )" function. <br /><br />Maze Pattern Variables<br /><br />In this part of the program, the variables associated with the display of a maze pattern are declared and initialised. These variables are the following:<br /><br />float x1, y1;<br />x1= width/2;<br />y1= height/2;<br />int spacing=10;<br /><br />The variables x1 and y1 form the arguments of the "vertex( )" function that plots individual points within the display window. These points are then joined together as lines by using the "beginShape( )" and "endShape( )" functions. Variables x1 and y1 are initialised to be "width/2" and "height/2" respectively, in order to begin the maze in the centre of the display window.<br /><br />Declaration and Initialisation of Matrices<br /><br />This section of the program declares and initialises three matrices which are subsequently referred to in the latter stages of the program. The first of these matrices is the "strokeWt" matrix which is used to control the thickness of the oscillating lines being drawn by the program. <br /><br />float[] strokeWt = new float [totalRows+1];<br /> for (int j=1; j <totalRows+1; j++){<br /> strokeWt[j] = 1+(3*j/10);<br /> }<br /><br />The "strokeWt" matrix is declared as a "float" type, as the values that its elements hold are decimal fractions rather than whole numbers. The number of elements in the array is one greater than the total number of rows being displayed. This is to compensate for the indexing convention used with Java arrays, where the first element of the array is element 0 rather than 1. <br /><br /><br />float[] randCellHt = new float [int(vertices)+1];<br /> for (int j=1; j <int(vertices)+1; j++){<br /> randCellHt[j] = cellHeight+int(random(randHt));<br /> }<br /><br />float[] randCellWidth = new float [int(vertices)+1];<br /> for (int j=1; j <int(vertices)+1; j++){<br /> randCellWidth[j] = cellWidth+int(random(randWidth));<br /> }<br /><br />The " randCellHt" and the "randCellWidth" matrices are used with the display of diagonal lines. The matrices are initialised with a set of random values that are later used for randomly varying the distance between adjacent diagonal lines. The "randHt" and "randWidth" are variables that are used as "seeds" for the "random( )" function. Because the "random( )" function returns a "float" value, it is converted to an "integer" value using the "int( )" function.<br /><br />Oscillations<br /><br />The code in this part of the program addresses the main task of exploring the "line( )" function to produce graphic effects. The code that produces oscillations is as follows:<br /><br />stroke (0,255,0);<br />for (int y=rowGap; y<height; y+=rowGap ){<br /> for (int x=1; x< vertices; x+=3){<br /> rowFlip -= rowPush;<br /> if ( x % (1 + int(random(randPush))) == 0){<br /> rowPush*=-1;<br /> }<br /> strokeWeight (strokeWt[y/rowGap]);<br /> if ( (strokeWt[y/rowGap]) > 3){<br /> strokeWeight (3);<br /> }<br /> line((width/vertices*x), y, (width/vertices*(x+1)), (y+rowFlip));<br /> line((width/vertices*(x+1)), (y+rowFlip), (width/vertices*(x+2)), y-(2*rowFlip));<br /> line((width/vertices*(x+2)), y-(2*rowFlip), (width/vertices*(x+3)), y);<br /> }<br /> }<br /><br />The "stroke( )" function sets the colour of the oscillating lines to be green. The main loop declared by the "for" statement, "for (int y=rowGap; y<height; y+=rowGap )", pushes each new line of oscillations down the y-axis by the pre-set value for " rowGap". Thus, if the value of the "rowGap" variable (which is declared as " int rowGap = height/totalRows") is 60, then each line of oscillations in the display window will be 60 points apart. <br /><br />The next nested loop in the above code, "for (int x=1; x< vertices; x+=3)", propels the line being drawn along the x-axis, and causes it to oscillate in a vertical direction with each increment of the variable "x". <br /><br />The " rowFlip" and " rowPush" variables together control the degree of oscillation that the line exhibits. The "if" statement, "if ( x % (1 + int(random(randPush))) == 0)", adds a further degree of randomness to the oscillation by using the "modulo" operator (i.e. "%") together with the "random ( )" function. The "modulo" operator takes two operands, divides the first by the second, and returns the remainder as the resultant value. In this instance, because the second operand consists of a random value, there is a possibility that it may turn out to be zero, in which case it would cause an error, as division by zero is not permissible. To avoid this eventuality, the second operand always has 1 added to the value returned by the "random( )" function (hence, "(1 + int(random(randPush))"). Finally, the "if" statement checks whether the result of the modulo operation is zero, and if so sets the "rowPush" variable to a default negative value by multiplying it with minus 1. <br /><br />The next three lines are concerned with setting the strokeWeight for depicting the line. The strokeWeight function takes as its argument an element of the "strokeWt" matrix, as indexed by the value of "y", the counter for the main loop. Thus there is a different strokeWeight for every oscillating line. The check to see that the strokeWeight does not exceed 3, has been included merely to avoid the use of too heavy a strokeWeight, which tends to distort unduly the shape of the oscillation.<br /><br />The final three lines in the above code use the "line( )" function to depict an oscillating line across the display window.<br /><br />Maze Pattern Lines<br /><br />stroke (255);<br />strokeWeight (1);<br />noFill();<br /><br />beginShape();<br /> vertex (x1,y1);<br /> vertex ((x1+(spacing*2)), y1);<br /> for (int j=1, k=1; j < (width/(spacing*2)); j++, k++) {<br /> vertex (x1+(spacing*(j+1)), y1+(spacing*k));<br /> vertex (x1-(spacing*j), y1+(spacing*k));<br /> vertex (x1-(spacing*j), y1-(spacing*k));<br /> vertex (x1+(spacing*(j+2)), y1-(spacing*k));<br /> }<br />endShape();<br /><br />This section of the code uses the "begiShape( )" and endShape( )" functions together with the "vertex ( )" function, to draw a maze pattern. The variables x1, y1 and "spacing" have been defined in the "variables" section of the program. The correct operation of the loop requires that that the initial line in the maze is declared separately as a single line. Hence the first two "vertex( )" declarations after "beginShape( )".<br /><br />Drawing Diagonal Lines<br /><br />In this part of the program, the "line( )" function is used to draw diagonal lines across the display window. <br /><br />//Diagonal lines bottom right corner<br /><br />stroke(150);<br />strokeWeight (1);<br />for (int i=cellHeight, k=1; i<height; i+=cellHeight, k++){<br /> line(width-(i+randCellHt[k]), height, width, height-(i+randCellHt[k]));<br /> }<br /><br />//Diagonal lines top left corner<br /><br />stroke(150);<br />strokeWeight (1);<br /> for (int i=cellWidth, k=1; i<width; i+=cellWidth, k++){<br /> line(0, height-(i+randCellWidth[k]), width-(i+randCellWidth[k]), 0);<br /> }<br /><br />For the purposes of drawing diagonal lines, the display window is regarded as being bisected into two adjacent triangles. The first loop in the above code "for (int i=cellHeight, k=1; i<height; i+=cellHeight, k++)" draws diagonal lines in the right hand triangle (which has its apex at point 600,600) , while the second loop, "for (int i=cellWidth, k=1; i<width; i+=cellWidth, k++), carries out the same function for the left hand triangle (which has its apex at point 0,0). The spacing between the lines consists of two elements, - a fixed element that is set by the "cellWidth" and "cellHeight" variables and a random element that is fetched from the "randCellHt" and "randCellWidth" matrices, both of which are initialised earlier in the program. The loop uses two variables as counters rather than the usual one. The variable "i" is used to assign the fixed part of the spacing and the variable "k" to assign the random element. <br /><br />Concentric Ellipses<br /><br />The code contained in the final section of the program draws a series of concentric ellipses whose overall effect is to enhance the visual impact of the background. <br /><br /> strokeWeight (1);<br /> stroke (150);<br /> noFill();<br /> for (int x=1; x< vertices; x+=2){<br /> ellipse((width/2), (height/2), width,((height/2)+(x*5)));<br /> }<br /><br />The "noFill( )" statement prevents the space within the concentric ellipses from being filled with white space. Without the "noFill( )" statement, the concentric ellipses would appear as a blur. The four arguments to the "ellipse( )" function are the X co-ordinate of the ellipse's origin, the Y coordinate of the origin, the width and the height of the ellipse, respectively. The origin of the ellipse is at the centre of the display window, its width is the width of window with the height initially set at half the height of the display window.<br /><br />The output from the "Oscillations" program is displayed at Figure-3 and Figure-4 below.<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPlgdoIiajS999TVi7tat22UkUUEngyPB868mhwpUI2XC5jQQ1uFF9sZTzH33hpVr44E0jeVy7iO987LrbMPstQl5cXdz5vuyJEwUHac9Do_FKLl3kxPYv7GHZnosBVNbBj6V01Yqj8GZW/s1600-h/chunk38pic1.bmp"><img style="cursor:pointer; cursor:hand;width: 320px; height: 302px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPlgdoIiajS999TVi7tat22UkUUEngyPB868mhwpUI2XC5jQQ1uFF9sZTzH33hpVr44E0jeVy7iO987LrbMPstQl5cXdz5vuyJEwUHac9Do_FKLl3kxPYv7GHZnosBVNbBj6V01Yqj8GZW/s320/chunk38pic1.bmp" border="0" alt=""id="BLOGGER_PHOTO_ID_5336550910930111906" /></a><br /><br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5jSfX877SVt1KxPXoERsO0EBo9ZcydknNGFAH7gRJFM-PHesZzglxjPb1cfr9XVBzQSQ-Jcilj1P1J4KuLMwD5s0p58Cts2VfGqzqtYqilbE1lGbid-jp2M8mtl20JubGLd1GtuS2BwnY/s1600-h/chunk38pic2.bmp"><img style="cursor:pointer; cursor:hand;width: 320px; height: 301px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5jSfX877SVt1KxPXoERsO0EBo9ZcydknNGFAH7gRJFM-PHesZzglxjPb1cfr9XVBzQSQ-Jcilj1P1J4KuLMwD5s0p58Cts2VfGqzqtYqilbE1lGbid-jp2M8mtl20JubGLd1GtuS2BwnY/s320/chunk38pic2.bmp" border="0" alt=""id="BLOGGER_PHOTO_ID_5336552639694049602" /></a><br /><br />Amendments to the "Oscillations" Program - "Bi-directional Oscillations"<br /><br />The "Oscillations" program above may be amended to produce "Bi-directional Oscillations" by adding the code shown below.<br /><br />//Amendments for Bi-directional Amendments<br /><br />//oscillations variables vertical<br />int totalCols= 10; // need to be <= 300 (or height)<br />int colGap = width/totalCols;<br />float colPush = -1;<br />float colFlip = 0;<br />stroke (0,255,0);<br />strokeWeight(2);<br /><br />//oscillations vertical<br />for (int x=colGap; x<width; x+=colGap ){<br /> for (int y=1; y< vertices; y+=3){<br /> colFlip -= colPush;<br /> if ( y % (1 + (int) (random(randPush))) == 0){<br /> colPush*=-1;<br /> }<br /> line( x, (height/vertices*y), (x+colFlip), (height/vertices*(y+1)));<br /> line((x+colFlip), (height/vertices*(y+1)), x-(2*colFlip), (height/vertices*(y+2)) );<br /> line(x-(2*colFlip), (height/vertices*(y+2)), x, (height/vertices*(y+3)));<br /> }<br />} <br /><br />The above code works in the same fashion as that at explained at "Oscillatons" above, except that it operates on columns instead of rows. The amended program in full is as follows:<br /><br /> <br />size (600, 600);<br />background (0);<br /><br />//zig zag variables horizontal<br /><br />float vertices = 60;<br />int totalRows= 10; // need to be <= height)<br />int rowGap = height/totalRows;<br />float rowPush = -1;<br />float rowFlip = 0;<br />int randPush = 10;<br /><br />//diagonal lines variables<br /><br />int cellWidth = width/int(vertices);<br />int cellHeight = height/int(vertices);<br />int randHt = 5;<br />int randWidth = 5;<br /><br />//maze pattern variables <br /><br />float x1, y1;<br />x1= width/2;<br />y1= height/2;<br />int spacing=10;<br /><br />// strokeWt matrix for zig zag lines thickness<br /><br />float[] strokeWt = new float [totalRows+1];<br /> for (int j=1; j <totalRows+1; j++){<br /> strokeWt[j] = 1+(3*j/10);<br /> }<br /><br />//randCellHt matrix for diagonal lines bottom right hand corner<br /><br />float[] randCellHt = new float [int(vertices)+1];<br /> for (int j=1; j <int(vertices)+1; j++){<br /> randCellHt[j] = cellHeight+int(random(randHt));<br /> }<br /><br />//randCellWidth matrix for diagonal lines top left hand corner<br /><br />float[] randCellWidth = new float [int(vertices)+1];<br /> for (int j=1; j <int(vertices)+1; j++){<br /> randCellWidth[j] = cellWidth+int(random(randWidth));<br /> }<br /><br />//zig zag pattern horizontal lines<br /><br />stroke (0,255,0);<br />for (int y=rowGap; y<height; y+=rowGap ){<br /> for (int x=1; x< vertices; x+=3){<br /> rowFlip -= rowPush;<br /> if ( x % (1 + int(random(randPush))) == 0){<br /> rowPush*=-1;<br /> }<br /> strokeWeight (strokeWt[y/rowGap]);<br /> if ((strokeWt[y/rowGap]) > 3){<br /> strokeWeight (3);<br /> }<br /> line((width/vertices*x), y, (width/vertices*(x+1)), (y+rowFlip));<br /> line((width/vertices*(x+1)), (y+rowFlip), (width/vertices*(x+2)), y-(2*rowFlip));<br /> line((width/vertices*(x+2)), y-(2*rowFlip), (width/vertices*(x+3)), y);<br /> }<br /> }<br /><br />// maze pattern lines<br /><br />stroke (255);<br />strokeWeight (1);<br />noFill();<br /><br />beginShape();<br /> vertex (x1,y1);<br /> vertex ((x1+(spacing*2)), y1);<br /> for (int j=1, k=1; j < (width/(spacing*2)); j++, k++) {<br /> vertex (x1+(spacing*(j+1)), y1+(spacing*k));<br /> vertex (x1-(spacing*j), y1+(spacing*k));<br /> vertex (x1-(spacing*j), y1-(spacing*k));<br /> vertex (x1+(spacing*(j+2)), y1-(spacing*k));<br /> }<br />endShape();<br /> <br />//Diagonal lines bottom right corner<br /><br />stroke(150);<br />strokeWeight (1);<br />for (int i=cellHeight, k=1; i<height; i+=cellHeight, k++){<br /> line(width-(i+randCellHt[k]), height, width, height-(i+randCellHt[k]));<br /> }<br /><br />//Diagonal lines top left corner<br /><br />stroke(150);<br />strokeWeight (1);<br /> for (int i=cellWidth, k=1; i<width; i+=cellWidth, k++){<br /> line(0, height-(i+randCellWidth[k]), width-(i+randCellWidth[k]), 0);<br /> }<br /><br />// background ellipse<br /><br /> strokeWeight (1);<br /> stroke (150);<br /> noFill();<br /> for (int x=1; x< vertices; x+=2){<br /> ellipse((width/2), (height/2), width,((height/2)+(x*5)));<br /> }<br /><br />//Amendments for Bi-directional Amendments<br /><br />//oscillations variables vertical<br />int totalCols= 10; // need to be <= 300 (or height)<br />int colGap = width/totalCols;<br />float colPush = -1;<br />float colFlip = 0;<br />stroke (0,255,0);<br />strokeWeight(2);<br /><br />//oscillations vertical<br />for (int x=colGap; x<width; x+=colGap ){<br /> for (int y=1; y< vertices; y+=3){<br /> colFlip -= colPush;<br /> if ( y % (1 + (int) (random(randPush))) == 0){<br /> colPush*=-1;<br /> }<br /> line( x, (height/vertices*y), (x+colFlip), (height/vertices*(y+1)));<br /> line((x+colFlip), (height/vertices*(y+1)), x-(2*colFlip), (height/vertices*(y+2)) );<br /> line(x-(2*colFlip), (height/vertices*(y+2)), x, (height/vertices*(y+3)));<br /> }<br />} <br /><br />The output form the amended "Bi-directional Oscillations" program is shown at Figure -5 below<br /><br /><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhM8zn3jidFMEEQmWV0gdxRGVTUtGa4trH_xc_UuGbTzEGfNYBsxwlNRRtQnHIjbJjV_z0wy6CA2Ttt0t9yUJS1MqrAV3uMd2rksrP2WnN5HacWQIYJk74pM5lHhm5CvJqJ6PQsjOx_gnsn/s1600-h/chunk38pic3.bmp"><img style="cursor:pointer; cursor:hand;width: 320px; height: 302px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhM8zn3jidFMEEQmWV0gdxRGVTUtGa4trH_xc_UuGbTzEGfNYBsxwlNRRtQnHIjbJjV_z0wy6CA2Ttt0t9yUJS1MqrAV3uMd2rksrP2WnN5HacWQIYJk74pM5lHhm5CvJqJ6PQsjOx_gnsn/s320/chunk38pic3.bmp" border="0" alt=""id="BLOGGER_PHOTO_ID_5336915588637559058" /></a>Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-13222019935309525752009-05-13T14:12:00.000-07:002009-05-13T14:33:25.229-07:00Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-46306947268402918962009-05-11T15:44:00.000-07:002009-05-11T15:49:50.594-07:00Chunk 38Managed to complete Chunk 38, although a couple of days late. On the whole, I have enjoyed the experience. I am hoping, of course, that I have got my two chunks about right. I'll attach the final versions of both Chunks to-morrow, - after I have worked the best way to upload the graphic output.Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0tag:blogger.com,1999:blog-4308017603275267335.post-78037529691116578132009-05-05T15:34:00.000-07:002009-05-05T15:50:08.358-07:00Chunk38 - UpdateStill in the process of completing the text for Chunk38, but hopefull that I'll be able to meet the deadline (7/5/09). The start on Chunk 38 was a bit confused for me. Darrel had nominated me via the "Book Fragments" blog, but I had rather thought that he would nominate me by e-mail. Just as well that I checked his blog. Anyway, the chunk has made good progress so far, and should be ready in time.Neil Keskarhttp://www.blogger.com/profile/16368906669034114162noreply@blogger.com0