sherief

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

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 :

https://replicated.cc/

There’s an elixir implementation, but it seems stalled.

krstfk

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

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.

Where Next?

Popular in Discussions Top

praveenperera
How We Replaced React with Phoenix By: Thought Bot
New
hazardfn
I suppose this question is effectively hackney vs. ibrowse but we are at a point in our project where we have to make a choice between th...
New
dogweather
I wrote this comment on r/haskell, and it’s not popular there. :wink: But I think I’m on to something… Haskell reminds me of Java, and e...
New
Markusxmr
Since Drab has been developed for a while in the open, introducing the Liveview functionality in a way it happend appears to undermine th...
New
fireproofsocks
This is more of a general question, but I’m wondering how other people in the community think about the pattern matching in function sign...
New
slashdotdash
Phoenix Live View is now publicly available on GitHub. Here’s Chris McCord’s tweet announcing making it public.
New
Fl4m3Ph03n1x
Background A few days ago I was listening to The future of Elixir from Elixir Talks, with Dave Thomas (@pragdave ) and Brian Mitchell. I...
New
mmmrrr
Just saw that dhh announced https://hotwire.dev/ Is it just me or is this essentially live view? :smiley: Although I like the “iFrame-e...
New
laiboonh
Hi all, I am trying to convince my team to use liveview over the current react. What are some of the points where one should consider us...
New
cblavier
Hey there, It’s been more than a year since we started using LiveView as our main UI library and building a whole library of UI componen...
New

Other popular topics Top

Qqwy
Update: How to use the Blogs & Podcasts section You can post links to your blog posts or podcasts either in one of the Official Blog...
3271 127089 1222
New
RisingFromAshes
I’ve read in another post that it may be possible with a router helper - but I couldn’t find an appropriate one, and tbh, I’m still just ...
New
grych
Hi folks, Few months ago I have announced the proof-of-concept of the library to manipulate the browsers DOM objects directly from Elixi...
639 52673 488
New
hariharasudhan94
I would like to know what is the best IDE for elixir development?
New
stefanchrobot
What’s the safe way to decode a JSON string into a struct? I want to avoid calling String.to_atom. Jason.decode can give me a map with st...
New
nsuchy
Hi. I’ve noticed that Windows Powershell has it’s own IEX command and you cannot access Elixir’s IEX due to the conflict. This isn’t a cr...
New
Darmani72
If I have a post route which an argument: post /my_post_route/:my_param1, MyController.my_post_handler How would get the post params ...
New
AstonJ
Seen any cool LiveView demos, sample apps or examples? Please post them here! :003:
New
klo
Got a question about when to concat vs. prepending items to list then reversing to achieve appending. So i know lists boil down to [1 | ...
New
AstonJ
Posting this to see if we can make things easier for people to get into Neovim. If you use Neovim and have a favourite distro please let ...
New

Latest on Elixir Forum

Elixir Forum

We're in Beta

About us Mission Statement