Java Student Projects Java Student Projects
home Java Glossary no local find frame, full screen Google search web for topic jump to footer translate with Babelfish by Roedy Green ©1996-2008 Canadian Mind Products
“One path leads to despair and utter hopelessness. The other, to total extinction. Let us pray we have the wisdom to choose correctly.”
~ Woody Allen, born 1935-12-01

Introduction

Here are over 157 ideas for student projects most likely involving Java. Some ideas might be done by teams or a whole class. Some may develop into commercial projects. You are free to take these ideas and use them as you wish. I would appreciate hearing from you if you decide to implement any of these ideas. I would also like to hear any comments you would like me to add to the descriptions, or ideas you have for projects. If you have such project ideas on your own website, I would be happy to build links here.

I have discussed most of the projects many times at length over the last decades on BIX which retained all postings in archives.

Pretty well everything I have to say about each project is spelled out here. I don’t have extra material to give you, unless I explicitly mention it. I don’t have the time to lead you by the hand through a project. If one project is too difficult to tackle at your current level of skill, pick a simpler one.

If you are unemployed, or just out of school, you might hone your skills by tackling some of these projects. They are more like the real world problems you will be given in the workplace. In the real world you have to write the specifications too. They are not handed to you on a plate the way they are in school. I give you many hints on how to solve the problems, far more than you would get in the workplace. These problems are intermediate in degree of hand-holding between school and the workplace.

I would be happy to implement any of these projects for you, for a fee.

Project Difficulty Commercial
Potential
Estimated
Existing
Implementations
4DOS/4NT Describe Helper 0 $ 0
Adbuster 4 $$$ 3
Address Book 1 $$ 50
Affiliate Manager 3 $$ 0
Antique Computers:
Finish the Work Of
Ada Lovelace and
Charles Babbage
5 $ 0
Application Installer 2 $$$$ 5
Aquarium Controller 4 $ 0
Atomic FTP Uploads 5 $$ 1
A Tractable AI Problem 7 - 0
Application Reinstaller and Mover 2 $$$ 0
The Appraiser 2 $$$ 0
Associations Editor 2 $$ 1
Automated Greenhouse 4 $$$ 0
Automatic File Update 3 $$$$ 2
Autorun Manager 2 $ 1
Backup to CD ROM burner. 2 $$$ 0
Beginner’s Projects (very easy) 0 - 0
Beyond Scanning 4 $$$$$ 0
Bible Thumper 2 $$ 0
Birthday Reminder 0 $ 50
Book Store Referral Applet 3 $$ 1
Browser Recommender 1 - 0
Bulk File Distributor 4 $$$$$ 2
Bush Crimes:
Poll people on the web
for what they think about
Bush’s alleged crimes
2 $ 0
BusInfo:
Transit maps
and schedule information
in a usable form
client-server
4client-server $$$$ 0
BusTel:
exchange electronic business cards
during a voice call
2 $$$$ 0
CAI:
Computer Assisted Learning
4 $$$ 20
Canonical Java Keyword Order 1 - 0
Car Horn 3 $$$ 0
Case Fixer 5 $ 0
Case Range 2 $ 0
Celestial Body Tracker/Astrologer 2 $$ 20
Certificate Viewer 4 $ 2
CGI Tutor 1 - 1
Chequebook Balancer Deluxe 3 $$$ 5
Child Abuse Database
client-server
5client-server $$ 0
Closest Download Mirror
client-server
2client-server $ 0
Collections Amanuensis 0 - 0
Colour Chart 0 - 0
Comfy Chair 3 $$$$ 0
Configurator 2 $ 0
Conspiracy Theory Voter
client-server
2client-server - 5
Constructor Amanuensis 3 - 0
Constructor Docs 1 - 0
Converter Class 0 - 1
Cookie Classes 1 $ 0
CSS Annotator 1 $ 0
Currency Converter 2 $$$ 1
Custom Clothes 7 $$$$$ 3
Date-Sensitive Search Engine
client-server
4client-server $$$$ 0
Debt Clock 2 $ 1
Defragger 5 $$ 10
Deleecher 2 $ 1
Deleter:
Delete Files With +ve and -ve Wildcards
0 - 1
Delta Creator 4 $$$$ 0
Directory and File Explorer 3 $$ ?
Directory Sync 1 - 10
Disaster Probability 1 $ 0
Design Pattern Amanuensis 3 $$ 0
Dissolve Designer 1 $ 0
Dogpile Dictionary
client-server
4client-server - 0
Domain Registry
client-server
4client-server $$$ 0
Domain Search Engine
client-server
4client-server $$$$ 0
Dynamic Version Control
client-server
9client-server $$$$$ 0
El Cheapo Certificate Authority 3 $$$ 0
Encoding Identification 2 $$$ 0
Explorer for Files and Directories 3 $$ ?
Extension Associations Editor 2 - 1
Factory Finder 3 - 0
Fast Snail Mail
client-server
6client-server $ 1
Fast File Finder 2 $ 3
Easy Font Designer 4 $ 0
Fair Trade Webstores
client-server
3client-server $$$$ 12
File and Directory Explorer 3 $$ ?
Firewall Autoconfigure 4 $$ 0
Fitness Monitor
possibly client-server
2client-server $$ 1
Fluffiness of File Formats 1 - 0
Font Census 1 - 1
Font Finder 1 - 1
FontShower 0 - 1
Food Allergy Tracker
possibly client-server
3client-server $$$ 0
Foreign Language Trainer 3 $$$ 0
Form Filler 2 $ 3
FTP Uploads
datacommunications
5datacommunications $$ 1
Genealogy
possibly client-server
2client-server $$ 20
Gespenster:
fast JVM load
4 $ 0
Glossary Presenter
client-server
4client-server $ 0
Greenhouse 4 $$$ 0
GridBag Amanuensis 3 $ 0
Hexadecimal Java Programmer’s Calculator 1 $ 0
Hogs 0 - 0
Hermit Crab:
Variable Length Record Files
1 $$ 0
Hibernation:
Fast Program Load via suspended animation
3 $ 0
History Of The Common Man
client-server
1-6client-server $$$ 0
Hooker Protector
client-server
1client-server $ 1
HTML Broken Link Finder 1 $$$ 1
HTML Disturbed Link Patcher 2 $$$ 1
HTML Compactor 1 - 0
HTML Encoding Changer 1 $ 0
HTML Glossary Presenter 4 $ 0
HTML from Java, Source Code Presenter 4 $ 0
HTML and Java Static Macros 1 $$$$ 0
HTML Splitter
& Boilerplate Refresher
2 $$$ 1
HTML Style Splitter 1 $ 0
HTML Table Reorganiser 1 - 2
HTML Table Sorter 1 - 3
HTML Tidier 2 $ 5
Ideal lover database search
client-server
4client-server $ 10
Image Amanuensis 1 $ 3
Image Cacher 2 - 4
Image Finder:
Searches the web for a given file.
3 $ 8
Import Tidier 3 - 5
Infinite Disk:
integrated file migration/backup
client-server
4client-server $$$ 2
INI file tidier 2 - 0
Installer 2 $$$$ 5
Interface finder 2 $ 0
Internationaliser
client-server
3client-server $$$$ 10
Internet Radio
client-server
4client-server $$$ 1
IP Tracer
client-server
3client-server $$ 1
Jar Clicker 1 - 0
Jar Verifier 1 - 0
Java Case Range 2 $ 0
Java Class Overview 2 $ 0
Java File System 6 $ 0
Java Invoker 1 - 0
Java Jar Catalog 1 - 0
Java Keyword Reorderer 1 - 0
Java Launcher 2 $ 0
Java JVM Manager
Switch between different versions of Java
3 - 0
Java JDK Version Integrity 2 - 0
Java NoClassDefFoundError Amanunensis 1 $ 0
Java Powered TV Commercials 3 $$$ 0
Java Source Code Beautifier 5 - 10
Java Source Code Presenter 2 $ 2
Java Source Code SCID:
browser/editor
8 $$$$$$$ 3
Java Swing Amanuensis 1 - 0
Java Swingizer: converts AWT to Swing and back 1 $ 0
Javadoc tools 3 $ 0
JColourChooser 2 $ 2
JDK Version Integrity 2 - 0
JDisplay Source Code Presenter 4 $ 0
JSP Replacer 5 $$$$ 0
JVM Manager
Switch between different versions of Java
3 - 0
Kettle 4 $$$$ 0
Keyboard Illustrator 1 $ 0
Keyword Reorderer 1 - 0
Kickers 2 $ 0
Kitchen Computer
possibly client-server
3client-server $$$$ ?
LazyString:
a smarter younger
brother to String and StringBuffer
1 - 0
Linkcop Clone 1 $$$ 1
LINT for Java 6 $$ 1
Localisation Tool
client-server
3client-server $$$$ 10
Long Distance Speeddialer :
Local Internet Connection Dialler
for Travellers.
1 $$$$ 0
MAC Ethernet Address 3 $ 0
Mailreader/Newsreader
client-server
7client-server $$$$$ 0
Mall Balls
client-server
6client-server $$$$ 0
Menu and Keystroke Configurator 4 $ 0
Method Finder 1 - 0
Mini Map Maker
possibly client-server
1client-server $ 0
Movie Star Recognizer
client-server
2client-server $ 0
Name That Tune
client-server
6client-server $$ 0
Napster Clone
client-server
4client-server $$$$ 0
NAT Cracker 4 $$ 0
Native Class Amanuensis 2 $ 0
Neural Net Project 3 - 0
NoClassDefFoundError Amanunensis 1 $ 0
Notetaker 2 $ 0
On-Line Books
client-server
4client-server $$$$$$ 0
One-Trick Optimiser 4 $ 0
PAD file tidier 1 $ 0
Password Eliminator 3 $$$$ 0
Password Protector 1 $ 10
Path/Classpath tool 1 $ ?
Pentium
access CPUID, CPUSERNO and
RDTSC Pentium instructions
1 $ 0
People Finder
client-server
2client-server $$$ 4
POD:
(Persistent Object Database)
4 $$ 0
Planetary Mail Protocol
client-server
3client-server $$$$ 5
Pill Reminder 1 $$ 50
Pornography Viewer
client-server
3client-server $$$$$ 0
Prebranded Software Rental:
with Auto Updates
client-server
6client-server $$$$$$$$ 0
Proofreader Font 2 $ 0
PUT Language:
for Specifying Instructions
5 $ 0
Radioactivity Simulator 2 $ 0
Regex Composer 3 $ 0
Regex Proofreader 2 $ 0
Registry Poker 2 $ 0
Registry Tidier 2 $ 0
Reimplement Standard classes 2 $ 0
Reinstaller and Application Mover 2 $$$ 0
Restaurant Costing 1 $$$ 1
RFC Conversion To HTML 1 $$ 0
Rhythm Tutor 2 $ 0
Root Certificate Installer 1 $$ 0
Sanity Checker 3 $$$ 1
SAX :
File Transfer Prototcol
datacommunications
3datacommunications $ 0
Honda Insight car
SCID

(Source Code In Database)
Java browser/editor
8 $$$$$$$ 3
Screen Capture OCR 4 $$$ 0
Schema Mill 2 $$ 0
Scrolling Mad Bee Style 3 - 0
SCROOM Web site avoider 3 $$ 0
Search Engine Sharpener
datacommunications
3datacommunications $ 0
Serialized File Recovery 2 $$$ 0
Shareware Submitter
datacommunications
2datacommunications $ 0
Simulate an Old Klunker Computer
for testing new apps to make sure
they will run quickly enough on
old machines.
1 $ 0
Smart FTP Uploads
datacommunications
5datacommunications $$ 1
Smart Layouts 5 $ 0
Sort Comparator Amanuensis 3 - 0
Sort Visualiser 0 - 0
Spam Filter
datacommunications
2datacommunications $$ 10
Spreadsheet Amanuensis 3 $$$ 0
Stamp Calculator 0 $ 0
State Finder 4 - 0
Stay In Touch Database
client-server
4client-server $ 1
StringBuffer 1 - 0
StringBuilder Optimiser 2 $ 0
Struct reader Amanuensis 3 - 0
Submit-It Clone
datacommunications
2datacommunications $ 40
Super Compressor 3 $ 1
Suspended Animation:
Fast Program Load
3 $ 0
Swing Amanuensis 1 - 0
Swingizer: converts AWT to Swing and back 1 $ 0
Sync 1 - 10
Systray Deleecher 2 $ 1
Talk Like A Moron
A George Bush Speech impersonator.
3 $$$$ 0
Tel-ID, telephonic ID verification 4 $$$$$ 0
Tractable AI Problem 7 - 0
Traffic Simulator 4 $$$ ?
TV Controller 5 $$$ 2
TV Listings 3 $$$ 1
Tweakable Optimiser 4 $$$$ 0
TweakDUN Clone
datacommunications
1datacommunications $ 1
Uncrackable Encryption 1 $$ 0
Unique Number Server
client-server
1client-server $ 50
Units Of Measure Localisation 2 $ 0
Untouch
avoid changed file dates on files
that did not really change
1 $$ 1
Version Checker 2 $$ 1
Voice Compression 4 $$ 0
Wave The Flag 4 - 3
WebRing Controller
client-server
4client-server $ 1
Weight Tracking
possibly client-server
1client-server $ 10
Welcome Wagon
datacommunications
1datacommunications - 0
Which and What Utilities 1 - 0
Wildcard FilenameFilter
positive and negative wildcards
1 - 0
Xenu clone
datacommunications
1datacommunications $$$ 1
Xerlin clone: XML team project 1 - 25
XML Compactor 1 $$ 0
XREF for Java classes 2 $ 0

Which Project to Pick?

People often write me and ask “Which project should I pick?” as if I knew their hearts and abilities. Here is a strategy. First narrow down the choices to the ones that look about your level of difficulty. Then narrow down the ones to your interest in financial potential. Then narrow down projects to ones that involve servers or do not. Now weed out ones that look boring or esoteric to you. Now look for the project with most heart. Do you care about the result? You will need to care in the times ahead when the hard work comes of implementing, documenting, researching, and futzing about to get it to work. For children, video games are the usual choice. For adults, it can be anything. Further, you don’t have to pick one of my projects. Let one of mine inspire you to create one your own. Think in terms of your own interests and hobbies. What would be useful? Think about the frustrations you have had with software. What sort of better mousetrap does the world need?

Learning More

In my email inbasket each day are two or three requests for more information about one or more of these student projects. I don’t have any materials other than what I have provided here unless I explicity mentioned that I did. Most often these requests come from students in third world countries, but sometimes they come from commercial developers.

Students imagine I have complete detailed specs written on every class. The key skill students must learn is writing the spec, and doing the overall design of a decently large project. Any boob can code given a detailed class specification. In the real world you are never handed tidy perfectly-specified little problems than can be handled with two or three pages of code. In the real world, you won’t even get project outlines anywhere near as detailed as I have given you here. They will never contain any implementation hints as my outlines do. You have to pull teeth to get even the vaguest information about what the program should do. You have to write prototype systems. Only then are your users smart enough to tell you what they really wanted, or are you smart enough to suggest to them possible options they might enjoy.

My advice for a student who thinks a project is too difficult, is to create a sub project that he thinks he might tackle successfully, or try a simpler different project entirely. After that experience, he can add a bit more complexity. Trying to solve the problem all at once just leads to overwhelm. Don’t feel embarrassed that the sub project would have no practical use. It is just a stepping stone.

Though I have no additional materials to send you, I am willing to answer specific questions about the projects. I will normally add that material into the project descriptions for others too.

For team projects underway you can join Asynchrony, Enhydra or SourceForge.


CMP_homejump to top
CMP logo
feedback Please email your feedback for publication, errors, omissions, broken/redirected link reports
and suggestions to improve this page to Roedy Green : feedback email
made with CSS
HTML Checked!
ICRA ratings logo
mindprod.com IP:[65.110.21.43]
Your face IP:[38.103.63.17] Spread the Net
You are visitor number 154,777.
You can get a fresh copy of this page from: or possibly from your local J: drive (Java virtual drive/Mindprod website mirror)
http://mindprod.com/project/projects.html J:\mindprod\project\projects.html