Programming Contest: Multi-threaded applications

By: John Kaster

Abstract: Community programming contests have been revived, and the community can have more involvement than ever in selecting the winners. Read this article for details.

Community programming contests are back! The first contest will run from Tuesday, Feb 26, 2002 until Friday, Mar 29, 2002.

The challenge

Produce a multi-threaded application that provides visual feedback of the thread progress.

Any multi-thread application can be used. You can write something that does FTP file transfers, plots different parts of a Mandelbrot set or fractal images, does database queries, solves a complex equation, generates prime numbers, does word searches or word games, produces mazes, renders an image, implements a critical path method, finds the best chess move, does load balancing on a web server, crawls web sites -- basically, whatever application you can think of that can be used with a multi-threaded algorithm.

Conditions and requirements

  • You can use any Borland development tool.
  • You can write any multi-threaded application.
  • The application must have some type of interface that updates the progress of the various threads running in the application without requiring action on the part of the application user.
  • Complete source code must be provided. You do not need to provide any source code that ships with the development tool you choose to write the contest entry.
  • You must have distribution rights to the source code you provide
  • You can submit as many contest entries as you want. Each contest entry will be judged on its own merits.

Entering the contest

We have added new functionality to CodeCentral to support Community programming contests. The existing rating system will be used by the community to rate submissions, and any existing CodeCentral entry can be assigned to a contest. There is now a "Contest" field for CodeCentral submissions. When editing or creating a new CodeCentral submission, you will now see a drop-down list of all available contests you can enter with that submission. If you don't want to enter a contest, simply leave this value at "None." You can only select one contest for the submission. We may have more than one contest running at the same time, so be sure to select the correct contest option.

The selection process

All submissions must be posted to CodeCentral. You can find the list of contests on CodeCentral at The entire community can rate all submissions provided. These ratings will be used to select the finalists for the contest. Both the number of votes and the average score of the submission will help in determining the finalists. After the finalists are selected, our distinguished panel of judges will select the winner and any honorable mentions. The selection will occur after the contest is completed.

You can rate any contest entries but your own. Please keep in mind that it's not nice to rate other people's submissions poorly just to make yours better! From the detailed listing of the submission, simply select the rating you want to assign and click the "Rate" button. The "Options" link to the right of the Rate button shows the various rating classification systems. If you're not familiar with the rating classification system, just keep in mind that the value farthest to the left (numeric value of 1) is the worst, and the value farthest to the right (numeric value of 5) is the best.

The prize

The contest winner will receive his or her choice of the latest release of the Pro SKU (or nearest equivalent) of a Borland development product. Other prizes for honorable mentions, runner ups, good efforts, and so on, could include T-shirts, mugs, "office safe" soft Borland frisbees, and so on.

The judges

For this contest, the judges will be members of the Borland DevRel team -- David Intersimone, Anders Ohlsson, and John Kaster. It is possible the judges can be influenced, but it is not likely. The decisions of the judges are final.

This is brand new stuff!

If you have any problems with the interface for submitting or rating submissions, please report them in the borland.public.codecentral newsgroup. If you wish to discuss the contests themselves or how we should conduct them, please use the newsgroup, or leave a comment here on this article. You can also use a web browser to access the newsgroups at if you don't have a newsgroup reader handy, or direct newsgroup access.

Thanks for participating, either as a community judge, or a contestant!

Server Response from: ETNASC02