Vol.32 No.3 August 1998
Chapter Activities Wrap-Up
This month’s column features our regular chapters wrap-up and an article by the Mexico City Chapter Newsletter Editor, Gonzalo León. We hope you enjoy it.
NYC ACM SIGGRAPH
The NYC Chapter recently hosted the very first SIGGRAPH traveling course. The idea behind traveling courses is to provide those that might not be able to attend the annual SIGGRAPH conference with the opportunity to take one of the courses as it was presented at the conference. This also gives course organizers the chance to make their presentations (each of which takes countless numbers of hours to produce) several times throughout the course of the year.
This first course featured Dave Nadeau’s “Introduction to VRML 97” from SIGGRAPH 97. All of the attendees gave the presentation rave reviews and many requested more like it in the future. Hopefully, the success of this pilot program will lead to more such traveling courses in the future.
If you would be interested in attending such courses in the future, please send email to the SIGGRAPH Director for Professional Chapters, Scott Lang, at firstname.lastname@example.org. The only way we know if these types of programs would be beneficial for our members is if you let us know that you want them.
Pittsburgh ACM SIGGRAPH
The Pittsburgh Chapter is up and running and gaining momentum. Our events thus far have showcased the diversity of the computer graphics community in the Pittsburgh area. We’ve had excellent technical presentations from Terra Sim, Carnegie Melon University, the University of Pittsburgh, Dartmouth University, the Naval Research Laboratory and K2T (to name just a few). We’ve also had outstanding representation from the art and entertainment community through our Hometown Electronic Theater which included presentations from the Home Run Pictures, the Art Institutes International and numerous private art professionals and students. This combination of art and technology has generated a lot of new ideas and built new relationships by harnessing the enthusiasm computer graphics and SIGGRAPH bring to Pittsburgh. In the coming months, we look forward to bigger and better events. Come join us!
Tampa Bay ACM SIGGRAPH
The Tampa Bay Chapter holds its meetings on the third Friday of each month at the International Academy of Merchandising and Design. Since we are in the process of reforming, our activities have focused on raising awareness about our organization in our local community. With many of our programs now in place, we are once again beginning to solicit guest speakers.
Encouraging aspects of our meeting attendance have been the development of a core group of people, the continued presence of new people at each meeting, and the resurfacing of several members from Tampa Bay’s past.
Our first effort of community focus has been to build ties with the college level institutions in the area. Our meetings at the Academy have built a strong relationship with that institution and we are now looking toward chartering an official student chapter on that campus. As a result of the development that went into this chapter, we are dealing with educators at other institutions to expand their students’ involvement with such chapters.
Involvement with the Academy student chapter has included on campus meetings twice a month, one for guest speakers from local businesses and the other as a working project meeting.
An additional project that started with the Academy students has grown and expanded to a Professional Chapters activity. For a community outreach project, the students wanted to secure used computers for placement in K-12 schools that don’t have them. Internet access for each of these schools was also a goal.
The training they were receiving at the Academy would allow them to assemble decent equipment from whatever donations they received. This project expanded considerably, however, when a contact with Catalina Marketing produced hundreds of CPUs! Locally, we will be receiving approximately 800 386-class computers with 14.4 modems already installed. In addition, Catalina has a similar supply in California. We will be working with SIGGRAPH Professional Chapters in California to place these computers as well.
The exciting part is that these computers are just the beginning of what we hope will be an ongoing project. We look forward to working with other chapters and their communities to ensure that this program is a great success.
Scott Lang is SIGGRAPH Director for Professional Chapters and a Computer Visualization Specialist at the Academy for the Advancement of Science and Technology (AAST) in Hackensack, NJ. He teaches video production at the high school level and also works with students on projects involving computer animation and Web site design.
Colleen Cleary is the Computer Graphics Professional Chapters Editor. She works in sunny Florida at the Orange County Sheriff's Office. Colleen welcomes contributions from chapter members worldwide for possible publication in Computer Graphics.
Washington D.C. ACM SIGGRAPH
D.C. SIGGRAPH, chartered in January of this year, is an eclectic mix of animators, graphic artists, educators and theorists. At bimonthly gatherings, speakers present interactive lectures on topics ranging from the social impact of new media in our midst to the change from a textual and numeric environment to a graphical one.
On March 11, 1998, D.C. SIGGRAPH hosted Gareth Branwyn, as he presented the concept of Sociomedia. Observing that the roots of the Internet were in person-to-person interaction via email and usenet, he predicts a coming wave of resurgent social interaction via the new collaborative tools just coming on-line. Already the one-way “passive” Web-browsing is giving way to Java-based chat rooms, 3D lounges, joint VRML experiences and games. The most popular games are multi-player 3D simulations, and users are generating their own environments to suit their needs. Branwyn focused on the need to develop community on the Net, both geographically-based and not.
The May 13 meeting this year featured Thomas West, author of The Mind’s Eye. West described how after millennia, we are coming back to a visual representation of information and how a large part of our brain is dedicated to handling data this way. People proficient in the arts are perhaps best poised to be at the forefront of new visual media. West also discussed dyslexia, a trait often found in those with high artistic ability. Recent research seems to indicate that dyslexics are not simply less able than average to deal with textual information, but more able than average to deal with it visually, graphically or geometrically. West concluded that while textual and numeric information has value in precision, graphics, particularly three-dimensional graphics, can indicate relationships much more rapidly and to a wider audience.
Each meeting is videotaped, and stored in a RealVideo archive on the chapter’s homepage. You can find their web address at www.siggraph.org/chapters.
During the months between presentation meetings, informal gatherings are held. Members meet to discuss work and hobby projects, and to decide on future presentation topics. Member interaction is kept high by mailing lists, where questions, advice and local news is discussed. Member demo reels are viewable on-line in RealVideo.
How About You?
These are just some of the events that have been going on over the last couple of months. If you live near a Professional Chapter and are not a member, isn’t it about time you found out what you’re missing?
My thanks to the following chapter leaders for contributing to this column: Gonzalo León, Blake Barr, Mary Higgins and Dave Egts.
Mexico City SIGGRAPH Professional Chapter
This article is based on an interview with Federico Mena Quintero, coordinator and part of the development team of The GNU’s Image Manipulation Program (GIMP).
For a review of GIMP, see the Education Column by Rosalee Wolfe on page 29. GIMP is available for download at their website.
Q: How’s the GIMP doing?
A: Very well. Right now we are at version 0.99.19. The big 1.0 release is scheduled for March 31, 1998, so users who are still using the old 0.54 version in fear that the newer versions are unstable will be able to get more than 1.5 years’ worth of development pretty soon.
During the last months, the GIMP maintainers have been fixing a lot of bugs and enhancing functionality that makes the program more convenient to use. The drawables engine (which provides layers and channels) has been rewritten to conform to the Gtk+ object system, leading to less bugs due to the reference counting changes in Gtk+.
The GIMP now has a very nice configuration dialog that lets you set all the options in the program. Users no longer have to modify their gimprc file by hand, and most of the changes to parameters take action immediately, so the program does not need to be restarted.
Major bugs in the plug-ins wire and the procedural database have been fixed, so users can expect stability even with broken plug-ins. The plug-ins source tree has been split into stable and unstable plug-ins. The main distribution comes with the stable plug-ins bundled in. The unstable plug-ins are progressively being debugged and moved back into the main distribution.
Also, most of the bugs regarding X parameter consistency have been fixed. The remaining ones are being flushed out. Users are not likely to get BadMatch errors anymore.
The GIMP was criticized for having a slow start-up time. It is not easy to fix this right away, so a nice splash screen has been added at program start-up. It will tell the user which plug-ins are being queried and what start-up steps are being performed.
It is worth noting that we now have an almost complete user manual. It was very nicely done by a Swedish couple. See their website.
Q: How did you became involved in that project?
A: I had just started the first semester at the university, and I had gotten involved with Linux. Even before that, I had enjoyed programming graphics applications on my old PC. I had written some stand-alone programs that took an image and distorted it in different ways. You could say that these programs were similar to the NetPBM utilities; they were simple command-line programs with only a few options. They produced nice effects, but they were not suitable for interactive work — I used to run Photostyler SE on my machine (yes, the one that came with the old SoundBlaster cards, because I could not afford Photoshop!), and sometimes I would modify an image for awhile, save it, distort it using my clunky utilities and load it back for further modification. It was not a nice way to work.
When I started using Linux, I made some small changes to my utilities to make them work. I must say that I was impressed at how much faster they ran than they did in old DOS — having a system with good memory management meant that I could simply load the whole image to memory, distort it there and save it back to disk. I did not have to fiddle with quirky memory management anymore.
I noticed that there did not exist a good, free (open source) image manipulation program like Photoshop or Photostyler, so I decided to write my own. I was making some grandiose plans for writing a very flexible program. I made a big mistake; I was over-designing things without having written some code first. I started writing the image buffer management code, and I made a second mistake: I started optimizing it from the start.
Fortunately, that did not last long. One day I was browsing through the newsgroup comp.os.linux.announce, and I picked up the announcement for the GIMP 0.54. I thought that it was interesting, so I decided to give it a try. I downloaded a Solaris version (to run it on the school’s servers) and a Linux version, to run it at home.
I was delighted; even though the GIMP did not have all the features I intended to have in my own program, it was a usable thing, and it had already been written. I decided to file away the little code I had written and to work on the GIMP.
The GIMP taught me a very important thing. It was the first time I would be reading another person’s source code, so I learned to understand the way other people think about implementing a solution to a problem. It was not as hard as I thought it would be. Luckily, the GIMP’s source code was very clean and easy to understand, so I also learned some good programming techniques.
Of course, the first thing I wanted to do was to turn my old utilities into plug-ins for the GIMP. I took the source code from one of the existing plug-ins, removed the algorithms it used and put in my own code. The first plug-in that I wrote this way was the Whirl plug-in. It was pretty cool to have it working in an afternoon. I made sure it worked reasonably well, and I posted its source code to the original GIMP mailing list.
Then a wonderful thing happened. Spencer and Peter, the original authors, replied by saying that my plug-in kicked butt. I really appreciated this! It felt so good to be praised for my work, and I was really motivated to keep working on the GIMP. On that reply, they also suggested that it could be easy to modify the Whirl plug-in to make a distortion similar to Photoshop’s Pinch plug-in.
A few days later I rewrote the Whirl algorithm to make it reversible, and I uploaded the new version. I started looking into the distortion algorithms necessary for the Pinch plug-in, and I had it working after a couple of days.
After that point in time, I cannot remember all the details. A lot of people started writing plug-ins for the GIMP. I was delighted to see that people were actually using my plug-ins’ source code as a base for their own work. That made me make my code as clean as possible, and it pointed me to a few bugs as well. I tried to help developers on the GIMP mailing list as much as possible when they were writing their plug-ins.
I made a lot of good friends among the plug-in writers. Some of them are Adam Moss, Stephen Norris, Torsten Martinsen and Tom Bech. Some of them live on the other side of the world, so it was fun to go to sleep and receive bug fixes from them the next morning. We were using pieces of code from each other’s plug-ins, so we were making very quick progress.
I wrote a couple of tutorials on installing and debugging plug-ins, and I received a good response from the user community. I also started to maintain a Web page of my own plug-ins and of all the links I had to other GIMP sites. To this day, it seems to hold as the canonical source for GIMP links.
Apart from improving on a program that was already very good, the GIMP taught me to appreciate the value of free (open source) software. I learned to work in a team of programmers. Not to mention, I was having an awful lot of fun.
Q: Do you think that working the way the GIMP team has worked is the best way for developing applications in Mexico or in Latin America?
A: Oh, definitely. I think developers everywhere can learn a lot from open source software. You learn a lot, and I really mean a lot, when you work on a project with other people.
Regarding Mexico and other Latin American countries, I think this is also a very good way for programmers to become known worldwide. The Internet is a wonderful medium for distributing and developing software. I know other programmers in Mexico that have worked on the GIMP and other open source software projects, and they have been very successful too.
Q: What can you tell me about the people involved in computer graphics in Mexico? How do you perceive their opportunities versus other computer graphics professionals in other countries?
A: I think programmers in Mexico can organize themselves so that they have equal opportunities to graphics programmers in other countries. Open source software showed me precisely that. I really never expected my plug-ins and my other code to be used and thought of as good by people all over the world. What more can you ask for?
I had been aware of people in Mexico who worked on computer graphics projects. They were working individually or in very closed teams. As such, they made slow progress and if the projects were ever finished, they never became known in other places apart from their local community. I am talking about some people I know in the visualization lab here in my university. I think they are doing good work, but they could do a lot better if their software and research were released as open source software for the world to see and use.
Q: What is in the future of the computer graphics for the people in Mexico or Latin America?
A: Hehe, I would like to quote Richard Stallman on this: “I am sorry, my crystal ball is foggy today.” I don’t know about all the computer graphics projects that people in Latin America are working on. I do imagine that there must be some pretty interesting stuff out there. Computer graphics is an exciting field, and I think there must be people in Latin America who have very good ideas and are eager to implement them.
The important thing here is that these projects run the risk of being worthless if the world does not come to know them. I think people who are working on computer graphics projects in Latin America should seriously consider using the Internet and open source software to make their work useful to everyone on the planet. I think the GIMP has proven that this is possible, and actually not hard to do. It just takes good will and dedication.
Mexico City SIGGRAPH Professional Chapter
The copyright of articles and images printed remains with the author unless otherwise indicated.
Q: What is in the future for the GIMP?
A: I think version 1.0 will be very important. Most Linux distributions are already including the final development versions among their software packages, so a lot of people will get to know the GIMP very soon. Of course this will lead to more suggestions and enhancements from the user community, and this is a good thing.
There is an interesting “TODO” list for the GIMP. Of course we intend to implement all the features that would make it surpass Photoshop in all respects — color calibration and correction, separations and sophisticated printing, Bèzier paths, etc.
But that is making promises for the future, and I would rather talk about the features that are being implemented now but are scheduled for after version 1.0.
Silicon Grail, a Hollywood-based company that develops software for film image editing, is working on adding support for 16-bit and floating point channels to the GIMP. They have a very nice design for it, and they are actively working on the GIMP’s distributed CVS repository. The idea is that the GIMP can work together with their existing Chalice software for film image manipulation, compositing and retouching.
Several people among the GIMP developers are working on algorithms for “natural” paint and brushes. Fractal Design has some ugly patents on the algorithms they use in their own software. Fortunately, the GIMP developers have invented different algorithms that can lead to better-quality results. Also, work is being done on supporting all the features provided by pressure-sensitive tablets. I am very excited about these changes; this means that the GIMP will be useful to freehand artists as well as photo compositors and retouchers.
Some developers and I are thinking about ways to optimize the image buffer handling inside the GIMP. I must say that right now it is not very efficient. We are working on better caching and ordering algorithms for the tiled buffers engine.
The GIMP is part of the Gnome project (Website). Although it is not a Gnome-compliant application yet, it will be modified to be so. This means that the GIMP will work as an individual software component that can be embedded in other applications such as word processors and desktop publishing programs. This plug-ability works both ways, and there are some very interesting potential applications. For example, I imagine being able to plug together a 3D modeling program and the GIMP, and thus being able to edit the textures for the 3D objects within both programs.
I think the future for the GIMP is very bright. I hope that people who are used to proprietary image manipulation software will think of the GIMP as a better option.