Days to go!!!

Open Days 2013

March 1st and 2nd, 2013

March 2nd, 1.30pm - 4.00pm / Room 252

What's your APPetite ?


Are you not satisfied with the apps available in the market ? Are you ready to take a step ahead in Android ?
Well, take control of your mobile. Try building an app for our
event and explore the arena of vistas provided by Android.

We all have seen a huge surge in the usage of smartphones lately and Android is leading the race atleast in the Indian market. This also has created a community of developers well skilled in using this platform to reach a huge user base.

If you think you are a part of this community or looking for a way to become part of it, then we have just the event planned for you. Whats your APPetite plans to bring this developer community together as part of the CSA Open Days 2013. You get to build your own apps on several interesting themes keeping the "Indian User" in mind. Make sure you read all the instructions and tips before you register.

Lookout for the themes that we are going to announce on the 23rd of February, 2013.

Important Dates


  • Owing to a lack of interest from the participants the event has been called off. However lookout for this space next year when the appetite returns with a bang!!!

Tips


  • We will be providing enough information on each theme including the specific APIs that will be useful to get started with. However, a bit of homework is needed by the participants if you are new to the platform.
  • Get the Android Development Kit from here and start building some basic apps. The kit is the same as the standard Eclipse platform and it uses Java syntax.
  • We suggest you start from here and try out a couple of apps to get familiar with the platform.
  • Focus on graphics, connectivity, maps and UX. Although, you may find understanding other topics to be useful while developing your apps.
  • This link provides a window into the large collection of APIs offered by Android Development Kit.
  • We also recommend this website for some really good sample codes on using various APIs.
  • You will be presenting your app to us on Mar 2nd. However, don't waste your time on presentation or design diagrams. Showcase your apps, present the salient features and highlight the coding standards that you have followed. After all you'll have only 5 minutes and it will be more of a mutual discussion. Your presentation skills won't really matter but you should be able to communicate your ideas and views with us.

Instructions


General

  • The themes for the event are announced now and your app has to be submitted online/onsite by March 2nd 2013 at 10:00 AM. You will have exactly a week for development. No late entries allowed.
  • Registrations are open till March 2nd. However, we suggest you register as soon as possible so that you can post questions and find answers in our forum. We are also planning to cap the number of participating teams to around 50 on first come first serve basis.
  • You can participate as an individual or with 1 team member. Teams of size greater than 2 are not allowed.
  • You will not be provided with a computer, smartphone or any such hardware for the development of your app. You are advised to bring your own hardware even for the onsite demo. However, we'll provide you with a laptop for a maximum of 5 minutes before your presentation to setup your onsite demo.
  • The exact timings of your onsite demo and related information will be communicated to you on the day of the event at the venue.
  • All participants who give an onsite demo earn a participation certificate.
  • In case you opt for online demo during registration, we will provide you a folder in dropbox where you can upload a 5 minute long video along with the tarball. You will be provided a maximum storage space of 100 MB.
  • The evaluation criteria for both online and onsite categories is exactly the same.
  • The decision of the panel will be final and binding and cannot be contested.
  • The results will be announced in the following week and will be communicated to you through mail.

Technical

  • Build your apps for Android version 4.0.3 API level 15 or lower. Do not use version 3.0(API 11), 3.1(API 12) and 3.2(API 13) which were primarily targeting tablets.
  • You will have to submit a tarball containing the entire project directory of your app in eclipse. This includes the source code and the apk file you obtain in the bin directory when the app is built. Since the size of such tarballs can be several megabytes you are allowed to bring it in a pen drive to the venue if you are giving an onsite demo.
  • You will be given 5 minutes to present your app to a panel of judges who will evaluate your app on the following basis:
    • Features and functionality
    • Correctness and completeness (free of bugs)
    • Usability and user experience
    • Design principles and coding standards
  • Licensed and proprietary material of any kind are not to be used in your apps. Participants found guilty of doing so will be immediately disqualified.
  • Name your project the same as your team. This will resolve ambiguities during evaluation.

Themes



  1. Bangalore Public Transport System
    The city of Bangalore primarily has 3 modes of transport (assuming Bangalore Metro Rail Corporation is already functional) namely:
    • Bangalore Metropolitan Transport Corporation (BMTC) buses. Information regarding the services are available here
    • Bangalore Metro Rail Corporation. Information regarding the services are available here
    • Autorickshaws and taxi cabs. No specific information available anywhere so you can assume anything about this
    We ask you to build an app that uses the information about all these 3 modes of transport and suggests the best route in terms of fares, time and convenience. Note that a single route might use all the 3 modes of transport for different parts.

    Tips

    • You don't have to obtain the bus routes from aforementioned website. Google Maps APIv3 (not Android native) provides this info through JSON or XML using JavaScript as available in the source of this page. You can get more info on this from The Google Directions API . You can also get the route numbers by sending the appropriate requests to this link.
    • We suggest you create your own database of Bangalore Metro stations and use them in routes. Assume Bangalore metro is functional and assume a reasonable rate model for its pricing.
    • Similarly assume reasonable rate models for autorickshaws and taxi cabs too.
    • You may use overlays in Android Maps API or use Google Maps APIv3 for native applications as described here for presenting the route.

  2. Project VigEye
    The Central Vigilance Commission (CVC) of India is an apex Indian governmental body created to address governmental corruption. In a move to use technology to effectively curb corruption and increase citizen participation, CVC started the project called VigEye. This system allows the citizens to report a corruption incident using a mobile, computer or any web interface. Although there are apps for Symbian and Windows Mobile for this, interestingly, there isn't one for Android. We ask you to build an app for this using the web complaints interface provided by the server. You will have to register in their website on the Web Complaints section to be able to send complaints. Note that if a complaint has the string "test" in its body, then the complaint will be ignored. There are also a couple of videos on the website presenting the Symbian and Windows Mobile apps which will give you a better idea about the requirements.

    Tips

    • Build the activities and create a user control flow that best suits this purpose.
    • Use camera, audio and other multimedia APIs as described in here to handle the evidences along with text and notes. There are a few examples in vogella that will explain how to use these APIs.
    • As a requirement, CVC wants to delete the entire trail through which the evidence reached them so as to keep the citizens anonymous. Make sure you delete all the resources at the source once they are uploaded to the server. However, the app should be able to collect evidence even without connectivity.
    Suggested Features (not compulsory)
    • You may use maps and other resources to obtain the contact information and path to the nearest police stations and news report agencies based on the users current location and provide them on demand.
    • You may use free OCR (Optical Character Recognition) tools on the images and videos to extract relevant textual information.
    • You may use gestures to switch between the various modes of evidences.

  3. Mobile Tariff Suggester
    With the growing number of services offered by various telecom providers, it is increasingly getting difficult for the customers to choose the perfect plan. We ask you to build an app that collects the monthly service usage data such as
    • Call duration of dialled calls per month
    • Total number of SMS sent per month
    • 2G/3G data used per month.
    Based on these data you have to come up with an app which would suggest the best plan for the customer. As an example you can have a look at the iReff mobile recharge app available here. Now for the various denominations of available plans from different operators, you can either do it statically by maintaining your own record of TalkTime, topup and special recharges or you can fetch the online data dynamically from the website of these operators.

    Tips

    • Use the CallLog provider available in Android to get call statistics.
    • There are a few custom content providers for SMS database. Although these providers are discouraged, you are allowed to use them. Note that if you use such providers you may not be able to run your apps in all the phones/emulators. You may build a listener for sent messages as described in this link and maintain your own database of outgoing messages.
    • You can use the class TrafficStats to get the 2G/3G data usage details of the phone.
    Suggested features (not compulsory)
    • It would be good if your app can also suggest to change base tariff plan based on your service usage data.
    • You can add additional features like distinguishing between local and national calls/sms to suggest more precise plans.
    • You can show graphs and other data representation models for all the service usage data to the user to help him take an informed decision.

Registration


Registrations are closed and the contest has ended.