Project Ideas for ITSP

569 views
Skip to first unread message

Guna Prasaad

unread,
Apr 1, 2013, 3:12:30 PM4/1/13
to wncc...@googlegroups.com
Hi All, 

We have called for project proposals from students for ITSP this summer. In any such competitions or events the hardest thing is to get a good idea to work on. Most of the times we end up trying to do something thats terribly hard or as was in my case, over-estimate the effort needed for our idea! So, I thought it would be very helpful if we can share some project ideas with them.

You find something flashy and interesting somewhere or you want to implement something and you don't have time, just share it here. If not by you, your idea will be implemented by someone. You can also choose to mentor them. These project ideas can be anything, ranging from a simple Q&A forum or a random android app to something in computer vision like Gesture Recognition or some Image Processing. It can also be squashing a bug (ones that require considerable effort) for some open source project. Just keep these in mind : 
  • The project is mostly going to be done by a freshie / sophie.
  • The timeline is around 1.5 months. 
  • Do not forget, they may need some time to get the expertise in the platform : in case it is platform specific. 
And we accept some interesting games too! 

Ashay Tejwani

unread,
Apr 1, 2013, 3:59:43 PM4/1/13
to wncc...@googlegroups.com
  1. Make your own version of MS Paint / something in between that and photoshop.. Will be covering at a surface level at ASW, can mentor.
  2. Light Fruit Ninja - hold a Light Saber in your hand, apply IP to detect its position and develop a game of fruit ninja based on the same.. 
  3. Something slightly challenging - Optical Character Recognition Android App 
  4. Next stage of the same - pick up selective words or lines and google them / solve equations directly captured from the webcam..
Will post more, LAN ban :-/


--
--
The website for the club is http://stab-iitb.org/wncc
To post to this group, send email to wncc...@googlegroups.com
 
---
You received this message because you are subscribed to the Google Groups "Web and Coding Club IIT Bombay" group.
To unsubscribe from this group and stop receiving emails from it, send an email to wncc_iitb+...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 



--

Ashay Tejwani |
 3rd Year UnderGraduate | Metallurgical Engineering and Material Science
| IIT Bombay

Praveen Sampath

unread,
Apr 2, 2013, 4:20:46 AM4/2/13
to wncc...@googlegroups.com
This is something I wanted to build, but couldn't set aside time for, although I'm not sure if an app for this already exists.

An app for evaluating CS lab assignments. Like CodeChef. Or TopCoder. How cool would it be if you could upload your source code right during lab hours, run it against test cases and know right then and there if your solution is correct! A lot better than the long demo sessions that are taxing on both students and TAs. Could save a lot of time and effort.
Ciao,

PRAVEEN SAMPATH
CSE
Third Year Undergraduate
Indian Institute of Technology, Bombay

Piyush Kumar

unread,
Apr 2, 2013, 5:00:18 AM4/2/13
to wncc...@googlegroups.com
@Praveeen : I heard something similar is used in IIIT Hyderabad. Guna and I were talking about making an online judge (like Topcoder and SPOJ have) locally for IITB competitions, CS lab assignments evaluation would be a good collaboration. And integrating that with Moodle would make it easier for profs/TAs too.


Regards,
Piyush Kumar
Third year Undergraduate
Computer Science Department
IIT Bombay

Dilawar Singh

unread,
Apr 2, 2013, 5:12:06 AM4/2/13
to wncc...@googlegroups.com
If you also wants to find similarity in code submitted and run them against standard testbench (vhdl/verilog only), you can integrate my application in yours. It used to download assignments from moodle (in download directory, old scripts are available) by itself, but since new moodle allows downloading all assignments as single zip file, this has been removed. Another scripts is added which extract the assignment of a given student.

Dependency : Python2.6 and higher, python-sqlite3 

Saswat Padhi

unread,
Apr 2, 2013, 7:34:21 AM4/2/13
to Web and Coding Club IITB

In the context of assignment auto-evaluation, I was building an interface to XData (an SQL mutant killer) under Prof. Sudarshan last semester. The project was a success and I have received his confirmation that he is moving forward with using the interface to grade assignments (for introductory and advanced DBMS courses) and possibly develop a moodle integration module too.

May be someone can take up an ITSP to develop a moodle "activity" or make a new IITB-specific portal for assignment auto-evaluation and connect it to moodle as an "external tool".

Praveen Sampath

unread,
Apr 2, 2013, 7:33:21 AM4/2/13
to wncc...@googlegroups.com
@Piyush: Sounds great. But I'm not sure the IT guys will allow you to tinker with their installation of Moodle. If they are open to it, then it would be really great if some students take this up as an ITSP project and build a plugin for Moodle.

@Dilwar: The code for extracting and checking for copies could come in handy, in case someone takes this up you could help them with it.

 

Dilawar Singh

unread,
Apr 2, 2013, 7:40:42 AM4/2/13
to wncc...@googlegroups.com
@Saswat

Can I integrate it with mine. Are you willing to share your code?

Dilawar Singh

unread,
Apr 2, 2013, 8:28:05 AM4/2/13
to wncc...@googlegroups.com
All I need a faster algorithm for checking the similarity between two strings. I am using a heuristics which is based on 'subsequence matching' and it is O(n^2) : idea borrowed from linux diff tool. It is fast enough and can detect most of copying done in IITB (I am using it for last 3 semester as TA) among class of 100 students (approx 6 files each) code in half an hour a decent laptop (using python).

If someone can come up with an algorithm which matches the similarity in AST in reasonable time for any language (my attempt with partial VHDL grammar was taking more than 6 days on lab server with little or no improvement in the result). From the point of view of speed, this seems to be a really hard job (I have not tried writing it in C/Bison).

--
Dilawar

Ayush Kanodia

unread,
Apr 2, 2013, 9:42:09 AM4/2/13
to wncc...@googlegroups.com
Hi,

A few suggestions from my side! For those who want to do theoretical stuff and learn from them, you can try heuristic algorithms like

1. Genetic Algorithms
2. Neural Networks
3. Ant colony optimizations (and a host of other such algorithms).

It is easily possible, withing the time frame of the summer, to pick up all three (and more) of such algorithms, and solve any NP hard question using them (for instance the Traveling Salesman Problem or the SATisfiability problem). What can be also done is a comparison of the three algorithms, along with conventional methods of solving the same.


This is made so much easier with wonderful resources like coursera, which were not available earlier.

One other thing that can be done is, coding these in different languages for different algorithms, like python, java and c++ for instance, which also gives one fair insight into each of these.
Ayush Kanodia,

Second Year Undergraduate Student,
Computer Science and Engineering,
IIT Bombay.

Piyush Kumar

unread,
Apr 2, 2013, 10:34:12 AM4/2/13
to wncc...@googlegroups.com
Here's an idea that came up
The site http://mega.co.nz, something similar to dropbox.com. It gives a large online data space, but has no desktop syncing application.
They have provided an C/C++ API at https://mega.co.nz/#developers; making a syncing app can give a basic feel of how internet communication works.


Regards,
Piyush Kumar
Third year Undergraduate
Computer Science Department
IIT Bombay



Piyush Kumar

unread,
Apr 2, 2013, 10:44:25 AM4/2/13
to wncc...@googlegroups.com
The search engine duckduckgo.com (or ddg.gg) has a possibility of making plugins that modify search results.
Eg, searching "random 100" gives the "instant result" of a random number (see https://duckduckgo.com/?q=random+100)
There is a nice tutorial at http://duckduckhack.com/ and many ideas that needs developers here https://duckduckhack.uservoice.com/forums/5168-ideas-for-duckduckgo-instant-answer-plugins/status/905579. See if you like any of them.


Regards,
Piyush Kumar
Third year Undergraduate
Computer Science Department
IIT Bombay



rahil momin

unread,
Apr 2, 2013, 11:15:19 AM4/2/13
to wncc...@googlegroups.com

A DC client for android.. There is a paid app available in the market called "android dc" but it has laughingly few features (no search as well)
There might be growing use in the future owing to rapid increase in number of wi-fi hotspots..

Pritam Baral

unread,
Apr 2, 2013, 11:21:54 AM4/2/13
to wncc...@googlegroups.com
The majority of in-insti, privately-run WiFi hotspots are still behind NAT. Forget port-forwarding with those (or maybe here's an idea: make a rocking wifi hotspot solution). I doubt anything other than passive mode would work on them. And DC++ is both disk-IO and network-IO heavy. Wifi just can't fight ethernet, and flash storage's life is way more expensive than rotating-magnetic-disk. What with all the embedded and no expandable storage these days?

Compare that to the good ol' lappy DC++, transfer to phone and watch in your glorious tiny mobile display with hw acceleration.

TL;DR: A DC++ remote for a desktop DC++ client.

 

Regards,
Chhatoi Pritam Baral

Krishna Pillutla

unread,
Apr 2, 2013, 12:08:24 PM4/2/13
to wncc...@googlegroups.com

Anyone with some background on databases can probably work on refining the asc interface. Asc is a huge project, but it's just not up to our expectations. If some students do a good job, it may just put enough pressure on the authorities to perfect their interface

On 2 Apr 2013 20:52, "Pritam Baral" <chhato...@gmail.com> wrote:

Dilawar Singh

unread,
Apr 2, 2013, 12:30:22 PM4/2/13
to wncc...@googlegroups.com
    If some students do a good job

This is the hardest part.

--
Dilawar


On Tue, Apr 2, 2013 at 9:38 PM, Krishna Pillutla <krish.p...@gmail.com> wrote:

Anyone with some background on databases can probably work on refining the asc interface. Asc is a huge project, but it's just not up to our expectations. If some students do a good job, it may just put enough pressure on the authorities to perfect their interface

On 2 Apr 2013 20:52, "Pritam Baral" <chhato...@gmail.com> wrote:

rahil momin

unread,
Apr 2, 2013, 12:34:51 PM4/2/13
to wncc...@googlegroups.com
+1 to the ASC interface.. ASC has greater need for a a savior than moodle I'd say..

Saket Choudhary

unread,
Apr 2, 2013, 1:14:54 PM4/2/13
to wncc...@googlegroups.com
We had come up with a javascript implementation of dcpp :
https://github.com/saketkc/dcpp.js

After introduction of websockets in Chrome, packing this into a Chrome
extension should be pretty doable . So essentially a cross platform
dc++ and all you need is Chrome.

Pritam Baral

unread,
Apr 2, 2013, 1:33:51 PM4/2/13
to wncc...@googlegroups.com
@Saket: I see you're using a websockets-->TCP translation layer in python.

Chrome Extensions have access to a socket API, and NaCl provides general websites with the same. (NaCl is disabled by default, for security)

 

Regards,
Chhatoi Pritam Baral

Saket Choudhary

unread,
Apr 2, 2013, 1:35:16 PM4/2/13
to wncc...@googlegroups.com
On 2 April 2013 21:38, Krishna Pillutla <krish.p...@gmail.com> wrote:
> Anyone with some background on databases can probably work on refining the
> asc interface. Asc is a huge project, but it's just not up to our
> expectations. If some students do a good job, it may just put enough
> pressure on the authorities to perfect their interface
>



Its difficult convincing the ASC guys to let us play(read improve)
their interface. We tried writing a dozen of emails and all went down
the drain.

We essentially needed access to the user database which would list
out the courses of *every* student and during the Grading Season we
would run a cron job to check if new grades are announced, and thus
would send an SMS update to the user. The idea wasn't completed in its
exact form , but we were able to manage sending grades, grading stats
to user on request. A detail is available here :
https://groups.google.com/d/topic/wncc_iitb/8r_3T_3thIE/discussion


I eventually moved the bot to aardvark@jabber,org
(https://groups.google.com/d/topic/wncc_iitb/JDFcR91JCvo/discussion)

and we rely on scraping the ASC interface for all this info :

1. Grading Statistics
2. Running courses and their description
3. Course info ( Sem/Prof etc)

Scraping is slow, but it works !
So essentially the point I wanted to make is to make a wrapper
interface for ASC, (scraping is one idea I can think of ) and make it
look cool :-)


Another idea that in some form is implemented here :
http://gymkhana.iitb.ac.in/~ugacademics/moodle-resoures/


So essentially I wanted to refer slides of MA214 of year 2009. I was
taking MA214 in 2010. An easy way would have been to search DC, but
then its not so trivial. So I wrote a script that takes a ldap
username and password and downloads all resources (pdf/doc/ppt),
including the ones which are posted in forums in all possible courses.
So you have 3 moodle versions (2009,2011 and 2013) . So the idea was
essentially to create a crowdsourced platform where in principle all
3 moodle versions' all course resources can be made available as
.zips.

P.S : I would prefer solving the big list of problems we face in the
institute itself rather than going building some fancy facebook
application.

> On 2 Apr 2013 20:52, "Pritam Baral" <chhato...@gmail.com> wrote:
>

pratyus...@gmail.com

unread,
Apr 2, 2013, 12:38:05 PM4/2/13
to wncc...@googlegroups.com
Hi
 
Some ideas: As mentioned elsewhere, improving ASC. It will also give you guys a great experience on working with vast code bases. You can also try your hand at Moodle. I personally loathe its interface and if you can come up with some new, improved interface you could probably submit it to Moodle (the company which makes um, Moodle) and who knows, it might get submitted as well. But, keep in mind, a complete UI overhaul of either ASC or Moodle without screwing up the insides isn't easy. And, of course, if you feel the backend sucks, see if you can improve it.
 
Moving on, one thing which interests me is making apps/applications/softwares/whatever the hell you call it. There are many platforms to get your hands dirty on like Android/Windows (traditional desktop-style or Windows 8-style Metro)/Windows Phone. Go for iOS/Mac if you have a Mac, else no. Think what you’re missing in your smartphone/tablet/laptop. See if an app can be made for that. Or, you can try making versions of popular apps on other platforms. Example: Android and Windows Desktop have a huge collection of applications. However, Windows 8, Windows Phone and the Linux Desktop don’t have as many (Linux has a lot but still less than Windows desktop). Is it possible to get some of these functionalities on these platforms?
 
Think about it. And if anyone is interested in app development for Android/Windows, I can mentor you. I don't know all about it but I can guide you (after all, that's what a mentor does!)
 
Cheers!
Pratyush Nalam
Technology. Environment. Inclusive Society.
http://www.cse.iitb.ac.in/~pratnala
 
--

Saket Choudhary

unread,
Apr 2, 2013, 1:40:33 PM4/2/13
to wncc...@googlegroups.com
On 2 April 2013 23:03, Pritam Baral <chhato...@gmail.com> wrote:
> @Saket: I see you're using a websockets-->TCP translation layer in python.
>
> Chrome Extensions have access to a socket API, and NaCl provides general
> websites with the same. (NaCl is disabled by default, for security)
>
>

I wasn't aware of this.
Thanks :-)

Ashwin Paranjape

unread,
Apr 2, 2013, 1:46:32 PM4/2/13
to wncc...@googlegroups.com
Now this may sound way high handed, but how about auto-suggest (aka type-head) for DC? Uses are imminent :P
Ashwin P. Paranajape
Manager, Technovation
Visiting Scientist IST Austria
3rd year CSE Btech.
IIT Bombay

Piyush Kumar

unread,
Apr 2, 2013, 2:16:20 PM4/2/13
to wncc...@googlegroups.com
I once tried the idea of doing approximate match in DC++ search (or a google like "did you mean"). It doesn't need to change the user level DC++ code, only the hub level servers must be changed to also return search results that approximately match the query text.


Regards,
Piyush Kumar
Third year Undergraduate
Computer Science Department
IIT Bombay



harshit mittal

unread,
Apr 2, 2013, 3:09:01 PM4/2/13
to wncc...@googlegroups.com
look into suffix trees and if they solve the problem? 
the creation is O(n) and you can then check for exact matches in practically O(k). k---length of substring
For matching like edit distance the best known algorithms take O(nk) with dynamic programming.

--
Cheers!
Harshit

Kanishk Parihar

unread,
Apr 3, 2013, 4:24:29 AM4/3/13
to wncc...@googlegroups.com
I am not sure if all of these would be very feasible for newbies/freshies.

I suggest we divide projects into categories,
noob: the standard stuff, like chrome extensions.
some experience: extensions to dcpp, useful software here and there, maybe image processing
pro: things that involve network theories, voice recognition, etc?
Kanishk Parihar | Internship Coordinator | Placement Office | IIT Bombay

sushant hiray

unread,
Apr 3, 2013, 7:39:10 AM4/3/13
to wncc...@googlegroups.com
I agree with @Kanishk.
While posting we can just tag the project (say beginner, experienced, pro )
It will help people choose feasible topics!


Sushant Hiray | Junior Undergraduate | Computer Science & Engineering |  Coordinator, MnP | IIT Bombay

Guna Prasaad

unread,
Apr 3, 2013, 2:39:56 PM4/3/13
to wncc...@googlegroups.com
  • Meta Data Collector:  Most of the songs, books or files that we download from the internet does not have proper meta data. Like author, album, etc. So we can try to collect these data by using some search in google ans choose the best one and add to the description, etc. For movies we can add the review from imdb as description (i guess, imdb does not provide api for this. but do we really need one? :P) or get reviews from amazon for books, etc. 
  • IDE for writers: When we start writing an article or composition for something, we generally do a lot of background research and to collect data we only have something like read later. So lets think of some background app, that just collects whatever you select and press a key and when you actually sit down to write, it'll give them to you in a film strip or something: well it became too imaginative!
  • Games: Lot of physics simulation engines are available. You can then design a game like subway surfer or a small racing game. You'll learn how much effort actually goes into creating a big game.
  • Discussion Forum: Creating a discussion forum is a really good idea. Have a look at the currently available discussion forums. If you can identify some problem, then create something that'll solve that. If you are interested in this, may be send me a mail. I can guide you to some open source forums, which you can develop on. 
  • Summly : Heard about this app? This was recently bought by Yahoo! for around $20million and it was made by a 17-yr old! It searches for top news online and sums it up in 400 words! You can try to do something similar to this. This would be interesting. I will choose to mentor this team, if given an opportunity :) 
Will add more! 

Saswat Padhi

unread,
Apr 3, 2013, 3:19:20 PM4/3/13
to Web and Coding Club IITB

Really cool ideas!! :-) It would be great to see (and use) some of these apps.

And regarding the last topic, count me in for mentoring on DM, ML, NLP :-)

--

sushant hiray

unread,
Apr 3, 2013, 3:25:08 PM4/3/13
to wncc...@googlegroups.com
Adding to Guna's Meta Data Collector: You can refer to MusicBrainz's collection of meta data. They do have an api too!

Something on the same line's:
My team had created an Auto Song Tagger for this hacknight! (It essentially is an app which will correct all meta details of your playlist ) Its in pretty crude shape (implementation wise) and I'm willing to help people interested in working with me on that or something on similar lines! :)







Sushant Hiray | Junior Undergraduate | Computer Science & Engineering |  Coordinator, MnP | IIT Bombay



--

Mayank Singhal

unread,
Apr 3, 2013, 11:13:41 PM4/3/13
to wncc_iitb
@Guna
To digress a little bit, the hardest part of creating an app like Summly is the summarizer. Summly was not doing this on its own and used licensed technology from SRI (not 100% sure) that also gave the underlying tech for Siri in iOS. I would suggest that this project be taken only if there is a some other (cheaper) solution exists for summarizing. If the intention is it build a summarizer itself, then it is going to be one hell of a task.

Mayank Singhal

Mayank Singhal

unread,
Apr 3, 2013, 11:16:21 PM4/3/13
to wncc_iitb
About IMDB
IMDB provides a data dump at http://www.imdb.com/interfaces.

Mayank Singhal

Mayank Singhal

unread,
Apr 3, 2013, 11:18:52 PM4/3/13
to wncc_iitb
Also, be careful when you subtly suggest scraping as a solution on non-anonymous documented web especially when the website explicitly denies such usage - :)

Robots and Screen Scraping: You may not use data mining, robots, screen scraping, or similar data gathering and extraction tools on this site, except with our express written consent as noted below.


Mayank Singhal

Mayank Singhal

unread,
Apr 3, 2013, 11:24:22 PM4/3/13
to wncc_iitb
@Saket
I am not sure who is heading ASC now but a lot depends on him/her. In case ASC is less accessible, you can always try to improve Moodle. Prashant (Sachdeva) has built a module for that platform and it was pretty close to getting included in IITB Moodle, AFAIR.

Other than that, placement and internship codebases are easier to get hands on.

Mayank Singhal

Mayank Singhal

unread,
Apr 3, 2013, 11:27:44 PM4/3/13
to wncc_iitb
@Harshit
The issue with auto-suggest or auto-correct in DC++ is that all clients have to agree on it, implement it and agree to handle the additional query traffic. It's that and coming up with a good distributed, reliable protocol to query all clients. Client side implementation changes are not going to be half as challenging. 

And yes, this is a brilliant project - design + code wise.
(And extremely sorry to spam you guys)

Mayank Singhal

Pratyush Nalam

unread,
Apr 6, 2013, 11:27:18 AM4/6/13
to wncc...@googlegroups.com
You can make it for Android (why Android? - most widely used platform).

Next, you can render the map using the Maps API and have your own custom additional database of places and shortcuts. Or, you can put them into the main Google Maps itself using Maps Editor. http://www.google.com/mapmaker

3-D, the problem is not much of 3D imagery is available for India. You could probably go shooting around the campus to make a 3D map but I would suggest stick with 2D.

Hope that helps,

Pratyush Nalam
Technology. Environment. Inclusive Society.
http://www.cse.iitb.ac.in/~pratnala


On Sat, Apr 6, 2013 at 6:48 PM, ABHISHEK <abhik...@gmail.com> wrote:
I have an idea but don't it's feasibility and what kind of skills are required for it. I haven't done any research on it it till now. So, i don't have an idea whether there is some app already their for it. It would be helpful if anyone can guide through it.

Idea :-

Making an app which will guide the students their way to any location inside IIT-B campus. Since, freshies and even most of the seniors don’t have a clue of location of most of the buildings and departments in the campus. The app will be retrieving the position of the mobile through the GPS and will be guiding them to their final destination. The app will be having a database consisting of every shortcut in the campus. If i would be able to complete this much, then the next step would be to make a 3- d map instead of a 2-d one, in which a person can see his location and the buildings or view around it in the app (which was the initial idea).


 I haven't done any research on it it till now. So, i don't have an idea whether there is some app already their for it. It would be helpful if anyone can guide through it.


Anil

unread,
Apr 6, 2013, 3:11:01 PM4/6/13
to wncc...@googlegroups.com
Some directions :-

Gaming :-
- Multiplayer games :- polling , sockets 
- 3D Games - explore OpenGL

Real Time :-
- Messaging : Your own WhatsApp ?

Some ideas :-
- Social Library : Everyone has books, can I keep this info social, people who i know also know the books i have. 
- GPU Cracker : Implement your own hash cracker 
- Persistance : Build a small library to proxy ajax requests
- Explorer : Implement a windows explorer (nautilus on ubuntu) on the browser

In addition there are is ideas page on stab wiki + previous hacknight ideas list - might be useful for reference.
Reply all
Reply to author
Forward
0 new messages