I work at Fastly as a software engineer,
focusing on features, concurrency, and performance. I'm not currently looking
for new career opportunities, but you may be interested in my
I tend to work on a bunch of projects at a time. Some of them get finished,
some of them stagnate. In any case, here is a list of some of the more recent
and active undertakings in alphabetical order:
I love ASCII art and markdown. When I'm working on technical docs, it
just makes sense to combine the two. Some people don't share that
sentiment. Markdown handles the text aspect, but nothing really exists
that (in my mind) adequately solves the other portion. Enter
- Blow: The PHP Web Framework That Doesn't Suck
I've become tired over the years of all-encompassing web frameworks that
contain APIs for everything under the sun. I just want something that has
minimal functionality for routing and that's it.
Blow is my answer to that, named
so because it doesn't suck.
- Concurrency Kit
I'm a contributor to Concurrency
Kit, a nifty framework for providing concurrency primitives and
lock free datastructures. I (help) make it work on FreeBSD, ported it
to 32-bit x86 architectures, and other fun stuff.
I ported the Go language's
reference toolchain and runtime to FreeBSD on both amd64 and i386
architectures. I (sometimes) maintain the machines that run the FreeBSD build
tests, and do infrequent FreeBSD-related maintenance. From time to time, I
use the language when it solves a problem rather well.
- Online DKIM Validator
I wrote a simple form / file-based DKIM
validator. Someone needed one and it seemed like a decent idea. If
anyone wants additional validations (SPF, DomainKeys, etc.) let me know.
- Plan 9
These days, my participation is on a "more talk less code" basis
(much to the community's chagrin), but served as project administrator
for the project at Google Summer of Code from 2009-2011. In 2010, I
also mentored a student working on 9vx.
I spent just about as much time attempting to figure out what it is
I want to watch on Netflix as I do actually watching it. There are
simply too many choices. Enter Randaflick,
a simple, silly app that tells you what you should watch, based on
the recommendations that Netflix keeps for you.
I sometimes muse on a currently defunct blog on matters of politics,
work, life, technical nature, and other generally mundane items. I
tend to spend a lot more time posting about interests, social action
items, funny things, and the like on Facebook.
I listen to a healthy amount of music, though some might argue that the
music I listen to isn't particularly healthy. So it goes. If you care what
I listen to for whatever reason, you can view my
I'm also a bit of an audiophile with a penchant for good headphones. I'm
still working on saving for a nice Stax rig, but you can get a good idea
of what I'm listening through on my
Head-Fi profile page.
On occasion I play music, too. I'm not great by any stretch, but I play drums
and guitar. My music kit includes:
- Roland TD-4SX drum kit,
- ESP Ltd EC-1000FR electric guitar,
- Schecter Damien-6 electric guitar,
- Line 6 POD HD500 multi-effects pedal,
- and some other stuff.
I play kickball in Baltimore with the best (from a coolness standpoint) team
ever, Spaghetti and Kickballs. We're working on getting a website up and all
Since I'm in Baltimore, it follows that I'm a Raven's fan. (Really, just
because I haven't lived anywhere else with a team to get behind.) I like
the Pittsburgh Penguins for hockey, the Atlanta Braves for baseball, and
I don't give a damn about basketball. Go Orange for soccer.
Travel is a constant ambition: I've been to 9 countries and I have 187 more to
visit. I lived in Holland for three and a half years and recently made a trip
I graduated high school and went directly to work, so I don't have a formal
education. However, I do feel that education is extremely important throughout
life, and I continue to learn about topics that interest me -- an admittedly
wide range including history, social psychology, cultural anthropology, politics,
religion, music, neuropsychology, and more. In addition to this, I'm also
passionate about educating others about topics in which I specialize.
I've always found one-on-one education to be the most helpful for me, and in
line with my passion for education, I occasionally tutor people on subjects
dealing with software engineering and computer science.
Lectures / Presentations
I enjoy giving lectures and presentations. I've spoken at many different groups
and venues. Recent contributions include a presentation to the
Baltimore PHP User Group on software
engineering, and lectures at Johns
Hopkins. If you are interested in me presenting any of this information to
you, shoot me an email. Slide decks for talks I've given:
Java performance tuning: Many people
complain about Java being horrendously slow, and when I ran into this issue, I
found out why: it's much easier to write slow Java code than fast Java code.
Spinlocks (PDF) are utilized in concurrent / threaded
systems to protect data and enforce critical sections. This talk was given at
JHU with Samy Al Bahra and covers theoretical
information about and practical implementation of spinlocks.
Software Engineering Best
Practices is an ongoing series of talks that I have given at the Baltimore
PHP User Group. This talk focuses on best practices in development, and although
focused on PHP, is applicable to software development in most languages.
API Design is a topic few teach, and the
second talk in my best practices series. Designing and implementing APIs is not
hard, and yet seems to be something many people struggle with. Again, this talk
is focused around PHP, but the underlying themes apply to almost any language
as well as to web service APIs (using e.g. REST or SOAP interfaces).
Plan Nizzle is the Shizzle (PDF) is a talk I gave to the
Capitol Area BSD User Group on Plan 9. It is
an overview of the OS, highlighting many features and strengths for users and
Writing tends to be a hobby; these days it's mostly random tidbits published in
my blog. However, I coauthored
and have contributed articles to the now defunct International PHP Magazine. I've also
recently started a blog to review new metal music each Tuesday as released by
Rdio. That blog is called
#NewMetalTuesday, and I think
it's a pretty awesome project. (I haven't had a ton of time for it recently; work has
been incredibly busy; sorry.)
Reading keeps me sharp. I'm currently working on:
If you want to email me; devon dot odell at gmail.
Because I care.