sherief
Ideas for graduate school project (a library) in Elixir
Hi there,
I am a Masters student (no-thesis option) and would like to give back the the community by writing a library in the next ~4-5 months as a graduation project.
Criteria: It would be lovely if it is based on a paper and the Elixir/Erlang community is missing that sort of functionality.
Thanks.
Most Liked
krstfk
Link to the json crdt paper A Conflict-Free Replicated JSON Datatype
Link to more information regarding potential applications and alternatives and more: Local first software
JavaScript official implementation by the author : Automerge
A rust port of the backend in rust (based on the work on the performance branche) Automerge-rs
It’s indeed a very cool and exciting field of research and it would indeed be nice to have an Elixir/Erlang version, although the research being cutting-edge could turn out to be impractical (but people working on this are much smarter than I am, and they seem confident).
If you’re into vm implementation there is an effort to have a beam running on top of web assembly, that may also be a worthwhile learning experience Lumen.
Whatever you decide, be sure to check with the teaching staff, so that you get proper support and don’t waste your time.
Good luck!
Edit: addendum, other potential relevant work in the crdt field :
There’s an elixir implementation, but it seems stalled.
krstfk
Glad I could help somewhat.
Another area of research (but I doubt it would fit in a 4-5 month program) is static type checking.
As far as I know the first paper in that field is this one by Marlow and Wadler.
The Gleam project is exploring the topic. I may be wrong, but I believe people at emqx are exploring something in the same vein and the people at Facebook WhatsApp are working on some typed erlang thingy (but I know close to nothing about that).
Given your timeframe, I still think working on some nice CRDTs would be both realistic and nice for the community.
Again, please check with your teaching staff. The elixir community is great, but having in person advice from the people who will ultimately judge your work is better.
Also, while I certainly think you should strive for excellence, if you can’t provide a production ready library, it’ll still be a great addition for the elixir/erlang community if you document your motivation, hurdles, and choices.
All that to say don’t burn out as a student, have fun learning, it won’t be useless (even if whatever lib you decide to implement isn’t used). At the very least you’ll gain some expertise that you’ll be able to leverage to help the community in the future.
ityonemo
If you did this it would be amazing:
Sorry, don’t have a link to the paper, but I’m sure it’s in the video somewhere.
Popular in Discussions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #advent-of-code
- #elixirconf-us
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #performance









