Wednesday, April 8, 2009

W3C Validation for some Interesting Websites.

This is an Interesting Post considering that Most Websites with very high Network Traffic don't pass the W3C Validation.

The Only Website in my Test Space which passes the Validation is the Very Bankable Wikipedia.

Now The Microsoft Flagship Sites:
Microsoft Default Homepage ::
has 180 Errors, 32 warning(s) .
The Microsoft Search Site ::Live has 4 errors.

Google also has a fair share of this non-validation :
Indian Homepage for Google :: google.co.in has 58 Errors, 13 warning(s).

Amazon.com Homepage :: A2Z has 1587 Errors, 157 warning(s).

Indian Page for Amazon India Development Center :: Amazon India has 8 Errors, 5 warning(s).

Yahoo! Homepage :: Yahoo! has 34 Errors, 8 warning(s).

While Facebook site ::Facebook has 42 Errors, 8 warning(s).

Our Very own Indian Railways Site :: Indianrail has 240 Errors, 14 warning(s).

After these Results, I am compelled to think that whether W3C Validation mean much to us anyways? I mean we cannot stop using these sites just because they don't comply with certain standards.

PS: NIT Durgapur Homepage :: NIT DGP has 65 Errors, 6 warning(s).

Friday, April 3, 2009

Google Mail again

I now its kind of creepy but I have become an obsessive user of Google Mail/GMail of late so this post is again about GMail and the introduction of Support for Indian Languages in GMail.

The Google Transliteration Tool for Indian Language Rocks!!! :D and it has added more flexibility to the entire functioning of GMail as well.
You can Read more about this in the Official GMail Blog link here.
Plus There are a few Corrections regarding my Earlier Post about The GMail Bug : It isn't exactly a Bug since the GMail Interface uses Local System Time to show the Time Elapsed But According to me The Interface should be consistent with all GMail Users in India which means that the Time Reference to find the Time Elapsed should be according to the Google Server Time for India which can be found by searching for the String "current Time" on google.co.in !

Thanks to my friend Roshan Singh for pointing out the actual working of the Elapsed Time in GMail Interface though I had posted the Blog a lot earlier so didn't mind to change it.

Wednesday, March 18, 2009

Lakshya

I have always been baffled with this Question: " What am I going to do in my Life?" .I tried asking that Question to myself but could never manage any Decent Answers though.
Well.. all my friends around me have decided to either do MS@ US of A or go for MBA and some others are going to grab a job.
I thought I would review my chances for each of these Options :

1) MS/Post Grad:
I am really interested in Algorithms and Distributed & Parallel Computing.But Then I haven't began Preparing for GRE and Short-Listing Colleges.I have Personally seen that Short-Listing Colleges and getting an I-20(Acceptance Letter) is more Stressful than actually Preparing for GRE and after getting an Acceptance Scheduling an Interview in the Consulate is a more Daunting Task.I am more of the view that Having Work Experience works better (it is just my view ).

Deterrent for doing MS :

* Choosing Field of Study and really good college.
* Scoring Higher in GRE is bigger factor.

2) MBA :
Management has never been my cup of Tea though I am not really Pathetic at Understanding Core Principles of Management. Plus I am well Versed with Concepts of Finance and the Financial Situation in India & Indian Stock Markets.Still Cracking the CAT/other exams is the single biggest factor while considering doing MBA in India.Applying in Foreign Universities deal with issues along the same lines as doing MS.

Deterrents for doing MBA :

* CAT/GMAT and other Entrance Exams.
* Is MBA the best Move for me ?

3)JOB:
Well.. the easiest of Choices so far.Still getting a Job Demands Clearing Writtens during On-Campus Recruitment which is again a Rat-Race.I love Programming and solving Complex Real-Life Problems with use of Technology.I am not really good at it though I am trying to Improve.But the Recession has reduced the Scope of Choice so getting into the Job Pond doesn't seem to be the best Option.Plus I still feel I am too childish to be owning Positions of Responsibility.

Deterrents for Joining Company :

* Other Options.
* Work Pressure and Corporate Life & Responsibility.

So,Finally after weighing all Options I am still in the same Position that I was long time ago. (World is Indeed Round... :P ) I guess I ll let my Instincts decide the Future Course of Action.

PS :I saw Lakshya for Inspiration but it didn't help much.

Sunday, March 1, 2009

CopyCat 1.0

This Post is about CopyCat 1.0 (StandAlone Application in Java) which has been developed by nitd_developers for the College Tech-fest.

We had been approached with the Requirement for a Stand-Alone Application which could generate a Random Path so that Each Team is assigned a slightly Different Path with similar Constraints like the No of Turns being fixed and the max of steps it can take in a particular Direction till the next turn is encountered. We also took it up as challenge as we had never worked on Random Path Generation before.

Things weren't coherent at the beginning as to what was required to be done so that the Random Path generated strictly adheres to the Constraints. Then Swapnil came up with a set of equations which Govern the no of steps to be taken before a turn is encountered and also constraining the equation with another variable which keeps note of the turns.

Now,using this Governing Equation we could come up with 2 different set of Paths which Different Constraints.

Then,as an addition to the Random Path Generation ,We Provided support for Team Registration and Assigning Randomly Generated Paths to each Team Beforehand and then Viewing the Path assigned at a later Stage.


Few Screenshots of CopyCat 1.0

1) Team Details Panel:





2) GridPanel:




Positives for nitd_developers from this Application:

- It was Fun as always and also Gained a fair Idea about Random Generation with Constraints.

- Code was More Readable this time and used a better IDE(NetBeans) this time.

- Avoided Mistakes that were Committed last time (especially Code Duplication).

- Avoided Database for Trivial Data Storage Instead Serialized the Objects.


Things that we need to Improve Upon:

- Firstly,It would be making the entire Design more Flexible.It is more a continuous Process and we are definitely moving a step forward in that front.

- Using Standard Layouts in GUI was Missing yet again.We would need to come up with some Solution for that.(Null Layout should have been avoided).

- Finally,We need to be better than atleast ourselves every time we take up a new Task.



PS: If you have any Suggestions/Queries then Feel Free to Contact nitd_developers at nitd_developers@googlegroups.com

Wednesday, February 25, 2009

The Gmail Bug

Well after The Zune Media Player had a Bug in the Module which Calculates the Leap Year Correction
(more info here).It started a Blame Game in the Entire Set Up of Microsoft Zune Division.
The Recent Layoffs were attributed to this fiasco.
Now, its the turn of Google it seems.

This one seemed Quite Surprising When Google's Product Gmail Suffers from a Bug in the section which Records the Time Elapsed from the Time the Mail was Received in your Inbox.
I have a Screenshot to Illustrate this.




It Shows the Time here as -2 Minutes Which Essentially means that there is still 2 minutes left for me to receive this mail :P

After few Minutes it doesn't show any discrepancy.
Here is another Screenshot after few Minutes.


Well,The Weirdest thing about both of these Bugs are that both of them are related to the Date and Time which are often Regarded as Trivial Part but then Even nitd_developers had been plagued with such problems during LibTimeManager 1.0.(so no Blame games ..)

So the Most Interesting Part is how to catch this Bug.
1) Well Anticipate a Mail (either ask your friend to mail you or do self-mail ).
2) Open the Mail within like 20 seconds after receiving the mail (The most Crucial Part).
3) Now check the Timing to the right of the show Details Hyperlink.
4) It should be Negative if the Bug is Consistent.(I didnt Check in all Browsers or in all Platforms .)

I just Hope that Everyone does their Counting Right :P


Do Post Comments if you do find more such Bugs.

Friday, February 13, 2009

TLE :: Contest with a Difference

TLE, The Online Contest of IIIT - Hyderabad was a refreshing one for me.We had to solve the Questions with different constraints. One of the Questions that we managed to pull off well was this one:
In short, a code to draw the Penguin Image with shortest possible code.
The Actual Code we submitted was:


i,j,d,q;char*k[]={"4 1 1.1:8x1:1.","29 .16x.","28 :19x:.","27 .23x:","26 :25x:","26 26xX:","26 3x3:8x4:9x:","25 .2x:3 2:5x:5 :8x","25 :2x2 x.2 4x:2 2x.2 8x","25 :2x 3x2 4x: 4x2 :7x","25 '2x '2x2 4x:. 2x'2 8x","26 2x 6:2x5:.3 8x","26 2x5:.4:.7:8x","26 :x'4:'4:'5:':9x.","26 :2x.12:'3 10x","26 :2x: '8:'5 :10x.","25 .2x5 '4:'8 '10x.","23 .4x21 '9x.","21 .4x25 '9x.","19 .5x:26 10x.","18 .5x:'26 11x.","17 .6x3:.11 .7 2.3:_11x:.","16 .7x2'6 '3:2'12 2'2:12x.","16 6x12 :18 '2:12x","15 :4x:'12 :20 '12x:","14 .5x14 :21 2:12x","14 4x:'36 2:12x","14 4x15 .22 2:12x.","10 .:6x15 :22 2:12x2:","10 8x15 :22 2:13x:","10 8x15 :22 2:13x:","10 ':6x15 '22 2:12x:'","12 .:. 2x:.35 .:13x'","10 6:.'2x:.12 :18 .2: 11x':","2 .15:.'4x.28 4:'8x'3:.","2 18:.'5x26 5:.'.2x.'6:.","2 20:.'4x:.23 7:.2'9:","2 '21:.'2x:'21 .'20:2.","4 21:.'2x20 .2: 23:","2 .23:. 2x15 .2:4x 23:","2 25:.'3x2.8 .2:7x 20:'","2 '25: 23x 17:'","4 '23: 23x 15:'","8 '19:_6x2:3'2:10x '12:'","13 2':.10:'24 `._'6:2'"};main()
{for(;i<45;i++,puts("")){for(j=-1;q=k[i][++j];)if(isdigit(q))d=d*10+q-48;else{d=d?d:1;while(putchar(q),--d);}}}

However, I know the above code is really unreadable. So, I made it a point to Display the actual Code that was first used to come up with the actual one.

/*
* This is the code for Drawing the Penguin
*/
#include"iostream"
#include"string"
using namespace std;

int main() {
/*
* The Array of String below is the Actual Data about the Penguin
*/
string k[] = {"13 2'1:1.10:1'24 1`1.1_1'6:2'", "8 1'19:1_6x2:3'2:10x1 1'12:1'", "4 1'23:1 23x1 15:1'", "2 1'25:1 23x1 17:1'", "2 25:1.1'3x2.8 1.2:7x1 20:1'", "2 1.23:1.1 2x15 1.2:4x1 23:", "4 21:1.1'2x20 1.2:1 23:", "2 1'21:1.1'2x1:1'21 1.1'20:2.", "2 20:1.1'4x1:1.23 7:1.2'9:", "2 18:1.1'5x26 5:1.1'1.2x1.1'6:1.", "2 1.15:1.1'4x1.28 4:1'8x1'3:1.", "10 6:1.1'2x1:1.12 1:18 1.2:1 11x1'1:", "12 1.1:1.1 2x1:1.35 1.1:13x1'", "10 1'1:6x15 1'22 2:12x1:1'", "10 8x15 1:22 2:13x1:", "10 8x15 1:22 2:13x1:", "10 1.1:6x15 1:22 2:12x2:", "14 4x15 1.22 2:12x1.", "14 4x1:1'36 2:12x", "14 1.5x14 1:21 2:12x", "15 1:4x1:1'12 1:20 1'12x1:", "16 6x12 1:18 1'2:12x", "16 1.7x2'6 1'3:2'12 2'2:12x1.", "17 1.6x3:1.11 1.7 2.3:1_11x1:1.", "18 1.5x1:1'26 11x1.", "19 1.5x1:26 10x1.", "21 1.4x25 1'9x1.", "23 1.4x21 1'9x1.", "25 1.2x5 1'4:1'8 1'10x1.", "26 1:2x1:1 1'8:1'5 1:10x1.", "26 1:2x1.12:1'3 10x", "26 1:1x1'4:1'4:1'5:1'1:9x1.", "26 2x5:1.4:1.7:8x", "26 2x1 6:2x5:1.3 8x", "25 1'2x1 1'2x2 4x1:1.1 2x1'2 8x", "25 1:2x1 3x2 4x1:1 4x2 1:7x", "25 1:2x2 1x1.2 4x1:2 2x1.2 8x", "25 1.2x1:3 2:5x1:5 1:8x", "26 3x3:8x4:9x1:", "26 26x1X1:", "26 1:25x1:", "27 1.23x1:", "28 1:19x1:1.", "29 1.16x1.", "4 1 1.1:8x1:1."};

for (int i = 45; i >= 0; i--) {
for (int j = 0, count = 0; j < k[i].size(); j++) {
if (isdigit(k[i][j])) {
count = count * 10 + (k[i][j] - '0');
} else {
for (int l = 1; l <= count; l++)
cout << k[i][j];
count = 0; //reset the count
}
}
cout << endl;
}
return 0;
}




Well, The Code Itself is self-explanatory. Finally the Actual Figure of Penguin looks like This.



We ended 66th Overall and 5th Indian Team when the Contest ended. You can view all the solutions at the official website of TLE.
Looking forward to more such Events in the future.

Saturday, January 31, 2009

Using Products Fresh from Google Labs

If you spend most of your time on Google,Gmail,Gtalk ,Orkut,Blogger or any other Google Product. Then this page is the most essential thing that you need to visit. "Google Labs" ,as it is called, is a PlayGround for Google Employees where they spend their Time apart from the Work@Google to think,innovate on some cool Products that can be a successful product later on.. This is the same channel through which Gmail came up which so  now has  so many users worldwide.

So talking about Google Labs.There are Few Products that caught my attention which I would like to share :

1) Google Translation : This one is the biggest thing because it may help you talk with some Russian or Polish acquaintances in near future on Gtalk or mailing them by merely typing things in English. Google as Always would do the Translation for you from English to Russian/Polish and translate back the replies from Russian or any other Language to English .

2)Google Transliteration: This one does Transliteration work. which means if you know to speak some Language like Hindi,Malayam or some other Language but dont know to Read or Write then this Tool would be an asset for you. Using Transliteration you can type words in English but meaning them in Hindi like "Mera Bharat Mahan " --> "मेरा भारत महान" and so on . You can check this Tool on this URL This Transliteration Tool support For Indian Languages has been done in India : Google,Banglore. So this is the product to watch out for.

3)Google Audio Indexing/ GAUDI: This Audio Indexing Indexes Audio for certain Videos so that we can Search the exact Context or Wordings that may be used  in Speeches and  so on . The Google Search is moving a Step  Forward it seems. This Product though at intial Stages has indexed American Politicians Speeches (great thinking when it was time for US Presidential Elections :P ) 

URL for this Tool is : http://labs.google.com/gaudi 

There are many more Tools however These seemed Really Promising and Interesting given India as an Emerging Market Online. These Tools provide API so that Developers can develop Applications using these Tools. So,if next time you have a webpage that needs support for many Languages ,Simply using Google Translation API you have multilingual support without any extra Effort or Support Required. Just Reuse Google API's.

Now, there are few Ideas that I tinkered upon. But the Lack of Time and Experience is a big hinderance. Next Semester though, I might have a new Application Developed that would use these API's to the fullest.

So if I do get Time , you would see this Blog having Multi-Lingual Support for sure.. :) 

Do Comment about what Cool Products that you came across and do let me know if anyone is interested in developing Applications too.. 

Till then Enjoy Life..