The wait is over! Stack Overflow will now be available on your mobile phones

Stack Overflow is a well known and trusted Q&A platform for programming. Recently, it launched a new official Mobile App which is primarily for iOS Platforms and Android Platforms. This app effectively puts Stack Overflow on developers mobile and will allow the developers to view questions and provide answers on the move.

Push Notifications, a feature of the Stack Overflow App allows the developers to be updated about the status of the desired questions. Stack Overflow has decided to go more into the history of software development with the use of recently released Trend Tools to explore more about programming languages, latest technologies or framework.

Stack Overflow has also launched a tool to analyze on-going and previous trends in development activities in mobile-related technologies. This app contrasts from an existing Stack Exchange App, which just provides the links of the network sites that the users have created. Stack Overflow app will allow software engineers to do many activities like:

view question, write answer, comment, flag and vote on questions they want.

  • Receive push notifications when somebody answers or comments on questions.
  • Browse history of previously searched questions.
  • Use the new Markdown Tool that highlights syntax, contains built-in spell checking, easy to use WYSIWYG editor which also provides live preview with scroll sync.

The post written on the official website of Stack Overflow provides some interesting insights in the trends about various Mobile Development Platforms. This app is great for those people who want to use SO on the go.

Points to contemplate while developing a Mobile App

There was a time when CDMA phones were used for the purpose of calling and messaging. It was the only swiftest way to reach the masses without actually meeting them in person. Today, it’s an era where we are using more advanced version of CDMA phones called “Smartphones”, which are becoming an essential device for everyone these days. We use Smartphone Apps everyday for managing our daily routines. Many apps are downloaded by people every day, however the reality says that a large number of them are deserted. Recent research says that a buyer spends 85% of time on Smartphone Apps, but merely 5 Apps are used actively everyday.

Let’s discuss some points to consider before you start developing an App:

Analyze the domain where you are going to use your Mobile Application

Mobile Application development is a very vast area, thus you should think carefully before you start developing a magnificent App. Let’s consider that you are going to develop an App for social media, then you have to broaden it with an aspect of keeping the following points straight in your mind. Always be precise what you want in your appealing Mobile Apps:Do you want to make a Facebook-like website that allows users to create profiles, upload photo or video, send messages and to keep in touch with your friend?

  • Do you want to make a Facebook-like website that allows users to create profiles, upload photo or video, send messages and to keep in touch with your friend?
  • Are looking for the exact features that shares images similar to Instagram?
  • Or are you simply enabling the user to post and interact with messages that are limited to 140 characters?
  • You want to simply enable a user to post and associate with messages.

Choose the best platform to develop a Mobile App  

Choosing the best platform for Mobile App Development is like you have your work cut out for you. You have to find the best perspective from where you want to see your App. Researching by yourself about the basic functionality of different types of platforms: iOS, Android, Windows and BlackBerry RIM to find their capabilities and their pros and cons. This strategy leads to a major success in developing Mobile App.

Make your App elegant for all the different screen sizes of Smartphones

It is obvious that your App should be compatible with all the basic screen sizes of smartphones available in the market. To be more genuine, even if you are using the same mobile platform, the resolution may vary based on the device type you are using. In other words, if you are using iPhone 6 plus then screen size varies that on iPhone 7. Your mobile must have a pleasing and user friendly UI that can automatically distract the user’s attention.
Don’t create heavily loaded App for better customer engagement

Users keep exploring by themselves and look forward to install an App that is suitable for their mobile memory space. It is better to have less than having too much on a Mobile App. Double check yourself about the app that it must not contain too many images and heavy loaders that lose user’s focus.

Create a buzz with focused market strategy before you launch the App in the market

Your market is the most important place where you will sell your Mobile App. Treat market as your best friend and it will effectively give you a possible buyer. Examine the strategy properly to bring the best results for you. Having a touch of Mobile marketing expert will always be favorable.

Finally test your App before it reaches to potential customers

Last but not the least, your Mobile App should be tested properly before it appears in the market. Mobile App should be tested by considering basic aspects such as:

  • Working on App without internet
  • Working of functionality
  • Structure consistency throughout the App

By considering all the aspects as discussed above you should step up your game before it gets out of hand. But it always depends on how much you stretch yourself while developing an awesome Mobile App.


Triple Your App Downloads By Developing Minimum Viable Product!

You have got an amazing app idea! That’s great! Now, all you need to do is get it turned into a splendid application and cherishes huge user retention rate and sales revenue… right? Well, this is the ultimate stuff that every startup or entrepreneur wants from its app. So, what happens if you have spent years in the development of an amazing application and when the final product is released and there are no conversions? You would simply end up with the loss of time, money and your valuable resources.

As we know, there are lots of expectations tied up with a newly launched product. It includes adding to the brand value, gaining a competitive edge, securing your investments and much more. So, an unexpected output due to lack of practical knowledge of users need could risk up your developer’s efforts and the investment done. What’s the way out there? This is where the existence of Minimum Viable Product is highly significant to avoid such unnecessary risks in Mobile App Development.

MVP – The Right Choice

To most of us, Minimum Viable Product is just an acronym of MVP. Well, MVP stands more of concept rather than a technique. An MVP mobile app is a product with basic features that forms its base. Developing MVP for your product is pretty simple. Decide exactly what your USP is, represent it clearly in front of your customers and see their responses. Despite developing a company first product that may or may not a success, releasing MVP at an early stage gives you plenty of time to accumulate the data and gauge intended customer interest areas.

There are innumerable companies like GlamSquad, Amazon, Taproot+ and much more that have made use of MVP.


Let’s assume that you want to make a photo editing app. The first thing that any mobile application development company would leverage you is a basic app that allows you to add 5 filters to an image followed by adding a frame. Once the basic concept is approached and liked by your targeted set of audience, you will strategize with phase 2 development.

When app developers have earned enough profit from phase 1, they will provide you with some more advanced features like adding more filters, frames, and accessories like hairband, bow, tie, sandals and more. Now phase 2 is cleared and another round of profit is credited in developer’s account, it will soon launch phase 3 where collage maker and sharing would be an addition to the existing app.

This is how MVP actually works. To have a better understanding of MVP approach for mobile app development, let’s find out how we can use it.

How MVP Influence App Developers And Mobile App

  1. Evaluating Market Demand:

No one can predict the demands of new applications. So, in order to evaluate whether you app idea would be adopted by your audience or not, it is recommendable to create a video or teaser page and gauge its subscription list. High-blown up the list would clearly indicate that large mass of people is highly interested in your app idea. Social media is one of the best tools to evaluate market demands in most cost effective way.

2. Identify App Potentials:

Though an MVP of a particular app may not seem to be the outstanding versions, still it can have the potentials of turning it into best one. If the MVP version of your app is liked by your audiences, app developers are likely to expand and improve the app by adding more features and functions and improve or re-design complete app in order to save your investments in the app. Thus, the final product is expected to reach the desired level of success in the best possible way.

3. Helps To Achieve Customization:

Though your app final version may have gain success for one set of audience but it may result in losing another part of the audience. With minimum viable version, app developers can involve all flavors of users and create a tailored version that would undoubtedly expand your app reach.

4. Eliminating Risks:

Every new mobile app developed has a risk of being compared to the best-featured app of its niche. Another set of risk associated with the mobile application is to stand strong in terms of ideal performance. It may run well at developers end but may crash or report bugs in users smartphone and there would be no room to fix those bugs. Development of an app MVP version eliminates those risks and leads developers towards the development of a top-notch application.

Real-time data collected from users are far better than the data of pre-development research. So, if you want to develop the best mobile app for your business, ask you app development company to acknowledge you with MVP version of your app to map success in an app store.

Generic testcases for selenium 1 The extension methods

Selenium is a great tool to automate UI testing but the code it generates is difficult to read and definitely not easy to maintain. The conclusion was that it was just a good code sample. Moreover, there was a huge scope of not writing code for many of the routine checks like javascript validation of data entered by user and messages.

Most selenium test cases would constitute of filling up form fields , click a button and check for error messages or their absence. Since selenium depends on strings selectors for identifying and manipulating controls, the idea was to have selectors for all sorts of form fields and populate them with random values. This would constitute the laziest testing technique but effective for checking for 500 status code or page crashes caused by not handling empty fields, not checking for data types and lengths. Taking screenshots will help notice layout issues quickly as well.

But before we start, we need to add a couple of methods to make our life easier. Selenium has a ready method GetAllFields() for getting all form inputs but it skips the select and textarea for some reason.Moreover, it does not help us to get specific controls like checkboxes to manipulate.For example checkbox can be checked using Check() and Write() is used to add text to the textboxes. This complicates the code a bit more.
To make it easier and more natural to code, we added extension methods to get each type of control.

private static string[] GetControls(ISelenium selenium, string strXPathLocator){
int cntControl = Convert.ToInt32(selenium.GetXpathCount (strXPathLocator));
string[] strControls = new string[cntControl];

     if (cntControl > 0){
for (int i = 1; i <= cntControl; i++){
strControls[i – 1] = selenium.GetAttribute(strXPathLocator + “[“ + i + “]@id”);

      return strControls;


The above method uses selenium’s general method of getting elements using XPath. It takes an instance of selenium and the XPath expression as parameter. It is private so that public methods can pass the necessary expression and allowing the test case writer to forget about Xpath. It is also in line with the GetAllFields() method provided by selenium. Unfortunately, there is no other way to get the string array of control ids yet.

Next we add a method to get specific types of inputs/controls.

public static string[] GetAllCheckBoxes(this ISelenium selenium){

  return GetControls(selenium, “//input[@type=’checkbox’]”);           


The above method is specific for the checkboxes. There will be similar ones for radiobuttons, textarea and password fields. There are a few more extensions that were added for the sake of convenience. You can download SeleniumExtender.cs for all of them.

With these extensions, we are ready to go to the next step of actually writing our testcase. This is the subject of the next post.

Kaira Software Pvt. Ltd. Is One Of The Leading Enterprise Web & Mobile Apps Development Company In India With An Industry Experience Of More Than A Decade.