Managing shipment process using Amazon API (MWS – Marketplace Web Service)

Are you managing online store and wondering how Amazon API can help software development companies t

Software outsourcing companies India

 

Are you managing online store and wondering how Amazon API can help software development companies to manage shipment process? Amazon provides Marketplace Web Service that can assist you managing shipment process in your web application or portal programmatically.

Diagram depicts the complete shipment process from creating a listing through downloading the labels using MWS.

Step 1 - Create a listing

Before sending an item to the Amazon Fulfillment Network (AFN), programmer needs to create a listing in Amazon's catalog. This is true regardless of whether or not one intends to sell on Amazon's web site or through other sales channels. It is mandatory to mark items as AFN i.e. Amazon Fulfillment Network that tags an item to be fulfilled by Amazon. SubmitFeed operation of the Feeds API is used to mark an item as AFN.

 Step 2 – Create an inbound shipment plan

CreateInboundShipmentPlan operation of the Inbound Shipment API is used to create an inbound shipment plan. An inbound shipment plan groups into discrete shipments the items to be sent to the Amazon Fulfillment Network.

By submitting the CreateInboundShipmentPlan operation, Amazon is provided with key information about the items to be sent. In this operation list of sellerSku, quantity, ASIN, condition of the item and the from-address are sent.

Amazon uses this information to create a shipment plan for items, which is returned after Amazon receives the CreateInboundShipmentPlan operation. Programmer uses the shipment plan to group and send items to the appropriate Amazon fulfillment centers. As an output it will return the to-address for the shipment, FCCD, the shipmentId, the FnskuName of the item and the quantity of the item to ship.

Step 3 – Create / Update inbound shipment

For each shipment returned by the CreateInboundShipmentPlan operation, create an inbound shipment. An inbound shipment is created by submitting the CreateInboundShipment / UpdateInboundShipment operation of the Inbound Shipment API section.

 One should check for the to-address given by inbound shipment plan, to check for any active shipment on the same address. If the active shipment is not present then the CreateInboundShipment operation is used and if the active shipment is there, then the UpdateInboundShipment operation is used.

The shipmentId, FCCD, to-address generated by inbound shipment plan, and also the list of sellerSku and the quantity of each sellerSku as passed to Amazon API.  On inbound shipment creation/updation, indicates to Amazon are created to denote arrival of items to AFC (Amazon fulfillment center).

Step 4 – Transport Shipment

Before sending the shipment in the transport state, developer needs to specify the shipment box weight, height, width and length and then we can mark the shipment in the transport state. Here we need to keep in mind that the weight and dimension of the box specified must be correct, if there is difference then the shipment will we canceled and if this type of mistake occurs frequently then your account might be blocked by the amazon.

Step 5 – Estimating Shipment

When the shipment is successfully transported then the next step is to estimate the shipment, means to calculate the cost of the shipment based on the weight and the dimension of the shipment box. For calculating the shipment cost GetTransportContent operation is used.

Step 6 – Confirm Estimate Shipment Cost

User decides whether calculated cost is feasible for him or not. If the user confirms the cost, the shipment is marked as shipped and the user needs to pay to the Amazon. If the user cancels, shipment is not shipped and stays in the estimated status and user needs to pay that shipment until he confirms the shipment cost.

Step 7 – Download Shipment Label

Use the GetUniquePackageLabel operation to request unique shipping labels for your inbound shipments. This option is active once shipment is confirmed. User receives PDF file with all details regarding shipment.  Download shipment label option is available for each shipment created by User on confirmation. User can also download this shipment label even after a week or month of his shipment process. This helps to ensure that the shipment is processed at the Amazon fulfillment center quickly and accurately.

 

 

Top 10 client side technology considerations for web development companies

Want to add superpowers to your web application? Yes! Then JavaScript frameworks can do magic.In the



Want to add superpowers to your web application? Yes! Then JavaScript frameworks can do magic.


In the era the of rapid and interactive web application development, plain HTML/CSS does not serve the purpose. For innovative and interactive user interface, client side technologies or JavaScript frameworks come to rescue.

JavaScript frameworks are backbone of the web development for web development companies that allow programmers to develop interactive user interface without worrying too much about the code structure and maintenance.

We discuss here top 10 JavaScript frameworks that are very popular among software development companies in India.

 

 1) Angular.js

AngularJS is very popular and highly used JavaScript framework for developing Single Page web applications maintained by Google. This works on MVC and MVVM pattern. This not only simplifies the development but also testing of the web applications.

It allows programmer to extend HTML attributes by using Angular directives or creating custom directives. AngularJS compiler, compiles and renders HTML, it manipulates DOM elements and attach features provided in used directive.

The core feature of AngularJS is two-way data binding. It allows software programmer to create synchronized environment between view and model. If value of model is changed then it will automatically get updated in view and vice versa.          

Pros Cons
Two-way data binding simplifies process of developing complex web applications. Performance issues for large web applications due to constant synchronization between view and model
Directives allow user to manipulate DOM elements very easily Code is difficult to understand and debug.
Good documentation and support Substantial framework size
Very powerful framework with Filters, Dependency Injection, Expressions etc.  

 

 2) React.js

React.js is the answer for building large scale applications. Unlike AngularJS, it is very efficient at rendering complex user interfaces with better performance.

Virtual DOM is the basic concept on which ReactJS works. It renders virtual DOM to server first and then compare virtual DOM with actual DOM and update only the differences. This makes it better choice for large web applications.

Facebook and Instagram are very good example of large scale web applications that are built using ReactJS.

Pros Cons
Light weight framework Programmer may face issues working with other DOM manipulation libraries like jQuery.
Easy and simple to learn and master Constant re-rendering of components may slow down the application in case of large set of data.
Highly compatible with MVC Substantial framework size
High maintainability due to on-way data flow  
Component constant re-rendering decreases complexity by providing efficient arrangement.  

 

3) Ember.js

EmberJS is another powerful JavaScript framework that works on MVC pattern. EmberJS offers best of AngularJS and ReactJS both.

EmberJS works on principle of two-way binding, just like AngularJS. It also provides synchronized environment between view and model.

To overcome performance limitation of two-way binding in complex UI rendering, Ember released module Fastboot.js that allows server side DOM rendering similar to ReactJS.

Pros Cons
Very popular like Angular and React so add-ons are easily available Not as powerful or feature rich as AngularJS
Two-way binding and UI rendering Difficult to learn and implement

 

4) Meteor.js

MeteorJS is a full stack platform that allows building end to end mobile and web applications purely in JavaScript. It also provides better performance.

MeteorJS comes fully equipped with all the features that developer needs to create frontend, backend, business logic, and database management. This is supported by huge community that is always reachable for any issue or help required.

It only requires knowledge of JavaScript and MeteorJS to develop web application. MeteorJS is modular so packages and libraries can be used on demand.

The Server side packages run in node.js. Any changes in database are reflected back to UI in real time and vice versa making database operations faster.

Pros Cons
It is a truly JavaScript framework that requires nothing else but this to build end to end web application. User may find some issues with deployment and two-way communication with database as it maintains constant connection with server unlike the traditional request/response.
Only JavaScript knowledge is required to develop web application in MeteorJS  
Tutorials, help and custom packages are available very easily  
Better performance  

 

5) Aurelia.js

AureliaJS is an open source front-end technology managed by Durandal Inc. It extends the capabilities of DurandalJS. They have added libraries, tools, and frameworks to support latest web app development. It is easy to migrate to AureliaJS for developers working on AngularJS or DurandalJS.

AureliaJS has highly modularized structure. It comprises of many independent small libraries. So, one can have option to either use entire framework or use few of the required libraries or extend the libraries to create custom framework.

Pros Cons
Has very less dependencies as it is a self-contained package Not suitable for small projects
Provides out of the box support to Typescript  
Provides excellent routing  
Easy to understand  
Great documentation and support  

 

6) Polymer.js

PolymerJS is different from others. It is released and managed by Google. It works on the concept of web components to extend capabilities of HTML.

Web component is a browser technology using which user can create new custom HTML elements.

PolymerJS provides structure and gives power to user to easily create custom HTML elements using browser based technologies like web components, Service Workers and etc.

Pros Cons
Allows developer to create custom HTML tags It cannot be used as only JavaScript framework because of its limitations

 

7) Knockout.js

KnockoutJS works with MVVM pattern that makes it a bit different from Angular and Ember.

It is a small, lightweight and purely JavaScript framework with no dependencies. It also provides features like Declarative bindings, Automatic UI refresh, Dependency tracking and Templating.

Pros Cons
Lightweight, Small framework with no dependencies New features are coming slowly as compared to competitor frameworks like React and Angular
Provides features like Binding, UI refresh, Dependency tracking and many more  
Widely used by many communities so support is easily available  
Great documentation and help  
Great documentation and support  

 

8) Backbone.js

BackboneJS is a light weight but fully featured JavaScript framework. It is used by many big companies like Pinterest, Foursquare, Walmart etc.

The best thing about BackboneJS is that it is simple and easy to learn. It is also very flexible to use with other third party JavaScript frameworks.

Pros Cons
Easy to integrate with current project Not suitable to use as core framework as it isn`t that feature rich. Can be used as side framework.
Small sized, flexible and easy to learn Sluggish release cycle

 

9) Mercury.js

MercuryJS is recently released JavaScript framework and it is gaining popularity and getting lots of attention from the community of JavaScript developers and custom software development companies.

It is inspired by ReactJS and also works on similar concept of virtual DOM rendering. It is a modern JavaScript framework that is fully modular.

Pros Cons
Light weight JavaScript framework Poor documentation
Can be used to handle large projects Lack of support

 

10) Vue.js

VueJs is relatively new as compared to its competitors like Angular and React. It works with MVVM pattern.

It has very simple API that is easy to learn and also light weighted. It allows user to use entire framework or selective modules as required. It is inspired by AngularJS, ReactJS, KnockoutJS and also supports two-way binding to synchronize model and view.

Pros Cons
Supports two-way binding Not very popular
Updates are regular to compete with other frameworks Less support
Lightweight, easy to learn and versatile Limited customizations possibility

Conclusion:

To develop rapid, interactive, feature rice web applications with less complexities, JavaScript frameworks became the default choice, as specially for Single Page Web Applications.

JavaScript frameworks make it easy, fast and efficient to create, manage and dynamically render complex UIs. It also increases the performance of your web application.

These are front end technologies so software development companies should take appropriate security measures to ensure safe and secure user experience.

Power of PowerShell script

What is PowerShell script? A PowerShell script is a simple text file with multiple commands that one

Software outsourcing companies India

 

What is PowerShell script?

A PowerShell script is a simple text file with multiple commands that one can execute in Windows in one go. Each command in the file are separated by newline character. PS1 is the extension for PowerShell script files. PowerShell is a powerful scripting language for custom software development companies.

PowerShell window is used to run all PowerShell script files. One needs to simply type the full path within PowerShell script with filename. For instance – c:\scripts\powershelldemo.ps1.

How is it different than other programming languages?

PowerShell script can be compared with CMD as they are similar in concept.

PowerShell Cmd.exe
It is object based scripting language It is text based scripting language
Cmd commands works in PowerShell PowerShell cmdlets won’t work in Cmd.exe
System Administration tasks for managing the registry to WMI (Windows Management Instrumentation) are accessible via PowerShell System Administration tasks for managing the registry to WMI (Windows Management Instrumentation) are not accessible via cmd
It’s a powerful scripting environment that can be used to create complex scripts for managing Windows systems much more easily than you could with the Command Prompt. It is more difficult to compose complex scripts with cmd
Equivalent common Commands For Change a Directory : Set-Location For Rename a fille : Rename-Item Equivalent common Commands For Change a Directory : cd For rename a file : rename

 

What are the benefits?

PowerShell is robust scripting language and offers many benefits over traditional scripting languages like VBScript and others.

  • PowerShell is an Object-Oriented scripting language
  • It provides more functions compared to cmd.exe and VBScript
  • It is more extensible via cmdlets, plugins
  • It supports .NET Objects and Forms: PowerShell has access to all .NET libraries so custom software companies can take advantage of anything that they could with a language like C# or VB.NET. One can also load any .NET DLL and take advantage of third party libraries
  • It supports Automation of tasks: Adding a user to 500 machines is a time consuming process if done manually. However, with the help of PowerShell script, one can automate this process.
  • Background Jobs: PowerShell runs on a single thread so if one tries to invoke any .NET libraries that creates a new thread like Background Worker, it may run into issues. In PowerShell script, there is a concept of background jobs.
  • Interactive: PowerShell is also interactive. This allows programmers to try out things at the console first and integrate them into larger more complicated scripts.
  • Reusability: The scripts once written to perform a specific task can be saved for later use and also can be merged with other scripts to perform different tasks. So repetitive tasks can be performed to run the scripts. This saves the administrators time and money in configuring the machines.
  • PowerShell supports group policy based control of the environment

What are the disadvantages?

There are few disadvantages of using PowerShell script that custom software companies should consider while using the same for software development. Following are some of the considerations.

  • PowerShell requires .NET framework
  • Object-Based: With most shells, text-based commands are used to get the job done while writing scripts. If you switch to Windows PowerShell from other type of shell, programmer has to get used to a different way of thinking. This can take time to get used to this.
  • Security Risks: Another potential drawback of using Windows PowerShell is that it can create some potential security risks. Many IT professionals use it as a way to connect remotely to other computers and servers. When engaging in this process, PowerShell can leave some loopholes open for security breaches. This is the major drawback of using PowerShell script.
  • Web Server: Another issue with Windows PowerShell is that it requires to run a Web server on server when utilizing remote functionality. This takes up additional space on a server. In many cases, custom software development companies may not be willing to designate more resources for this.

What applications are suitable for PowerShell script?

Following applications are used for executing PowerShell script:

Conclusion

PowerShell is a powerful and robust task automation and configuration management framework from Microsoft that consists of a command-line shell along with scripting language built on the .NET framework. It is more powerful than other shell types. It’s ideally Windows component only and Open Source. Custom software development companies should consider project requirements, PowerShell script’s benefits and drawbacks into consideration during planning phase of the project.

 

Top 10 Hybrid mobile application development technology considerations

What is hybrid mobile app development? You have a great potential business idea for Mobile applicati

 

What is hybrid mobile app development?

You have a great potential business idea for Mobile application and wondering what platform to start with? If you choose to develop native mobile app, you would end up developing many applications for different platforms costing you huge money and lot of time. Hybrid mobile app is a buzzword among mobile application development companies in India that is taking the center stage these days.

Technically speaking, Hybrid mobile app is a combination of native and web app. Hybrid app runs on the device and web technologies like HTML5, CSS and JavaScript are used to implement them. It runs inside a native container and leverage the device’s browser engine (but not the browser) to render the HTML and process the JavaScript locally. Hybrid app can be a good choice for your business idea as it helps you develop common app for multiple platforms.

There are many cross-platform mobile app development platforms available in the market like PhoneGap, Xamarin, Telerik AppBuilder and many more. We discuss here top ten technology considerations for hybrid mobile app development for your business idea.

1) PhoneGap

PhoneGap is an Open source technology to develop hybrid mobile applications using web technologies like HTML/CSS and JavaScript. PhoneGap is very popular hybrid mobile application tool among hybrid mobile application development companies in India. PhoneGap uses JavaScript to access device level APIs similar to native app.

Pros:

  • Uses web technologies lie HTML5, CSS3 and JavaScript
  • Easily available source
  • This is write one time and run anywhere – Android, iOS, Windows, Firefox OS, BlackBerry etc.
  • Available in Google Pay Store for Android, integrated payments via App Store for iOS and in-app and more

Cons:

  • Poor performance for graphic-intensive applications
  • Plugins are available however many are outdated or unsupported based on target platform.

 

2) Xamarin

Xamarin, newly Microsoft acquired technology, is used to build native mobile applications with cross platform compatibility. It uses portable C# code. All codes are written using C# that developer can do in Java, Swift or Objective-C unlike other platforms. Xamarin studio is user friend IDE for the app development.

Pros:

  • Development is using C# so no need to learn near programming language
  • Xamarin studio is highly user friendly IDE
  • Code reusability is very high (almost 75%) across major mobile platforms like iOS, Windows, Android etc.
  • Android Emulator for quality testing.

Cons:

  • Many open-source libraries for iOS, Android etc. have compatibility issues with Xamarin

 

 3) Onsen UI

This is an open source framework and technology to build hybrid mobile apps using native looking components. AngularJS can also be used to build the apps. It has good documentation that includes good examples and layouts for common features.

 

Pros:

  • This works with predefined components
  • Faster development as it is based on predefined components
  • Good documentation with common features and examples

 Cons:

  • PhoneGap/Cordova builder not included, but supported
  • Currently does not support material Design
  • Onsen UI currently offers only an iOS theme

4) Appcelerator

Appcelerator is the technology used to build native apps using JavaScript technology. This is an enterprise based development platform allowing writing JavaScript with MVC framework.

 

Pros:

  • Pre-built database connection for MS Azure, MongoDB, MS SQL and other database engines.
  • Consists of schema-less data store, ArrowDB, to deploy data models with zero setup efforts.
  • Allows rapid mobile app development
  • Quick prototype development with less time and effort for evaluation

Cons:

  • Pre-built database connection for MS Azure, MongoDB, MS SQL and other database engines.
  • Consists of schema-less data store, ArrowDB, to deploy data models with zero setup efforts.
  • Allows rapid mobile app development
  • Quick prototype development with less time and effort for evaluation
  • Little buggy and laggy, though newere versions are more stable.
  • Poor support from developers community

 

5) Intel XDK

Intel XDK is another popular platform to develop native apps for mobile phones and tablets using HTML, CSS and JavaScript. Cordova platform is used to compile apps making them cross-platform compatible.

 

Pros:

  • Developer can compile same solution for different platform.
  • HTML, CSS and JavaScript are used as technology for app development.

Cons:

  • “Native code” component of a plugin is not supported by simulator
  • Device simulator’s emulation of the App Security API does not provide any real security

 

6) Nativescript

Nativescript is an open-source platform for making native cross-platform mobile applications. Nativescript gives mobile application development companies, every native APIs in JavaScript. It offers reusability of existing plugins from npm directly.

 

Pros:

  • Embedded support for TypeScript and js 2.
  • Direct access to native APIs in place of development libraries access and then utilize native components.

Cons:

  • Multi-threading is an issue in Nativescript.
  • Lack of in-depth examples and documentation on features and its usage.

7) Telerik AppBuilder

The Telerik Platform is popular cross-platform mobile application development tool and it also supports native apps developing for iOS, Android and Windows phones. Appbuilder  IDE supports Production of cross-platform and native applications both. AppBuilder also equipped with the Apache Cordova API.

Pros:

  • Easy to develop cross-platform application.
  • It is compatible with .NET, JavaScript/HTML5, Java JSP and PHP technologies.
  • Easy to learn

Cons:

  • It's not a free tool.
  • One can convert all steps to code, but can't revert them back.

8) Monocross

Monocross is an open source cross-platform for mobile application development. It is used to create applications for Android phones and tablets, Windows Phone and iPads and iPhones. It uses .NET C# and the Mono framework for developing cross-platform supported applications.

Pros:

  • Need only C# and .NET compatibility for the application development and maintenance activities.
  • Provides access to full power of the native device APIs still using C#

Cons:

  • Documentation and resource available for Monocross framework is harder for application development.

9) React Native

React native supports creation of proper native apps in place of hybrid ones that run in Webview. JavaScript and React are used as technology for mobile app development.  It also supports Android.

 

Pros:

  • Native-like performance
  • Great community support

Cons:

  • The development tools only work on OS X at the moment
  • Steep learning curve

10) Ionic

Ionic is a popular framework of mobile app development companies for Hybrid mobile apps.  One can use CSS to create native looking designs and best to pair with AngularJS. It also provides command-line interface that includes integrated emulators and a Cordova based app packager.

Pros:

  • Command-line interface to use most of useful features.
  • Works with inbuilt component and Great Community

Cons:

  • AngularJS expertise is required for complex features

Conclusion:

There is no best framework or platform to develop hybrid or native apps. Each has its own advantages and challenges. Platform choice depends heavily on project requirements in hand. Mobile application development companies should consider requirements in hand with features available in platform to decide the platform for the app. One should also consider performance and security parameters to choose the best suitable option for your requirements.

MakeMyTrip and Goibibo Merger

India is seen as next big internet market owing to digital revolution, economic growth and potential

Software outsourcing companies india


India is seen as next big internet market owing to digital revolution, economic growth and potential market strength. MakeMyTrip and Goibibo join hands to become a market leader in travel industry of Indian online travel segment.  (IndiaTimes, 2016) views this as a potential move to grab Indian market and tighten its grip over the market that MakeMyTrip already enjoys 35% stake.

About MakeMyTrip

MakeMyTrip is a travel company operating through online booking portal – http://www.makemytrip.com. It was founded in 2000 by Deep Kalra. It is an Indian company with headquarter in Gurgaon, Haryana.

About Ibibo Group

Ibibo group is an online travel company founded by Ashish Kashyap in 2007. (Livemint, 2016) states that the company is a subsidiary of Nasper. Nasper has 91% stake and TenCent has 9% stake in the Ibibo Group. Company operates through following brands.

  • Goibibo - Hotels and Air ticketing portal
  • redBus – Bus booking website portal
  • Ryde
  • Rightstay

About Merger

  • Ibibo (currently owned by Nasper) will be merged into MakeMyTrip
  • Merger is through stock transaction
  • (Medianama, 2016), Nasper-TenCent combine will become largest shareholder in new entity with 40% stake
  • (Medianama, 2016), Chinese OTA Ctrip, will have around 10% stake in new entity
  • (IndiaTimes, 2016) estimates the merger through sources at about $1.8-$2.0 billion
  • Morgan Stanley – financial advisor of MakeMyTrip
  • Goldman Sachs – financial advisor of Ibibo Group
  • All brands of Ibibo group like Goibibo, redBus, Ryde and Rightstay would come under MakeMyTrip (new entity)

Statistics

 

Business Share in Travel Industrysoftware outsourcing companies India

source : Medianame

                                     software outsourcing companies india

 

New organization structure

                                                                               Figure 2 New Organization Structure, Source: Livemint

 

  • Deep Kalra, Founder of MakeMyTrip – Group CEO and Executive Chairman, MakeMyTrip
  • Rajesh Magow, Co-founder of MakeMyTrip – CEO India, MakeMyTrip
  • Ashish Kashyap, Founder and CEO of ibibo Group – Co-founder and Presidnet of the organization (MakeMyTrip Executive team)

Bibliography

IndiaTimes. (2016, 10 19). EconomicTimes. Retrieved from EconomicTimes: http://economictimes.indiatimes.com/small-biz/startups/online-travel-portals-makemytrip-and-ibibo-announce-merger/articleshow/54921415.cms

Livemint. (2016, 10 19). Livemint. Retrieved from Livemint: http://www.livemint.com/Companies/W9atx25k79RpQcdbRxWuTP/MakeMyTrip-to-buy-rival-ibibo-Group.html

Medianama. (2016, 10 19). Medianama. Retrieved from Medianama: http://www.medianama.com/2016/10/223-makemytrip-ibibo/