Saturday 20 December 2014

Connected Car: The Google Way

We all have been using Android phones in our cars, we rely on these Android devices for a plethora of things, whether it’s for GPS based routing or for playing our favorite music or just taking a phone call, our Android device is there to help us. If that’s the case then why the project Android Auto is making so much buzz these days .. Is there anything special underlying there or it’s just a transitory craze.. Let’s dig deeper into the project to find out what exactly is Android Auto..

Image Source: Android.com
Android Auto was designed giving safety the utmost priority. We all know how many times we have to look at the smartphone screen when we try to use the same in our car. Most of the time the information is not easily available and we have to make some interesting swipes to reach it and that too while driving.. Android Auto provides simple and intuitive interfaces, provides an integration with steering wheel controls  and supports voice commands thus minimizing the attention required for operation and also ensuring that you get what you require without disturbing your driving.

ImageSource: Androd


Android Auto uses cards to bring out all the useful information that is relevant for you. The cards are smart enough to appear when you actually need them. It also provides a voice guided navigation and traffic update so that you take the right route. Also Android Auto support seamless integration with your  smartphones thus taking care of your music, contacts ,notifications  and calls when you are on your way. Last but not the least there are beautiful auto apps already in market which can be used with Google Auto..

Enough  of Gyaan I am a developer , whats there for me in Google Auto:

 As Google says.. Android Auto basically extends the Android Platform into the car. When a user connects is Android 5.0+ smartphone to a compatible vehicle , the Auto provides an Android Experience to the user which is optimized for the car. Once connected , user can interact with compatible apps and services through voice commands and Car’s Interface like steering controls / dashboard buttons.

The developers can write their apps without having to worry about the vehicle specific  hardware , they don’t have to worry about screen resolution , touch controls, knobs or other hardware controls , the apps created using this platform provide same user experience on all the compatible vehicles running Google Auto.

As of now there are two type of apps which are supported by Auto :
  •     Audio Apps: These apps all users to browse and play music and spoken audio content in car.
  •     Messaging Apps : They receive incoming notifications, read out messages and send out replies using the voice interface.

To start with the development  , no vehicle specific hardware is required even a normal android tablet/ smartphone is good enough to begin the development, all you need to do is to just adjust your manifest for the car capabilities that you need to use. The support for Auto is available from Android 5.0 (API level 21)


The Road Ahead:  Although the Auto is going good but Google is planning  for something much bigger than this . If rumors are to be believed then Google is planning to build a version of Android  directly into the cars, thus allowing drivers to use all Android specific features even without plugging their smartphones in the car. As Auto was tightly coupled with the connected smartphone.  But if Android M provides this feature then it would not only solidify Google’s position in the market but also  provide a reply which is much  bigger than the offering of their rival apple (As Car Play is pretty much similar to Android Auto )

For experiencing and discussing Auto based apps please do reach us(Recrosoft Technologies Pvt. Ltd. ) at  http://www.recrosoft.com

Saturday 13 December 2014

Google Polymer: The Future of Web UI Frameworks

Google brought material design as new unified design paradigm for Android, Chrome and Web based apps. The core idea behind Material Design is to unify the motions, visuals and interaction designs across various platforms and devices. The material design is developed with the aim of bring the feel of ink and paper (tactile material) to the virtual world.

The Polymer library is basically a set of polyfills which can be used to create Web Components. Polymer library provides the underlying structure for defining, creating and rendering complex components in a  simple manner.  It uses the tag based declarative approach to use the prebuild components, thus making the life of developers easier. This approach helps in multiple ways like:
  •  For developers the naming convention becomes easy as Tag Style conventions are used
  • The complex controls are easier to use as using a custom control just requires declaring a tag.
  •  A  suite of custom controls are available at user’s disposal and the customizing these controls is also supported.

Polymer and material design can be seen in action in Topeka app. For a detailed experience of Topeka please use the following link Topeka(https://www.polymer-project.org/apps/topeka/)



For a detailed list of the components provided with polymer please use the following link

Polymer Architecture
(Image Source: toptal.com)


Native Layer: Needed features currently available natively in all major browsers.

Foundation Layer: Polyfills that implement needed browser features not yet natively available in the browsers themselves. (The intention is for this layer to disappear over time as the capabilities it provides become available natively in the browser.) The foundation layer comprises of following technologies:
a.       DOM Mutation Observers and Object.observe() for observing changes to DOM elements and plain Javascript objects
b.      Pointer Events: Handle Mouch and Touch events in a similar way across all platforms
c.       Shadow DOM: For encapsulating structure and style inside elements
d.      Custom Elements: For defining our own custom HTML5 elements
e.      HTML Imports: Package custom elements  .These packages include CSS , HTML and Javascript
f.        Model Driven Views (MDV): For data binding directly in HTML
g.       Web-Animations: API for unifying animation approach across various platforms

Core Layer: The necessary infrastructure for Polymer elements to exploit the capabilities provided by the Native and Foundation layers..

Elements Layer:  This layer consists of UI and non UI components built on the core layer. The layer provides aset of elements which serve as the building blocks for creating an application.  The layer provides elements for functionality like ajax, animation, flex layout, and gestures. Encapsulation of complicated browser APIs and CSS layouts. UI component renderers such as accordions, cards, and sidebars. Polymer is very similar to native HTML5: “attributes in, events out”.     

Its architecture is very component-oriented, its components being HTML elements. Responsive design is also built into most of the widgets, which implies that they transform so that they work best on a given platform (cell phone, tablet, desktop, etc.).

Polymer versus other frameworks
Polymer is not the framework to end all other frameworks. Instead, existing frameworks can be based on the same foundations. In fact, the functionality of most of the APIs that were mentioned above are similar to other UI framework such as Ember.js or AngularJS.

Getting your hands dirty
The getting started guide available on the project page is the best place to start with the link to the same is mentioned here https://www.polymer-project.org/docs/start/tutorial/intro.html
The next step is to get the paper elements , which can easily be downloaded by following one the following approaches:

To start with check out this video from Google , which takes you through intricacies of Polymer



The Future Is Here
Going forward Web Components will be becoming more and more popular and would radically change the way web apps are build. Polymer is just an example which has materialize this approach and had made this possible. Polymer gives one the ability and freedom to create components which can be customized as per the needs of the application. Also once developed these components can be shared and reused easily across teams or communities.

For experiencing and discussing awesome apps  please do reach us(Recrosoft Technologies Pvt. Ltd. ) at  http://www.recrosoft.com


Thursday 4 December 2014

When Everything Is the Cloud, Will Nothing Be the Cloud?

Many think Cloud Computing as an unreliable and risky approach to storing your data, cloud computing is actually an excellent way to create a more agile technological infrastructure for your company and cut costs by reducing capital. Some of the misconceptions surrounding cloud computing which might stand between your company and the success of its objectives for mobility, longevity and efficiency.

1. It’s just a craze
Seen as no substitute for the present computing model, cloud architecture is both credible and effectual. Despite the idea that the cloud is somehow disconnected from current computing in fact if you are using online banking, social media, you’re already a part of the technological revolution. Big contenders like Apple have been keen to embrace cloud computing, affirming the idea that this is a technology revolution with longevity. Dismissing cloud computing as a nothing more than a passing trend is an oversight that is likely to cost you dearly as you continue to pay for the hosting and upkeep of your data.

2. It’s not as safe and secure as conventional servers
Its name might not inspire self-confidence, yet cloud computing is actually a safe and substantial way to store, share and secure your data. Whilst the media has been keen to spread tales of cloud computing’s unreliability, in fact by putting control of the process back into the hands of the organization directly, cloud computing restores command to your business. Although it is important to correct the supposition that cloud computing is accompanied by host-based protection tools, there is no need to rule it out as a useful tool. By not concentrating data in one site and using encryption software and behavior-based key management services it is easy to build additional security around your data.

3. It’s  very costly
There is no denying that there will be drastic costs involved in making the change to the cloud, but as it removes the requirement for IT management, in the long term cloud computing will save a lot your business money. This is a decision which no present day organization can run away from.

4. It makes things complicated
Another misapprehension about cloud computing is that it is too complex to execute without severe hassle and bargained productivity. Yet with many different types of cloud computing to choose from, your organization should have no problem in choosing a compliment to meet your needs and keep things simple for staff and managers alike.

5. It’s just for the big organization
Cloud computing is not the reserve of corporations in the Fortune 500. By allowing companies to maintain their hardware onsite and concurrently avoid having to obtain costly software licenses, solutions like virtual desktop infrastructure can help companies of any size to reduce their expenditure.

6. Changes are technical rather than strategic

With the assumption that the cloud is simply a matter of implementing technological changes to the way your company is run is a big blunder. Approaches must be set up to incorporate processes – both strategic and staff consequent – to reap all the benefits offered by cloud technology. The alignment between corporate strategy and technology encouraged by the cloud is a great way to utilize a world of commodities with the benefit of using resources present within the business.

If you have any cloud specific needs or want to build some awesome apps , please feel free to reach us http://www.recrosoft.com