Wednesday, May 13, 2009

an introduction to bluetooth API's using JAVA

Just started with some serious work on my FYP and this is a really interesting article on getting started with bluetooth communication in JAVA ME application.

http://developers.sun.com/mobility/apis/articles/bluetooth_gps/part1/

Now, the article talks generally about creating a JAVA ME program without the use of an IDE so it was a bit of a work around to get the thing to work using Netbeans. So here are some additional notes.

1. The mpowerplayer sdk comes with a tutorial folder. I would recommend reading this page /tutorial/index.html

2. You need to make a few changes to the manifest file in order to make the application work. In order to change the manifest file using Netbeans (manually changing it in the project files will not work as soon as you hit build again). Right click on the project and then add the Midlet name in the application descriptor (refer to image). This adds a midlet-1 tag to your manifest file. Just make sure that the name of the midlet corresponds to your specific midlet name.

Another error you might encounter is that a DiscoveryListener was not found. There is a slight mistake in the article, it asks you to put the avetanaBluetooth jar file in the bluetooth folder. Place it in the root folder where all the other jar files are and you should get around this pretty smoothly.

So thats about it. I am a newbie to this technology so hopefully this article helped.

Cheers
Sparsh

Wednesday, January 07, 2009

Phewwww !!!

Helloo !

Finally the phone screen is over. Yayy !

My interview was scheduled at 9am Singapore time and I log into my computer at 8 just to avoid some weird time zone calculation problem (yes others have had this before.) I log on to skype and I see that my interviewer is already online. Resisting the temptation to say hi.. I just go and have a coffee. Luckily the interview doesnt send me any message in this while.

Minutes are passing by and my overly inquisitive nature wants to say hi.. but then i avoid it... Its 9:05.. no response... 9:10... finally my interviewer tells me she is running a bit late and could I wait....Great :) that just increased a little thumping in there....


Finally the interviewer calls.. It was a skype call and I dint want the great NTU internet to screw it.. Thinking I had no choice (I had already told the interviewer I preferred a phone call but she kinda forgot so I dint remind)..


Well she (Ok I wont reveal her name) was quite cheerful on the phone.... Kinda got me a bit setlled. .asked me to tell her what I have been doing these days.. any projects.. favourite programming languages etc... so much for small talk... but it kinda got me flowing..


then came the technical questions.. they were very easy actually. She asked me whether java supported multiple inheritance, and stuff about interfaces.. then moving to operating systems (I dint expect this).. she asked me about deadlocks.. which was easy and then finally a question about recursion...


Moving on she said let me ask you something thats going to be fun. Having read somewhere that Microsoft has stopped asking puzzles for interviews I was a bit taken aback and was expecting something nasty. But then the interviewer was quite nice and threw me a problem involving baloons and a room. I think it was pretty manageable and she liked the fact that I asked her questions clarifying the question itself. That really helped.. Anything you would take as an assumption.. Clarify it. The more you ask the better it is.

The last question for me was to test a communication enabled coffee cup which can be heated using commands given from the computer. There were a lot of clarifying questions to ask on this and yes some suggested improvements which made the interviewer laugh.. Even better.

Finally she asked me whether I had some questions for her. I asked her about her job and the interview process in general and finally some feedback on my interview. Overall she was quite happy and ended on a positive note.


The interview I think went as good as it could have been. Now just hoping for the best. The email should arrive within a week or so.. Till then adieu....


Cheers

Sparsh


(PS : Just saved this as a draft post. Plan to publish this later....)

Tuesday, January 06, 2009

Hours before the Microsoft Phone Screen

Hi

Am like really nervous right now as my phone interview is just hours away . Just sharing some links here which I think are really a good guide to follow :

http://blogs.msdn.com/jobsblog/archive/2004/08/04/ace-that-phone-interview.aspx

http://blogs.msdn.com/descapa/archive/2007/03/24/program-manager-pm-interview-tips.aspx

http://www.tylerbutler.com/dailydose/Pages/MicrosoftProgramManagerInterviewTheBreakdown.aspx

http://blogs.msdn.com/jobsblog/archive/2005/03/01/382953.aspx

http://blogs.msdn.com/jobsblog/archive/2005/03/02/how-i-got-to-microsoft-part-2.aspx

Preparing for Microsoft Phone Screen

Hi

Thought of sharing some preparation material that Ive been using for my Microsoft Internship interview. Some of it is very generic to most technical interviews and hope this helps you out.

I mostly use JAVA for all my assignments but most of the stuff/links I post are generic.


1. Object Oriented Programming Concepts

For all those who have been out of touch with programming, this page is a quick refresher for OO concepts in Java : http://java.sun.com/docs/books/tutorial/java/concepts/index.html


2. Virtual Functions


- Quite an interesting page with a comprehensive coverage of virtual/purely virtual functions in C++, Java and C#.

Important Stuff


  • In Java, all methods are by default "virtual functions".

  • In C#, a base class must provide the virtual modifier for any virtual method, and derived classes must provide the override modifier for any overriden method inherited from a base class.

  • In Java, pure virtual methods are declared using the abstract keyword. Such a method cannot have a body. A class containing abstract methods (either directly, or inherited and not overridden) must itself be declared abstract.

  • Java also uses interfaces. All of the methods declared in an interface are implicitly abstract. Implementing an interface allows a class to become more formal about the behavior it promises to provide. Interfaces form a contract between the class and the outside world, and this contract is enforced at build time by the compiler. If your class claims to implement an interface, all methods defined by that interface must appear in its source code before the class will successfully compile.
    (http://java.sun.com/docs/books/tutorial/java/concepts/interface.html)
  • Difference between Abstract Class and Interfaces :
    http://social.msdn.microsoft.com/forums/en-US/csharplanguage/thread/8ad621b8-a915-4d7e-89c3-5dbbc47202fd/

3. Comparisons between JAVA and C++