Los Alamos High School (63)/Interim Report

Interim Report
http://mode.lanl.k12.nm.us/get_interim1112.php?team_id=63

Problem Definition
With the world's growing databases of information and files stored on computers, it will become increasingly harder for people to access specific files and information in such large storehouses of data. Conventional means of searching for specific files in large databases are slow and weak, but Google and other search engines provide an overload of possibilities. They display hundreds upon thousands of items. Scanning through the possibilities provided is time-consuming for the user and the engine only lists the files based on popularity. The actual target could be buried under multiple pages of search results.

Problem Solution
By creating an engine that relies on a staggered variable based search in order to "zero-in" on a few specific results we would be able to clear up almost all of the clutter that conventional engines contain. The engine works efficiently and compiles only a small list of files instead of the massive "stack" as is the case with most conventional search engines. By narrowing down the search results down to only the solution instead of keywords in results, like web search engines like Ask or Google, the desirable result will be shown. The only significant trade-off would be additional input on the part of the operator.

Progress to Date
So far, we have been able to create a "searchpc" program in Java using Eclipse, that is at the point of being capable of finding any file located in any directory on a computer, provided you give the file name and directory that you wish to search the item in. The program then lists in the console all files found in the selected directory, and then when it is done searching, it displays the time it took for the search in millisecond, seconds, and minutes. It even asks the user if another search is wanted. Our coding so far has comments in on explaining how each section works for individuals who do not understand the language of Java.

Expected Results
After programming, testing, and refining of our original search engine, we hope to eventually be able to use our program to search for very specific pieces of data in large storehouses of information in a very small amount of time. Our program will then be able to be helpful in data mining and organizing huge databases of info.

Introduction
Hi,

My name is Jon Brown, and the challenge has asked me to look over your interim report. I am a grad student at New Mexico Tech, if you like there is more information on my background and work on my User Page.

Progress
Your Interim and proposal are the same. Have you made any progress since your proposal?

Mentors
If you do not yet have a mentor, please contact consult or see here for help in finding a mentor to help you with this ambitious project.

Model
Can you be more specific on how your algorithm works? What is a staggered variable approach, and what makes it better? What additional details does it ask of the user?

It looks like you have bitten off more than you can chew. Google's search algorithms are very sophisticated and fast, although I do agree that sometimes searching for files on a computer can be slow if it has to search through the entire (or several) drive(s). What newer Windows systems and Linux (I don't know about Mac) do is build an index or cache of all the files currently on your machine, then it either automatically or manually updates this database periodically, then when you search you actually are searching this database. Implementing a system like this might make an interesting project, if you're still interested in searching for files on a computer (as opposed to websites or some other form of data). There are tools to do the database and search sides of this (e.g. SQL), but depending on your interests you might look into implementing some of it yourself.

Face to Face Evaluation
Your next milestone is a face to face evaluation in February.

Rubrics
The judges will use these rubrics to evaluate your projects. Use them as checklists for what you need to communicate to the judges.


 * Expo Judges Rubric
 * Finalist Judges Rubric