Saturday, December 18, 2010

apsara is a flawed book

I recently read Apsara by Surya kant Tripathi Nirala and I must say that i had great expectations from the book. The hindi was flawless and the sentence creation was amazing. But the poet went overboard in describing the beauty of heroine and went wrong in making the heroine a pure one despite being a prostitute. The plot picked up pace later on and the way the poet described some scenes were mind blowing. The end was swift and I don't know why I was dreading that the end would be on a tragic note and that's exactly what the poet did. All in all, I found the book to be flawed. Nevertheless, it was a good reading and some of the characters would stay with me for some time. The concept of Apsara or someone very beautiful is akin to the concept of anima and animus by Carl Jung. The same concept was also discussed in detail in Amrit aur Vish. Looks like this concept was very popular among writers some time back.
On the office front, the scene has turned bleak. After the euphoric month of november, when i seriously thought that i would reap rewards for my hard work, I was given rude jolt in the month of december. I need to change my circumstances but I am floundering. Must find a way out of this self created mess.

Saturday, December 11, 2010

amrit aur vish

I haven't read a hindi book for a long time and when I ordered amrit aur vish by amrit lal nagar, I did not have much hopes from it. I have never read any book by nagar saab and so didn't have many expectations. but boy, was i wrong? this is one amazing book, simply delicious. The story moves in 2 dimensions where in the author is one protagonist who creates characters for his novel from his acquaintances and relatives. And the hindi used is simple dialect, khadi boli, which sounded so funny initially but then started feeling so home like. I finished it in 1 week, reading it very slowly, feeling the taste of hindi on my tongue. This book also gave me an inspiration to start writing my own story. It does not matter if there is no plot or characters. Just start writing and after some time the plot will make itself apparent and once it happens, it will take a life of its own. I am going to do that and on this blog itself :-)

Sunday, December 5, 2010

movies, books and flash client

Once we had completed the project on time and with good quality, I knew that we won't be having any bugs or issues. perhaps enhancements could come in, but they are anydays welcome. but nothing for the whole 1st week exceeded the expectations. so first 2 days were spent in testing and more testing and the last 3 days spent in development of flash client for roulette. with no great pressure at work, i spent some time in my other pursuits which i indulge in from time to time. it charges my batteries and makes me feel whole. So, i started reading books, from short stories of anton chekov and arthur conan doyle to inane books such as thrillers and mysteries, like murder at temple street. I also spent some time in savouring Durgesh Nandini. It is a good book and I had nursed a desire to read it for a long long time. I am currently reading Amrit aur Vish which is a classic.
I watched Golmaal 3 and I laughed a lot especially the scene in which Prem Chopra meets Mithun is amazingly well made. I also watched Rakt Charitra 2 for Suriya and I seriously adored his expressive eyes.
I spent time with Kush. Well, he is a grown up kid now so we spend most of the time fighting with each other, I trying to instill some discipline in his life and he trying to create some space for himself. So far it has been great fun but I believe Kush is going to be very demanding when adolescence would step in.
The year is almost come to an end and I need to sit down and plan about where do I want to see myself at the next year end. This year has been a mixed bag, really, with some very low days and some really really euphoric ones. But hope springs eternal in human hearts and let us see what kind of challenges would I face next year.

Saturday, November 13, 2010

3D effect to games

When we were asked to give 3d effect to our 2d game, our first reaction was "impossible". But then we began exploring options and found that using adobe photoshop, you can give perspective to images, adding depth to them. Once we got the images, we integrated them in our code and found that it didn't help matters much. So, we made the wheel zoom up and the effect was palpably three dimensional. But then our woes began, the ball won't stop at the desired location, the result won't hold, the result on zoom wheel won't hold. We kept on figuring out issues, fixing them till it was 7:30 when we all went for drinks. But we do believe that by Monday, it should be done.
There are a lot of things on my plate and I have to take care of them by this weekend. Let us see how many of them get ticked off from the list :-)
Have been seriously considering cultivating a hobby but which one would suit me is the million dollar question. As of now, I consider reading books as my hobby but that does not give that much satisfaction to me now so I know it is time to move on to newer things. Will have to devote some time to that.

Sunday, November 7, 2010

it has been time

Off late, I have been thinking a lot, reminiscing past events and evaluating the course my life has taken over the past 2 years or so. Can't say i am terribly disappointed but can't say that i am incredibly satisfied. I think this feeling will last for some time.
The work front has been incredibly hectic these past 2 months. We started with the challenge of creating new games for a niche and for the next month or so, we created 9 games, all of them luck based and still fun to play. Then we got another client and had to create a new game for him in 3 days. That was very very difficult. I had to do a night out after a long long time but the work was completed on time with ok kind of quality. I say ok because i belong to the old school where testing should take more time than coding :-)
Diwali was a damp squib this year owing to the work pressures but in any case my in laws had come to visit us so it was not an absolute failure. That's how things stand in my life, ok kind of quality but leaving the scope for improvement.
On the brighter note, here is Kush singing Que Sera Sera

Wednesday, September 22, 2010

challenges on all fronts

Last week, we finally had our long pending discussion on new games development and the challenge put forth was to come up with 50 new games in 1 year time. It sounded really ridiculous at that time. I mean how can you come up with a new game in 1 week time? But we started with our first game and I soon realized that it is really a very trivial task. As long as games are simple, the target can be achieved. So we are done with our first game. But now we have run into a huge roadblock. How do we keep on coming with ideas for new games? As of now, I am just stuck. Let us see if the team comes up with some good ideas.
I am still in the doldrums. Do I want to maintain the status quo or do I want to move on? The moment I thought of moving on, I started dreaming of lost baggages and of catching trains. My mind is really fertile :-)
I had been having a lot of dreams these days and even had one huge nightmare. In this frenzied dream, I was jumped upon by a ghost (a mummy, can't be anything else) and it was more than enough to wake me up :-) Are dreams really portenders of future events? Do I really want to know about my future? What if I learn the secret of what ever is going on around me and this knowledge cripples my decision making ability because I would be agonizing over the rippled effects of my action? I guess that is why the mind is so ignorant of all those things that have already happened or of things that are going to happen? Very interesting train of thought :-)

Saturday, September 11, 2010

things get hectic once again

Ever since I have shifted to Pune, things have been very very hectic. In the initial weeks, it was all about finding that perfect rental house and then once we shifted, it was about finding a good school for Kush. We drove all the way to Pune from Panjim. The distance was only about 500 kms but it took us good 8 hours with all the breaks and bad roads and some traffic jam. In any case, it was a good drive.
The workplace environment has been made doubly difficult, now that the new HR VP has joined hands with early perpetrators of crime against employees. Now I can't carry a mobile phone, can't make any kind of call from my desk phone, can't receive any call on the phone, can't chat with friends, can't surf internet. The list of can'ts is growing daily. Some of the hilarious additions are can't come to office without good deo, can't go to loo without asking permission for it and that too under supervision only, can't talk with other team members, can't discuss anything but work at workplace. Of course, this list is only applicable to the 2nd class citizens. The privileged class gets to do all this and much more. George Orwell's "all are equal but some are more equal than others" saying keeps on doing its rounds in my head :-0
In any case, I was helped a lot by people around me so I shouldn't really complain. And I intend to change my perspective towards life in general. I have been looking at life from a tinted shade, that of despair and gloominess and hopelessness. But life is not only about setbacks. it is about achievement too. It is about counting blessings too. So I have started practicing the mantra of staying positive, not only at workplace but also in general. As of today, i am very happy that Kush has joined a good school here and so far he loves this school. Next month, there will be a test and the class has covered a lot of ground on some subjects, so Kush has to do a lot of catching up to do.
Last month, I read Issac Asimov's collection of short stories. Some of those stories were amazing, like that of Hostess. I loved that story, loved Asimov's insinuation that humans carry a parasitic intelligence which takes over the bodies and minds of humans during sleep time, which lets humans grow only till a limit and later feeds on the humans thoughts or whatever. And then I read about Sri Aurobindo's conjectures on various dream states and how he maintained that there are different worlds out there, not only the one in which we participate but also those that are accessible only through dreams. Sort of like the Tibetan's Shangri La concept, a place where you go only through your dreams. i will do some more research on this, it is fascinating stuff.

Saturday, July 31, 2010

nihilism makes sense

If you are fond of reading scriptures or sacred books, then one thing will surely make you take notice - the insistence on the transience of all the worldly things, how all things are going to end one day, how nothing is permanent. It is so easy to read them but how many of us have really experienced it? I have been reading books for a long time now and one excerpt from "Zen and the art of motorcycle maintenance" had really jumped out of the book and taken hold of me. It is related to the experience that the protaganist had when he was living a life of seclusion. The undercurrent is that of utter loneliness, of standing on top of a cliff and seeing nothing around, of having no one to talk to or to share things with. I could relate to it but I had never felt that way. I had felt lonely but it was not a despairing kind of loneliness. And I always wondered on how the author might have felt at that moment. Was it depression? Was it desperation to attach himself to something living?
And then while watching the movie "Crouching tiger, hidden dragon", I heard the warrior who had just returned from a session of meditation from the mountains who said the same thing " it was so lonely. I didn't feel blissful. I felt sad, an infinite amount of sadness. i couldn't take it".
Some days back, I had the same experience. I was standing behind the office taking my usual break, when it suddenly hit me. All human beings are so lonely, lost in their lives, in their thoughts but really drifting here and there, not only in physical world but also in thoughts, never being in this moment, learning to live in past memories or in future plans. There is nothing beyond this life. Death is not just a beginning. it is the end. There is nothing like heaven or hell or an eternal life or deliverance or any such bullshit. There is nothing, just a void. nothing to hide behind, nothing to look forward to, nothing really to focus your energy on. At that point, i felt a sadness well inside me and it shook me. I at first thought that I have gone into depression and I tried hard to shake this sadness off me. But I couldn't. My thoughts keep on returning to this feeling. Now I am reading about nihilism. May be the philosophy would make some sense to me.

Sunday, July 25, 2010

archer has not lost his touch

It has been a long long time since I blogged. Things were pretty hectic and confusing. AW and gang had shifted to Pune w/o paying salaries to anyone and we all patiently waited for it, though the patience started wearing thin after 20th. On 20th I went to receive VS who went to Axis bank to withdraw a large sum of money and we had to deposit cash in the OBC bank. Easier said than done !!!!. The cashier refused to accept so much cash, we had to go to manager, who talked to cashier who talked to us who talked to AW who talked to manager who again talked to his cashier and after 1 hour they decided to accept the cash !!!!! It was the kind of mess that gets very little press but which is the daily routine for thousands of people who need to get things done in banks or in govt offices. Very sad state of affairs...
I got the latest short stories collection from Archer "Thereby hangs a tale". Some of the stories are very good while others are ok kind. One story where in the receptionist fools a visitor to sleep with her was very very good.
I also watched Toy Story 3 which is a must watch movie. Seriously, the animation movie is one hell of a movie which can be watched by all age groups. There were some scenes in the movie which caused a lump to develop in my throat, it is that good a movie. I have also heard a lot of praise about Inception so I am going to watch it soon.
On the work front, I managed to make 400 bots sit together on different tables and the back office records matched too, which was a huge challenge. Now all the records match, grs entries with real chips delta in t_user which also match with the login session records. I had been meaning to solve this problem since January this year so finally solving it was a huge milestone for me. Now I am targeting 1000 bots to sit together. I hope every thing works out well then.
We have also started our search for a good school for Kush in Pune. One school Symbiosis International School is ready to admit our son but the fees are very very high, 2.2 lakh per child per year. I don't know how many people can really afford that kind of fees. DPS refused to even consider our application. Tomorrow I will talk to St Mary's which has a great reputation and which is a ICSE affiliated school.

Sunday, July 4, 2010

change management and Pune office

Our company is shifting to Pune this month end. There had been a lot of rumours flying around for the last 2 months or so about the move to Pune and how it is inevitable. But there was also a lot of secrecy, lot of hush hush so that no one was clear as to what was going to happen. I was only privy to the information that AS had been dispatched to Pune to scout for office space and that he had shortlisted some 2 or 3 of them. But apart from that, I had nothing going for me. If you are familiar with change management program, the first thing that they would tell you is that the vision has to be communicated to all the stakeholders and that each and every employee is a stakeholder. But here the vision was lost. No one knew why the move has to be done. It sounded more and more whimsical. The next step in the change management program lies in the initiatives taken to involve all the employees, to win over the cynics and to fire up the enthusiastic volunteers. But here the only decision that every one had to take was how soon can that person join the Pune office. The next stage in change management program is to monitor the initiatives, to help teams overcome obstacles. At this stage, every success is celebrated and employees are coerced to share the same vision. Right now, the office space has been taken up, 2 teams have moved there and forget celebrations, there is a full fledged war ongoing to kick out some employees, to make things so hard for them that they themselves choose to part ways. The last step in successful change management program is to maintain the vision and to keep on facilitating the various initiatives. Well, for sure, this company doesn't follow the normal processes. As long as AS and AK are there to poison AW's mind, as long as these fools keep on fooling everyone to believe that they are focusing on jobs when they spend all the time on online games and of course in ogling the girls, as long as these fools keep on pushing out good people so that their own inefficiencies and incompetency are not highlighted, this company is going nowhere. So it really doesn't matter :-)
I don't really subscribe to the prevailing sentiment that AW is totally oblivious of the misdemeanours of these fools, that AW himself encourages them to behave in such manner because he wants to create a company in his own image. I really feel that AW is aware of all the hanky panky going on in the company and that he sometimes takes these fools to task also, but he doesn't let them go because these fools serve him as personal valets also and no one wants to lose their servants for their follies, so these fools live another day. From the past few day, I quote some events ---
1) AS was entering office when AW called out to him "arre donkey, idhar aa", leading to a lot of mirth all around
2) Someone complained to AW that AS was actually sleeping during night shifts and AW called AS names which are unprintable here :-)
3) AW gave a dressing down to AS when he overheard him speaking to a new woman employee.
4) AW had stopped AS from going to office for the past 15 days or so and these days were spent in great peace by everyone over here.
5) Even AK was not spared. He has been forbidden from playing out songs loudly from his system. I was sick and tired of listening to Justin Bieber's girlie song "baby baby baby o".

Saturday, June 26, 2010

is maintaining sanity far more important than career growth?

The past few weeks have found me a little bit less loaded and so the time has been spent on introspection and on general reflection of life now and in future. And whenever one reflects on future, either the thoughts turn to daydreams if he is optimistic about it or the thoughts take on a morbid pattern with large doses of melancholia and a general sense of incompleteness taking over the spirit. Unfortunately I was feeling low and so my thoughts would always veer on my current status in life and on the missed out opportunities, and on what would have happened if things would have gone according to our script. And well, that set me thinking. I have always been a hard working guy who will slog if there is a need and who takes immense pride in his work. But I have also found that after a bout of difficult schedule, I always needed some time out to recharge me, to prepare me for another cycle. And for me work is not the only thing that defines me. There are many many other things that I absolutely need to do to make me feel alive, to retain my sanity. There are people who keep on working hard, jumping from one project to another, compromising their personal lives to accumulate success on career front. But I am not that kind of person. For me my personal space is very very important. I have to spend time with my son. And I don't believe in quality of time spent, I am more biased towards the quantity of time. I have to take out time to chat up with my wife, with my friends, with my siblings. I absolutely have to take out time to read books or watch movies or write my own stuff. But I also have some regret about it. I believe I want the best of both worlds which is simply not possible. So is maintaining sanity more important than pursuing silly career goals which won't make me a better person? I don't know yet but I will figure it out sooner than later.

Saturday, June 12, 2010

online marketing - is page rank that important?

Ever since I joined this company, I have been hearing that the online marketing team is doing a great job and how the page rank is improving. Well earlier my time was well spent on making the platform more stable and on fixing the bugs. But the last 2 weeks the pressure has been quite less. Ever since I found the magical fix to make the vc client more reliable the number of bugs have been decreasing and now it is not even a trickle, it has stopped completely :-)
So apart from adding support for stud game and for Teen Patti game, my time is also being spent on online marketing stuff, especially on online affiliate marketing. Well the first thing I realized was the page rank for google is at the heart of a bitterly fought war where so called thought leaders are publishing articles after articles in defense of their stand. Do we really require people to focus obscenely on page rank? Or does the content win in the end? I know for a fact that the team here is quite dumb, that they follow instructions even when they don't understand what they are doing. "It is related to back links" or " page rank is what we are focusing on". And so it is AW's writ that runs large here. And I know for a fact that he is majorly obsessed with page rank. He has managed to improve the page rank of one site to 4 and he considers it to be a great achievment. There is a whole excel sheet with at least 100 entries of different web sites from where backlinks are demanded and to whom the link of our site is being sold. So the original question - does page rank rule?
Well, honestly, my knowledge is very limited and I am still doing a lot of research. So I will revisit this question after some time :-)
I have been thinking a lot about future planning and where do I see myself in 2 years time. As of now I am completely focusing on learning new skills so that I can float my own company and focus on it. But as of now I just wait. Even Milton said " they also serve who stand and wait".

Sunday, May 30, 2010

one very peaceful day after such a long time...

The past 15 days have been very hectic, very traumatic. Meetu's operation was due on 18th and in-laws were expected on 17th itself. But then they changed plans, included Chintu, Ruchi and Vidit too and then on 17th, managed to miss their connecting flight to Goa from Delhi. I had applied for a half day leave on Monday and then booked a taxi too. But then on learning that the darned flight had indeed left w/o my in-laws (the nerve of them), I had to cancel the taxi as well as the 1/2 day leave. Talk about stupidity...
Then on 18th, Meetu was taken for operation at around 11:30 and then no news came in till 2 PM. I was very very surprised. From the room to OT and then back, I kept asking for answers when I only got assurances. At 2:30, I learnt that Meetu has been moved to ICU and that appendix has also been removed along with the gall bladder. Everyone arrived at hospital at 4:30 and then there was chaos. Meetu was moved to the room at around 6 PM and so started the ordeal. The next day just flew, what from commuting from home to hospital and back. Then Meetu was discharged and we all came home. I joined back office and learnt that contract was being written. Now this contract had always put me at an unease, a growing sense of discomfort. Well, on Saturday, car broke down and I and Chintuji took it to Chowgule's service centre. While walking back, i got a call from VS that AW wanted me to come to his home. I refused hiding behind my car's breakdown and my wife's condition. A lot of discussions centred around the possibility of what would happen if i won't sign the contract. Eventually on Monday I had to go to AW's place and there after deliberating over it for 1 hour, I refused to sign the contract. AW got understandably angry but then relented and let me continue working. Then on Friday 28th, another drinking session occurred and I was told to move to Pune. I don't really want to but this time he doesn't look like relenting :-)
On the work front, I learnt about JXTable from Swinglabs which allows for row sorting from column for the application developed using JDK 1.5. I integrated it in the code of java poker client for mac and it worked like a charm.
Finally this Saturday 29th was the most peaceful of all. I was so relaxed, so at peace. Only my ma-in-law is here, there is no pressure on work or home front and I had time at hand to actually relax and just be here. Loved wasting every minute of it :-)

Sunday, May 16, 2010

jeeves is really outstanding

I had read some of P G Wodehouse's work, esp those of Jeeves and Bertie Wooster but that had been a long time before. Last week, when I saw a collection of short stories of Jeeves, I couldn't control myself. And so far the book has been outstanding. I had forgotten the way Wodehouse crafts sentences and I am really really enjoying it. My reading speed has gone down a lot. Initially I used to read very fast but then I realized that by doing so, I was doing a lot of disservice to the author and to myself. Books are to be enjoyed, to be read slowly, to enter in their world and to experience it the way the author wants to. Wodehouse works belong to that category as does Dorothy L Sayers'.
India has been knocked out of T20 world cup. The way they were playing they didn't deserve to be in semi finals. Would Dhoni lose his captaincy? He should. He is tactfully very naive and he is also arrogant. Doesn't deserve the captaincy :-)
Meetu's operation is due on Tuesday in the JMJ hospital. We checked it out yesterday. It looked ok to go so be it.
On the workfront, we have got in touch with the Rounders client so let us see what transpires now. I learnt a new game STUD, fixed some bugs in the client and server and ensured that the remaining bugs be fixed by VS. Nice card game though.

Sunday, May 9, 2010

constant change

things keep on changing constantly all around us. We change ever so slowly that we don't even realize we are changing. Relationships evolve or devolve ever so steadily constantly. At the workplace also, things have changed dramatically. I have been included in the inner circle of AW and some people are unhappy about it and some are happy but I don't care for either group. AW is a horrible man and his drink sessions and his lectures have become unbearable for me. I need a huge break from him and especially from this company.
On the workfront, things have stabilized very quickly. Now most of the issues are resolved and the client and server are performing well. Rounders n/w may even make the payment next week so things are looking really well over there.
Meetu has been diagnosed with stones in gall bladder and may need surgery. Her folks are coming here next week. We will have a second opinion on surgery and if the surgeon says so we will go for surgery.

Sunday, May 2, 2010

sucess has many fathers, failure has none

When I decided to do an mba, the idea was to jump ahead and abroad, get a good job and a good salary hike and you know just settle down in a haze of admiring eyes. I had never thought about the worst case scenario where in I would fail to get a decent job and would have to come back. That's exactly what happened and well, this is all now an old story :-)
But this particular event had other repercussions, most notably of the change in the relations structure. The barbs, the taunts continue till this day. The snide remarks are still repeated. Insinuations of being poor and of being foolish are still made. The hurt and the pain are now dissipated and i don't feel angry or hurt when I hear about such remarks. But I have started believing in the adage quoted in the title of this post.

Saturday, May 1, 2010

Where to now?

Recent events have really unsettled me. First VS's outburst which was followed by RN's departure and finally last night's AW's solid drama culminating in AK's outburst. Now you must understand VS and AK are solid, loyal soldiers of AW and if these people start protesting, issues are serious enough to warrant attention. What's going on? What is making these people react in such ungainly way?
One reason would be that AW's boorish behavior has simply irked them so much that they can't control their emotions. Or another reason could be to psych me out so that I start believing that things are really bad here and I should make a move somewhere else. why? because then it would be one person less to rake in the moolah. I don't know who to trust :-)
On the work front, I managed to fix one really pernicious bug. The behavior was very strange. Randomly, the moves buttons won't disappear on the client. It took me close to 7 days to figure out the bug. The issue was due to network delay. Once server sends a message to client, it would start its timer to monitor move time. Once client receives a message, it starts its own move monitoring time. But if n/w conditions introduce some palpable delay, then the server and client would be starting timers at different instants. So the server might even time out the client while the client is blissfully unaware. And then when server sends another message to client to inform it of whose move it is this time, the client should clear the moves. But it was not doing so :-)
Well the issue is fixed and done. Another step to make the client more stable...

Sunday, April 25, 2010

a strange problem

When VS accosted me on my usual break and expressed a desire to speak to me, I readily agreed. VS is a simpleton, who works very very hard and who doesn't get half the appreciation that he should be getting or even 1/4th of remuneration that he should be getting. Anyways, when VS stated that he is very disturbed who could not sleep the previous night, I was curious. When it turned out that boss had said something to him, I couldn't care less and I was ready to get back to work. AW has a horrible temper and he doesn't shy from saying whatever he wants to say, so it was kind of ok and VS should be more aware of it than others as he had survived almost 3 years with him. But then VS started weeping with tears in his eyes, I was flabbergasted. It turned out that AW had run out of cash (for all the big talk about being very rich, he is right now penurious) and had asked VS to lend him 3000/- but it turned out that VS had himself sent all the money to his folks and had kept only 3000/- for himself. So VS couldn't and AW gave him a huge firing. Well, more important point for me was about AW running out of cash. How would he continue the operations if he has run out of cash? And where are the clients, the multi billionaire clients who were ready to dole out huge amount of cash to join our bandwagon? All of the bullshit and drivel were finally turning up to be just that, false stories, lies. And so, I guess, time has come for me to make another move. Where? I don't know. Another phase where patience would do me a lot of good :-)

Thursday, April 15, 2010

another milestone

these past few days have been crazy to say the least. on personal front, it is time to repay another loan which means countless rounds of agony and torture for me to get the funds ready in time :-)
on the work front, boss played poker with some of his clients and realized that there were many many issues, most critical of which is the appearance of table freezing. when this item was first assigned to me, I could envisage only one aspect, that of freeze due to delay in proxy move. but even when it was fixed, table freezing kept coming up leading to all round frustration. I fixed another issue and suddenly there was an improvement. users could play for 20 odd minutes when suddenly the whole app would just freeze. From server to client, from one layer to another, it was fruitless so much so that I started despairing as to how could this issue be even fixed or was it one of those problems that one can never fix. There was one such issue at motorola which no one could fix. And then i stumbled upon it. just like that. I was of the opinion that due to n/w issues packets were not reaching client so it would freeze. But then I read somewhere that windows socket layer has a special problem. if the socket buffer is not emptied, sockcore won't send indication to the application to read further data. So if there was something unread in the buffer, the whole application would just freeze. All the time data was queuing up in the underlying buffer, but the application was unable to lay its hands on it :-)
And so another fix followed which dramatically improved performance. For 2 days consecutively, i have seen the application run for close to 4 hours at a stretch. It is only when the n/w conditions become buggy that the app starts to freeze and unfreeze. If the client doesn't receive packes for 90 seconds, it closes down gracefully. VS was able to play close to 150 hands over 1 hour with 2 of the actual players which is simply great !!!!!!!!!!!!
Well the issues never end, do they? there are still a lot of issues to be fixed but I guess this performance improvement would be considered an equal achievement as that of making tournaments run on Rounders network.

Sunday, March 21, 2010

Osho's zen philosophy

I have been reading Osho's book on Zen and i must say that the book is very interesting. Some of the arguments he makes are quite convincing but some of them are very controversial too. In some passages, he comes across as a supreme human and in some as a very real human :-)
One of the most controversial lesson that he imparts is about the mind's penchant for seeking pleasures even when the person is pretending to be abstinating from it. The example he gives is that of rishis meditating in himalayas who start dreaming of company with beautiful girls (the apsaras) who come from heaven to sleep with them. Osho says this is because the mind is fed up of meditation, of solitude and it has started craving for company. And this is all society's fault. Society at large frowns upon pleasures and encourages the constant clamoring for painful experiences. So if someone likes to drink a lot, the society would force him to give up drinking. The person would pretend to give it up but his mind is still attached with drinking so in reality he hasn't let go of it. The problem is still there, it has been hidden and kept out of sight. The person would start exhibiting different symptoms but the problem has not yet been addressed. Osho says that if someone is really attached to something, let him come out of this attachment on his own, at his own speed. Once he does that, the problem would be solved from the core.
And I feel this particular lesson has been used and misused and contorted to malign him. People accused him of encouraging promiscuity, of leading young people to extremes of pleasure seeking. This could have been true, but Osho's intent was something else. Of course I can't call myself an expert on his views from a half read book :-)
On the work front, there were a lot of issues, both on poker client and on casino client. One of the issues was very vexing. I wanted the client to close the gameboard if an important message is lost en route. But the darned window won't close properly. When it started closing, the darned thing won't start. When it started restarting, the darned thing won't work. The darned stuff killed me almost :-)
On Tuesday night, we had a drinking session with boss and his favorite prodigal employee AP. It was really painful watching them going bonkers in praising each other and of kissing and of twisted fingers being pointed for peace sign, of strange sounds emanating such as Ouch and Peace. It was so painful that I couldn't even enjoy my drink. After 3 hours I threw in the towel, drove home and slept fitfully. It took me 2 days to let go of all the frustrations that had crept in.

Sunday, March 14, 2010

errors, mistakes and issues

this week's post has to be dedicated to silly mistakes. anyone who is from software background in india would agree with the sentiment that 90% of mistakes that are being solved or fixed or analyzed are due to someone's silly mistakes. Before this week, I had been taking care that silly mistakes don't creep in, but then I can have some off days too :-)
RN has always been sloppy, always in a hurry to get things done, always in a hurry to catch that bus, never taking responsibility. this week she was asked to make some releases for poker and casino client and boy did she goof up ! as the manager, i have to take some blame too, but in my defence I can only say that I did verify her releases, tested them, made others test them. But in the final analysis of things, when RN gave release to VS, this last build should have been tested. This was the point where she made mistakes. And I paid the price. 10 PM on Thursday, 10 PM on Friday and 2 hours on Saturday were more than enough. I have now taken over the release management.
This week I also took interview of a candidate AR for HEC MBA. From his essays I could make out that he would be an average guy with lot of air and pretensions, who would always fall back upon standard responses. When I met him I realized my observations were spot on. His presentation was awful, his answers rehearsed, his career objectives completely obscured. His other interview was taken by AM, who had accompanied Abbott's CEO during VOL week. I wonder how he fared in that interview.

Sunday, March 7, 2010

poker, bots and stress testing

So, I have found my new challenge :-)
It started almost incongruously (these things have a habit of always starting this small and then getting a life of their own and then beginning to consume the person body, soul and everything). I had already tested 12 bots (those fake players who sit on poker tables and try to behave like real players) sit on some tables and play for some hours. That had given me some serious headache on trying to reconcile the rake with the win amount and with the total loss of real chips of users. But this time the challenge was to make 200 bots sit on tables and play. We started small with a total pool of 200 players with around 50 players sitting on the tables at any point of time. And the results were outrageous. The total loss amount didn't match with the rake and neither did it match with the total loss of chips. It made me crazy. Why would it work with 12 bots and not with 50 bots? The answer of course was not in the numbers, that was a red herring, a fake trail. The real answer was in the way bots were being disconnected and what was happening for these disconnected bots. That led me to some very good observations and some great fixes. Last time around we were able to make 50 bots sit on tables for close to 18 hours when we had to intervene and stop them from playing. That is something, so eat your heart out LK and AC :-)
On other front, I finished the Gaudy Night and it is a good book, a lazy read but with great characters, a great story with fake trails strewn all around and with motives floating around. Really very good read, kept me awake 2 nights in a row trying to finish the book :-)

Friday, February 26, 2010

how do you motivate yourself after achieving a tight deadline?

Sustaining motivation is very very difficult, as I feel :-) Stretching yourself to complete work on time, to keep ruminating on what else needs to be done, all this drains a lot of energy. There is a great high in meeting the deadline, it is almost euphoric, liberating, morale boosting. This is the way I felt when I met the Rounders tourny deadline. It was a huge challenge and it took a lot of time and effort on my part, but it is done now. Time to move on to new targets, new deadlines. But then I forgot the recharge part :-) Forgot that I need to take a break, first, just to keep myself sane. There are other things I love to do other than work. Like playing with Kush or reading books or watching movies. And so I took it easy this week, fixing bugs and managing releases, but I also read "The Circular Staircase" and watched Rann and Ishqia. The book was good, kind of outdated now with all the twists and turns of plot painfully obvious now, but nonetheless a good read. Rann was bad, while Ishqia was good :-) And just when it looked like life is good again came the loan repayment request and so back again to all those mind numbing calculations :-)

Saturday, February 20, 2010

living with pain

Once we decided that we had to return back from HEC to India, I had felt a stab of real pain, of disappointment, of fear of what lied ahead. I lived with that pain for some 3 months or so. It became a pain body of its own ( borrowing a term from Power of Now), it started dictating terms to me. Most of my interactions were based on fear. My life became shallow, very shallow, almost stupid. And then one day I had enough of it, so I let it be. I accepted that there were lot of unknowns in my life and lot of bitter sweet experiences lied ahead, and so I just felt it as it was. What happened next was exactly what was specified in Power of Now. Its hold on me gradually lessened and I started living more freely. I came to Goa, joined this company. I was told that people mocked me here. I just let it be. After some time, people started respecting me. After some more time, I was anointed the leader and people accepted me as their leader. Am I at peace here? My truthful answer would be both yes and no. I love my work here and it reflects in my work quality here. I still don't have money to repay loans, my lenders are getting fidgety and I feel bad about that. And that hurts some time.
I have to make a complete payment towards my home loan this month. And in 3 months of time, I have to repay my loan off one lender. All my hopes rest on that elusive bank loan. Imagine living every day with the hope of getting that loan and managing fears of getting rejected for the same. That stress, that pain gets reflected in all other aspects of one's life, eventually manifesting as some sort of disease. I am right now treading the same path and feeling the same stress. Will Eckhart's suggested exercises help me in managing this phase without causing any grievous impact on me or my health? Let us find that out.

Sunday, February 14, 2010

why not test code after writing it?

This week has been spent on fixing bugs that other people introduced. Some of them have been very very difficult to find while some of them were just plain stupid. An example of a stupid bug is that just after tourny gets over, the winners get double of their win amount. Another example was that even if a player plays a play money tourny, his real chips (real money) account would be overwritten by play chips. These bugs are stupid bugs and result of lazy people, coders who just finish their coding and don't test it properly. This is not unique to this company here. I have run into this again and again, in all the companies that i have worked with. The main reason behind this sloppy work is the pressure that management applies on team to get the work done within some time window. But i still feel that this tantamounts to not getting the job done at all. I have pretty harsh opinions on this subject :-)
An example of a very very hard bug will be the one that Datta faced when testing with an id kentuckykid. When he was playing the tourny, suddenly his moves started getting dropped by the server while all the other messages were getting across fine. I went thru logs again and again to find that particular issue. He had logged in form one client, and then logged out, started out another client and was playing in the tourny w/o any issues or hassles. Suddenly at the time of table merge, he started facing this issue. I found that before he started facing these issues, he had tried logging in from the first client and had got the message that id was already logged in. And here, I found the issue. Exactly at this point, the previous presence was being marked as unauthenticated. The person who coded that had never bothered to test it. And left this mess. I spent 3 hours to find that bug and fixed it in 1 minute.
Well, the tourny is going great on Rounders. On 15th, we will have one final testing here to be personally tested by boss. So then from Monday, we start implementing 3 patti :-)

Saturday, February 6, 2010

Tournament on Rounders working now !!!!!

After all these days, poring through the logs to find that one hint, one clue that will help unravel the mystery, going nuts going thru the code logic to check if anything is wrong with the code, I was finally able to crack the code !!!!
initially we only let 12 players play the tournament and we found that it was working great. In fact some people came down to praise our efforts. But there was scope for improvement. Finally fixed those issues too and so today 20 people joined in, there were 3 tables and we just let them play. Not even a single issue !!!! Seriously, this is a huge day :-)
Now onto the next part of the puzzle. Omaha games work, but omaha sit and go crashes. Why? that is for us to find out. maybe the issue is with client, may be with server. Wait till next week...
Because this week was a 6 day week, I have been unable to start working on Tom Jerry game. Tomorrow I will spend some time on it.
On other note, I finished 5.1 something by Chetan Bhagat. OKish kind of novel, total time pass. The movie 3 idiots had some scenes inspired by the book, otherwise the book and movie don't have much in common.
On Friday, Kush was supposed to go on a picnic. I went against it as the picnic was being arranged on a spot where shade is a rarity and Goa has very very hot afternoons these days. I was concerned about it and so didn't allow him to go. And you know what, his teacher called up asking about his absence. Apparently they missed him a lot. I don't know, was I being too over protective? Should I have let him go? I need to think about over protection thing. I don't want to become helicopter parent making my child a cripple, unable to face life's challenges. Need to seriously think about it.

Saturday, January 30, 2010

network congestion and other issues

I have been pondering on the exact nature of issues being seen everytime we host a tourny on Rounders. Well, the issue of server marking client as disconnected is the crux of the matter, but why would server mark some client disconnected? the answer lies in the fact that due to n/w congestion packet loss starts accumulating and so after one move miss by a client, the server earnestly marks it as disconnected and stops listening from or writing to this client, leading to mayhem.
learnt a good funda of settcpnodelay function. You see during computer engineering classes, I had gone thru Nagle's algorithm which was designed to reduce load on network. In the client and server code here, I had found that settcpnodelay was set to false effectively enabling Nagle's algo. This led to a situation where packets would come from server only when the buffer was reasonably full and not immediately. This was leading to reduced load on network but other issues like moves not coming in from client etc etc started cropping up. So I disabled nagle's algo and so the packets started flying like crazy and soon due to n/w congestion packets started getting dropped and all hell broke loose, not a very good sign if one's job is at stake :-)
So now back to thinking about a proper solution and then implementing it so that we can host proper tournament on Rounders.
BTW for the Battleship game, I also made the cpu a lot more intelligent in attacking and destroying ships. It is not artificial intelligence, but I seriously thought about it :-) But then quickly dropped it. I have to first make tourny run on Rounders and then also use wxmac library to run vc app on mac. and on top of that, Kush is pestering me to create a game of Tom and Jerry, simple game but still sprites who have to move and run and jump. Good next level challenge :-)

Sunday, January 24, 2010

why tourny on rounders always spells trouble

Some time back, when AN was around, we had tested a holdem tournament on Rounders and it had gone well, so much so that i had even announced that tournament is working fine on Rounders. When this issue was raised again as to why work is not complete i was very very surprised. But then I tested a 2 table tournament and immediately saw the issues. The client would show the table to be hung, moves won't come on time, moves won't go to server, you name it...
Anyways so when I was given the go ahead to salvage the situation, i started looking at it from 2 perspectives - why is client not in sync with server and if client determines that it is out of sync, why can't it connect back with the server?
You see, I always was a sucker for school of thought of planning my work before hand and so after going thru the logs I noted that these 2 issues were of prime importance and went after my job. The 2nd issue of why client was unable to reconnect back was solved easily. The handler id was being removed from registry on the event of disconnection which was absurd. So fixed one issue. The other issue was a really tough nut to crack. After poring thru 80 mb of logs for one round of tournament and another 80 mb of logs for 2nd round of tournament i zeroed upon the issue. For some reason packets from client were getting dropped but packets from server were able to reach the client. In this event there is no I/O exception at the socket level so client is blissfully unaware that it is out of sync with server. Meanwhile server marks the client as disconnected. So now server won't let the client makes its moves, server wont even send moves to the client and all hell breaks loose. Well I thought that I have finally cracked the code. So I put in changes in a jiffy and started one table tournament. That went amazingly fine. So then 2 table tournament. Well for the first 20 minutes, it was w/o any issues. I almost thought that the major problem is solved. But then all the clients went into disconnection mode and couldn't connect back to server. Immediately I knew the reason. The check in java client was not good enough :-(
Well anyways, the new java client is ready. And one more round of tourny testing on Monday awaits me :-)
My 3 months of probation are complete here. I haven't yet talked to boss about it. I am waiting for them to make their first move. Will there be any hike, any promotion? The only hint that came was from AS who repeated what boss had mentioned some time back, that i will be getting some stock option in Mar/Apr. Well, that would be great, but what i need right now is cash to repay loans. The stock option would be great, but it is the cash which is the ultimate king. Need to seriously plan my finances.

Sunday, January 17, 2010

All is well

Sometime back, I was in a highly creative state where in I was able to really apply myself and force myself to think about a problem from different perspectives. At that time I hadn't watched 3 Idiots or read Chetan Bhagat's book. But I was ruminating on a new catch phrase that I wanted other people to use. And I zeroed upon e=m * c squared. Now what is this, you may ask? And the question is valid. This equation has been immortalized by Albert Einstein and every one who has had the misfortune to go thru relativity would know about this equation. But the way I conjured it up was in the sense of comical relief. Suppose some one asks me " how are you" and I reply back "e = m * c squared". That person will surely take it that I have completely lost my mental balance. If he/she were an acquaintance, the first thought would invariably be " i knew he was a little crazy, now it is confirmed". But suppose this person actually sees the smirk on my face and adds 2 and 2 and figures out that this particular response is something that is just meant in a comical sense and suppose that this person actually likes it so much that this person also starts using it, this thing could become a rage. Imagine for a moment that this particular thing becomes so big that it takes a life of its own. People would nod at each other and say " e = m...". Their eyes will meet in a crowded metro and they would immediately murmur "e = m...". Ha, won't that be really droll !!!!
So anyways I was conjuring up this scenario while lazing on my sofa. And then I watched 3 idiots. It is a good movie but there were some really really boring sequences, which spoilt my mood. But I must add there are some sequences which are really really funny. The movie deserves its success, controversy or no controversy. However I was talking about a catch phrase. And that phrase is, you guessed it right, All izzz well !!!! it has really become a nation wide rage. the phrase has been taken up by youngsters as well as older people. it is all around me and i love it. You can never guess what happens to your idea once it is taken up by masses. It just becomes bigger than you. The movie has raked millions. I am sure that there will be companies who has ridden on the crest of such phenomenon. I would really love to be at the helm of such a company !!!! Meanwhile all is well. Battleship game is almost done. The only issue that remains is that the game is not getting over. I will look at it tomorrow.

Battleship game for mobile

In December last year, I saw Kush playing battleship on the Active whizkid channel. I loved the game and so did Kush. But soon after the game was removed. I promised Kush that I will develop our own battleship game and he could play it on the mobile for as long as he wanted. Now when I made that promise I didn't realize the time it would take or how busy I would be in December. So one weekend, I thought about the game and crafted the first draft of design. Then Kush's nanaji came to visit us and the entire project was sidelined. Come January and the code is still not complete. When I got a much needed 3 days break because of boss's marriage, I vowed that I will take out the time needed to finish the game once and for all. I spent 1/2 a day on Friday wrapped up with macbook and then another 2/3 day on Saturday, which led to huge back ache and some back spasms. I requested Meetu to rub Moov cream but that didn't ameliorate the pain. Come Sunday I am still fixing bugs. At present, the grids are ready, the battleships can be hidden, the hit grid box show up as Red and the player can play the game for some time. Unfortunately it sometimes crashes and i am trying to find them and to fix them. I don't know if I can do it today or if my poor back will be able to bear the strain. Coming next week, we have lot of work on our plate and things are looking pretty grim these days. I have finally understood the main reason of why employees are making a beeline towards exiting this venture. I will elaborate on that some time later. But now I am back to the battleship game.
BTW I also spent some time going thru the algo book that i had bought. Went thru the greedy algorithm and absolutely loved it. Will definitely use it for allocating task items to resources for the next project plan :-)

Saturday, January 9, 2010

smorgasbord

This week started with a complaint by RN that her performance review was due and she was very scared that she would be getting a very bad rating. You see there is no data being maintained here to track performance of any employee and every thing is impression based. How do you counter that? AKB who was supposed to run the show on ground floor was highly incompetent fellow who didn't have the guts to ruffle feathers. Well, I had always wanted to know about how the PMS happened over here and I used this opportunity to raise this issue. I had expected bad news but what i got was a complete howler. No one, it seems and I repeat no one has ever bothered to even think on those terms. Well, if I was so keen on getting processes here, why not throw my hand and do my bit? And so I volunteered. It is still a work under progress, so more on that later. Suffice it to say that the moment news spread that I was going to do it for my team, I got buried under an avalanche of advise and indignant protests of how things had been in complete shambles before. RN got an email from Boss after my talk with Arin which was very surprising. Good for her. She deserves the hike.
On the work front, I realized that the mpp was a tough nut to crack. It is easy to create one. It is very difficult to update it. You see if the project plan were fixed, there won't be any issues. But at our workplace, things happen, work items get added, prev fixed bugs re-appear in a new avatar. And so it is almost impossible to track the activities of team members. Anyways, I have decided to do this on a weekly basis, to save some time for me.
I had been trying to fix an issue of total loss amount not matching the rake when only the bots were playing. Ideally the amount they lose should get added as rake for the house. But there was always a gap. The first thing I fixed was the rounding issue of rake. The code was using deprecated version of Big decimal rounding macros. Replaced them with proper enum. The rake became proper but still loss amount was miles off the rake figure. Went through a sheet of over 1400 hands and found the issue to be missing entries for bots doing leave during a hand. Fixed that issue. Still the loss amount didn't match the rake figure. Went through a history of 2600 hands and found that because of my change, the bots who were doing sitouts were also being added to the grs table. So at least I have found the problem and so it will be fixed. But I had spent quiet some time in going through the excel data and was wondering if there could be a better way to crunch numbers. Vijay came to my rescue and used the pivot table to simplify calculations. I had seen pivot table in action before but had never found a practical need for it. If you have never used a pivot table before, learn to do so. It will save you a lot of time :-)
On Friday we were all talking about the food that we have and when I mentioned that we have non veg food once in 2 weeks, the audience was left dumbfounded. You see, Goans eat a lot of non veg especially fish and the concept of having only vegetables was something uniquely alien to them. Jai ho!!!!!! Now I understand the rationale behind the movement of promoting vegetarian food habits.

Friday, January 1, 2010

House edge of casino

Anybody who is familiar with casino will also be familiar with the term house edge. House edge basically means how much a casino earns on average from each bet. Of course that means that the number of hands played has to be substantially large so that the individual wins and losses of players get evened out. When I was asked to compute the house edge for Baccarat, I was stumped. On googling the term, I realized that there are different ways to compute house edges for different games. For Baccarat, we had to determine the frequency of wins if bets are placed on Banker, Player and Tie. This was easy. After getting data from DB, I got the frequency of wins. Then for Banker bets, I computed the actual expected earning of a player by multiplying the win factor (0.95) with the % of wins on Banker bets. Then finally, going by the logic, that the win % of Banker bets is actually inverse of how much the player should be losing, we get the amount of how much the casino is actually losing. Ideally, for a game with house edge of 0, these 2 figures should match. The difference is the house edge of the casino for Baccarat game for the bets placed on Banker. This was straightforward. The tougher part was the way Ties were figured out. I had to compute the odds of such events and then compare them with the frequency of Ties events occurring. The difference was the house edge. Well, was I proud? Not really, because the house edge came to be substantially larger than expected. The world wide figure is around 1.5% for bets placed on Banker, but for us, it came to be 15%.
Next day, I received the request for computing house edges for rest of games. For Roulette, it was trivial. As we play American Roulette, there are 38 pockets, but we pay only 36 times the bet amount for a win on point. That gives us the house edge of 2/38. This was corroborated by the data from the DB. The harder ones were Videopoker, Keno and Blackjack. The first 2 are enormous because there are so many permutations and combination that it defied logic. The last one involves skill too and so it leads to very difficult calculations. I googled it and I found that actually very complex mathematical models have to be constructed and that some people have made it their career :-). There is a guy who goes by the name Wizard of the Odds. There are some really impressive information over there. Do check them out :-)
Anyways, so I was in a conundrum. I had to give some values for house edges and I didn't know how to start. Well then I had this brainwave. Instead of computing the theoretical values of house edges for these game, I could compute the house edges due to our server implementation. Well, then I got the data from DB and for each game computed the sum of all the bet amount and win amount ever played on our live server. For Blackjack, there were more than 10000 hands. For Keno it was only 250, which is understandable. So, the formula goes like this ---
House Edge = (Total bet - Total win)/Total bet.
This formula will give the actual house edges as experienced by players. Voila, the problem solved, I shared the house edges with boss. For Roulette, our house edge is actually 3% (theory says it should be 5%). For Blackjack, it is 5%. For Videopoker, it is again 5%. For Keno, it came to be 27% which is understandable as hands played were less.
Meetu's birthday fell on 28th Dec. I was in office but her father had come to visit us and they did arrange for a small celebration. On 31st, I was finally able to complete the first draft of project plan. The same night was spent in a long drunken revelry. I came home at 4 AM but Meetu was not mad at me. Thank goodness for that :-) So here is wishing everyone a very happy new year 2010.