I am Co-Founder and CTO of ToyTalk Inc. and was Founder and CEO of
Code Reddy Inc. I have worked as a lead software engineer and
architect at companies such as Pixar, Linden Lab, and SRI
International. I hold a Ph.D. in Computer Science, am the author of
over 40 published articles, half a dozen patents, and I have written 2 books on
computer science topics.
Career
ToyTalk Inc.
I am Co-Founder and CTO of
ToyTalk Inc. We make mobile software for the family entertainment
sector. I'm responsible for the company's technical vision and
engineering effort.
I am the Founder and CEO of
the technology consultancy Code Reddy Inc. Through this position I
provide software design and development services for various
technology clients, including Linden Lab, Weidlinger
Associates, and Planet 9 Studios. My work for Linden Lab involved
improvements to the Second Life client, an online 3D virtual world
used by over 20 million people worldwide.
I was an Engineering
Manager at The Bakery, a startup animation studio in the south of
France. In this role I had responsibility for architecting and
designing the studio's 3D animation software, as well as managing the
team of engineers tasked with implementing the software.
I was a Lead
Engineer in Pixar's R&D department for 6 years. In this role I
was responsible for managing a team of engineers designing and
implementing Pixar's in-house film-making software system,
Marionette. My work was used on the films: Finding Nemo, Cars,
The Incredibles, Ratatouille, and WALL-E. My head
was also used as a model for Mr. Incredible.
I worked at SRI
International for 5 years as a Research Engineer. My primary project
was a distributed 3D terrain visualization system called
TerraVision. This effort also involved international standards-based
work as chair of the GeoVRML working group (I was the author of all
the geospatial nodes in the VRML and X3D ISO standards), and work on
a scheme to index all geospatial information on the Internet, referred
to as the GeoWeb.
I wrote a
book called API Design for C++, published by Elsevier/Morgan
Kaufmann in 2011. This book focuses on how to design robust and
elegant Application Programming Interfaces (APIs) with a focus on the
C++ language. The accompanying web site provides source code examples
and a blog with articles on good API design.
I
co-authored the book Level of Detail for 3D Graphics, published
by Morgan Kaufmann in 2001. The book covers the topic of creating and
managing multiresolution models for real-time 3D graphics
applications. The accompanying web site provides links to related LOD
resources on the Web.
I gained my Ph.D. from the University of Edinburgh in 1997. My
research involved applying models of visual perception to real-time 3D
graphics systems. The goal of this work was to remove imperceptible
details in order to improve the frame rate of graphics systems.
I have published a large
number of peer-reviewed journal articles and conference papers,
including articles in IEEE Computer Graphics and Applications
and courses at the annual SIGGRAPH conference. I have also
given various invited talks, such as the Keynote Address at the
Web3D conference. My first publication was in Your
Commodore magazine when I was 16 years old.
I have written several patent applications
while at SRI International, Pixar, and ToyTalk. The following provides links
to some of these publicly-available patents.
I have written several
applications for the iPhone and iPad that are available on the Apple App Store.
These range from a fast-action pinball game, to a world
geography quiz program, to an app that prepares you for technical
interviews as a software engineer.
API Diff is a desktop
application I wrote to view differences between source code files. It has
extensible support for different file types and includes a C++ parser
for detecting semantic differences between C++ header files (as
opposed to just plain text differences). The base API Diff program is available
for free, with more powerful versions available for a small cost.
I created the social dieting web
site Fridge Graph as a way to track your weight loss progress over
time, set up diet targets, and find friends with the same goals. You
can even set up weight loss challenges with friends to make losing
weight more fun.
During my Ph.D. at the
University of Edinburgh I had access to a Silicon Graphics
RealityEngine2 graphics workstation. As a
way to learn how to use this computer, and learn more about real-time
3D graphics and C++ programming, I wrote a 3D version of the popular
minesweeper game.
My first computers were a
Commodore VIC-20, 64, and Amiga. During my undergraduate days at the
University of Strathclyde I built several programs that I sold as
shareware. The most prominent and well-received of these was the
EdWord text editor, which offered powerful programming features such
as text folding, syntax highlighting, and macro recording in 1989.
My feature film credits
include Finding Nemo, Cars, The Incredibles,
Ratatouille, and WALL-E. In addition, I've worked on
technology that was used in many of Pixar's short films. You can
view my entire filmography on the IMDB web site.
You can find out more
about my professional experience on my LinkedIn page. This includes
more detail on my technical skill sets and recommendations from
several colleagues I've worked with in the past.