On a lighter note….

http://escaperoute.wordpress.com/2011/01/04/to-all-the-testers-out-there-lets-rock/

Android!!!

All mobiles devices we have now, can be put in 2 categories. A feature phone or a smart phone. Most of the phones that are in market now are feature phones. A smart phone is a more advanced device which will have a complete OS and will run more complex application. Due to a drastic fall in the hardware costs, nowdays most people can afford a smart phone.

All smart phones are like computers now. They have a processor , RAM , GPU and run a complete Operating system. Till now almost all mobile operating systems were proprietary. What that means is, Nokia phones run an operating system called Symbian , Apple iPhones run an operating system called iOS and RIM’s BlackBerry run its own operating system. The problem with this system was that, the end user had to lose choice. If he wants a device with physical keyboard he cannot buy an iPhone, even if he likes iOS because Apple was not manufacturing devices with keypads.

Android – What is it ?
Android is an open source platform, primarily used for mobile devices and tablets. It is a software platform on which developers can write and run applications. We can also call it an Operating System.

Google (or Android inc) decided to develop a mobile operating system platform, which it will share with all people to use on their phones. So they developed the Android system and not only were willing to share the code(Open source) but they were also willing to give the code to all companies for no cost (free of cost). So all OEM mobile companies can now focus on making only good quality hardware and use this Android for free of cost.

Many companies like Sony, LG, HTC, Motorola, Samsung, Acer, and many more who are known for manufacturing and designing high quality hardware use this android OS in their phones. This helps them to cut cost(no need to develop their own os) and focus on their strengths. Now the end user can select a phone from a huge set of options. There are phones with one camera , with two cameras and phones with keyboard.

For the developers, it means that they can develop application for android platform which will run across all android phones(HTC,Motorola,etc). So what google has essentially done is, separate the hardware from the software. They have made the mobile device like a computer. In a computer, I can install linux or windows or any other OS. So Google has done that to the mobile world. The end customer can select a company and choose an android phone or another phone with some other Operating System.

This means more choice and better products because Google, being an expert in software field will make the software and hardware manufacturers can focus on the hardware. And because the OS is given for free(of cost), end users can get cheaper products. For example, Micromax, an indian company recently launched a phone A60, which is 6990 INR (155.0 $ Approx). This phone has a touch screen , GPS , Wifi , 3.2Mpx Camera, 600 Mhz Processor and runs Android 2.1. They are able to release such good quality high end products for a cheaper cost because, they dont have to invest on the software development side.

Now lets dig deep.

The Android system is built on top of linux kernel. The reasons are obvious.Linux being an open source operating system, is very stable and can be ported to any hardware platform. On top of the linux, sits a very effcient and a compact JVM called Dalvik VM. This is “like” the usual JVM but it is written in a compact and very efficient way. Then we have the Android API using which the developer can write any applications. So when we say an android system, it includes linux kernel , a Dalvik VM and Andorid API. With this they can port the OS to any platform. And all applications will run on the Dalvik VM so they are portable to any system if they have a Dalvik VM ported to it.

Google has been releasing many versions on android. The latest is Android 2.3, and most devices run Android 2.2 now. It is upto the hardware manufacturer to push the update to the phone. But the source code for the OS will be available for free(of cost). If a developer develops an application for Android 2.1 it will run in 2.1 and all versions after 2.1. The Android OS is pretty stable now, so by next year almost all phones will be running Android 2.3.

Apart from mobiles Android has penetrated pretty much every other industry. Google Tv is a product which was released this year. This Google Tv runs on top of android. That integrates Tv and a Computer. Sony is planning to release a PSP player integrated to an android phones, for people who want a phone and like to game a lot. Sony has already launched a Blu Ray player with Google Tv so that you can turn your tv into a computer with blu ray playing capabilty. My next guess is that Sony will launch a PS3 with Google TV. And many other people have succesfully run android in devices from microwaves to washing machines.

What Andriod has achieved?
Android I believe has given the power of choice to the end user. Now people can decide which brand phone they want to buy and which OS it should run to which type of phone they want. For example gamers can buy this PSP phone which is built specially for gamers. And People who text message a lot can buy a physical keyboard device. And all their applications will run in all these phones and they need not worry about having to ‘learn’ to operate a new phone.

Dinesh Abraham

courtesy :  http://dineshabraham.wordpress.com/2010/12/20/android/

The author of this post, Dinesh Abraham is currently working as a Lead Mobile Programmer in Canada and is an Android Market Developer. He has his own blog, http://dineshabraham.wordpress.com where he writes on various operating systems and the like.

Few things to remember for a newly born tester…

Trying to do justice to the name of this blog, I’ve attempted to key down a few things that might help a tester just starting out his/her career.

1.Eye for Details. In other words, the power of observation.This is a great way of catching cosmetic bugs, look and feel related defects etc. To a developer, ‘Enter’ and ‘enter’ will pretty much mean the same. But to a tester, it should scream out DEFECT.

For example, lets take the calculator application that everybody is familiar with. Ask any non-testing related person to test the calculator and most of the testcases they come up with will be functionality related.(eg addition, subtraction, multiplication, division etc.)

But a tester’s view should be completely different.Apart from the regular funtionality testing, a tester will also have to take note of likes of the following.

  1. Notice the font and cases on all the text on the buttons.
  2. Notice that few of the text are in red and black while the rest are in blue.( At this point, go check if the requirement doc has anything to say about which color each button should be in.)
  3. Notice that the maximize button is greyed out/ disabled. Check with the req.doc again as to at what times should it be enabled / disabled.
  4. Notice that it is impossible to resize the calculator by dragging around the egdes.
  5. Notice that the area before the Backspace button looks empty. Go check the req doc to know whether that is actually a missing button or an empty area.

These are just few things to look for when you start testing out an application apart from the regular functionality testing. This is a reason why , for a tester, the power to observe is really important.

2.Never ignore your GUT feeling. There is no scientific explanation to this. Sometimes, the moment you look at a particular feature in an application, you might have this feeling that something is not right but u may not be able to point your finger to it. At such times, if you can afford to spend time looking at that particular feature , please do. Do not move on thinking everything is alright when your mind is simply not satisfied with it. From my experience, every time I ignored such feeling, it had proved to be costly.

3.Creativity. This falls in line along with your observation power. While most of the times, the requirement document may prove to be extensively elaborative, it will still not cover all scenarios. This is where your creativity should kick in. Let us consider an touchscreen device as the application under testing. While the req doc will specify what action the system must take when the user touches the same option twice, it will not tell you what to do when the user clicks 10 times on the same option.Now who can say whether the device will not fall into a 10 year old’s hands.??? Your creativity in creating your own scenarios will help a lot in finding bugs.

4.Never say I’ve found enough. At the end of the day, never be satisfied by the number of bugs you have found or the number of defects you have raised. Cause bugs are like the concept of infinity. The moment you find one, there’s always the next one to be found. You can never find all the bugs.

5.Read articles on testing. Trust me on this. The more you read, the wiser you become. The internet is one good place to start. If you reading this blog, it means you’ve made a start. I say, AWESOME. But read more. Read about why you need to test a software, what kinds of techniques you can employ, what are the things to look for in a web application etc etc.

6.Never let a developer justify your bug. There are times when the developer will try to justify a bug you  raised. Actually speaking, this happens all the time. Most of the time this happens because of the difference in understanding of a particular requirement. Never be easily satisfied that the developer is right. Take the help of a senior to judge who’s understanding is right.

7.Passion. The most important thing you should remember as a tester is your passion. I agree, testing is a monotonous job. So if you are not in this field by choice, start developing a passion towards it.(Now I’m not sure if one can develop a passion towards anything :) ) . Because in any job, you cannot be happy without having a passion for what you are doing.

RSS feeds/ Google Reader

Ever seen this orange colored symbol on blogs and various other WebPages. Ever wondered what it actually does??? Well, I did. And the answer?? RSS feeds.

What are RSS Feeds.

RSS expands to ‘Really Simple Syndication’ (also expands ‘Rich Site Summary’). RSS feeds are responsible for scanning a particular website for new contents after the last visit to that website. Most of us do random reads on the internet and many a time we find certain sites interesting and would like to come back and read the updates on that site. RSS feeds let us do a follow up on such websites without actually visiting those websites.

How do RSS feeds work?

RSS feeds are read by applications called as Readers. When subscribing to a favorite website through the reader, the reader automatically checks the website every now and then checking for any new contents. As the author of a website, one can also informs all readers subscribing to our website that content has been updated.

http://pingomatic.com/ and http://feedshark.brainbliss.com/ lets one send out a ping.

Few Free Feed Readers

FeedDemon
Google Reader (Need to have a google id to access this)
Firefox Live Bookmark

And there are a lot many more free readers available on the net. While I have not visited or tried any of these Readers; I have extensively used the Google Reader which is a very simple and an easy application to work with.

Google Reader

Google Reader is one of the applications that Google offers its user. One can sign in with a gmail user id.

You can add what ever website you want to follow by adding it as a subscription. Any updates on that particular sites after you last visited is shown with the number of updates.( highlighted in the image). You can read the articles from your reader itself without visiting the website.

You can also follow a website and share it with your followers on Google Buzz adding comments that can be seen among your followers alone.You can also unsubscribe from a particular website if it begins to get too boring.

I am kind of beginning to think Google is an awesome company for coming up with applications like this. I only have one word for google. RESPECT.

Vista’s Snipping Tool

I’m using Windows Vista and I stumbled upon an application which lets me take a screen shot of anything. I’m not sure how many are aware of the SNIPPING tool.

In windows Vista, type ‘snipping’ in the search field and the snipping tool application opens up. Looks something like this.

Its a pretty simple tool.Lets one to capture just a window or full screen or just a rectangular area or a free form shot.Pretty useful I would say.

Note:  Not available in Windows Vista Home Basic Edition.

For more info refer  http://graphicssoft.about.com/od/microsoft/ht/snippingtool.htm

Internet Explorer Bug

Thought it is only fair that I do blog about little bit of testing after naming my blog like this :) So I caught a little something.
Check out the spelling of 'Internet Explorer' in the title bar

This was caught by chance . The title bar displays wrong spelling for ‘Explorer’. This is a cosmetic defect. Meaning, this is still a defect though it does not affect any functionality.

Bing or Google???

I did not acknowledge the existence of Bing until 2 days ago. The name did keep popping up every now and then in conversations and reads but I never gave it a try. I had been a happy googler for years now. But what upset my relationship with google was the creation of this blog.

I created this blog and in all my enthusiasm googled for it and could not find it. That lead me to a series of learning about indexing, page ranks etc. I was quite disappointed to understand that, for google to take notice of a blog, it might take days of continuous posting and keeping fingers crossed among other reasons. Feeling let down, I ‘Binged’ it. BINGO!!! My blog appeared. A question now arose. Is Bing better?

For anybody who wants to do a comparison of the two browsers check out this link http://www.bing-vs-google.com/ . I read quite a few articles and did some basic tests myself. This is the result I came up with.

  1. Search Results relevance. A search for a phase like ‘existence of god’ resulted in a lot of results with both displaying searches related to existence of God. This feature might come in handy when one cannot correctly put to words the question in mind.A search on ‘Canada’ resulted in Bing going the extra mile and giving me details about Canada like capital, pollutions etc from its freebase. Pretty cool I would say.I can’t really seem to judge which is better for its content relevance to the keyword being searched for. But I seem to have a hunch that Google is better than Bing for relevance (Just can’t prove it. Cause to prove it, I will actually have to sit and read through websites being displayed. Maybe some interested soul can check this out and give us the result).
  2. Preview Display. Both browsers offer us preview of the website. If you are a person who favors a website based on its look then Google is the browser for you. But if you would like to visit a website for link and details then the ‘Bing’ Preview offers you just that.
  3. Instant search. Google is a clear winner in this category. ’Bing’ is yet to implement the instant results feature.
  4. Location wise results. I actually borrowed this idea from other blogs. Common opinion is that google offers search result taking into consideration the geographical location the search is being made from. A search for ‘things to take to Canada’ resulted in google showing more relevant info but Bing displayed 2 highly Indian words namely valaikappu and seemantham. So I’m not quite sure who the winner here is.
  5. Techy Vs Lay man. This is another borrowed idea from other blogs. After doing a comparison of both the browsers, I’ve kind of come to a conclusion that for a tech savvy person, Google is the browser to search for results with credibility. For a layman, Bing will help. My blog was indexed by Bing in just a day while Google is yet to. After reading about indexing for a while, this is what I’ve understood. Google only shows results if you are active on that link continuously. Though for absolutely no scientific/ proven reason, this makes me want to believe google results have some credibility.
  6. Number of results displayed. Google is once again the clear winner here. For any search keyword, the number of results that Google displays outplays by far the number of Bing results.
  7. Interface/ Look and Feel. Google and Bing, both provide good interfaces. While Bing offers a background picture by default, Google does so if the user wishes. Google feels a little better because the picture appears for the entire window while Bing offers a cropped feel to the background picture. Google wins by a slight margin.
  8. Links to other services. Both browsers provide links but Google just offers too many services for the users for Bing to compete with it. Google wins
  9. Display Language. Again Google wins. Bing displays results only in English. Google offers in various regional languages as well.

I don think I’ve been biased in coming to the conclusion that Google is way better than Bing (though Bing displays my blog  :) ). Bing has a long way to go if it thinks of overtaking Google someday. But I’m going to go back to being a happy googler again and concentrate on my efforts to make Google notice my blog.

P.S. Hope Google notices that I voted for it in most of the categories. Come on Google, index my blog.