DEAR VIEWERS,IF YOU WANT TO KNOW MORE INFORMATION ABOUT IMMIGRATION/STUDY ABROAD/LIVE AND WORK IN DIFFERENT COUNTRIES, PLEASE GO THROUGH THE RESPECTIVE COUNTRIES IMMGRATION SECTION IN THIS SITE. ALSO NOTE THAT THE IMMIGRATION RULES WILL KEEP ON CHANGES FROM YEAR TO YEAR SO WE ADVISE YOU TO KEEP AN EYE ON THE RESPECTIVE COUNTRY IMMIGRATION SITES FOR UP TO DATE INFORMATION.THANK YOU FOR VISITING EZEEGUIDE

Building “Indian language learning” apps; Why I Chose ‘Windows 8′ Platform

Being one of the early adopters for developing Windows 8 applications (currently available on Windows Store under Hashia Labs), I am glad to share my experiences. Currently, I have 11 Indian or broadly speaking South-Asian language learning apps published in Windows Store that run on the Windows 8 platform. The languages currently supported are Hindi, Urdu, Bengali, Tamil, English, Telugu, Marathi, Gujarati, Punjabi and Kashmiri.  These apps allow users to learn, read and write these Indian languages. These are especially suited for native English speaking children who want to quickly learn Indian languages and scripts. There are both trial version and paid versions available. Trial version is free without expiration but has only first 3 out of 14 available features enabled. Links to these apps have been provided at the end for users to download and try it on their Windows 8 PC.
This article primarily covers reasons behind choosing Windows 8 platform for developing my Windows 8 Indian language learning apps.
Background and inspiration
I have a deep interest in Indian(or Indic) scripts and languages and have been learning about them since my childhood. I am software developer by profession and have always been thinking about writing language learning apps ever since the concept of regulated app store for various mobile platforms hit the marketplace. Around six months back, I decided to teach my 6 year old son Hindi language and my plan was to subsequently teach him other languages and scripts that I am familiar with including my mother tongue Kashmiri. I didn’t find the right mobile application that met all my requirements and eventually ended up using actual physical flashcards; the old-school way. Plus there was no Kashmiri learning software app that I came across in the marketplace. This led me to seriously think about developing Indian language learning apps and in the process also contribute to UNESCO’s mother language initiative.
Inspiration also came from an unlikely source- a book, “The Story of My experiments with Truth” by Mahatma Gandhi which by sheer coincidence I was reading around the same time frame. In that book, Gandhiji mentions in one chapter that encouragement to be provided to all major Indian languages including English and vernaculars. He also describes his own effort to learn multiple languages to connect with the people of various Indian regions for understanding their issues and concerns. It also struck me as I came to know that the book was written by Gandhiji in Gujarati (his mother tongue) and was subsequently translated in English by his noted personal secretary Mahadev Desai. What I was actually reading was the translated English version.
As I evaluated competing platforms for my app design I eventually chose Windows 8 for following five main reasons.
1)Modern UI (aka Metro) design
Windows 8 introduces Modern UI design also known as Metro design for User Interaction Experience (UX) on PC’s. Metro design lays emphasis on beautiful typography and uses that typography as a structure for User Interaction (UI) design. Beautiful text content with varying size conveying navigation structure coupled with colors in the background is upfront and central in whole Metro design user interaction experience. In Microsoft’s tech speak it is “Content before chrome” i.e. Content (app’s text and images) takes precedence over graphical UI elements like wireframes which fade to the background and are not needed in many cases. Application themselves are full screen and immersive with no close and minimize buttons. Developer can use the whole screen for app’s functionality.
When I learnt about Metro UI design, the first thing that came to my mind was how Indian scripts would render on a Metro platform especially with neat default sans-serif Segoe UI font used in Windows 8 platform. Apart from diversity of languages, India also has diversity of scripts. In many cases to learn a new Indian language, one has to also learn the associated script with that language.
Given my interest in languages and scripts, I wanted to beautifully showcase Indian scripts and languages and provide opportunity to young folks especially children to learn Indian languages and scripts either as their mother tongue or just as a subject of interest. I wanted them to see text written in Indian script as a work of art that is laid out beautifully and hence I spent extra time making sure I provide appealing visual layout in apps which is text centric with excellent topography.
I found Windows 8 platform with its emphasis on typography and clean text for User Interaction design as a perfect platform to surface my passion.
2) Support for all major Indian languages
Windows 8 with display language in English includes font support for all major Indian languages. That means while developing your application in English you don’t have to install any special fonts or language packs for manipulatingUnicode text in Indian scripts. In my design, I used default Segoe UI font for typography for Hindi, Punjabi, Gujarati and Bengali to blend well with default English text font on Windows 8 English typography. For writing feature, I used the associated fonts with these scripts that come with the platform. Below image is created from cut and paste of my Windows 8 apps.
Indian Language
Showcasing South Asian scripts on Windows 8
On the right half of above image is the screen shot of the tiles (app icons) associated with these applications that you will see on your Windows 8 start screen after installing these applications. “Learn Sanskrit” app is in progress.
Windows 8 doesn’t support Indian regional language Kashmiri. But since Kashmiri uses either Devanagari or Perso-Arabic script I was able to work around this problem with some limitations.
Windows 8 also introduces Nastaliq style using “Urdu Typesetting” font.  This font is inbuilt in the platform. Since my two language applications namely Learn Urdu and Kashmiri use Nastaliq style Perso-Arabic script, this really helped me to develop the application in the original script style of these languages.
3) Stylus for writing
For writing, I was looking for a platform which treats stylus as a first class citizen as the method of inputting information. Personally, I find it difficult to conceive that one can practice serious writing of language script on a computer with sketching using finger touch. For a purist like Urdu calligrapher, even stylus may not make the cut especially with Nastaliq script of Urdu where font width varies in the stroke at start and end.
Windows 8 supports stylus (pen) for writing or note-taking on hardware platforms that support stylus. UpcomingMicrosoft Surface Windows 8 Pro (x86) tablet using Intel Core i5 showcases the use of stylus and digital inking. Since I wanted to layout lot of emphasis on penmanship while writing, Windows 8 platform provides a perfect choice as it has stylus and digital inking capability as an important feature of the platform.
4) Includes existing PC hardware
Windows 8 can run on wide range of PC devices including existing laptops and desktops that are currently running Windows 7. Though Windows 8 is touch-optimized and great for touch screen PC’s you can still use the entire functionality using keyboard ora mouse on a PC that doesn’t support touch. My applications were developed on HP desktop PC that I had purchased way back in 2008 and it had Windows Vista pre-loaded on it at that time. I updated it to “Windows 8 Enterprise Evaluation” version for my app development. It is estimated that 600 million licenses have been sold for Windows 7. That means all these Windows 7 PC’s are potential candidates for upgrade to Windows 8.  For example, my dad has low-end Acer laptop running Windows 7 and he doesn’t seem interested in buying a separate tablet device as this point in time. But I do see a big possibility of him upgrading to Windows 8.
Expect for writing where I would recommend stylus capable Windows 8 tablet device, all the other features of my Windows 8 applications can be used on existing PC hardware that can be upgraded to Windows 8.
5)Programming language choices
I have spent most of time in my professional career either writing or debugging device drivers. Device drivers is mainly C/C ++ code. Windows 8 provides variety of programming choices from native C++ to C# and JavaScript. I do have some familiarity with C#/XAML (managed code) but in end I chose JavaScript/HTML5.  All my applications are developed in JavaScript/HTML5/CSS.
The reason for choosing JavaScript/HTLM5 was that I wanted to use this opportunity to learn something related to web application development so that I can broaden my overall programming skills. It took me 2-3 weeks to be familiar with JavaScript and to be at a point where I could start developing my Windows 8 JavaScript applications. Microsoft provides msdn documentation and samples to bring developers up to speed for building JavaScript applications using Windows 8 JavaScript library.
If you are a web application developer having familiarity with JavaScript, then JavaScript may be your preferred choice. Think of my applications as bunch of HTML pages styled with CSS with JavaScript control in them. But instead of running inside an internet browser it is full-fledged client application running on a PC.
One more thing, I want to add is related to development tools. If you are already familiar with previous versions of Visual Studio then you can quickly start building with MS Visual Studio Express 2012 for Windows 8 using GUI interface and commands that you are already familiar with. Furthermore, VS Expression 2012 comes with a Blend for VS 2012 and is covered in detail in blend insider web site and is great authoring tool for declarative programming to lay out visual UI elements. I found Blend’s ability to provide live view and live Document Object Model (DOM) for my JavaScript applications time saving and powerful. It really helped me to quickly iterate to the nice visual layout that I was targeting for.
Simulator that comes with VS 2012 also comes handy for testing for various screen sizes, orientations and different views.
Features of the apps
All of my applications follow same navigation and layout design with home page listing all the available features. Every word has audio playback and English translation to help native English speaking user to quickly learn Indian language. More than 150 words have been added in each application with audio playback with pronunciation. Features are laid out in 3 distinct groups with functionality as described below.
  1. Basics
    • Learn Vowels.
    • Learn Consonants.
    • Learn Pronunciation.
    • Practice writing using stylus.
  2. Categories
    • 7 categories namely Relations, Colors, Numerals, Fruits, Vegetables, Animals and Days of the Week.
  3. Flash Cards
    • 3 categories of flash cards. These 3 categories are Fruits and Vegetables, Animals and Colors.
    • Random selection of the words in the list of four selection options.
    • Provides scoring of your attempts.
These Windows Store apps work both in portrait and landscape orientation of the tablet PC and adjust the layout in a snapped view for multitasking. They also automatically adjust to screen sizes from tablet screen size to larger desktop screen sizes. They include Zoom in and Zoom out feature for quick navigation of the collection of the words.
Links to the apps on Windows 8 Store
1.)    Learn Hindi in Devanagari script
2.)    Learn Urdu in Perso-Arabic script using Nastaliq style
3.)    Learn Bengali in Bengali script
4.)    Learn Tamil in Tamil script
5.)    Learn Telugu in Telugu script
6.)    Learn English in Latin script
7.)    Learn Marathi in Devanagari script
8.)    Learn Gujarati in Gujarati script
9.)    Learn Punjabi in Gurmukhi script
10.) Kashmiri in standardized Perso-Arabic-Kashmiri script Nastaliq style
11.) Learn Kashmiri in standardized Devanagari-Kashmiri script
User can download and install these Windows Store apps and try them for free on Windows 8.  As mentioned in the beginning, trial version is free without expiration but has only first 3 out of 14 features enabled.
If possible please take time to review and rate the applications on Windows Store so that these apps can be further improved.

Parenting Advise skills

#1 Create the Right Atmosphere

Sadhguru: Creating the necessary ambience is a large part of parenthood. You must create the right kind of atmosphere – a certain sense of joy, love, care and discipline both within yourself and in your home. The only thing that you can do to your child is to give him love and support. Create a loving atmosphere for him where intelligence will naturally flower. A child looks at life pristinely. So you sit with him and look at life fresh, like he does. Your child need not do what you did in life. Your child should do something that you did not even have the courage to think about. Only then will this world progress and something happen.
A basic responsibility that humanity has to fulfill is to ensure that the next generation of human beings is at least one step ahead of you and me. It is extremely important that the next generation should live a little more joyfully, with less fear, less prejudice, less entanglement, less hatred, less misery. We must aim for this. Your contribution to the next generation should be that you don’t leave a brat in the world, you should leave a human being who is at least a little better than you.

#2 Know What Your Child Needs

Sadhguru: Some parents in their aspiration or ambition to make their children super-strong, have unnecessarily put their children through too much hardship. They want their children to become what they themselves could not become. In trying to fulfill their ambitions through their children, some parents have been extremely cruel to children. Other parents, believing that they are very loving to their children have over-pampered them and made them powerless and useless in the world.
Once, there was a yogi who belonged to a certain tradition called Kashmir Shaivism. This is one of the seven forms of yoga. It is a very powerful form, but it has mostly remained in the Kashmir area, so it acquired that name. One day, this yogi saw a cocoon which was slightly cracked, and the butterfly inside was really struggling to come out – the cocoon shell was too hard. Usually, the butterfly struggles constantly for almost forty-eight hours to come out of the cocoon. If it does not come out, it will die. The yogi saw this and out of his compassion he used his nail and opened the cocoon so that the butterfly could come free. But when it came out, it could not fly. It is that struggle to break out of the cocoon which empowers the butterfly to use its wings and fly. What is the use of a butterfly that cannot fly? A lot of people, in what they think is love for their children, have made their children like this. The children don’t fly in their life.
There is no standard rule for all children. Each child is different. It is a certain discretion. No perfect line can be drawn as to how much to do and not do. Different children may need different levels of attention, love and toughness. If you were to come and ask me while I am standing in the coconut garden, “How much should I water each plant?” I would say “A minimum of fifty liters.” But if you go home and pour 50 liters for your rose plant, it will die. So you must see what kind of plant you have in your house.

#3 Learn From Your Child

Sadhguru: Most adults assume that as soon as a child is born, it is time to become teachers. When a child enters your house, it is not the time to become a teacher, it is time to learn, because if you look at yourself and your child, your child is more joyous, isn’t it? So it is time you learn life from them, not the other way around. The only thing that you can teach your child – which you have to, to some extent – is how to survive. But when it comes to life itself, a child knows more about life experientially, by himself. He is life; he knows it. Even with you, if you take away the influences you have imposed upon your mind, your life energies know how to be. It is only your mind which doesn’t know how to be. An adult is capable of all kinds of sufferings – imagined sufferings. A child has still not gone to that. So it is time to learn, not teach.

#4 Just Let Him Be

Sadhguru: If parents are truly concerned about their children, they must raise their children in such a way that the child will never have any need for the parent. The process of loving should always be a liberating process, not an entangling process. So when the child is born, allow the child to look around, spend time with nature and spend time with himself. Create an atmosphere of love and support and don’t try to impose your morals, ideas, religion or whatever in any way. Just allow him to grow, allow his intelligence to grow and help him look at life on his own terms, as a human being – not identified with the family, or your wealth or whatever else. Just helping him to look at life as a human being is very essential for his wellbeing and the wellbeing of the world. Always, the parent encouraging the child to learn to think for himself, to use his own intelligence to see what is best for him is the best insurance you have so that the child grows up well.

#5 Be a Joyful, Peaceful Being

Sadhguru: If you want to bring up your child well, the first thing is, you should be happy. But you, by yourself do not know how to be happy. Every day in your house, when tension, anger, fear, anxiety and jealousy are the only things that are being demonstrated to your child, what is going to happen to him? He will obviously learn only these, isn’t it? If you really have the intention of bringing up your child well, you should change yourself to be a loving, joyous and peaceful being. If you are incapable of transforming yourself, where is the question of you bringing up your child?
If we really want to bring up our children well, first of all we must see if we can do something with ourselves. Everyone who wishes to be a parent must do one simple experiment. Let them sit down and see what is it that is not okay with their lives, and what would be good for their lives – not about the world outside, but about themselves. Something about yourself – your own behavior, speech, modes of action, and habits – if you can alter that in three months, then you would handle your child also with wisdom.