Love of music, intent of search, blessing of technology

Indian mobile service and internet provider, Airtel, recently launched their new advertisement –

I came across this advertisement today while watching TV and was instantly drawn in by its concept, as well as the haunting piano notes in the background. No sooner than I began wondering who could have written such a beautiful piece of music, I thought of the Shazam application on my new Android phone, which listens to a particular song, discovers its roots and then tags it with the original album name, song / music writer and the genre (lyrics too in case of songs). I just couldn’t wait to find out! I turned ON the application and waited for it to show me the results. About 10 seconds later, it told me that the solo piano piece was written by Italian composer and pianist Ludovico Einaudi, and features in his album ‘I Giorni’ (The Days).

Now, I could hardly wait to hear the full song. I logged on to YouTube and searched for the album. As expected, YouTube’s search engine didn’t disappoint and provided me with the video I was looking for –

As you’ll probably agree, its one of the most beautiful pieces of music one can ever compose and play on the piano. It tends to bring out all the wonderful memories and true emotions in your heart, and makes you want to cry every time you listen to it.

For me this was an ode not just to the charming world of instrumental music, but also to ‘search technology’ which, within a matter of seconds found me the original song and took me to another realm altogether!

Advertisements

A strangely fulfilling day

Ok, so how do you brand a day as ‘strangely fulfilling’? Well, here’s my take on it. You go into a day feeling a little down on your health. Also, you aren’t exactly in a great frame of mind since the past few weeks so you don’t expect anything miraculous to happen that day either, plus you know you have a long week ahead full of work and the little health problem I mentioned earlier might unnecessarily impede your best efforts. You seek some random inspiration, maybe from the people and happenings around you, but aren’t quite sure where to find it from.

This Monday (well, it had to be a Monday, right 😉 ), I started my day exactly like that. I had been ‘under the weather’ for the whole of last week; got rain-wet once to often and paid the price by having a sore throat and a slight fever over the weekend. The project I’m working on for a client is in its final stages so I couldn’t really stay at home. I almost dragged myself to the workplace, unshaven and all, and settled down in the day’s planned tasks. About half-an-hour after lunch-time I got a call from the technical advisor (the person whom I work with in the company) saying that he wanted to test my software program for some live calculations. Well, this program I’m developing is an optimized, automated substitute for an extremely lengthy and tedious manual calculation process for Crane design. We started running some tests on it, and after a few tweaks to the output we got the required results in absolutely no time. He was satisfied. I too was satisfied.

Gantry Crane (Image courtesy: Emech.in)

The number of calculations I’ve had to code in to this software program easily outnumber the sum total of the Math problems I solved as homework during all my schooling years put together! So you can see I was on tenterhooks while we were running the tests, hoping for them to succeed. I realized later that these tests made it possible for the sales team to answer the queries of a particular client and give him a quote by the end of the day – a task which seemed difficult that morning. It was sort of fruition for my efforts during the last 3 months.

Along the way I also interacted with a few people from the sales team and got to know them better. Being a person who loves to interact and make friends with like-minded people, I relished this opportunity. In a high-pressure job environment driven by a world of cut-throat competition, I guess it means a lot to these guys if something helps in quickening their response to their respective clients.

For some time, I almost forgot about my sore throat. Ironically it didn’t forget me 😦 , and by the end of the day it caught up with my growing enthusiasm. I drove back home, carrying a slight temperature. I really needed something different to divert my attention away from body-ache, paining-throat and medicines. “A good, light, comedy movie would be great”, I thought. I picked up the TV remote and flicked to the movie channels section, and there it was! They were playing a 1980’s classic, the tremendously hilarious Airplane!. Full of sarcastic humor, it reminded me of another of my favorite movies belonging to the same genre – Hot Shots!. Really, I couldn’t have asked for a better remedy that evening!

It was almost time for dinner when I finished watching the movie, but due to the nauseating feeling I didn’t really feel like having normal food. “Something different?”, I though to myself and peeped into the kitchen. I realized that we had Foccacia bread in there. Mom and me then embellished it with some Tomatoes, Onion and Chillies, put it in the microwave oven and after a few minutes I had an absolutely wonderful dinner ready for me!

Focaccia bread with toppings of Tomatoes, Onions and Chillies

Believe me, it tasted GOOD! The tummy was full by now, but the exertion had taken its toll on my physical-condition, which was quite bad to begin with. As I headed toward the warmth of my bed, though, I began thinking about the day. It had started out as any other day, and could have ended just the same without any special mentions anywhere, but it didn’t. It wasn’t as if I had discovered a new chemical element or had achieved something just as ground-breaking, but 3 very different things had made the day ‘fulfilling’ in their own strange way! 🙂

I was reminded of a quote from the movie Peaceful Warrior (2006) –

“There are no ordinary moments.”

Well, I think there are no ordinary days either! In the end, everything boils down to your perspective.

Can software ever be 100% tested?

By now everyone would have at least heard of the longest match in Tennis history that was played at this year’s Wimbledon between John Isner and Nicolas Mahut. As unearthly as their will, effort, and stamina sounds, the match was also a very good example of an earthly peculiarity – ‘errors in software applications’.

Wimbledon Scoreboard (Image courtesy: Wikimedia Commons)

During that legendary final set, the stadium scoreboard went kaput after displaying ’47-47′. So the stunned spectators as well as the weary chair umpire had to rely only on manual records of the game score for the never-ending set.

Why? Well, nobody at IBM had thought that two supposedly sane individuals would ever reach that figure, let alone cross it! Not only that, even the online scoreboard reset itself after displaying ’50-50′! Were the programmers wrong? Now, that’s a tricky question.

For any amount of budget, there has to be a limit until where software applications, like automatic scoring systems, can be tested. You can either trust a wise man who magically comes up with certain values, or base your limits on certain empirical data, the fact is that these limits cannot be infinity. Software testers are paid their wages to put the application through the paces. Yes, there are fixed rules and conditions (test cases) to satisfy, but hardcore testers pride themselves in thinking of innovative conditions where the application might break. All this is added to the already exhaustive list of test scenarios, but how exhaustive can ‘exhaustive’ be! There will always be certain cases and non-conventional types of inputs where even the best pieces of softwares will crack.

The impact of this might not sound as catastrophic in a Tennis match scenario, but consider this happening to a near-perfect auto-pilot application in the aircraft you might be boarding during your business trip next week, or to a highly secure online-banking and money-transfer application which your bank uses to handle multi-million dollar transactions. The knowledge of some recent unsolved aircraft accidents and some computer hacking incidences is enough to realize the severity of the issue. A bit ruffled now, are you?

The point is not to get hysterical about the state of affairs, but to remain alert. Always look at the odds of these things happening, e.g. the ratio of air-accidents to the amount of aircraft taking off and landing on airports all over the world on any given day, or the ratio of banking-frauds to the total amount of money being handled online every hour. There are hundreds of thousands of people working in the software field which are dedicated towards producing secure and highly-reliable pieces of software, be it for the microwave oven in your kitchen or the International Space Station (ISS) flying many miles above you.

Many would remember the recent controversies and product recalls by the auto major Toyota regarding the software (embedded firmware) in its hi-tech cars. As more features are added to existing systems and software gets more and more complex, the chances of it behaving erratically even after months of thorough testing increases! Also, not every issue that occurs is easily reproducible back at the factory. Not everybody in this world is a software developer and so not everybody actually understands this fact. The thing we all have to remember before starting the blame-game when some untoward incident happens is that nothing can be 100% secure; that’s a myth. People work day and night to iron out any known (and imaginatively unknown) issues and test cases, which, let me tell you, can run into thousands. There is always scope for improvement which, like it or not, takes time. Neither can companies stop selling cars until that time, nor can airlines stop flying the aircraft in their arsenal until every possible glitch is resolved.

The 2035 edition of the Audi RSQ Sport Coupe (Image courtesy: PopularMechanics.com)

We humans aren’t perfect, then how can we expect the machines we make to be so; unless of course they are made by a Positronic brain, as mentioned in Issac Asimov‘s sci-fi classic ‘I, Robot‘!

The best analogy I can think of is that of a letter by Pete Docter, the director of the highly successful Pixar movies ‘Monsters, Inc.‘ (2001) and ‘Up‘ (2009), where he had quoted Pixar’s John Lasseter. He had said – “Pixar films don’t get finished, they just get released.” I think the same logic applies to the world of software applications!

My first teaching experience

Over the years there have been some professions which have been termed as ‘noble’. The medical field or nursing is one. Teaching is another, and the following is an account of the experience I’ve had with it.

I’ve always believed that though you are the best person to judge yourself, you never know the full extent of your abilities and it takes some person or an event to bring them out. The same was the case with me. After looking at how I used to interact with people around me, and the technical background I had, a friend of mine thought that I should forward my name for a position of guest lecturer which was open in his college. To be frank, at that point I thought that he was either playing a ‘very-belated’ April Fool’s joke on me, or had totally freaked out! I mean.. during my schooling and college life I had been a fairly good student, but I had seen both – very good days (like standing in the top 2-3 in class for some modules, especially during my C-DAC days) and very bad days (like flunking many subjects at a time!). Plus I had almost taken all the liberties you can think of in the ‘free’ college life, and was far from an ideal person to coach a bunch of guys. After all I regard it to be a noble profession and only noble men-women should do it (though that is rarely the case in schools and colleges across the country).

Then I was reminded of a fact – a very clever person, though eligible, may not be good teacher but an average person, who doesn’t have a great history of achievements, may turn out to be good orator and can explain the subject to someone in a lucid manner. “That’s what teaching is all about, isn’t it..”, I thought.

So after turning down one opportunity, I took up the challenge the following year. It was the position of a guest lecturer for the Mobile Computing subject at the Ferguson College in Pune for the MCS course third semester. Not only was this subject an all-time favorite of mine, but after having a day job as a software developer and working on unrelated technologies at times, I thought this would be a wonderful opportunity to keep in touch with some topics I love and a get a chance to know the new developments in an ever updating technological field during the preparation for the lectures. It would also give me something constructive to do on weekends, apart from setting up a second line of work to go with my primary job, which is the need of the hour in an effervescent IT industry.

So there I was.. already committed to taking the lectures and with absolutely no idea of what topics to start with of how to manage all of them in the given time frame. Plus there was a certain nervousness which you feel before going on the stage and facing an audience for example. Naturally there was also a fear of failure, but in the end I did not want to regret not trying to something like this ever in life.

I eventually prepared myself for my first ‘encounter’ with the students. Unfortunately I have a ‘bad’ habit of never reaching a given place on time.. and the first day was no different (well I admit that even after my concerted efforts over the next 4 months, this track record did not improve). So there they were.. about 60 students waiting for me in the classroom. Obviously I was jittery at the start but tried hard not to show it. As the first few minutes went by, I started becoming more and more comfortable in my new role. I tried to take everything in a light vein and enjoy the time there. The first lecture, apart from some funny incidences, went very well – much to my amazement.

The lecture on the following day was the crucial one. I thought that even if roughly 40% of the guys present on the first day turn up, then I have won the first battle. When I saw the class strength on that day (a Sunday) – little more then 60% of the first day – I knew the challenge I had accepted had paid off!

The next few lectures were fun. I used to stay up at nights during the week to prepare for the lectures on the weekends, but I used to like it. Well I must admit that like every batsmen who goes out to open a new innings in Cricket, I used to have that strange feeling in my stomach every time I went up to face the students. But it was fun!

Each day was like a new challenge.. a new test for me. I had to explain the topics in as simple but effective way as possible. That meant a lot of research on the internet too. I did not want to repeat the same errors that my teachers in college made – of not ‘involving’ the students in the learning process and overlooking them. I tried to throw in some innovative diagrams, some self-explanatory videos and some presentation slides to augment my teaching. I tried to focus on the fundamentals of the topics. The main thing I tried to do was to be honest with myself and not merely assume that I am doing a good job – and I realized that this was no easy task.

There were many memorable incidences during the course of the sessions. Including the day when the recital of the national anthem took me by surprise (refer to my earlier article related to this). I realized that instead of taking a formal lecturer-to-student approach, keeping a perennial smile on the face and taking a friend-to-friend approach was a good option. This way the students tend to take more interest in the subject.

Anyone who is even remotely involved with the IT field knows how monotonous it can get. Sometimes I used to look forward to the weekend lectures at Ferguson as a place to rejuvenate myself. It really feels different to be on the other side of the dais and you tend to understand the thought process of other teachers.

I was really surprised by the attitude shown by the students at times during the 4 months. It used to rain cats & dogs sometimes during the rainy season but they would brave it all & be present for the lecture – in spite of it being a Saturday or Sunday. They were even open to share their class trip photographs with me, which I think was a special gesture because they had known me only for a few days really. I would always remember these things.

I myself gained a lot of experience during the sessions and also unknowingly learned a lot from the students in turn. It would seem like a cliche but it really feels great to give something back to the society in this way, and I would like to thank the college for giving me this opportunity. Who knows, this may be the first of many such opportunities. Of course I realize that there are many areas I need to improve myself to deliver a more enjoyable learning experience, but at least this was a start, and when you do something for the first time it is always close to your heart.

To the students of the MCS batch whom I taught: (I’m being very formal here for a change!)

It was a wonderful experience for me taking the Mobile Computing sessions. Thank you for all your support and feedback during this time. I will definitely miss taking the lectures. Keep in touch and I hope to work with you as a colleague someday.

I am also sharing the group photos we clicked in class –

The MCS class I taught at the Ferguson College

The MCS class I taught at the Ferguson College

Me sitting amongst the MCS group

Me sitting amongst the MCS group