Sunday, 24 December 2017

Outsourcing IT? Things to keep in mind

It is very important that you have a proper outsourcing plan before you hire an offshore company to handle your IT development requirements. If properly planned, outsourcing can add great value to your business and also reduce your expenditure to a great deal.

As more and more companies are going for IT outsourcing, more and more IT service providers have cropped up in various corners of the globe, providing extensive IT development services. The rapid spread of Internet connection and growth in the industry has lead to the development of a solid base for these offshore IT companies which operate from their development base to offer you varied range of IT services. Today global outsourcing has become more of a business necessity.

Software outsourcing requires proper planning and execution. You have to keep in mind the following steps before you go for software development outsourcing.

Set your objective

You must have a proper reason to outsource your application development. You must be aware of your objectives and the outcome you are expecting. Set your targets and then go ahead with selecting the service provider.

Manage employees

It is very important that you keep your employees assured and make them feel secured while outsourcing your IT requirements to offshore companies. Most of the times, employees feel insecure about the financial status of the company when you outsource. It’s your responsibility to keep them believing in you and make them realize it is just one of your business requirements that an offshore company can handle better.

Handle your Expectations

You must realize that results don’t come overnight. You will enjoy savings but that will take time and in the same way, it will take a bit of time to get your application scalable and flexible.

Decide on Outsourcing Requirement

Decide on the work you want to outsource. Try to start with non-core requirements, which can help you to make some savings.Outsourcing requirements that don’t require in-depth technical knowledge assure failure proof outcome. This is a great way to start with your outsourcing plan.Starting with easy requirements and then moving on to the complicated ones will not only allow your offshore partner to be acquainted with your project scope but also help you to manage the flow of the project.

Find Service Provider:

When you have generic development requirements, it is always safer to go for provider who bills you low for their services. This will not only get your project completed backed by a huge resource pool but also cut down a lot on your expenditure.You need to check on the provider background. There are things that are equally important as their experience. You must check on their work ethics, references, and cultural compatibility. This will help you to work with them on the long run.Make sure the location you choose for offshore software development has peaceful demographic and political condition. It is also important that you do a little research on their work culture.It will be great if you can pay a visit to your offshore partner and interact with your development team working on the project.Never forget to check on the references.

Train your management:

Before you start outsourcing, it becomes very important that you prepare your company management for the changes that might happen in the company.Let the management know your long-term plans and business development strategies.Train your management to deal with employee retention policy if any requirement arises.Make the offshore service provider feel comfortable and work with you as a part of your company. This will encourage your offshore development teams to work properly for you and maintain a good business relationship.

Gear up Business Security

Before you give access to your offshore development partners to deal with your company details, make sure you have made all your business processes secure.Secure and upgrade your confidential networks and client details.Build up a communication between your teams and management.Get Non Disclosure Agreement signed with your offshore development partner to keep your business information safe.

Start Small

Always start with small requirements when you deal with new service providers. Gradually move on to the next level.

Increase project scope gradually

Once satisfied with your service provider, you can go ahead and expand the project scope. You can now let them know your complicated requirements.Once sure, about your offshore outsourcing partner, do not hesitate to expand your requirement to the fullest.

Chat with us for further consultation at or email us at :

Sunday, 30 October 2016

How much does VR application development cost?

Virtual Reality (VR) and Augmented Reality (AR) are kind of apps whose development costs varies greatly. There would be no easy way to tell a cost without the specific requirements, but the hour rate from us ( is $18-$25 . For a simple VR app showing an environment where user is walking, it won't take more than 2 days hence cost wont be more than 200 dollars.

I am working in VR amd AR for a year. You can have a direct chat with me . Just ask for VR person on by chatting from bottom left corner of the site.

Thursday, 27 October 2016

How Much does it Cost to Develop a Mobile Game?

By 2018, less than 0.01% of mobile apps will generate enough revenue to cover development and marketing expenses. The growing adoption of smartphones drives competition among vendors, and very few companies will eventually succeed. However, 2016 is going to be a turning point for indie developers – provided they bring their bright app ideas to life. What factors impact mobile game development and design cost?

Developing a mobile game: cost-by-type correlation

The cost of game dev is largely determined by the type of application:

  • Casual. A simple solitary game that fits any genre and doesn’t require particular skills to play. A user can pick it up at any time and doesn’t have to save the score at the end of a session. According to James Portnow, the founder of Zero Games, the common features of casual mobile apps include repetitiveness and lack of finality. Most high-grossing freemium games like Candy Crush Saga and Clash of Clans are casual by nature. They employ 2D graphics and possess limited functionality. However, users can access additional features (like rich visuals, high-quality sound, extra lives and special currency) through in-app purchases and upgrades. A typical casual game costs around $ 50 thousand to make. Rovio invested $ 140 million in the Angry Birds app – a project that eventually brought over $ 200 million in revenues in 2012 and has been trending ever since. In most cases, casual apps’ commercial success is driven by clever marketing and easy distribution;
  • Social. Such games are simultaneously played by multiple users on social networks like Facebook. They are similar to browser games, accessing limited amount of user data through oAuth protocols and mobile networks like OpenFeint. In terms of infrastructure, a social app incorporates payment tools and stats display mechanisms (to encourage users play & spend more). These apps are usually built with social networks’ development kits (like Facebook SDK), although post-development Facebook API’s integration is also possible. A social game application like Farmville costs $ 100-300 thousand;
  • Cross-platform. The games can be played through social networks, mobile apps and web browsers. IT companies release applications for multiple screens in order to reach out to their target audience and expand market presence. Such successful games as Slotomania, Bubble Island and Diamond Dash originally became instant hits on Facebook and moved to iOS and Android later. Cross-platform custom application development requires great expertize in coding and software integration. Thus, a comprehensive gaming solution may cost up to $ 300 thousand;
  • Games with complex graphics. Puzzles, shooters and adventure games with elaborate graphics are usually the mobile extensions of popular desktop franchises like Mortal Kombat and Need for Speed. However, there are some console-quality applications designed for mobile devices only – for example, the Badland app for Android, which employs detailed 2D visuals and an inspiring soundtrack. Developing a complex, visually rich mobile game is a time-consuming and expensive process. Thus, a game like Real Racing 2 apparently costs $ 2 million.
We’ve briefly mentioned browser games which are played over the Internet. Since mobile devices possess limited processing power, vendors do not develop games for mobile browsers specifically. However, there are desktop versions of popular mobile apps like Angry Birds.

Other cost factors behind mobile game development process

  • Vendor. Choosing the right developer is the most important business decision you have to make. The stages of game production include marketing research, prototyping, coding, UX/UI design, editing and, finally, testing. The US/EU bids for dev services can be estimated at $ 60-100 thousand a month (or $ 60-150 per man-hour). Thus, an indie shooter like Tower of Guns (3D engine, high-quality images) that took over 3800 man-hours to develop may cost $230-570 thousand. In order to cut dev expenses, many companies outsource game development to Asia,Europe. Countries like India, Ukraine offer high-profile specialists with great expertise in coding and visual design. Their prices range from $ 25 to $ 50 per man-hour, while the quality of app development meets the high US/EU standards. If you consider outsourcing game dev, it is better to hire a dedicated team and choose the “time-and-material” pricing model. Since most game app projects are subject to changes, the TM approach will allow you to pay only for the actual hours spent on the task;
  • Design. The notion doesn’t refer to visuals alone. Mobile game design, as well as development, is a multilayer process which requires assistance of such specialists as game artist, lever editor, UX and UI designers. A game artist sketches ideas and characters, draws scenery and applies textures. A lever editor creates architecture for various segments of an application, including objects and landscapes, and maintains the desired level of complexity. UX and UI designers improve the general feel and layout of a game, respectively. If your app contains two-dimensional images and doesn’t switch levels, you can do without level editing and 3D-modelling (these specialists charge $ 50-150 per man-hour). However, you cannot save on UX, UI and visuals. Every dollar invested in user experience brings $ 100 in return;
  • OS. The choice of a platform naturally influences game design and dev costs. The integration of third-party APIs, payment systems and administration features for Android applications is usually 10-20% cheaper (in comparison with iOS). However, it’s not the main point. We strongly recommend that you conduct a comprehensive marketing survey to define your target audience and OS destination. Many successful applications like SongPop initially entered one platform and expanded its OS presence later. Despite the fact that SongPop is now available for both iOS and Android, Facebook still generates 65% of the app’s users.
Game development is a fascinating process which starts with a great idea and evolves into your personal universe. And it’s the vendor who can revive your project or destroy every hope of success. Make the right choice!

We do it for $20-$25 per hour for most of the games. Visit or contact -

Tuesday, 25 October 2016

Make web page to auto scroll down

Today I want to share with you how to make a web page to automatically scroll down. This is applicable in dealing with social networks pages, business directories (ex. yellow pages) and other auto-upload resources.

The code

Both setInterval() and scrollBy() are typical browser JS functions:


var scroll = setInterval(function(){ window.scrollBy(0,1000); }, 2000);

This code creates scroll JavaScript variable (assetInterval() function) and runs it. The function will scroll a page every 2 sec (2000 msec). You may adjust the auto scroll speed by changing this value. The single run down scroll height is defined by scrollBy()’s second parameter –1000; a window will be scrolled down on 1000 px.


In order to insert it: hit F12 (Ctrl+Shift+I at Opera browser) at a browser tab to open WebDev Tools. Choose Console tab there. Then insert the code and hit Enter.

You might close WebDev Tools (F12) and browser’s JavaScript will still run this function.

Stop auto scrolling

To stop it without exiting page you might clear scroll variable by the following code:



Otherwise, you might remove all in-browser console scripting by just reloading a web page –F5. Yet, you’ll be back to the top of the page.

Code for your web page

Also, you might insert this code in your custom web page to run on demand:


function start_scroll_down() {

   scroll = setInterval(function(){ window.scrollBy(0, 1000); console.log('start');}, 1500);



function stop_scroll_down() {





<button onclick="start_scroll_down();">Start Scroll</button>

<button onclick="stop_scroll_down();">Stop Scroll</button>

Be aware, though, that this code has created a global (application) JS variable called scroll.

Monday, 24 October 2016

How to hire an iOS developer?

You sat down to work today and see *Find an iOS Developer* staring back at you from the top of your todo list. This isn’t a straightforward task like “complete expense report”, “buy new coffee filters” or “fire Ralph” - this will take time, technique, and steady effort to complete.

First, the bad news: iOS developers are in high demand and have gone into hiding only coming out for interesting projects and to attend theWWDC. When you find a good one they can be very pricey.

But then the good news: Because of the obvious demand there are also thousands of people trying to join these group of talented recluses. But the challenge for you is to find members of the first group: experienced, talented, motivated and not the second group: inexperienced, looking to work on their first real project.

But first let’s talk about you.

Do you need an iOS Developer (yet)?

An iOS developer should be hired when you have a clear understanding of what you want and have decided that it should be for the Apple mobile market first (or in total / only). Do you know much about your target market - do any of them use Android? If so then hiring for iOS will not easily allow you to later support them; you might want to instead look intoPhoneGap or equivalents.

Do you know exactly what you want?

Do you have an idea or a plan? You are competing for developers and one of the signals you send to people who listen to your offer is how well thought-out your project idea is. Did you just dream up something that you think would be cool or have you proven that there is a market for the product and know exactly how it will work? Do you have mockups yet of what it should look like? With tools and Invisionyou need no development experience yourself to create something that looks (and acts like an app on your phone!) to validate the user interface.

A solid iOS developer will entertain multiple project offers and you want to stand out as professional, hard-working, and with a fleshed-out plan. Your project should feel that it already has momentum and its success is an inevitability.

Let’s talk about candidates again.

Vetting Candidates

Let’s assume that you post to one of the millions of free-for-all job posting boards that serve as the new age classified ads. Your inbox is then full of developers awkward cover letters and details of their experience with technologies you have never heard of.

How can you tell if you are:
- Talking to someone with experience?
- Talking to someone that can actually complete your project?
- Someone that can communicate clearly with you in regards to the details of the user interface, project status, and any problems faced during the build?
- Talking to a real person and not a dog trained by a talented prankster?

Research online presence

Developers have a number of tools with which they can show general competence in technical and non-technical areas. Look into each candidate's online activity:
- Blog
- Github or other shared code
- Twitter profile

You don’t need to do any private investigation-style research here - you are looking to see if their blog or code contributions match the general tone of a professional, match with their declared level of experience, and don’t contain any odd red flags.

Look in more detail at code contributions

Open source is a great way to vet candidates - you can look at actual projects that they have built and use them to ask questions about challenges faced and areas for improvements. Open source contributions are a clear way to tell see who is active and hustling in the developer community. Watching popular projects is a good sign, committing to projects is a better one, and being the creator of projects that are used by others is the best tell that you are dealing with a good candidate.

Components Built and Used

Not all code can be shared though - working for big companies means that some developers are quite good but simply aren’t allowed to show it publicly.

This doesn’t mean you shouldn’t ask what they would pull off the shelf for a new iOS project. After giving them a few details about your project ask them where they would start at a technical level. What components would they use for authentication, logging, UI components, caching, network handling, testing, etc.?

Feel free to also ask about specific commonly-used libraries likeAFNetworking,JSONModel,DateTools, etc. as well.

Complete Lifecycle Experience

An experienced iOS developer will have some pet apps that they have developed in the app store - either to make money or simply built when they were learning the platform. Ask them to showcase some of these and talk over the challenges they faced. Compared to all other development ecosystems the app one has the lowest barrier to entry: developers can directly make money from their work by only trading their time. What challenges did they face once the app was live?

Tool Opinions

A new developer loves everything about a tool, platform, or language while an experienced developer complains about its limitations. This is part of the experience lifecycle:
- You love it but feel like you don't fully "get it"
- You learn a good deal and start to realize the limitations of the new thing
- You master all the strengths of the tool, and start to feel the weaknesses
- You are challenged by the weaknesses and they frustrate you.
In that way very experienced people sometimes come across as hating the thing they use everyday while also quietly respecting it.

A good way to detect this phenomenon is to simply ask:
- What do you not like about Objective-Citself? How aboutSwift or Cocoa Touch?
- If given the chance how would you change the XCodeinterface?
- You are king for a day - how do you change the app review and feedback process?

Are They Constantly Learning?

Ask them about their first iOS project and things that they would do differently now versus in the past. Ask them what the last technical blog post, book, or talk they consumed that changed their knowledge was. What resources do they use to stay up to date with new tools, components, and techniques? How much do they know about WatchKit orHealthKit?

A Better Path

Develop with drafteq , we have around dedicated ios developers who love to work on interesting projects. We charge around $14-$25 per hour depending on the type of iOS project. Contact us at or visit for more info.

Saturday, 15 October 2016

These 8 Successful Companies Were Built Using Outsourced Developers

New businesses have little money to pay full-time developers, especially since even entry-level programmers command more than $60,000 per year on average. By outsourcing development work, startups can save money while still gaining access to skilled programmers. In fact, some of today’s best-known businesses started with outsourced developers.
“Even the companies that have the money often spend four to eight months finding the right talent and if they don’t use freelancers as a stopgap, they burn through their capital without building their product,” says Michael Solomon, CEO of 10x Management, “This is frowned on by investors and not good for business. By comparison, it makes even the highest level freelancers a great deal.”
Here are a few examples of businesses that outsourced development in their early days:


Scott Chacon may be known as the CIO of GitHub, but he originally met the GitHub CEO and co-founder Chris Wanstrath at a Ruby meetup in San Francisco. Recognizing that he had an understanding of Gits, which was rare at the time, the founders asked him to work as a consultant on an outsourced basis. Chacon went on to write the backend of Gist, which is a sharing feature inside GitHub. The company may not have nailed Git without him.


AppSumo is proud of the fact that it was started on only $50. The AppSumo founder and Chief Sumo Noah Kagan describes asking various successful entrepreneurs for favors and, as a result, landing some of his early ad placements. He also found a developer willing to work for $50 to make a PayPal button and credit card form. He believes having a solid concept already in place helped him convince his developer to provide the code he needed.

Fab founder Jason Goldberg used a software development firm in India to build his e-commerce business. Over time, he saw that the site’s needs were more robust and, as a result, purchased the India firm. Goldberg’s company succeeded in its outsourcing efforts in large part due to Goldberg’s skill at managing the outsourcing process.


Alex Turnbull wanted a co-founder with a technology background. His product background wasn’t sufficient to handle the development part of building a software-as-a-service company. When he couldn’t find one, he made the decision to outsource the technical aspects of growing his business to a firm. In doing so, he realized he’d be able to retain 100-percent ownership of his company while also saving the money he would spend on full-time workers.


Slack was in its early stages when the company hired a design firm to refine its product. MetaLab reworked the company’s website and app, as well as redesigning its logo, creating most of what consumers see when they interact with the messaging service today. While MetaLab has designed numerous successful products over the years, businesses across all industries contact the design firm, hoping to duplicate Slack’s success. Of course, it's not their only win: they've also built brand assets for Brit + Co, Medallia, Coinbase.


UpWork specializes in crowdsourced work, so it’s no surprise the company was built using a team largely made up of contractors. The company is the product of a merger between the two largest freelancing platforms, ODesk and Elance. As Stephane Kasriel, CEO of Upwork, pointed out, 150 of the site’s 200 product and engineering workers are freelancers they hired through the ODesk marketplace.


SeatGeek founder Jack Groetzinger is a firm believer in the power of outsourcing in the early stages. He shares this passion with other startups describing how he uses contractors for everything from collecting ticket price data for various areas to software development. He points out that the cost of a contractor in a developing country can be as little as $1 an hour for quality work. In addition to his small staff, Groetzinger uses contractors across the globe.


Alibaba may be known as a global marketplace, but according to the book Alibaba: The Inside Story Behind Jack Ma and the Creation of the World's Biggest Online Marketplace, the company initially outsourced its development to a firm in the U.S. At the time, overseas development talent was still in short supply and the U.S. had the skills Alibaba needed to compete with ecommerce giants like eBay, and did it all behind the Chinese internet restrictions.
Outsourcing development to contractors can provide affordable talent to a startup when it needs it the most. These success stories demonstrate that whether a business opts to outsource to a firm, hire U.S. contractors individually, or outsource work overseas, the right approach can lead to success.

Wednesday, 12 October 2016

What is the difference between Data Analytics, Data Analysis, Data Mining, Data Science, Machine Learning, and Big Data?

First things first, doing stuff with data, whatever you want to call it is going to require some investment – fortunately the entry price has come right down and you can do pretty much all of this at home with a reasonably priced machine and online access to a host of free or purchased resources. Commercial organizations have realized that there is huge value hiding in the data and are employing the techniques you ask about to realize that value. Ultimately what all of this work produces is insights, things that you may not have known otherwise. Insights are the items of information that cause a change in behavior.
Let’s begin with a real world example, looking at a farm that is growing strawberries (here’s a simple backgrounder The Secret Life Of California’s World-Class Strawberries, this High-Tech Greenhouse Yields Winter Strawberries , and this Growing Strawberry Plants Commercially)
What would a farmer need to consider if they are growing strawberries? The farmer will be selecting the types of plants, fertilizers, pesticides. Also looking at machinery, transportation, storage and labor. Weather, water supply and pestlience are also likely concerns. Ultimately the farmer is also investigating the market price so supply and demand and timing of the harvest (which will determine the dates to prepare the soil, to plant, to thin out the crop, to nurture and to harvest) are also concerns.
So the objective of all the data work is to create insights that will help the farmer make a set of decisions that will optimize their commercial growing operation.
Let’s think about the data available to the farmer, here’s a simplified breakdown:
1. Historic weather patterns
2. Plant breeding data and productivity for each strain
3. Fertilizer specifications
4. Pesticide specifications
5. Soil productivity data
6. Pest cycle data
7. Machinery cost, reliability, fault and cost data
8. Water supply data
9. Historic supply and demand data
10. Market spot price and futures data
Now to explain the definitions in context (with some made-up insights, so if you’re a strawberry farmer, this might not be the best set of examples):
Big Data: Using all of the data available to provide new insights to a problem. Traditionally the farmer may have made their decisions based on only a few of the available data points, for example selecting the breeds of strawberries that had the highest yield for their soil and water table. The Big Data approach may show that the market price slightly earlier in the season is a lot higher and local weather patterns are such that a new breed variation of strawberry would do well. So the insight would be switching to a new breed would allow the farmer to take advantage of a higher prices earlier in the season, and the cost of labor, storage and transportation at that time would be slightly lower. There’s another thing you might hear in the Big Data marketing hype: Volume, Velocity, Variety, Veracity – so there is a huge amount of data here, a lot of data is being generated each minute (so weather patterns, stock prices and machine sensors), and the data is liable to change at any time (e.g. a new source of social media data that is a great predictor for consumer demand),
Data Analysis: Analysis is really a heuristic activity, where scanning through all the data the analyst gains some insight. Looking at a single data set – say the one on machine reliability, I might be able to say that certain machines are expensive to purchase but have fewer general operational faults leading to less downtime and lower maintenance costs. There are other cheaper machines that are more costly in the long run. The farmer might not have enough working capital to afford the expensive machine and they would have to decide whether to purchase the cheaper machine and incur the additional maintenance costs and risk the downtime or to borrow money with the interest payment, to afford the expensive machine.
Data Analytics: Analytics is about applying a mechanical or algorithmic process to derive the insights for example running through various data sets looking for meaningful correlations between them. Looking at the weather data and pest data we see that there is a high correlation of a certain type of fungus when the humidity level reaches a certain point. The future weather projections for the next few months (during planting season) predict a low humidity level and therefore lowered risk of that fungus. For the farmer this might mean being able to plant a certain type of strawberry, higher yield, higher market price and not needing to purchase a certain fungicide.
Data Mining: this term was most widely used in the late 90’s and early 00’s when a business consolidated all of its data into an Enterprise Data Warehouse. All of that data was brought together to discover previously unknown trends, anomalies and correlations such as the famed ‘beer and diapers’ correlation (Diapers, Beer, and data science in retail). Going back to the strawberries, assuming that our farmer was a large conglomerate like Cargill, then all of the data above would be sitting ready for analysis in the warehouse so questions such as this could be answered with relative ease: What is the best time to harvest strawberries to get the highest market price? Given certain soil conditions and rainfall patterns at a location, what are the highest yielding strawberry breeds that we should grow?
Data Science: a combination of mathematics, statistics, programming, the context of the problem being solved, ingenious ways of capturing data that may not be being captured right now plus the ability to look at things ‘differently’ (like this Why UPS Trucks Don’t Turn Left ) and of course the significant and necessary activity of cleansing, preparing and aligning the data. So in the strawberry industry we’re going to be building some models that tell us when the optimal time is to sell, which gives us the time to harvest which gives us a combination of breeds to plant at various times to maximize overall yield. We might be short of consumer demand data – so maybe we figure out that when strawberry recipes are published online or on television, then demand goes up – and Tweets and Instagram or Facebook likes provide an indicator of demand. Then we need to align demand data up with market price to give us the final insights and maybe to create a way to drive up demand by promoting certain social media activity.
Machine Learning: this is one of the tools used by data scientist, where a model is created that mathematically describes a certain process and its outcomes, then the model provides recommendations and monitors the results once those recommendations are implemented and uses the results to improve the model. When Google provides a set of results for the search term “strawberry” people might click on the first 3 entries and ignore the 4th one – over time, that 4th entry will not appear as high in the results because the machine is learning what users are responding to. Applied to the farm, when the system creates recommendations for which breeds of strawberry to plant, and collects the results on the yeilds for each berry under various soil and weather conditions, machine learning will allow it to build a model that can make a better set of recommendations for the next growing season.
I am adding this next one because there seems to be some popular misconceptions as to what this means. My belief is that ‘predictive’ is much overused and hyped.
Predictive Analytics: Creating a quantitative model that allows an outcome to be predicted based on as much historical information as can be gathered. In this input data, there will be multiple variables to consider, some of which may be significant and others less significant in determining the outcome. The predictive model determines what signals in the data can be used to make an accurate prediction. The models become useful if there are certain variables than can be changed that will increase chances of a desired outcome. So what might be useful for our strawberry farmer to want to predict? Let’s go back to the commercial strawberry grower who is selling product to grocery retailers and food manufacturers – the supply deals are in tens and hundreds of thousands of dollars and there is a large salesforce. How can they predict whether a deal is likely to close or not? To begin with, they could look at the history of that company and the quantities and frequencies of produce purchased over time, the most recent purchases being stronger indicators. They could then look at the salesperson’s history of selling that product to those types of companies. Those are the obvious indicators. Less obvious ones would be the what competing growers are also bidding for the contract, perhaps certain competitors always win because they always undercut. How many visits the rep has paid to the prospective client over the year, how many emails and phone calls. How many product complaints has the prospective client made regarding product quality? Have all our deliveries been the correct quantity, delivered on time? All of these variables may contribute to the next deal being closed. If there is enough historical data, we can build a model that will predict that a deal will close or not. We can use a sample of the historic data set aside to test if the model works. If we are confident, then we can use it to predict the next deal