home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #1 / NN_1993_1.iso / spool / comp / graphics / 13479 < prev    next >
Encoding:
Internet Message Format  |  1993-01-06  |  12.5 KB

  1. Path: sparky!uunet!zaphod.mps.ohio-state.edu!cs.utexas.edu!swrinde!network.ucsd.edu!dudley!nadeau
  2. From: nadeau@sdsc.edu (Dave Nadeau,,45062)
  3. Newsgroups: comp.graphics
  4. Subject: SDSC Image Tools source
  5. Date: 6 Jan 1993 23:24:11 GMT
  6. Organization: San Diego Supercomputer Center @UCSD.
  7. Lines: 244
  8. Distribution: world
  9. Message-ID: <1ifpmsINN33k@network.ucsd.edu>
  10. Reply-To: nadeau@sdsc.edu
  11. NNTP-Posting-Host: dudley.sdsc.edu
  12.  
  13.  
  14. In response to the SDSC Image Tools release posting, Alaxander-James Annala
  15. wrote:
  16.  
  17.     >I don't know what experience with other supercomputer centers may
  18.     >be -- however, the gnu people don't have trouble with supporting
  19.     >'modified' copies of their software.  From a user's perspective,
  20.     >these binary only distributions can create problems -- for example
  21.     >ncsa xdataslice from ftp.ncsa.uiuc.edu was available only binary
  22.     >-- it has serious errors which caused it to crash -- when you got
  23.     >down to it the real reason for binary only was the source is real
  24.     >messy -- not particularly professional coding -- and that's a big
  25.     >part of why it bombed.  I've fixed most of the common errors for
  26.     >our environment -- and ported it to the Alliant FX/2800 (28 i860
  27.     >SMP shared memory machine) -- only because a programmer sneaked a
  28.     >source copy to me under the table.
  29.     >
  30.     >The same thing could probably be said about SDSC's proprietary SYNU
  31.     >code -- the imaging/microscopy project was presumably funded with a
  32.     >lot of public dollars -- but the project now claims it has to levy
  33.     >a 'distribution fee' in order to make people report how the system
  34.     >is being used -- and the system was pretty much limited to running
  35.     >on SGI machines (which we don't have available at USC -- we mostly
  36.     >have sun's in the labs, alliants at central sites, and some pc's
  37.     >running various flavors of unix).  I'd like to see SYNU released in
  38.     >source code form so it can be ported to new platforms and/or fixed
  39.     >when errors appear -- and so I can understand what it really does
  40.     >to my data.
  41.     >
  42.     >It's all and good to give away free binary code.  I would be the
  43.     >first person to applaud such generosity.  But, I have a really bad
  44.     >feeling about binary distributions -- I don't believe they are in
  45.     >anyone's best interest -- except perhaps in the interest of a few
  46.     >people who might want to develop products under government money
  47.     >- and then put the finishing touches on with a few private dollars
  48.     >before going to market.  This has already happened to several nice
  49.     >scientific visualization systems -- and it puts them out of reach
  50.     >for graduate students and new faculty who would most likely benefit
  51.     >from their functionality.
  52.  
  53.  
  54. As the developers of the SDSC Image Tools, we would like to respond to
  55. this posting.
  56.  
  57.  
  58.            Source releases and other topics for the
  59.                 SDSC Image Tools
  60.            ----------------------------------------
  61.  
  62.  
  63. 1.  The SDSC Image Tools are provided for free.  We do not charge for their
  64.     distribution or intend in the future to charge for their distribution.
  65.     We also do not intend on selling the source to anybody who will charge
  66.     for their distribution.  The SDSC Image Tools are a non-commercial product
  67.     provided to the network at large because we think people will find them
  68.     useful.  There really are no lines to read between and no ulterior motives.
  69.  
  70. 2.  The SYNU project is a different product, written by different people,
  71.     funded from a different source, and with different aims.  While originally
  72.     developed at SDSC, SYNU is now under the auspices of the University
  73.     of California, San Diego (UCSD).  They have chosen to limit distribution
  74.     of SYNU source and that is their decision to make.  As with any product,
  75.     you are free to purchase the product, or not.  If enough people do not
  76.     purchase it, the product's distribution strategy will be changed.
  77.     Regardless, the UCSD SYNU product has nothing to do with the SDSC Image
  78.     Tools product, other than the fact that we support their image file format.
  79.  
  80. 3.  Coding style judgements of other people's code are opinion at best.  The
  81.     style used by NCSA for their xdataslice may or may not be sloppy.
  82.     However, this has nothing whatsoever to do with the SDSC Image Tools.
  83.     They were developed by different people at different centers at different
  84.     times for different reasons.  Judge us by our words, not those of others.
  85.  
  86.     We are, in fact, quite proud of the SDSC Image Tools.  They have proved
  87.     very easy to maintain, very portable, and very expandable.  We include
  88.     source for the tools and some of the file formats in the distribution.
  89.     You are free to examine this source and evaluate its programming style.
  90.     The style used in the distributed source is identical to that used in the
  91.     rest of the non-distributed source.  Make your own judgements.  We welcome
  92.     your comments.
  93.  
  94. 4.  Supporting a source release is non-trivial.  The following table lists
  95.     a number of release possibilities based upon the type of release (binary
  96.     or source), the type of questions support staff are prepared to answer
  97.     (none, binaries only, released source, or modified source), and the
  98.     domain upon which bugs will be fixed (released source, or user source).
  99.  
  100.                 Image Tools
  101.            Release    Questions    Bugs fixed
  102.         #  Type        Answered for    in
  103.  
  104.         1  Binary    nothing        our source
  105.         2  Binary    binaries    our source
  106.         3  Binary    our source    our source
  107.         4  Binary    mod source    our source
  108.  
  109.         5  Binary    nothing        your source
  110.         6  Binary    binaries    your source
  111.         7  Binary    our source    your source
  112.         8  Binary    mod source    your source
  113.  
  114.         9  Source    nothing        our source
  115.         10 Source    binaries    our source
  116.         11 Source    our source    our source
  117.         12 Source    mod source    our source
  118.  
  119.         13 Source    nothing        your source
  120.         14 Source    binaries    your source
  121.         15 Source    our source    your source
  122.         16 Source    mod source    your source
  123.  
  124.     This is certainly a simplification of the problem and is presented for
  125.     discussion purposes only.  No flames please.
  126.  
  127.     Any support choice that offers a bug fixing service on "your source"
  128.     takes a lot of human resources, disk space, and a wide variety of hardware
  129.     and OS configurations available for the support people.  This is a very
  130.     desirable situation, but one only large software developers can afford.
  131.     We aren't that large.  Additionally, this is free software, so we have no
  132.     income from it to pay support people to answer questions.  This situation
  133.     rules out options 5, 6, 7, 8, 13, 14, 15, and 16.
  134.  
  135.     Any support choice that releases source will inevitably get questions on
  136.     modified released source.  Well-meaning sysadmins and graphics hackers
  137.     will "fix" bugs and add "features".  Our support staff will be faced with
  138.     trying to help a user debug code that is failing not because of our
  139.     source, but because of unseen "fixes" to our source made by somebody else.
  140.     The only way to detect this situation is to upload the user's modified
  141.     release source and do massive diffs to find where things have been "fixed".
  142.     This is pretty non-trivial and requires a large support staff, lots of
  143.     disk space, and lots of hardware and OS configs.  Again, we are not that
  144.     large.  So, options with "our source" in the middle column are effectively
  145.     the same as options with "mod source" in the middle column.  This reduces
  146.     the option set by droping out options 3, 7, 11, and 15.
  147.  
  148.     Options that release source but only answer questions on binaries aren't
  149.     realistic.  Whatever you release, you get questions on.  This rules out
  150.     options 10 and 14.
  151.  
  152.     When doing a binary release, answering questions on modified Image Tools
  153.     source can't happen, so these options are bogus.  This rules out options
  154.     4 and 8.
  155.  
  156.     So, we have the following options left:
  157.  
  158.            Release    Questions    Bugs fixed
  159.         #  Type        Answerd on    on
  160.  
  161.         1  Binary    nothing        our source
  162.         2  Binary    binaries    our source
  163.  
  164.         9  Source    nothing        our source
  165.         12 Source    mod source    our source
  166.  
  167.     Shareware is often released using option 1.  What you see is what you get.
  168.     No questions are answered.  No support is promised.  This is frustraiting
  169.     for users and not a good option for a package the size of the SDSC Image
  170.     Tools.  We have rejected this option.
  171.  
  172.     Similarly, option 9 is uncool, but is the case with most source released
  173.     to the net.  If you see a bug, fix it yourself.  No questions are answered.
  174.     No support is promised.  We have rejected this option as being an
  175.     inappropriate attitude for a national supercomputer center to have.
  176.  
  177.     In a few rare source release cases, the releaser is big enough or the
  178.     source is small enough that option 12 is possible.  The Image Tools,
  179.     however, are over 100,000 lines of C code that are released on a dozen
  180.     architectures.  Option 12 is admitedly very desirable, but just isn't
  181.     practical for us at this time.  We are forced to reject this option as
  182.     well, though this is what many on the net wish us to do.
  183.  
  184.     This only leaves option 2.  We release binaries, plus sample source for the
  185.     tools.  We don't release source for the bulk of the library because we
  186.     simply can't support user's questions.  And we do get user's questions,
  187.     sometimes hundreds a day!  The Image Tools are used in virtually every
  188.     graphics lab in the world (pretty daunting to think about).  We've had
  189.     4,000 site uploads from our anonymous ftp area, and an unknown number of
  190.     additional uploads from major network redistribution centers in the US
  191.     and Europe.  Each of these uploads expands to between 1 and 10,000 users
  192.     (such as large government labs and universities).  Our site alone has
  193.     around 3,000 users.  At the low end we have at least 7,000 SDSC Image Tools
  194.     users around the world.  At the high end it's over a million!  A
  195.     conservative guess is around 50,000.  We have people on staff that just
  196.     answer questions all day!  And that's with a binary release only.  A
  197.     source release would easily quadrupple the number of questions we get and
  198.     significantly increase the amount of time it takes to answer them.
  199.     Increasing our support staff accordingly is simply not practical...
  200.     especially for freeware.
  201.  
  202.     This leaves us with two realistic options:
  203.  
  204.         1.  Release for free and pay for a binary-only release
  205.             question-answering support staff out of our own pockets.
  206.  
  207.         2.  Charge for the release and pay for the support staff
  208.             with the income from the software distribution.
  209.  
  210.     As a free service to the net we have chosen option 1.  We believe that
  211.     this is the most desirable for the user community given our constraints.
  212.  
  213. 5.  One of the most common reasons users site for why they need source
  214.     to the SDSC Image Tools is a desire to add additional image file formats.
  215.     As of the version 2.1 SDSC Image Tools (now available from anonymous ftp),
  216.     source code is provided for the master file format attribute table
  217.     "imfmt.c".  This table is an array of C structs, each one of which
  218.     describes a supported image file format and points to the read and write
  219.     handler routines for that format.  To add another file format to the
  220.     Image Tools, add another struct to the table and write the appropriate
  221.     handler routines.  Compile that source and merge it with the released
  222.     object files for the rest of the library.  Relink the command-line tools,
  223.     and you're done.
  224.  
  225.     To help users get started on writing new read and write handlers, sample
  226.     source for the Compuserve GIF, AVS X, PostScript, and EPS file format
  227.     handlers has been included in the version 2.1 release.  A document on
  228.     how to write handlers is planned, but is not currently available.  Pending
  229.     the release of the handler documentation, please direct questions on
  230.     writing image file format handlers to me at:
  231.  
  232.         Dave Nadeau
  233.         nadeau@sdsc.edu
  234.  
  235.     I'll be happy to explain recommended procedures, tricks, and techniques
  236.     in file format handler authoring.  Additionally, we would be pleased to
  237.     include your file format handlers in future SDSC Image Tools releases,
  238.     with credit to you, of course.  Should you wish to include your code in
  239.     the release, you would have the option of releasing to the net the source,
  240.     or just the binaries for your format handlers.
  241.  
  242.  
  243. The SDSC consultants are prepared to answer questions for free about the
  244. SDSC Image Tools, and other SDSC products and services, during business hours
  245. Monday through Friday.  They may be reached by phone at (619) 534-5100 or
  246. by email to consult@y1.sdsc.edu.
  247.  
  248. Thank you.
  249.  
  250.  
  251. ---
  252. Dave Nadeau                        nadeau@sdsc.edu
  253. Advanced Scientific Visualization Laboratory        (619) 534-5062
  254. San Diego Supercomputer Center
  255. P.O. Box 85608   San Diego, CA   92186-9784
  256.  
  257.