From: Carl Worth Date: Wed, 12 Mar 2008 11:29:07 +0000 (+0100) Subject: Add talks page X-Git-Url: https://git.cworth.org/git?a=commitdiff_plain;ds=inline;h=a2f5f7a49b05418a611ff90838b113d254b7bad0;p=cworth.org Add talks page --- diff --git a/src/talks.mdwn b/src/talks.mdwn new file mode 100644 index 0000000..8983fe1 --- /dev/null +++ b/src/talks.mdwn @@ -0,0 +1,103 @@ +[[meta title="Talks presented by Carl Worth"]] + +# [Designing a Library that's Easy to Use](/~cworth/papers/guadec_2006) + +This is something of a case study on the design of the cairo graphics +library API with some hint on things to keep in mind or to avoid while +doing API design. Presented at GUADEC 2006 in Vilanova i la Geltru, +Spain. + +# [An Insider's Guide to cairo](/~cworth/cairo_ddc2005) + +I present details of the internals of the cairo graphics library. The +algorithms and components presented include: + + * Stroking a cubic Bézier spline with a circular pen, + (Minkowski sums and the convolution of polygonal tracings). + + * Robust, (and efficient) tessellation in the face of + limited-precision arithmetic. + + * Careful rasterization algorithms suitable for incremental + rendering with no seams, (describing our failed + coverage-calculating approach as well as our new point-sampling + approach). + + * Compositing (why pre-multiplied alpha is the one true way). + +Presented at the Desktop +Developers' Conference on 2005-07-19. + +# [Cairo: Making Graphics Easy to Print](/~cworth/papers/cairo_lca2005) + +Free software operating systems have often been accused of having +pessimal printing support. Recent infrastructure improvements have +largely solved the plumbing problem. But adding print support to +applications is still painful. Generally, rendering code must be +duplicated which often leads to inconsistencies between display and +print output. + +The cairo graphics library is designed to provide high-quality print +output with the same API used for rendering to a display. The initial +approach toward implementing printing support was to prioritize output +fidelity over memory or bandwidth requirements yielding an +implementation that achieves consistent print quality through reuse of +image-based rendering code. Or we were just lazy and it was easy that +way. Either way, it was a pig. + +This paper will discuss recent progress in cairo's printing backends +as they develop into first-class citizens. Generating efficient, +high-quality print output is complicated because PostScript has an +imaging model fundamentally more limited than that of cairo. This and +other challenges will be presented along with our solutions. + +Presented at linux.conf.au +2005 on 2005-04-22. + +[On-demand Linux for Power-aware Embedded Sensors](/~cworth/papers/pasta_ols2004) + +We introduce a distributed sensor architecture which enables +high-performance 32-bit Linux capabilities to be embedded in a sensor +which operates at the average power overhead of a small +microcontroller. Adapting Linux to this architecture places increased +emphasis on the performance of the Linux power-up/shutdown and +suspend/resume cycles. + +Our reference hardware implementation is described in detail. An +acoustic beamforming application demonstrates a 4X power improvement +over a centralized architecture. + +Presented at the 2004 +Ottawa Linux Symposium in July, 2004. + +[Cairo: Cross-device Rendering for Vector Graphics](/~cworth/papers/xr_ols2003) + +Cairo provides a vector-based rendering API with output support for +the X Window System and local image buffers. Cairo provides a +stateful user-level API with support for the PDF 1.4 imaging +model. Cairo provides operations including stroking and filling +Bézier cubic splines, transforming and compositing translucent +images, and antialiased text rendering.

Cairo, (formerly +known as Xr), is available from http://cairographics.org + +Presented at the 2003 +Ottawa Linux Symposium in July, 2003. + +[xstroke: Full-screen Gesture Recognition for X](/~cworth/papers/xstroke) + +Some of the challenges in developing a gesture recognition program +with a full-screen user-interface. xstroke has been incorporated into +the handhelds.org distribution. + +Presented at the 2003 +Usenix Annual Technical Conference in San Antonio, Texas, June +2003. + +[Synthesizing RTL Hardware from Java Byte Codes](/~cworth/papers/java_synthesis) + +This paper came out of the work I did on my Master's thesis at BYU's Configurable Computing +Laboratory. The implementation adds experimental support for +synthesis to JHDL.