image provider

Electricity Use


This essay does not describe an existing computer program, just one that should exist. This essay is about a suggested student project in Java programming. This essay gives a rough overview of how it might work. I have no source, object, specifications, file layouts or anything else useful to implementing this project. Everything I have prepared to help you is right here.

This project outline is not like the artificial, tidy little problems you are spoon-fed in school, when all the facts you need are included, nothing extraneous is mentioned, the answer is fully specified, along with hints to nudge you toward a single expected canonical solution. This project is much more like the real world of messy problems where it is up to you to fully the define the end point, or a series of ever more difficult versions of this project and research the information yourself to solve them.

Everything I have to say to help you with this project is written below. I am not prepared to help you implement it; or give you any additional materials. I have too many other projects of my own.

Though I am a programmer by profession, I don’t do people’s homework for them. That just robs them of an education.

You have my full permission to implement this project in any way you please and to keep all the profits from your endeavour.

Please do not email me about this project without reading the disclaimer above.

The motivation for this project is to encourage people to make greener choices when they buy computers, by encouraging them to more accurately go for self-interest and to more fully appreciate the value of low-power computing.

When large companies buy computer server farms, they factor in the cost of the electricity the computer will use over the life of the computer, the rent for the space to house the computer and the cost of air conditioning. However, when people buy home computers, they ignore these costs, even though they amount to a substantial proportion of the total cost. What is needed is a simple Applet to help potential computer buyers take these factors into account and also the cost of batteries. Ideally you would measure the power consumption of the candidate unit with an AC (Alternating Current) power meter, find out the cost of electricity, use a crystal ball to find the future cost of electricity… This won’t do. We need something simple even a technopeasant can use.

Let it work like this: The user answers a number of questions:

  1. Total cost of candidate computer, including case, motherboard, CPU (Central Processing Unit) s, RAM (Random Access Memory), hard disk, DVD (Digital Video Disc) reader/writer, keyboard, mouse, screen, OS (Operating System), but not printer.
  2. Laptop or desktop?
  3. Size of screen
  4. Speed of CPU in MHz
  5. Number of cores
  6. Brand/line of CPU
  7. MB of RAM
  8. Size of hard disk
  9. Does the mouse need a battery?
  10. Country/State/Province where you live (to lookup electricity cost).
  11. How long you expect to keep the computer?
  12. How many hours a day do you leave the power on?
You then estimate the cost of electricity over the life of the computer and display four numbers: computer cost, electricity cost, battery cost and total cost.

For a fancier version, you keep history so you can compare several candidates. Make sure that when you compare, the last three questions are the same, or at least generate a warning if they are not.

The Java coding part of this project is duck simple. Just present the user with JComboBox multiple choice questions. You might want to use the currency JSpinner to select the cost. You might as well recompute after every change event. The main work is in collecting data on electricity costs and power consumption.

This page is posted
on the web at:

Optional Replicator mirror
on local hard disk J:

Canadian Mind Products
Please the feedback from other visitors, or your own feedback about the site.
Contact Roedy. Please feel free to link to this page without explicit permission.

Your face IP:[]
You are visitor number