I am writing this blog after attending the conference “Preparing World Class Teachers Through Online Education : The Future is Now!” is held on April 20 and 21st, 2012 at Ramakrishna Mission Vidyalaya, Coimbatore. It was my first hand experience to interact with a huge set of teachers and educators. Before the conference, I was questioning that by attending the conference, what is the value provided by me/received by me?.
The conference was conducted superb and more than 300 delegates attended the conference. Foe me this was the first time I met this many number of teachers. There were a lot of teachers who were aware of technology. Guru presented mobisir learning from the field in the conference and challenge for online learning in India and a few teachers came to discuss with us how it works and I installed our mobile app on few of their mobiles and they were happy. I was privileged to meet Dr.Hema Ramanathan in conference.
I attended paper presentation sessions. Teachers were presenting usage of EDUSAT or usage of moodle or usage of mobile for learning. Most of the sessions looked theoretical and they were missing the implementation. As most of the sessions were abstract sessions, I got over enthusiastic and asked them whether they have implemented the technology in their organizations and the results obtained. After talking to a few of them, I realized that they are trying to learn about technology by searching on the web/ magazines. This was a good starting point and it was unfair that I expect them to implement technologies. Let me do unfair comparison of teacher with a software professional to see how things are different for the teacher.
Learn by action: Teachers used to perform offline tutoring earlier. when online tutoring became available, they happily migrated to the same and added with extra money. so teachers are waiting for existing methods made available through the use of technology in the simplest form with flexibility and space to commit errors. A software professional uses benefits of online learning by attending webcasts, webcasts and even attends Bangalore sessions through online webcasts. For a lot of paid conferences, the sessions are posted online, post the session and for no charge, he can attend and learn recorded sessions.
- Flexibility to learn Teachers cannot have planned leave to learn new education concepts or new technologies, during the day. Even after gaining theoretical knowledge, teachers have limited opportunity to become aware of where new concepts are effectively implemented and where not. A software professional have a flexible job that allows me to attend trainings, extend work hours, attend a late night webcast and go to work late the next day. What would they do if software professional have dependents waiting for them the whole day? .
- Awareness to technology Only few teachers are involved with software implementation in their institutions. That is person who is provided with leave grant or permission grant to work on software implementation. This makes simpler tasks for IT professional a complex tasks for teachers. For example, discussion forum usage is complex for teachers.
Concluding, I do not have answers to question of my blog. They have expanded more. How will we be able to take technology to teachers when they do not have a formal awareness of using technology for their own benefit?. I see two alternatives
- Train them to make use of technology for education.
- Provide them education through technology can come with his own idea of how to use technology effectively.
Is there a third alternative for teachers?
Today we have a working solution to protect content in android mobiles for audio, video and files. The solution is embedded in our mobile app present in Google Play. The solution is going through multiple rounds of testing. Credit for the work goes to Balaji kutty.
Though we started building applications in early 2011, we had serious questions raised about the need to protect the content provided by educational content providers to us. We implemented a solution for J2ME phones and the solution has its own limitations for large media files. We had a way build to control the expiry the content based on date on the mobile. When we were planning to move to android in end of 2011, we assumed that life would be cool with assumption android is matured system compared to j2me.
To start with content protection, we did not have good news. Android devices can be rooted by the users and there is no way for application to detect whether a device is rooted or not. Neither one could modify the hardware or the user’s system. Google play was only helping in license protection for the application and did not offer much help for application content.
The first hand thought was to encrypt the content and try to decrypt the content by the application. This worked for text files, xml and images, but we has a question where to store the private key safely? Then came playing media files. We found that there was no direct approach to pass a local video stream to the player. The player supported methods to work with HTTP stream and played, but the player did not have methods to read local file streams also. Any solution should cover the following
1. Bind content to the phone.
2. Bind Content to an application
3. Control the validity/expiry of the content.
Thanks for the initial thought to the solution at stack-overflow link. Using this solution, we made the player to play local files over HTTP stream. The player received decrypted HTTP stream of protected local media, which it plays beautifully. This helps to make sure that the content was blinded to the application.
To bind the content to the phone, we decided to ask the user to activate their content subscription on the first start of the application by sending the same credentials(login name , password) used during purchase of the subscription. we used this to make sure that the content was blinded to the phone.
there is still a challenge that the user can still activate the content from his tablet and also from his phone using the same credentials. We strongly believe that the user has right on the content on his devices. IT is also possible to implement checks to ensure that activation happens once for a specific user, which brings additional issues like replacement of user’s device due to loss or device upgrade.
Google Play filters the applications that are visible to users, so that users can only see and download applications that are compatible with their devices. The application and the android system agree on version based on the following parameters found in android-manifest.xml for every android project.
android:minSdkVersion defines the minimum API level required for the application to run. Android will prevent installation of application if the system’s API Level is lower than the value specified in this attribute. You should always declare this attribute.
android:targetSdkVersion is made use by the Android platform itself. This attribute should be set to the maximum API level you tested your application on. It defaults to your minSdkVersion.
When we started to build android application in Jan 2012, some of my colleagues pointed that tablets existing in Indian market were android 2.3 and wanted our application to work with android tablets version 2.3 and not later versions of android. This makes the application not to leverage the benefits of features coming in the later version.
I still convinced people make use of fragments so that the application would come with layout for both android tablet and android phone. We made use of backward support package to support earlier versions of android. Developers used to complete the module to realize that they were making use of later versions.
Today the tablets with older versions seems to have disappeared from the market. All new tablets arrive supporting android 4.0. May we can start making our user interface better leveraging the new user interface features.