AKS

Sunday, July 20, 2008

Tiger Woods - a Genius

San Diego — Are you kidding? Seriously? No, really, c’mon, this is becoming too surreal. For the third consecutive evening, Tiger Woods produced the unthinkable that left thousands around Torrey Pines South Course, and undoubtedly millions across the country in front of their televisions, with jaws agape.

He recently won the US Open Championship at San Diego last month. One who would have seen the game would have realized why he is considered the best sportsperson in his field. We mark almost everyone as Extraordinary. There must be something which separates mortals from immortals. For me I saw it last month in Tiger. I will share a youtube link but before that u should realize what made this moment truly spectacular.

Woods had a knee surgery 2 months before the tournament and he was in complete rest. He was not even 60% fit for the tournament but he decided to give it a try. He didn’t have any pre tournament practice. His knee was still recovering. The first day started. The start was not that good but he came in front from behind. He had started to limp little bit at the end of the day. Finally he ended up one shot ahead. Second day started, he started trailing. He was 2 shots behind after the 12th hole but then the genius took over. He hit two brilliant. The limping was worse and he was almost crawling as the day ended. You can see some of the unbelievable shots that he made during the 2nd day here:-
http://youtube.com/watch?v=gu7swOWRcnw

Now came the final day. With one shot lead he started. The big question was can he fight off the pain? The start was terrible and he became second. The rule of the tournament was the leader at the end of the 3rd day will be the winner except incase of a tie in which case game will go to the 4th day between the ppl tied and the winner to be decided on 4th day to break the tie. As I was saying, he started trailing by the mid of the 3rd day and the loss looked eminent. The final hole came, the ball had to travel some 13-15 feet to make the put at the 18th hole. Anyone will tell you that long distance on the bumpy green is next to impossible except in case of some miracle. It had to be done in one shot so that he could tie the score with the leader. Think of the tension….things that must be going though his mind. He had been crawling since last 2 days and now the pain had just become worst. After each shot you can see a painful grimace on his face because of the toll that his knee was taking but then these people write their own destiny. See what happened here:-
http://youtube.com/watch?v=cx2BS1u4fiw

Delivering at the crunch situation, what more could you ask. To make a perfect shot in that situation. Was it a miracle or a man coming over all odds, showing why he is the greatest. He relishes dramatic pressure. These are what genius are made of, they don’t need to prove to anyone else, they have to prove to just themselves, their determination is what I think separate them from others. Finally he won the cup on the 4th day but then for me he had made the history on the 3rd day itself and showed us what stuff legends are really made of.

Abhishek

Saturday, July 19, 2008

Recap

Hello everyone,
finally after so long am back. Many things happened during the last year. Gave some of the mba competitive exams:-
Cat – 98.5% ( Eng – only 73% screwed me in IIMs)
XAT – 97.8%
JMET – Rank 1242
Snap – 85 Marks

Got calls from many colleges for gd and interview. Most of 8th sem went in giving interviews only. Final sem project in SUN Microsystem got completed largely due to my partner Anand. Big thanks to him for allowing me to concentrate completely on my gd preparations. Well interviews were fun, going to so many colleges in so many cities namely Mumbai, Pune, Roorkee, New Delhi, Manipal. It was damn hectic taking permission from HOD and different teachers. They also deserve a mention here for allowing me to go everywhere with attendance. At the end I was not absent for more than 1 day in any of my final sem subjects ;) where I think I bunked more than 25 days.

I finally converted IIT Roorkee, LBSIM New Delhi and TAPMI Manipal. Was waitlisted at XLRI Jamshedpur where at the end my waitlist remained at 3. So if 3 more persons would have cancelled their admissions there, I could have got through but that was not to be :( . Anyway I finally am taking admission in IIT Roorkee. So two more years of studies remain for me.

College life came to an end and the farewell was a great fun. We thoroughly enjoyed and the memories of last 4 years will always remain with me. We had some great time. First year we used to bunk a lot and just chit chat. Who can forget badminton, entering classes in between fully soaked in sweat!!! 2nd year was a low key affair with trying to adjust in dept (HOD to be more precise). I became Microsoft Student Champ. Doing projects there, giving seminars for them, conducting Hands-on-Lab… it was an all new experience. 3rd year was awesome – winning in fests with Anand. Taking so many leaves/tackling hod in giving us permission with attendance for attending fests. Going to Hyderabad for attending Microsoft all India Champs meet. It was just great. During 4th year mba preparation was in full swing and it took all the time. Just few fests here and there…..

Now am back in home. Let’s see when do I get opportunity to go back to Bangalore, maybe internship or final placement, only time will tell. Have 12 days remaining before classes at iit starts, so will be posting 3-4 more posts in coming week to kill time. Thinking of posting about some of my interview experiences next. So keep watching this space.

Adios,
Abhishek

Wednesday, November 21, 2007

Abhishek Sinha

Hi,
after lots and lots of persuasion from my friend to write a blog about me, i finally agreed to that person this diwali. only stipulation was that questions will be decided by my friends. So here it goes:-

My biggest source of inspiration : My parents.

My biggest strength : My will power. Able to remain calm during adverse situation.

One thing which "will always be" be associated with abhishek sinha : integrity. I think you guys are in better position to answer this question.

What fires up Abhishek : Challenges. Love challenges. it gets me fired up like anything.

One thing which i never forget : Responsibilities.

What upsets me : Hipocracy, unfortunately have seen lots of it in my life.

Something that life taught me : Never have any expectations. It always hurts your feelings.

Favourite song : Tughse naraz nahi...
http://www.youtube.com/watch?v=E_WV6HRq3SM
Every line has significance in my life, it had 10 years back, it still has now.

Maths is : Probability.

Achievements that i am proud of :
In class 7, after mid term I was trailing the guy who came first, Supriya, by 53 marks. one day in bus while returning from school, he just said in mocking way to me that this time no one can beat him, I said i can try, he started laughing. I took it as a challenge and thought of giving my best shot. By god's grace, in finals I came first, he came second. i was ahead my 71 marks. Class 7 was toughest year of my life and to manage this was almost a miracle.

In class 11, got 100 in computer science in annual exams. It was the first time that I got 100, had lost the count of how many times i had got 99 but somehow 100 always eluded me. So it was a great feeling to finally have one in the bag. It also got me marker's cup for computer science. Had set my eyes on it one month before the annual exams, so it was an awesome feeling to achieve it.

In class 12, we used to play cricket in the evening in dps hostel. Once there was a fight between me and a guy and he challenged me for a series between his team and mine. I captained the team and we won the series 6-1.

In engineering during 2nd sem, I had met with an accident on the first day of external exams. My right hand was badly injured. Couldn't have left the exams as it would have resulted in year back, so thought of giving the papers to prevent year back. Each day before exams, used to go to the doctor to get the dressing on my index finger thinner. It used to bleed during exams but then something used to keep me going. Gave engineering graphics and the chemistry lab in the same situation. After this to get 90% was something to be proud of I guess....

During 6th sem, did a project at all India level and came first. Didn't expect it but it happened.

Difference in class 6 and class 7 :

In class 6 I was just like any other school going boy, used to play a lot, lots of tv, enjoy life, had fun, no tensions, full masti.

Class 7 changed everything. Life became hectic. Was doing things which 25+ people will do. Balancing life was one of the major priorities. Learned in those one or two years what people take years and years to find out. Playing stopped. Tensions became part and parcel of my life. In short life changed tracks. Was in peak of my studies in class 7. Unfortunately could never reach that level again what I thought I had at that time.

Cricket meant joy :
Used to play cricket hell lot, district team, watching Sachin bat(not india). I thrived on cricket. But then responsibilities took over and it had to be left for maybe “a more secure job”. I dont think my computer skills come even to close to my cricket abilities. I think people who have seen me in school playing will vouch for that.

Happiest moment of my life :
Without doubt DPS life, loved those two years of my life. Each and every day is still fresh in my memories. I dont think you can get better roommates than what i got there. Will like to mention here different roommates I had in those two years : Abhishek Singh, Ashish, Mayank and Rahul. It wouldn't have been half of fun without you guys. You all rock!!!

Giving "gayan" in DPS :
I was famous in dps for giving advice. People used to come to me with their personal problems (home, girl friends, studies etc etc.) and I was more than happy to help them. They thought I can comprehend situations better than anyone else. Fortunately, my "fundas" used to work and thats what made more and more guys and gals to come to me.

Why don't I ever complain :
What's the use? It will just take out more energy from you without any outcome. So why not put that energy in some constructive use. Anyway I have the habit of moving on with life. I don’t like to regret on my past.

Winning in fests :
I think the credit goes to my partner, Anand. You cant get a better partner. Hats off to him. I enjoy it. It’s a competition and feels great to come on top. People ask me for treat but I regret to inform that not a single guy has given me treat for getting placed which all jokes aside is much much more important than winning in fests.

Love : One of the most beautiful feeling and everyone should experience it at least once in their life.

How I manage such academics with shares and Microsoft / How I manage to do multiple tasks :

All I can say is keep your goals clear or prioritize them and start working on that. Once you do that half of the battle is won. Second half will be won by perseverance. There are few odd failures here and there. Don't get bogged down by those and keep your will power strong. It takes it toll, sometimes you will miss things that you want to do desperately but you have to leave it for greater good. That's what life is. Learn to balance everything in life. Don’t know what more to say.

Regards,
Abhishek

Thursday, August 02, 2007

TOP 3 SECURITY TIPS EVERY DEVELOPER SHOULD KNOW

Security is a multidimensional issue. Security risks can come from anyone. You could write bad error handling code or be too generous with permissions. You could forget what services are running on your server. You could accept all user inputs. And the list goes on. To give you a head start on protecting your machines, your network, and your code, here are 3 tips to follow a safer network strategy.

Even if you don’t read the rest of this article, remember one thing, “don’t trust user input.” If you always assume that data is well formed and good, then your troubles are about to begin. Most security vulnerability revolves around the attacker providing malformed data to the server machine.

Trusting that input is well formed can lead to buffer overruns, cross-site scripting attacks, SQL injection attacks and more. Let’s look at each of these potential attacks in more detail.

1. Protect Against Buffer Over-runs

A buffer overrun occurs when the data provided by attacker is bigger than what the application expects, and overflows into internal memory space. Buffer overruns are primarily a C/C++ issue. They are a menace, but generally easy to fix. The developer did not anticipate externally provided data that was larger than internal buffer. The overflow causes corruption of other data structures in memory, and the corruption can often lead to the attacker running malicious code. There are also buffer underflows and buffer overruns caused by array indexing mistakes, but they are less common. Take a look at the following C++ code snippet :

void DoSomething(char *cSrc1, DWORD cSrc2) {
char cDest[32];
memcpy(cDest, cSrc1,cSrc2);
}

What’s wrong with it? Actually, there’s nothing wrong with this code if cSrc1 and cSrc2 come from a trusted source, such as code that did not trust the data and so validate it to be well formed and of the correct size. However if the data comes from an untrusted source and has not been validated, then the attacker (the untrusted source) could easily make cSrc1 larger than cDest, and also set cSrc1 to be larger than cDest. When memcpy copies the data into cDest, the return address from DoSomething is clobbered because cDest is next to the return address on the function’s stack frame, and the attacker makes the code perform malicious operations.

The way to fix this is to distrust user input and not to believe any data field in cSrc1 and cSrc2:


This function should be modified in following ways. First, it should require the caller to provide the length of the buffer. Of course, you should not blindly trust this value! Next, in a debug build, the code will probe the buffer to check that it is indeed large enough to hold the source buffer, and if not, it will probably cause an access violation and throw the code into a debugger. It’s surprising how many bugs you can find when doing this. Last, and most important, the call to memcpy is defensive; it copies no more data than the destination buffer can hold.


2. Prevent Cross-site scripting

Cross-site scripting vulnerabilities are Web-specific issues and can compromise a client’s data through a flaw in a single Web page. Imagine the following ASP.NET code fragment:

Response.Write(“Hello,”+Request.QueryString(“name”));

How many of you have seen code like this? You may be surprised to learn it’s buggy! Normally, a user would access this code using a URL like :
http://aks.com/welcome.aspx?name=Abhishek

The c# code assumes that the data is always well formed and contains nothing more than a name. Attackers , however, abuse this code and provide script and HTML as the name. If you typed the following URL
http://aks.com/welcome.aspx?name=(script)alert(‘hi’);

You’d get a web page that displays a dialog box, saying “hi!”. You will say, “So what”. Imagine that the attacker convinces a user to click on a link like this, but the querystring contains some really nasty script and HTML to get your cookie and post it to a site that the attacker owns. The attacker now has your private cookie information or worse.

There are two ways to avoid this. The first is not to trust the input and be strict about what comprises a user’s name. For example, you could use regular expressions to check that the name contains only a common subset of characters and is not too big You cannot squeak a HTML or script through this regular expression. Don’t use a regular expression to look for invalid characters and reject the request if such characters are found because there is always a case that will slip by you.

The second defense is to HTML-encode all input when it is used as output. This will reduce dangerous HTML tags to more secure escape characters.

3. Don’t Require sa Permissions (Prevent SQL Injection)

The last kind of input trust attack I want to discuss is SQL injection. Many developers write
code that takes input and uses that input to build SQL queries to communicate with a back-end data store. Take a look at the following code snippet:

void DoQuery(string Id) {
SqlConnection sql = new SqlConnection (@”data source=localhost;” + “user id = sa; password = password;”);
sql.Open();
sqlstring = “SELECT hasshipped” + “ FROM shipping WHERE id = “‘+ Id + “’”;
SqlCommand cmd = new SqlCommand (sqlstring,sql);
}

This code is seriously flawed for three reasons. First, this connection is made from the Web Service to SQL Server as the system administrator account, sa. You will see why this is bad, shortly. Second, notice the clever use of “password” as the password for the sa account!

However, the real cause for concern is the string concatenation that builds the AQL statement. If a user enters an ID of 1001, then you get the following SQL statement, which is perfectly valid and well formed.

SELECT hasshipped FROM shipping WHERE id = ‘1001’

However, attackers are more creative than this. They would enter an ID of “‘1001’ DROP table shipping—“, which would execute the following query:

SELECT hasshipped FROM shipping WHERE id = ‘1001’ DROP table shipping – ’;

This changes the way query works. Not only does the code attempt to determine if something has shipped or not, it goes on to drop (delete) the shipping table! The – operator is a comment in SQL and it makes it easier for an attacker to build a valid, yet dangerous, series of SQL statements!

At this point you are probably wondering how any user could delete a table in the SQL Server database. Surely only admins can do a task like that. You are right. But here you are connecting to the database as sa, and sa can do anything it wants to do on a SQL Server database. You should never connect as sa from any application to SQL Server; rather, you should either use windows Integrated authentication, if applicable, or connect as a predefined account with appropriately restricted rights.

Fixing the SQL injection issue is easy. Using SQL stored procedures and parameters, the following code shows how to build a query like this – and how to use a regular expression to make sure that the input is valid because our business dictates that a shipping ID can only be numeric and between four and ten digits in length:

Regex r = new Regex(@”^\d{4,10}$”);
SqlConnection sql Conn = new SqlCommand (str, sqlConn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add (“@ID”,Id);

Buffer overruns, cross-site scripting, and SQL injection attacks are all examples of trusting input. All these attacks can be mitigated by believing that all input is evil, until proven otherwise.

Abhishek Kumar Sinha

(ps gave it for department magazine last year, unfortunately it was rejected)

Wednesday, June 27, 2007

A Sparing Thought

Hi,
Here's a video of Mr. Michael Schumacher in the last race of his glorious career, he starts somewhere around 15th position, gets a puncture at the start of the race, then also doesnt get let down and finishes 6th in the process doing 12 overtakes. See his driving and tell me whether there's a 30+ year old guy inside that helmet or some exuberent young teenager doing those breath taking overtakes giving all that he can. He could have easily gone for 2-3 years more and each year would have come 2nd if not winning the driver's championship.

http://youtube.com/watch?v=f6ofdXDykqw

Same goes with Mr. Sampras, he could have easily gone on for couple more years and would have reached the finals of grandslams more times than not. But then these guys have a common goal. to be the best, they cant live as the second best so they retired as soon as they thought that they just couldn't live up to their own expectations, even though the whole world thought otherwise. They never let their own goals get lowered just because they were becoming old.

Now see Mr. Tendulkar. He has become the 2nd fiddle in the Indian cricket team. The player which once epitomised everything of team India has just become a common team member. One who is not known by his present but by his past. Opponents respect him but that fear is all gone. 3-4 shots in his inning reminds us of his past, but those are too few. I agree that still there is noone to replace him currently but shouldn't he ask himself whether he is justifying himself. Making excuse everytime, that he is not as quick as he used to be, his body has taken toll etc etc is not the correct anwer. Shouldn't he atleast try to dominate and leave for us to decide that. Instead he himself decided to play like a mere mortal.

Lets rewind a little bit. Why is sachin who he is? He is known for the way he took to Shane warne. The way Henry Olonga was running for his life in finals in Sharjah after he managed to make Tendulkar look like a fool in semi- finals. Do we remember his orthodox hundreds that he has made so many times or his 98 against pakistan in world cup,2003 or 134 in sand storm in Sharjah or 114 in Perth. What do you remember? His flawless defence or his coming down the track and hitting Warne over long or his upper cut for six against Sohaib or his fours against fast bowlers straight down the ground. It was always about how he made the runs and the consistency and not how many. If that would have been the case noone would have remembered Sir Vivian Richards but only Sunil Gavaskar.

If Tendulkar would have kept playing the way he used to, then also he had a chance to go down fighting and place his name among the immortals but what can be done when the soldier himself has given up. So tell me after 10 years from now will Sachin Tendulkar ever mean the same thing to cricket what Schumacher means to formula one and what "Pistol" Pete Sampras means to tennis. If not, then who is to be blamed?

Adios,
Abhishek

Saturday, April 07, 2007

Opinion about 'me'

Arena

(known to self and others)

intelligent, knowledgeable, logical, mature, wise

Blind Spot

(known only to others)

able, adaptable, bold, calm, cheerful, complex, confident, dependable, dignified, energetic, friendly, independent, ingenious, kind, loving, modest, nervous, organised, powerful, quiet, religious, responsive, self-conscious, sensible, shy, trustworthy, warm

Façade

(known only to self)

clever

Unknown

(known to nobody)

accepting, brave, caring, extroverted, giving, happy, helpful, idealistic, introverted, observant, patient, proud, reflective, relaxed, searching, self-assertive, sentimental, silly, spontaneous, sympathetic, tense, witty

Dominant Traits

57% of people agree that aksinha85 is intelligent

All Percentages

able (28%) accepting (0%) adaptable (14%) bold (7%) brave (0%) calm (7%) caring (0%) cheerful (7%) clever (0%) complex (14%) confident (42%) dependable (28%) dignified (14%) energetic (14%) extroverted (0%) friendly (14%) giving (0%) happy (0%) helpful (0%) idealistic (0%) independent (21%) ingenious (7%) intelligent (57%) introverted (0%) kind (7%) knowledgeable (35%) logical (28%) loving (21%) mature (35%) modest (7%) nervous (7%) observant (0%) organised (21%) patient (0%) powerful (7%) proud (0%) quiet (7%) reflective (0%) relaxed (0%) religious (7%) responsive (14%) searching (0%) self-assertive (0%) self-conscious (7%) sensible (7%) sentimental (0%) shy (7%) silly (0%) spontaneous (0%) sympathetic (0%) tense (0%) trustworthy (42%) warm (7%) wise (21%) witty (0%)

Created by the Interactive Johari Window on 7.4.2007, using data from 14 respondents.
You can make your own Johari Window, or view aksinha85's full data.

Thursday, December 21, 2006

Who am I

I'm the darkness in the light
I'm the leftness in the right
I'm the rightness in the wrong
I'm the shortness in the long
I'm the goodness in the bad
I'm the saneness in the mad
I'm the sadness in the joy.
I'm the ghost in the machine
I'm the genius in the gene
I'm the beauty in the beast
I'm the sunset in the east
I'm the ruby in the dust
I'm the trust in the mistrust
I'm the Trojan horse in Troy.
I'm the tiger's empty cage
I'm the mystery's final page
I'm the stranger's lonely glance
I'm the hero's only chance
I'm the undiscovered land
I'm the single grain of sand
I'm the Christmas morning toy.
I'm the world you'll never see
I'm the slave you'll never free
I'm the truth you'll never know
I'm the place you'll never go
I'm the sound you'll never hear
I'm the course you'll never steer
I'm the will you'll not destroy.
I'm the half-truth in the lie
I'm the why not in the why
I'm the last roll of the die
I'm the old school in the tie
I'm the spirit in the sky
I'm the catcher in the rye
I'm the twinkle in her eye
Who am I?

Tuesday, July 18, 2006

A Memorable Journey



The exams finally got over. It was too hectic to say the least. Finally left for home on 16th. It was by flight from Bangalore to Delhi and from there by train. As soon as we (Vigya and me) boarded the plane I saw a very familiar face in business class, quietly reading the newspaper. “Is he Dravid or not”, I was not 100% sure. Then I turned back to Vigya with a question mark on my face. He looks at me and says what happened, I looked towards my object of concern and moves forward since queue was waiting behind us. After 6-7 sec, vigya tells me, “He is Rahul Dravid na”.

Whole flight all of us kept waiting for his autograph since he was asleep the whole time. I thought it will never happen but destiny had better things stored for me. As we went to take our luggage in Delhi airport, we saw him waiting for his. Still not many people had arrived. Time was short. I went and asked for his autograph. He paused from talking to Mrs. Dravid and gave one. Then took out my precious w800i and asked Vigya to click a couple of snaps. First one didn't come that good (I think Vigya also was nervous), finally I clicked their snaps and he left.



I was really struck by his simplicity. So simple, yet having so much charisma. He is arguably the best test batsmen right now, the Indian captain, yet so down to earth. All the characteristics of a true Capricorn ( know that since I myself am same, our birthdays differ by 2 days).

I spent some time in ansal plaza meeting some of my DPS friends. It was fun. Finally we left for Patna in the evening. This journey will be remembered and cherished for ever.

Adios,
Abhishek

Wednesday, June 21, 2006

Visiting Delhi on 16th July

Hi, finally the lab externals got over and its a little relief....now need to start preparing for the university exam...

Anyway, after exams will be coming to my hometown via delhi. Will be there from 11 am to 5 pm on 16th July(sunday), so will like to meet everyone staying in and near Delhi on the said date. All those available (if not then plz take out ur previous time) and meet me. I am thinking of a place and i think ansals will be fine(looking at delhi's heat and as CP will be closed). anyone having any other place in mind let me know. My contact no is +919845780356.

Since last few weeks have been busy in 3rd internals, lab internals , lab externals..it just kept coming. Have even put my microsoft champ work on hold. Somehow managed to see Phir Hera Pheri. I found it quite humorous and it really worths the first time. The combination of three is just Awesome.

Dull days are set to follow as examination fever will set in. Looking for a month gap after the exams. As for bangalore, monsoon has set in and after each night's rain the scenario is same in most of the bangalore...water logging...trees fallen down...electricity crisis...sometimes it really makes me wonder how did this place become IT hub.

Met Chachaji yesterday. It was great to see him. We had a nice dinner. All my friends near my house here have left as most of them if not all were from 4th year and their engineering is over. Really had a great time with them all this while. Got opppertunity to learn a lot while having loadzzz of "masti". I wish them all the best for their future endeavors.

Adios,
Abhishek

Sunday, May 07, 2006

Great session

Hi, it has been long since I blogged, just was a little busy these days.

Anyway today I took a topic for the first time in Hands on Lab conducted in RNSIT. My topic was C#. Really the topic is too big to be completed in a week, forget about a single sitting. What things to mention, what not to mention. Code everything. Should I keep it simple, or should include some core thing. What all things to discuss?? Will I be able to do with "audience of 60" staring at me? This thoughts kept clouding my mind. To explain c# and make each and everyone execute a 10 page code on their individual computer was not going to be easy.


All the fear had vanished when I woke up this morning. I was all energized. I just wanted to go and give it my best shot. As the moment arrived I became more and more relaxed (something even to my surprise). After sometime I had started, I really had to control myself not to go in too much of “techie” stuff as it was a beginners track. I just wanted to keep it plain and simple. Not wanting to go much in details and confuse them. But still I started seeing blank faces as the time passed. But I was helpless. I was trying my best. I could not dilute my topic just because of few of them. C# is an integral part of Hands on Lab. The core part if I can say so. I wanted to help so that when ppl go home and open some book they can understand what is going on.

All in all I loved those two hours. Hoping to do something more enjoyable (not only coding) next time ;)

(even though coding is something which is closer to my heart)

Adios,
Abhishek