]> git.cworth.org Git - cworth.org/commitdiff
Add talks page
authorCarl Worth <cworth@cworth.org>
Wed, 12 Mar 2008 11:29:07 +0000 (12:29 +0100)
committerCarl Worth <cworth@cworth.org>
Wed, 12 Mar 2008 11:29:07 +0000 (12:29 +0100)
src/talks.mdwn [new file with mode: 0644]

diff --git a/src/talks.mdwn b/src/talks.mdwn
new file mode 100644 (file)
index 0000000..8983fe1
--- /dev/null
@@ -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 <a href="http://www.desktopcon.org/2005/">Desktop
+Developers' Conference</a> 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 <a href="http://lca2005.linux.org.au/">linux.conf.au
+2005</a> 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 <a href="http://www.linuxsymposium.org/2004">2004
+Ottawa Linux Symposium</a> 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&#233;zier cubic splines, transforming and compositing translucent
+images, and antialiased text rendering.  </p> <p> Cairo, (formerly
+known as Xr), is available from <a
+href="http://cairographics.org">http://cairographics.org</a>
+
+Presented at the <a href="http://www.linuxsymposium.org/2003">2003
+Ottawa Linux Symposium</a> 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 <a href="http://www.handhelds.org">handhelds.org</a> distribution.
+
+Presented at the <a href="http://www.usenix.org/events/usenix03/">2003
+Usenix Annual Technical Conference</a> 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 <a
+href="http://www.byu.edu">BYU</a>'s <a
+href="http://splish.ee.byu.edu">Configurable Computing
+Laboratory</a>. The implementation adds experimental support for
+synthesis to <a href="http://www.jhdl.org">JHDL</a>.