About
Engineering leader at Netflix working at the leading edge of Gen AI and Developer…
Experience & Education
View Gregory’s full experience
See their title, tenure and more.
or
Publications
-
Fine Scale Environmental sensor networks for water quality monitoring
Proceedings of the 2006 Joint Assembly of the American Geophysical Union. Baltimore, Maryland
Application of fine-scale environmental sensor networks for water quality provides data at the level necessary for analysis of cause and effect relationships between land use change and water quality. This study was conducted to develop technologies to allow intelligent data collection of soil moisture and water quality data at multiple locations throughout a stream network. Small networked computers were interfaced with a variety of sensors and data collection rates were intelligently varied…
Application of fine-scale environmental sensor networks for water quality provides data at the level necessary for analysis of cause and effect relationships between land use change and water quality. This study was conducted to develop technologies to allow intelligent data collection of soil moisture and water quality data at multiple locations throughout a stream network. Small networked computers were interfaced with a variety of sensors and data collection rates were intelligently varied by the computers based on environmental conditions.
Other authors
Projects
-
Drone CI
-
Drone is a CI system built on Docker. Its defining feature is its Docker container-based plugin system, which is the first of its kind. Consequently, it's possible to extend Drone in whatever language you'd like.
My contributions include the official Python API, assorted fixes and improvements to Drone server itself, and a lot of documentation.
-
python-colormath
-
python-colormath is a module that handles the complex math behind colorspace conversions, color comparisons and color adaptations. This was developed while I was a Graphic Communications student at Clemson University. It is now used in both commercial and open source products.
-
EVE Market Data Relay
-
A high volume, ultra-high-resiliency distributed system for relaying player-uploaded EVE Online market data. A large number of EVE Online player-developed market sites use EMDR. Key technologies include Go, Python, gevent, Amazon Route53, and most importantly ZeroMQ.
-
boto
-
Extensive contributions to boto documentation. A good deal of cleanup, bug fixing, and expansion on the EC2, SES, and DynamoDB modules. I was very active on the mailing list and IRC channel before Mitch Garnaat moved on and control passed over to Amazon.
-
battlesnake
-
This is an experimental retro-fitting of an old text-based multiplayer game. The idea is to have a Python bot telnet into the game and listen for certain strings coming from the codebase's in-game scripting language. In this way, we avoid the need to use said ancient in-game scripting language for anything but gluing our bot and the game together.
We then end up writing our game's economy, player management, and everyday commands in Python instead of an antiquated, limited in-game…
This is an experimental retro-fitting of an old text-based multiplayer game. The idea is to have a Python bot telnet into the game and listen for certain strings coming from the codebase's in-game scripting language. In this way, we avoid the need to use said ancient in-game scripting language for anything but gluing our bot and the game together.
We then end up writing our game's economy, player management, and everyday commands in Python instead of an antiquated, limited in-game scripting language.
-
python-route53
-
A few years ago, boto's route53 API was very user-unfriendly, so python-route53 was born to provide a more simple, pythonic API for the service. It may or may not be necessary anymore, but still works.
-
paypal-python
-
We needed to integrate with PayPal more closely at Pathwright, but there weren't many quality PayPal for Python libraries at the time. We found a promising but inactive project, and I started contributing to it. Eventually, the original maintainer (Pat Collins) set us as the authoritative github repo for the project, and I took over maintainership.
We only cover the old NVP API, but that's going to be around until their new REST API is available in more than a handful of countries (as it…
We needed to integrate with PayPal more closely at Pathwright, but there weren't many quality PayPal for Python libraries at the time. We found a promising but inactive project, and I started contributing to it. Eventually, the original maintainer (Pat Collins) set us as the authoritative github repo for the project, and I took over maintainership.
We only cover the old NVP API, but that's going to be around until their new REST API is available in more than a handful of countries (as it was at the time of this description's writing).
-
python-fedex
-
A *very* thin wrapper around FedEx's SOAP API. Mostly just deals with some of the unpleasantries with suds+SOAP, so you can interact with the SOAP objects instead of figuring out the right concoction yourself.
-
python-bluefin
-
Wrote a Python HTTP client for the Bluefin payment system (https://www.bluefin.com/). The HTTP APIs exposed by Bluefin were very poor, as was the documentation, so this was particularly challenging to piece together.
While not widely used at all, this module runs hundreds of thousands of dollars worth of transactions each year in a production setting.
-
media-nommer
-
While no longer actively maintained, media-nommer is/was a highly distributed ffmpeg-based encoding system. It features automatic scaling of encoding worker VMs, and is interacted with through a simple HTTP API.
AWS Elastic Transcoder came along and made media-nommer unnecessary, but media-nommer served us at Pathwright for around two and a half years. It's not a polished product, but it is reasonably well-documented and it supported our usage case very well.
-
sea-cucumber
-
Based on hmarr's django-ses, this is a Django email backend that defers mail sending to a celery task in the background. This is done transparently, making this a drop-in solution. As with any AWS service, response times and availability can be unpredictable. We wanted to make sure all emails being sent wouldn't hang up our app servers due to said variations in responsiveness and availability in SES.
-
Evennia
-
Evennia started as an experimental attempt to combine Twisted and Django to form a text-based MUD. I was newer to Twisted and Django at the time, and wanted to sharpen my skills in both. My love for MUDs make this an easy decision.
In 2006, I got the first prototype working, loosely modeled on TinyMUX, sans softcode. I worked on the project in spurts while I was a student at Clemson, ultimately handing the project over to Griatch, the current maintainer, in 2011. I currently serve more…
Evennia started as an experimental attempt to combine Twisted and Django to form a text-based MUD. I was newer to Twisted and Django at the time, and wanted to sharpen my skills in both. My love for MUDs make this an easy decision.
In 2006, I got the first prototype working, loosely modeled on TinyMUX, sans softcode. I worked on the project in spurts while I was a student at Clemson, ultimately handing the project over to Griatch, the current maintainer, in 2011. I currently serve more of an advisory role, but am still involved in the community.
Today, Evennia is the most popular Python MUD codebase, and is the de-facto choice if you want to use Python but don't want to write your own. The current maintainer deserves as much (or more) credit for the project's success, but this was an important step in my growth as a developer.
-
CAT Scanner
-
A C++/wxWidgets desktop application that made use of the i1 Pro Spectrophotometer to quality check color-accurate proofs. This fed into GOLD, our Django-based workflow management system. I learned a ton about color math during this project. Spectral data, Delta E, and CIELab in particular.
If the proof failed color checks, the user was assailed with an angry cat hissing sound clip. Needless to say, nobody wanted to make CAT Scanner angry...
-
Color Sentry
-
Color Sentry is a color accuracy monitoring system for printing presses. Using the i1 Pro spectrophotometer, I wrote a C++ GUI client with wxWidgets that would take readings from the device and send them to a Django-backed web application. The color data was compared to some pre-defined standards, and press operator was shown whether the readings were in spec. If improvement was necessary, the software would offer hints as to how to bring the colors back into acceptable ranges. Looking at…
Color Sentry is a color accuracy monitoring system for printing presses. Using the i1 Pro spectrophotometer, I wrote a C++ GUI client with wxWidgets that would take readings from the device and send them to a Django-backed web application. The color data was compared to some pre-defined standards, and press operator was shown whether the readings were in spec. If improvement was necessary, the software would offer hints as to how to bring the colors back into acceptable ranges. Looking at historical data, trends about individual presses, shifts, or jobs can be drawn. Additionally, some customers want to see this sort of data, making this a valuable reporting and accountability tool.
Color Sentry, many years later, is still in production in facilities around the country: http://www.havigs.com/en/businesses/packaging-technology-integrated-solutions/managed-services/graphic-services/print
-
GOLD v2 (Codename Thundercuddles)
-
Replacing a legacy predecessor, GOLD v2 is a Django-based workflow management system for the Clemson International Paper pre-press office. It managed the inbound flow of jobs, and helped the pre-press specialists take said job from reception to completion.
Bobby Congdon and I undertook this rewrite, with the whole thing being in production under a year from the start date. Bobby's strong understanding of GOLD v1, process automation, combined with my web development experience made this…
Replacing a legacy predecessor, GOLD v2 is a Django-based workflow management system for the Clemson International Paper pre-press office. It managed the inbound flow of jobs, and helped the pre-press specialists take said job from reception to completion.
Bobby Congdon and I undertook this rewrite, with the whole thing being in production under a year from the start date. Bobby's strong understanding of GOLD v1, process automation, combined with my web development experience made this project a great success. As far as I know, GOLD v2 is still in production today in Clemson.
Techs used: Mac OS, Python, Django, Esko Backstage, Esko PackEdge, JDF, Adobe Illustrator.
Other creators
Organizations
-
Clemson University Rowing Club
Club Varsity Coach
-
-
Clemson University Rowing Club
Coxswain
-
Competed at a regional and national level. Coxed the Men's 4+ to fourth place overall at Dadvail Regatta in 2008. Coxed the Charles twice.
-
Clemson Linux User Group
Secretary, Member
-
Secretary of the LUG from 2004-2005, then regular member until the end of 2006. Assisted in maintaining the LUG's server and website, and helped kick off the first TigerLAN event.
-
Clemson University Tiger Band
Mellophone
-
More activity by Gregory
Other similar profiles
Explore top content on LinkedIn
Find curated posts and insights for relevant topics all in one place.
View top content