Eco-friendly ideas in computer programming
Some spiritual signs have shown that it would probably be good to continue this
project by eco-friendly innovation, which can successfully help both the
environment and our economic state. However, there is not much energy for it,
so we should probably choose only one thing and implement it, either as part of
this project or another. This means that the sole purpose of this subpage is to
collect good ideas that may be implemented by us (programmers, mathematicans)
and not only by other people, and then maybe choose one from these ideas, as a
suggestion service. The actual implementation of this suggestion may be done by
a for-profit project, not necessarily part of this project. As the other ideas
will be public as well, they can be implemented by others, and maybe this
living publication will help making their jobs more eco-friendly,
like David Hilbert's historical speech about a list of unsolved mathematical
problems had its effect on mathematics. The essence is that we take care of the
relationship of computers and the environment here, and computer is a machine
that could be used for more reasons and more efficiently, if proper software
were available to us. Also, note
Arpad Fekete's goals when
starting this project. However, the poor security level of operating systems
might prevent us choosing this way, and might urge us to choose activities that
do not last more than one day, and can be published immediately, or those
kinds of activities which do not need computers. Building state-of-the-art
software usually needs state-of-the-art hardware and security measures. We can
imagine eco-friendly innovation even without computer technology.
What is this part NOT about (-1)
There are common ideas like electric energy saving for different hardware and
operating systems, but many operating systems already support what is
important, so we could only help much if we had the opportunity to improve the
default behaviour of a famous operating system, but it is very hard. We might
have other good ideas also to change computers in the large scale (e.g.
hardware, ROM, operating system, Internet), but their implementation is as far
from us as politics, for example, so these ideas are not included in this list.
There are also programming ideas that might help in eco-friendly education,
like games or ecological footprint calculators, or help in environmentalist
research and modelling, like the ideas in the Azimuth Code Project, but here we
take care of those eco-friendly ideas only which have good effects not only due
to research/education/promotion, as the great part of the theories necessary
for protecting the environment is already available today, and the publicity
would probably not help much without
motivation,
ethical education and community.
There are also ideas in programming which might help in logistics, waste management,
forestry, sailing, or other jobs related to the environment, but it would be
hard to create a software competitive against the concurrence (other software)
without the thorough knowledge of the specialty, and it is not even certain
that it would be worth the effort. The best ideas should be both achievable,
testable and usable by a solitary programmer, and potentially efficient in
protecting the environment.
The control idea (0)
The ideas here should be really fit for us, and better than those which we
invent for others. That's why all of them should be better than the best idea
for us in
"
Environmental theory and ideas",
the development of an
eco-friendly font, and maybe
the continuation of these efforts by more fonts (each with the horizontal/full
metrics of a famous font) or different software for these fonts. This idea
seems to be really good, by the way, but at the present time it would be too
hard to work on it without pay, and there are also many competitors like the
award-winning EcoFont. Anyway, it is so interesting that it's perfect for a
control idea, so all our other ideas should be better (for us). Starting
from 1 (the best so far), the enumeration of our ideas follows... in
priorities, the ease of implementation and the mathematical curiosity of the
job matter most.
1
Creating better software for file/fileset compression
:
File/fileset compression is much more efficient today than it was, say, ten
years ago. Technology like 7zip, PAQ or the WebP image compression method beat
the old technology, but they are probably still not the best. With better
compression technology, it is possible to use less hardware storage for the
same tasks (but note that it is also possible to use more processing power for
them). It is also possible to use slow compression in order to make
decompression quicker, which would probably be good for software package
formats like CAB. This means that different kinds of compression methods fit
for different purposes, and one of these purposes is to lessen hardware needs
(and another is to keep the information more secure from hardware errors at the
same time). This way, for example, one DVD would be enough for a software
installer that would otherwise need two DVDs, or a Linux distribution could put
its complete source code together with its executables on less CDs. If we
worked hard on compression technology, it might also be possible to have fun
with mathematics and win the Hutter Prize (and even if the Hutter Prize may be
related to artifical intelligence, Arpad Fekete does not believe that).
Drawback: even if we invent a great compression technology, it is not
guaranteed at all that someone will use it on optical drives, and "data easily
fills the available space" on other drives, as well as the property of the
rich.
Anyway, this would have been the chosen idea.
2
Creating better audio/video/image file formats/codecs/players
:
Optical (CD/DVD) disks are mostly used for music, video and images. If the
contents of these disks could be compressed significantly better, some CD/DVD
sets would need less disks, reducing the consumption that harms the
environment. If the decompression does not need too much more processing power,
it is probably good to work on things like this, and maybe in the other case as
well. When designing file formats for music/video, it is important to define
first what information should these file formats contain (e.g. pixel images by
a given FPS - frames per second - value is the easiest), and coding this
information in a practical/lossless/compressed manner would be a nice
mathematical task. Drawback: musicians tend to release only a few songs at a
time fit on one CD, and most of the movies fit on one DVD, and even if they do
not, Blu-Ray disks have appeared on the market. (However, similar technology
could help saving the quality of the data written on CD/DVD, by properly placed
redundancy, and more independence between parts of data. Actually, this might
interest people more than compression.)
3
Adding/removing hidden information to/from different file types
:
Sooner or later humankind should realize that people can hide anything in
computer files, including, but not limited to, information about nuclear
weapons, or naked pictures about anyone recorded by a hidden camera in a house
for rent. That's why it is necessary to draw some attention to this issue by
effective demonstration, as well as to provide a free option to remove every
possible hidden information from images and almost any other file (even text
files) that users upload to, or download from the Internet, even at the cost of
the loss of quality or being undeterministic / random. The loss of quality is
necessary, for example, when the pixels of an image contained the information
by an unknown encryption method. Consequently, people shall respect the
original sources of information more. It would probably be a noble thing to
implement the automatic removal of hidden info, which could later be used by
social networking sites like FaceBook. More importantly, this can have some
eco-friendly side-effects like limiting technology, or reducing overpopulation
by urging people wait before begetting children until they have an own house.
Sadly, it's probably good that computer security is low, because it limits the
development of other harmful technology, but as we want more privacy and
financial/legal security, it would still be better to increase computer
security (for which we also have some ideas), and limit the spread of harmful
technology by some other means, e.g. the way described here and by other ideas.
Drawback: even if we create this software, it is not guaranteed that the
majority of websites will use it (or something like it), so people could use it
for malicious reasons, which might do wrong to our fame.
4
Making it possible for two persons to use the same computer simultaneously
:
There may be some computer games in which the players are not active
simultaneously, but are limited to their own turns, but these games in the
example cannot be played at one computer, only in a network, as this function
is not implemented (programmed, realized) in them. A software created for this
purpose (i.e. to implement that feature generally) might make it more
convenient to play with these kinds of games. There may also be computer games
which are played in a network too, but simultaneously in real time. However, by
setting the keys in the right way and splitting the screen into two parts it
would be possible in theory to play them at one computer, if there were a
software which made that possible. For games requiring the whole monitor, the
whole keyboard, or the mouse all the time, it should also be possible to attach
two monitors, two keyboards or two mouses to our one computer, and use them
with this software. This way two persons could use one computer simultaneously,
and in case of games, this may even be attractive. It may also be fun to
browse the Internet together at one computer, or use the methodology of
"Extreme Programming". Drawback: creating this software may be hard, as it
needs to work together with the operating system.
5
Creating an eco-friendly friend finder, community builder portal
:
(Internet-only idea...) As the ethics of humankind is deteoriating and many
people meet in discos, it may be harder and harder for the good people to find
one another and form local communities or relationships. For example, if
someone comes to the faith of Natural Theology or Philosophical Theism, it
could be very difficult to find people in the same faith nearby, if there is no
established community about it yet. The same might be true for other kinds of
spirituality or lifestyle important to some people, like environmentalism
itself. Most of the love finders do not offer to specify, for example, that
someone is still a virgin and searches for a virgin, but for some people, it
may still be important to marry in that way. Other people may be more liberal
but still wanting to observe a law against overpopulation which could be
specified. Other people may only search for a frugal spouse. So there should be
an ideal website for these searching people, without evil conditions in the
legal notices of their websites, and allowing them to assign themselves to some
classes from a wide choice sorted into categories (e.g. mathematicans,
millionaires, existentialists, men, etc), and also specifying the classes which
they search for, and also specifying what is important from these searching
conditions, so the website could show both potential partners or potential
communities. These potential communities would be called virtual communities,
and come into being automatically, with a forum topic, and if enough of their
members wanted it, they could form a real local community, or at least
organize a meeting (note that this website, if implemented by us, would not
support communities too harmful to the environment). Otherwise, some of these
local communities might not be born, and more people would spend time on the
Internet. Drawback: the implementation of this might need significant financial
resources, and its success is not guaranteed.
6
Creating a proper website for local barter
:
(Internet-only idea...) There are already websites which allow successful local
barter, but in fact, these websites were not designed for this purpose. On
websites for local classifieds it is not local barter which dominates, and the
people willing to swap rarely have things which are mutually interesting, and
on a book-swapping website it is impossible to limit the receivers to only
local people, and thus the swapping is probably not economical due to the
postage fees. However, if we joined the advantages of both kind of websites,
then it would be worth capitalizing on this opportunity for much more people.
In order to increase the range of exchange, it would be worth using virtual
credits on the website, and the users could decide how much virtual credits
do they ask for their stuff. These virtual credits could be spent on the
purchase of the things on the site, but the website would deduct some percent
from it for the costs of maintenance and other causes, from which the owners of
the website could equally buy some used things on the site, or even sell them
in a shop. This way this local exchange website would work in a similar way as
the now-popular local money, with the difference that virtual credits should
not be converted to/from real money for marketing reasons. For reusing stuff,
the exchange of used things can have a relatively high environmentalist value.
Drawback: the implementation of this might need significant financial
resources.
7
Increasing communication for efficiency
:
(Internet-only idea...) Computers and the Internet help making the
communication among people more effective, and this communication may make the
protection of the environment more effective. For example, communication may
help people decide what events should happen, and these different events should
happen where the demand is the greatest for them. This way more people can
disengage with the same use of energy, which also means that less energy is
needed for the disengagement of the same number of people. This could be
implemented by a software for voting, and this software would be available both
from mobile devices and on the Internet. For example, people could vote about
what movies they would like to watch in a cinema for old movies, what
performances they would like to watch in a theatre, where should the next
concerts of a band take place, what books should have movie versions, etc.
There are also cases when it is good for the people if other people do not
choose the same opportunities as themselves, for example, if they want to
spend their holidays on a place where there won't be a great multitude of
people, or if they would like to work at a place, and do a job for which there
is not much competition. The duty of the software would be to utilize the
power of communication at the decision making in more and more similar cases.
Drawback: the implementation of this might need significant financial
resources.
8
$-mail, or paid electronic mail to very important people
:
(Internet-only idea...)
There are some very important or famous people who do not publish their email
addresses because they fear they would get too much unwanted messages (SPAM),
but at the same time, they would like to be available on the Internet as a
contact for other very important people. This problem could be solved by
charging the sender for every message, with a fee that would discourage
spammers (or that which is specified by the recipient). In this case, the
service fee is a feature, not a drawback. For increased security, the
implementation of this kind of messaging could be limited to only one website.
Some people already communicate using website messages instead of emails.
Otherwise, it would also be possible to forward the paid message to the secret
email address of the VIP person, and even receive the potential response and
convert it into a format that hides the secret email address. Some famous but
poor recipients might even be able to earn money if they get a share from the
prices of messages sent to them, and/or the messages answered. Now the question
is, how this would protect the environment? It would probably make some
decision-makers more accessible to petitioners (as only those messages matter
which are read), and make large-scale common decisions easier, while common
decisions are probably better for the environment. Drawback: this would make
some other decision-makers less accessible.
9
Coding SMS's and making mobile devices multi-user
:
(Idea for mobile devices only...)
From notebooks to mobile phones many kinds of mobile devices have appeared on
the market. Among these, there may be some that support only one user, but
applications can be downloaded to them. For a device like that, it might be
possible to create an app which simulates the multi-user mode. This can be
useful for the members of poor countries, because a family could afford only
one such device there. This way there may be less mobile devices bought, which
could lessen the pressure on the environment. Ideally, the multi-user mode
would hide the private data of a user from the other users, and it's probable
that this can only be achieved by encrypting the SMS's sent, and decoding the
SMS's received. Thus only those SMS's would be encrypted which are sent from a
device where the application is installed. However, it may be possible to make
the spreading of the app quicker by adding the function of compressing SMS's in
order to make room for more information in an SMS, and the encryption and
compression would be done by one algorithm. (But note that there may already
be patented algorithms for SMS compression.) Drawback: Arpad Fekete is quite
far from developing to mobile devices, which chiefly has material reasons; so
he doesn't even know if this idea can be achieved, and whether it was
implemented by others. Anyway, it is not likely that many members of poor
countries would pay for the software.