COMS 3101-4 Programming Languages (Perl)

 
   
 
     
 
 

Project

 

You will work on a final project (individually or at most team of 2) as part of this course. The project is meant for you to explore one or more aspect(s) of Perl in greater depth than is covered in the class. Few possible ideas are mentioned below.


Dates:

 

Project proposals due: Mon, April 9th (11:59pm EST), via email courseworks (submit early, start early)

Project proposals review and finalize by : Thurs, April 12th (before class)

Project due: Friday May 4th (11:59pm EST) (NO EXTENSIONS)


Grading:

 

Project proposals (expectation will be higher for 2-person teams): 10%

 

Final submission:

  • Functionality (expectation will be higher for 2-person teams) as per the proposal: 15%
  • Documentation (in code documentation): 5%
  • Report (a 4-5 page report (1-person team) or 7-9 page report (2-person team) explaining the project): 10%
  • Efficiency, readability, good programming practices: 10% 

 

Project Proposal

 

The project proposal should be about 1-2 pages, containing

  • A catchy project name.
  • A high level description of scope and purpose of the project (one paragraph)
  • A functional specification of the desired system behavior. This is basically a precise description of possible types of input and output, including examples.
  • A draft of how the project will be broken up into major components and functional blocks (packages, modules, important classes (if using OOP) and functions and their purpose and functionality).
  • If applicable, a list of CPAN libraries/modules that you are planning to use.
  • The proposal will be graded (10% of final grade).

 

Choosing a Project

 

The project should be something that's interesting/relevant to you. It should be larger than the weekly homework problems and serve a specific (more or less useful) purpose. However, the main mistake in choosing a project is to select something that's too big or too challenging. Be ambitious, but look for something that is feasible for you to do within 3 weeks. Examples for possible projects are:

  • a tool that harvests and processes information from the web (news headline aggregator, monitoring flight ticket prices...).
  • some web-app (simple blogging platform, meeting scheduling site...)
  • implementation of some interesting NLP application 
  • implementation of some interesting algorithm(s) (machine learning, NLP, graphs, ...) 
  • a tool for analyzing a specific scientific data set.

Try to be creative. If you cannot come up with anything or you are unsure if your idea is manageable contact the instructor before submitting the proposal .

 

 
 
Joomla-Template by guenstige.shop-stadt.de & go-windows.de