Status and Initial Thoughts on an Open Source IPP Client
Why an Open Source IPP Client?
1) Microsoft isn't delivering the goods.
Although Microsoft has provided IPP/1.0 clients for Win95/98 and
Win2000 (but none for NT4.0) those clients are very limited in
functionality, basically limited to the mandated minimum subset plus the
"Microsoft operations".
Microsoft has not responded positively to suggestions to update
their clients to IPP/1.1, or extend their functionality to cover optional
features in IPP/1.0 and 1.1.
2) Apple has delayed their introduction of IPP and Sun hasn't come
through either.
3) The Linux community, in particular Corel, has expressed interest to
include support for IPP in Linux., but has asked for some help to make that
happen.
4) This leaves printer vendors with either building their own separate,
and possibly not fully coherent, clients. A couple of vendors are already
entering that path.
5) The idea to jointly build an Open Source Client has been hovering in
the air for a while, as printer vendors generally don't expect to make money
on clients and would like to avoid each building their own clients. After a
brief discussion of the subject in the April meeting of the PWG in Tokyo, it
was decided to make a slot for further discussion of the subject in the May
PWG meeting in New York.
Who has expressed interest in the subject so far?
1) It seems obvious that Xerox should be interested after having made
their IPP/1.0 Prototype Client available to other developers on their web
site. The source code, written in Java, could potentially be made available
to an Open Source project.
2) Peerless Communications. They already have some Unix/Linux and
Windows clients developed.. Paul Moore, who developed the Microsoft IPP
version now works for Peerless and is prepared to contribute to an Open
Source project.
3) ShineSoft. The software mentioned for Peerless Communications was
originally developed by Per Michalek at ShineSoft. Peter Michalek has
expressed interest to participate in an Open Source project.
4) Corel is trying to become the foremost vendor of Linux workstation
software with office suites and approached the PWG last year to find
potential partners in helping them developing an IPP solution for Linux
workstations. Recent discussions with them has confirmed that they are still
eager to provide IPP in their Linux package and have already allocated
resources to work on the subject. They would be very pleased to see an Open
Source project coming along.
5) Easy Software, which already provides an Open Source IPP Server
implementation for Unix, also has a primitive IPP client with a Unix line
interface. They are interested to participate in a wider Open Source project
for IPP clients.
6) SEH, a German software house specializing in printing software has
expressed interest to participate.
7) IBM, which already offers IPP clients for the OS390 IPP Server, has
showed some interest, but are not yet committing to participate.
8) Novell has showed some interest, but are not yet committing to
participate. They will soon release their own IPP client as a browser
plug-in.
9) More companies are likely to want to join the project once it is
started.
How do you architect an Open Source Client?
1) There are two major platforms to consider, Windows and Unix/Linux
(assuming that Apple will be able to either do their own or join the Open
Source project). We will probably need two major versions to account for
the very different printing models in Unix vs. Windows.
2) There is also a question about which programming language you should
go with. C will probably offer the bigger common denominator as it might
also easier fit smaller devices, but Java is an alternative. Again we might
need to consider two versions.
3) Other components that should be considered for inclusion in a client
are: directory access to find printers, automatic print driver download or
download of the Universal Print Driver Format file, local user print
preferences, local address book for frequently used printers, etc.
4) We might need to have different versions for IPP clients used in
applications, as browser plug-in or as separate printing application. We
need to architect these different variants so we can reuse as much a
possible of common components.
What tools are available to support an Open Source project?
1. Corel and Easy Software who both have experience of Open Source
projects have suggested using the facilities offer for free by
SourceForge.org. They offer service for storing source codes and for
check-in, check-out of code, and optionally also DL and web page services.
2. The Linux community and other open source organizations, such as
Netscape's Mozilla project already have a couple of standard licensing
contracts that we could use.
Next steps
1. Agree on the main objective, which is to put a full featured IPP
client on everybody's desktop.
2. Agree whether the PWG wants to become the focal point for the
project, or else find another "sponsor".
3. Select a small steering group to direct the development work.
4. Agree on overall architecture and modularization of the IPP Client
software.
5. Select a contract model and hosting organization for the source
code.
6. Set up DL and web page.
7. Get software released from the participating companies, and make it
publicly available.
8. Develop priorities and milestones and get going.
---------
Compiled by Carl-Uno Manros, XAC, May 3, 2000
Carl-Uno Manros
Principal Engineer - Xerox Architecture Center - Xerox Corporation
701 S. Aviation Blvd., El Segundo, CA, M/S: ESAE-231
Phone +1-310-333 8273, Fax +1-310-333 5514
Email: manros@cp10.es.xerox.com
This archive was generated by hypermail 2b29 : Wed May 03 2000 - 20:36:00 EDT