advent_of_code_ex VS livebook

Compare advent_of_code_ex vs livebook and see what are their differences.

advent_of_code_ex

Advent of Code solutions in Elixir, and a bunch of musings on them. (by epiccoleman)

livebook

Automate code & data workflows with interactive Elixir notebooks (by livebook-dev)
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
advent_of_code_ex livebook
2 80
0 4,478
- 2.8%
7.0 9.8
6 months ago 3 days ago
Elixir Elixir
- Apache License 2.0
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.

advent_of_code_ex

Posts with mentions or reviews of advent_of_code_ex. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-01.
  • Advent of Code 2023 is nigh
    19 projects | news.ycombinator.com | 1 Dec 2023
    > Test your code as you go. Printing the output of intermediate steps to the console is a great way of catching bugs.

    Honestly, just set up whatever you need to be able to write unit tests in your lang of choice. These problems are _so_ amenable to a piecewise approach driven by tests. I'm not like a big TDD advocate or anything, but these problems are great practice for that style of coding - it's just so damn useful to know each of your small pieces of code work.

    Parameterized tests are amazing for AoC, because you can get a handful of test cases basically for free from the puzzle description. If your code doesn't work once you've got all the samples working, you either have some weird edge case that you didn't consider, or you've got one of the brute-force killer puzzles.

    Even for today's, I wound up with 43 different test cases. The vast majority of those are from the puzzle text, and adding them didn't really make the puzzle take that much longer. (Obviously, if you're optimizing for solve speed, you probably wouldn't bother with this approach, but I'm not).

    https://github.com/epiccoleman/advent_of_code_ex/blob/master...

    Another thing of note is that every puzzle basically operates on a list of strings, so it's pretty easy to genericize certain parts of the work of solving puzzles. I have a script which generates a module for the solution in my repo, with separate functions for each part that receive the input, and a test file that has tests for part 1 and part 2. The tests read the input file and pass it as a list of strings (lines) to the part_1 and part_2 functions, so that all the boilerplate is already done, and I get to just focus on writing the guts of the part_1 and part_2 functions (which usually get broken down into several other functions, which can also be tested individually).

livebook

Posts with mentions or reviews of livebook. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-28.
  • Super simple validated structs in Elixir
    1 project | dev.to | 20 Apr 2024
    To get started you need a running instance of Livebook
  • Arraymancer – Deep Learning Nim Library
    6 projects | news.ycombinator.com | 28 Mar 2024
  • Setup Nx lib and EXLA to run NX/AXON with CUDA
    2 projects | dev.to | 22 Mar 2024
    LiveBook site
  • Interactive Code Cells
    2 projects | news.ycombinator.com | 18 Dec 2023
    I prefer functional programming with Livebook[1] for this type of thing. Once you run a cell, it can be published right into a web component as well.

    [1] - https://livebook.dev

  • What software should I use as an alternative to Microsoft OneNote?
    2 projects | /r/software | 7 Dec 2023
    If you're a coder, Livebook might be worth a look too. I certainly have my eyes on it.
  • Advent of Code Day 5
    8 projects | /r/elixir | 5 Dec 2023
    Would highly recommend looking at Jose's use of livebook to answer these. It makes testing easier. It's old but still relevant. Video link inside
  • Advent of Code 2023 is nigh
    19 projects | news.ycombinator.com | 1 Dec 2023
  • Racket branch of Chez Scheme merging with mainline Chez Scheme
    5 projects | news.ycombinator.com | 6 Nov 2023
    That's hard to say. Racket is a rather complete language, as is F# and Elixir. And F# and Racket are extremely capable multi-paradigm languages, supporting basically any paradigm. Elixir is a bit more restricted in terms of its paradigms, but that's a feature oftentimes, and it also makes up for it with its process framework and deep VM support from the BEAM.

    I would say that the key difference is that F# and Elixir are backed by industry whereas Racket is primarily backed via academia. Thus, the incentives and goals are more aligned for F# and Elixir to be used in industrial settings.

    Also, both F# and Elixir gain a lot from their host VMs in the CLR and BEAM. Overall, F# is the cleanest language of the three, as it is easy to write concise imperative, functional, or OOP code and has easy asynchronous facilities. Elixir supports macros, and although Racket's macro system is far more advanced, I don't think it really provides any measurable utility over Elixir's. I would also say that F# and Elixir's documentation is better than Racket's. Racket has a lot of documentation, but it can be a little terse at times. And Elixir definitely has the most active, vibrant, and complete ecosystem of all three languages, as well as job market.

    The last thing is that F# and Elixir have extremely good notebook implementations in Polyglot Notebooks (https://marketplace.visualstudio.com/items?itemName=ms-dotne...) and Livebook (https://livebook.dev/), respectively. I would say both of these exceed the standard Python Jupyter notebook, and Racket doesn't have anything like Polyglot Notebooks or Livebook. (As an aside, it's possible for someone to implement a Racket kernel for Polyglot Notebooks, so maybe that's a good side project for me.)

    So for me, over time, it has slowly whittled down to F# and Elixir being my two languages that I reach for to handle effectively any project. Racket just doesn't pull me in that direction, and I would say that Racket is a bit too locked to DrRacket. I tried doing some GUI stuff in Racket, and despite it having an already built framework, I have actually found it easier to write my own due to bugs found and the poor performance of Racket Draw.

  • Runme – Interactive Runbooks Built with Markdown
    7 projects | news.ycombinator.com | 24 Aug 2023
    This looks very similar to LiveBook¹. It is purely Elixir/BEAM based, but is quite polished and seems like a perfect workflow tool that is also able to expose these workflows (simply called livebooks) as web apps that some functional, non-technical person can execute on his/her own.

    1: https://livebook.dev/

  • Livebook: Automate code and data workflows with interactive notebooks
    1 project | news.ycombinator.com | 6 Aug 2023

What are some alternatives?

When comparing advent_of_code_ex and livebook you can also consider the following projects:

advent2023 - scribblings at advent of code 2023

kino - Client-driven interactive widgets for Livebook

advent-of-code - Advent of Code 2022 solutions

awesome-advent-of-code - A collection of awesome resources related to the yearly Advent of Code challenge.

tanenbaum - OCaml Advent of Code starter project

interactive - .NET Interactive combines the power of .NET with many other languages to create notebooks, REPLs, and embedded coding experiences. Share code, explore data, write, and learn across your apps in ways you couldn't before.

kino_aoc - A helper for Advent of Code (a smart cell) for Elixir Livebook

Genie.jl - 🧞The highly productive Julia web framework

AdventOfCode2023

Elixir - Elixir is a dynamic, functional language for building scalable and maintainable applications

fs_playground - F# Playground

axon - Nx-powered Neural Networks