hamilton VS avendish

Compare hamilton vs avendish and see what are their differences.

hamilton

A scalable general purpose micro-framework for defining dataflows. THIS REPOSITORY HAS BEEN MOVED TO www.github.com/dagworks-inc/hamilton (by stitchfix)

avendish

declarative polyamorous cross-system intermedia objects (by celtera)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
hamilton avendish
26 34
878 412
- 1.5%
8.1 8.5
about 1 year ago 3 days ago
Python C++
BSD 3-clause Clear License GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

hamilton

Posts with mentions or reviews of hamilton. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-02-27.
  • Write production grade pandas (and other libraries!) with Hamilton
    2 projects | /r/Python | 27 Feb 2023
    And find the repository here: https://github.com/dagworks-inc/hamilton/
  • Useful libraries for data engineering in various programming languages
    1 project | /r/dataengineering | 16 Sep 2022
    Python - https://github.com/stitchfix/hamilton (author here). It's great if you want your code to be always unit testable and documentation friendly, and you want to be able to visualize execution. Blog post on using it with Pandas https://link.medium.com/XhyYD9BAntb.
  • Cognitive Loads in Programming
    5 projects | news.ycombinator.com | 31 Aug 2022
    Yes! As one of the creators of https://github.com/stitchfix/hamilton this was one of the aims. Simplifying the cognitive burden for those developing and managing data transforms over the course of years, and in particular for ones they didn't write!

    For example in Hamilton -- we force people to write "declarative functions" which then are stitched together to create a dataflow.

    E.g. example function -- my guess is that you can read and understand/guess what it does very easily.

  • Prefect vs other things question
    2 projects | /r/mlops | 3 Aug 2022
    For (1) there are quite a few options - prefect is one, metaflow is another, airflow, dagster, even https://github.com/stitchfix/hamilton (core contributor here), etc.
  • Field Lineage
    4 projects | /r/dataengineering | 2 Aug 2022
    If you're want to do more python https://github.com/stitchfix/hamilton allows you to model dependencies at a columnar (field) level.
  • Show HN
    1 project | news.ycombinator.com | 1 Aug 2022
  • [D] Is anyone working on interesting ML libraries and looking for contributors?
    4 projects | /r/MachineLearning | 17 Jun 2022
    Take a look at https://github.com/stitchfix/hamilton - we're after contributors who can help us grow the project, e.g. make documentation great, dog fooding features and suggesting/contributing usability improvements.
  • Useful Python decorators for Data Scientists
    1 project | /r/Python | 23 May 2022
    For a real world example of their power, we built an entire framework (https://github.com/stitchfix/hamilton) at Stitch Fix, where a lot of cool magic is provide via decorators - see https://hamilton-docs.gitbook.io/docs/reference/api-reference/available-decorators and these two source files (https://github.com/stitchfix/hamilton/blob/main/hamilton/function_modifiers_base.py, https://github.com/stitchfix/hamilton/blob/main/hamilton/function_modifiers.py ). Note we do some non-trivial stuff via them.
  • unit tests
    1 project | /r/mlops | 23 May 2022
    For data processing/transform code, I would recommend looking at https://github.com/stitchfix/hamilton, especially if you're trying to test pandas code. Short getting started here - https://towardsdatascience.com/how-to-use-hamilton-with-pandas-in-5-minutes-89f63e5af8f5 (disclaimer: I'm one of the authors).
  • Dealing with hundreds of customer/computed columns
    1 project | /r/dataengineering | 19 May 2022
    The python package, hamilton, from Stitch Fix (https://hamilton-docs.gitbook.io/docs/) can help manage transformations on pandas dataframes. This DAG of transformations is managed separately in a file - so it can be versioned, in case the transformations change. The memory required is reduced, because only the API call tables and mapping parameter table have to be in memory. The calculated columns can be produced as needed. Just like dbt, transformations are separate from the source tables - but hamilton can be used on any python object - not just dataframes. dbt is SQL based.

avendish

Posts with mentions or reviews of avendish. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-03-22.
  • Ask HN: What audio/sound-related OSS projects can I contribute to?
    22 projects | news.ycombinator.com | 22 Mar 2023
    Happy to introduce you to https://ossia.io there are a lots of tasks open! You can check the projects for the general development axes: https://github.com/ossia/score/projects?query=is%3Aopen ; e.g. Audio, Musicality, Integrations, JACK & Linux integration (some are in Classic projects mode) all have audio-related tasks, some easy, some hard.

    Creating new Avendish plug-ins (docs: https://celtera.github.io/avendish/) could also be fairly useful, here's a very basic example one: https://github.com/celtera/avendish/blob/main/examples/Advan...

  • Learning C++ for Multimedia and Audio programming
    5 projects | /r/cpp | 25 Jan 2023
    If you are interested in making max, pd, etc... extension you can look into https://github.com/celtera/avendish : it's made exactly for this and tries to stay very close from standard C++ unlike most existing audio frameworks which often come with their own bespoke standard library reimplementation. The documentation also tries to explain the c++ features it used, you might find this useful!
  • Soursop and Ponies in Kona: A C++ Committee Trip Report
    4 projects | news.ycombinator.com | 27 Nov 2022
    to automatically generate safe dlopen stubs for runtime dynamic library loading from header files

    and through the C++ one (this one is an extremely quick and dirty prototype):

    https://github.com/ossia/score/blob/master/src/plugins/score...

    to pre-instantiate get(aggregate), for_each(aggregate, f) and other similar functions in https://github.com/celtera/avendish because of how slow it is when done through TMP (doing it that way removed literally dozens of megabytes from my .o and had a positive performance impact even with -O3) ; so I weep a lot when I read that people in the committee object to pack...[indexing]

  • Cognitive Loads in Programming
    5 projects | news.ycombinator.com | 31 Aug 2022
    I really don't know about this, I'm writing audio & media effects in a fairly declarative style with https://github.com/celtera/avendish and I'm so much more productive that it's not even funny - I can rewrite entire effects from scratch in the time that it used to take me to find a bug somewhere
  • Ask HN: Who is using C++ as the main language for new project?
    26 projects | news.ycombinator.com | 12 Aug 2022
  • A framework for audio software development
    3 projects | news.ycombinator.com | 20 Jul 2022
  • Clap: The New Audio Plug-In Standard
    4 projects | news.ycombinator.com | 15 Jun 2022
    For anyone using c++, my declarative system has some amount of support for clap: https://github.com/celtera/avendish / https://celtera.github.io/avendish/

    But unlike clap, targetting this also gives direct access to a few other environments, namely Max, Pd, ossia score, with the list hopefully growing.

    Here is an example minimal plugin : https://github.com/celtera/avendish/blob/main/examples/Raw/M...

    Note that unlike pretty much every other c/c++ plugin API, the plugin code does not need to include any header, everything is done through reflection of struct members at compile-time.

    Here's a per-sample noise generator which uses a small library of pre-made ports: https://github.com/celtera/avendish/blob/main/examples/Helpe...

    And a very naive buffer-based audio filter : https://github.com/celtera/avendish/blob/main/examples/Helpe...

    UI is supported without relying on a specific UI library, only on a canvas painter concept which can then target Qt, NanoVG, and others to come: https://github.com/celtera/avendish/blob/main/examples/Helpe...

    since it binds directly to audio APIs at compile time, it has pretty much zero code size in itself, the smallest plugin it generates for VST2 is around 7kb IIRC

  • WG21, aka C++ Standard Committee, April 2022 Mailing
    3 projects | /r/cpp | 25 Apr 2022
    I've ported my lib https://github.com/celtera/avendish to P1061's experimental clang implementation to replace boost.pfr (https://github.com/celtera/avendish/blob/main/include/avnd/common/aggregates.hpp#L67) and it works great, it's only missing pack indexing because right now one still needs to do something like
  • Why LSP?
    14 projects | news.ycombinator.com | 25 Apr 2022
    Working on a sunset of this with https://github.com/celtera/avendish - C++ reflection makes this very easy
  • Unreal vs. Unity Opinion
    5 projects | news.ycombinator.com | 17 Apr 2022
    so interesting, as a mostly C++ dev, UE's C++ style feels absolutely awful aha. Of course they have to be here because c++ used to not have reflection but I think that nowadays one could use similar principles as the ones I've tried to develop for audio / media objects in https://github.com/celtera/avendish to implement game objects / UObject in a much cleaner way and with better compile times

What are some alternatives?

When comparing hamilton and avendish you can also consider the following projects:

prosto - Prosto is a data processing toolkit radically changing how data is processed by heavily relying on functions and operations with functions - an alternative to map-reduce and join-groupby

proposal - Go Project Design Documents

versatile-data-kit - One framework to develop, deploy and operate data workflows with Python and SQL.

DtBlkFx - Fast-Fourier-Transform (FFT) based VST plug-in

plumbing - Prismatic's Clojure(Script) utility belt

csound_max - csound6~ object for Max/MSP

OpenLineage - An Open Standard for lineage metadata collection

nanobind - nanobind: tiny and efficient C++/Python bindings

composer - Supercharge Your Model Training

DPF - DISTRHO Plugin Framework

polars - Dataframes powered by a multithreaded, vectorized query engine, written in Rust

clap-imgui - Minimal example of prototyping CLAP audio plugins using Dear ImGui as the user interface.