Friday, June 27, 2008

Second Anniversary

Today I am 2 years old in my company, GlobalLogic. It has been a ride which had its ups and downs. Some factors are great and some stuff I just hate. I remember the first time I came to Noida, not knowing how I would even come into terms with the culture, weather, food and all the other oddities. I had my primary education from Kerala all my life after returning from Dubai and coming to North India was a unique experience.

The team here was excellent. Wonderful people with great insight and knowledge. The learning curve was certainly steep. I started out with some Ruby first. Playing with Watir and then learing a bit of Rails. Then came the Java part. Learning Java was the best thing that happened to me. After avoiding Java completely during the studies, I was forced to learn Java. Reading those great books about the Design Patterns and understanding the vastness of Java was great. I even dug into Spring, Hibernate, JSP and stuff !! :) . But all was good. I went on to doing some boring stuff after that, mainly concentrating on Jira. Some .NET also came by the way, but I was never a Microsoft Fan (I even bought a Mac avoiding the 'crappy' Windows).

Core Ruby On Rails came after that. Along with that came a great team. One which materialized the saying 'Work hard, Party Harder !'. I even gained the confidence to speak in Hindi !! Stuttle badminton, Carroms, Table Tennis, Alchohol .. You name it we did it.

The work was a little wayward. I guess that comes with the job. There is bound to be ups and downs and I try to cope up with them as much as I can. I have developed a sort of evaluating skill that I guess I did not have before. Even in estimating stuff, I think I do better now a days.

The trips that I have taken were awesome. We went to Mukhteshwar, Vaishov Devi, Kulu Manali etc. And they were all excellent. I got to meet and make a lot of friends. I never had these many Northie friends before.

It has been a very eventful ride and hope the ride gets faster.

Monday, June 23, 2008

Beard Day !!

I just got my beard added to the All About Beards website. They have approved it and have put it up in their site. This is great feeling considering the fact that it took me a long time to actually have one. I'm in the process of getting a bigger one right now as Kamal Hassan has. :)

Tuesday, June 17, 2008

A lot to do ..

I have started enjoying some of my free time so much that I now make free time to enjoy. Staring with playing badminton, I will get better at this, to learning how to play table tennis. The carom board has been taken over by some people from another project and we could not play because of this. I have started going to the gym as well. But work has to be finished within the time frame and I strive to finish all the important work. This post is all about Rails.

Before Rails I knew what an MVC was and how to implement it. But never got an entire framework bundled with all the features. I am a relative starter in this field but it took little time to understand how great is rails when considered as a rapid application development platform. The tests also was a pro as I never had written a single test when I was doing JAVA [:)].

The usage of helpers like link_to_remote and form_for has been great as it greatly reduced application development time. I also found it better to write all the configurations in a yml and load it via the environment file that to write static classes which returned all these. And the plug-ins that it gave. Just awesome. Think about not writing a single piece of code for the authentication and tagging features. It even has Lucene plug-ins. I have also used the paginating_find plug-in.

The stuff that I hear most from my friends is the problems that ActiveRecord has. As per Abhijat, it took 13 secs to execute a simple query with limit and 3-4 secs without limit. I also understand that loading with include is actually transformed into join statements which is bound to up the query time and object creation time. 1+N problem ! And their effort. I also liked wrting rake tasks as they are so ruby ! :)

I also see that even though twitter is having so much problems extending, a lot of rails sites have come. Slide Share is one of them. I also saw this site called Crazzyegg. They use nginx and mongrel servers. I have not seen a site use mod-rails as of now.

Wednesday, June 11, 2008

Reactions

The post has a peculiar title because I had a quite heart warming one when I went through the Workstreamer blog. Theres a post titled 'What Does Your Workspace Say About You?' and that just jots down a instance where a desktop uses the Workstreamer client. It feels so much refreshing when something that you have done goes out in the open. The whole stuff was created from scratch and I also had the help of the twitter client snitter (code). The Open APIs where also designed and with the help of my dear friends Abhilash, Rohan and Abhijat.

I also found that Workstreamer had a community in Facebook. There are pictures with me in it too. Extreme right here.

Nice to be part of a great team. KUDOS !!!

Wednesday, June 4, 2008

Iteration's Over

4 days of mayhem. Sleepless nights and total work. Now I understand what a 'working professional' feels like. Most of the problems where HTML based. We, me and Amit, did all we could, from fixing HTML to Functional and Unit testing. Even after having worked so hard, we got errors during the demo. These errors were quickly sorted out, but pressurized us. But all that is well, ends well (I am a pessimist by the way).

Ruby On Rails coding has been great up until now. Yesterday I had a party along with Vivek, Rohan, Abhilash, Abhijat and Amit, and then Vivek told me the problem he faced when a query fired via find_by_sql took 5 secs to execute. He tells that the query is a simple one with a where clause, no 'in' statements, but fetches 20000 odd records. The same query run via php-myadmin runs in .00x odd secs. Is the Active Record a bad ORM then? I also find many people stating that not using the Active Record in Rails will solve a whole lot of problems.

It was also interesting to find that the ':include' option in 'find' will return you the object to which it has Foreign Key - Primary Key relationship. But it doesnot work if there is a select clause. But why ? If i have a credit table and a user table, then I cant write a find statement, with :include, which gives me the credit amount and the user data? It is a join at the end of the day and the populated stuff, which I understand is bad, could be populated along with the user hash too. This is also the case if I iterate through an array with records which were fetched with along with a select statement. Could not decide if this were logical.

We also put some validations along with the code. Live Validation was introduced to me for the first time and I loved it. I also understand there is a RoR plug-in for this which directly hooks up to the model and then writes its own Javascript code according to the validations given at the model level. Thats just 'WOW' !

I out of ideas as it has been a long time now that I have written something.

But as Arnie says 'I'll Be Back !'