Open Source At MediaMath

 

MediaMath borrows heavily from the open source community, with many of our systems powered by tools whose roots are in open source. We understand that open source development is an effort and a community that must be supported, which we do in a number of ways.

  1. We encourage our developers to build new tools and components with an eye for sharing them with the greater development community.
  2. We encourage our developers to contribute to open source projects.
  3. We financially sponsor select open source projects.

MediaMath SDKs

Our Open Source Projects:

Strand

Strand Logo

Strand is a growing library of common UI widgets built as web components. These components are cohesive in look and feel and designed to be interoperable. We've built Strand atop Google's Polymer framework. By using Strand, developers can create and customize new and existing user interfaces with consistency and ease.

Keryxlib

Keryxlib is a golang library that parses postgres replication (WAL) logs and creates json events from them.

Play-DynamoDB

Play-DynamoDB is an API for validating DynamoDB records and converting them into Scala case classes. It's inspired by the JSON combinators available in the core Play distribution. It easily converts data stored in DynamoDB into case classes, and it supports primitive types, iterables, byte arrays, and Joda-Time classes.

Qasino

Qasino is a stats server that allows for easy, fast queries by keeping only the most recent set of stats reported. Many stats systems provide history for stats but lack an effective way to join, correlate or connect stats together. With stats stored as tables in a database for querying with SQL, Qasino makes it easy to correlate and cross reference stats together.

Swagger for Catalyst

Catalyst is an open-source Perl MVC web framework that encourages rapid development and clean design without getting in your way by forcing opinions. Swagger is an API framework that promotes a set of standards that allows for interactive documentation, client SDK generation, and discoverability. This package enables adding swagger metadata to any Catalyst route. This module will expose an api_docs route which will contain JSON that is Swagger 1.2 compatible.

IQ-Get

IQ-Get is a Python script that allows users to download large query results from Interactive Query (IQ). Because IQ is a web-based service, there is a limit on the size of the results a user can download through the browser. This script allows users to download larger data sets and store it in a tab or comma seperated document.

Govent

Govent is a library and command line utility to for publishing events via the graphite events API. We use this to annotate our grafana dashboards with test runs, deploys, and more.

Scala-JSON

scala-json provides an intuitive and extensible way to serialize scala objects to JSON and back. It offers advanced type reflection that’s exposed for extension, has streamlined annotation for enriching case classes instead of manual factories, has full scala-js support, and offers full support for case class field defaults.

Projects Supported by MediaMath:

Grafana

We are proud to sponsor Grafana, a customizable dashboard for real-time metrics that is visually appealing, intuitively designed, and exceptionally easy to use. Grafana allows us to customize our graphs based on any metrics we send through Graphite. It even allows us to compare multiple data providers that we have setup all on one graph, and makes sharing and exporting these graphs simple. We couldn’t be happier to support such a usable, insightful project.