There are a few talks I'd really like to give, but don't know the right venue to propose them to. To flesh the thoughts out:
Designing an API is an exercise in user interface design, and a good one can make or break the system it is designed for. Elegant API design is no more an intangible than elegant user interaction design -- there is nothing magical about it, except in how it will make your users feel! Some of the topics include:
The talk will certainly be example heavy, though I already feel bad for the tools used as bad examples :-/ Ah well.
How to best work with open source for critical projects. How to interface with open source communities at the right level, mitigate risk for key projects, and sleep at night when a major feature you require in the next version of a library gets voted down.
Real world examples abound here -- about how it has been done well, and not so well. Let's look at what has happened, and how to learn from it. This applies double if your product is, itself, software!
Silly little abstracts, but they get the ideas across. I should probably just do them up as nicely illustrated blog posts, but sometimes a mic and slides just seem better :-)
writebacks...
Just do it!
Yes, please. "Depending on Open Source", presuming you have some real case studies to show as examples, would be a killer ApacheCon talk, hands down. The Designing Elegant APIs would also be a contender for AC-US next year, depending on how user feedback is (we're still working on seeing how our attendees are really split). Eagerly awaiting your submissions to our next CFP... (Wombats indeed, Mr. Spam Guard!)
Please do give the Designing Elegant APIs talk... even if it is to a local user group. It's somewhat hard to find good information on the topic; more and varied opinions are always good.
on API design
I've always been interested in good API design and collected some good links you will hopefully find useful: http://openide.netbeans.org/tutorial/api-design.html http://www.artima.com/interfacedesign/ http://www.codeproject.com/gen/design/APIUsabilityArticle.asp http://www.artima.com/forums/flat.jsp?forum=106&thread=142428 http://www.cafeconleche.org/slides/javapolis/xom/index.html http://www.orocos.org/documentation/deep-shallow-api.html on API evolution: http://developers.sun.com/learning/javaoneonline/2006/coreplatform/TS-6218.pdf on "measuring" API usability: http://www.gotdotnet.com/team/brada/APIUsability.pdf And the discussion Martin Fowler started about "Humane" vs. "Minimal" interfaces: http://www.martinfowler.com/bliki/HumaneInterface.html I never found a book on the subject... may be it's a good opportunity for writing one. Anybody interested?
API Design
I'd love to see / hear some of these planned talks. I'm especially interested in API design!
comment...