zlacker

[parent] [thread] 9 comments
1. sorent+(OP)[view] [source] 2023-11-20 20:09:07
The number of features lifted directly from Oban[1] is astounding, considering there isn't any attribution in the announcement post or the repo.

Starting with the project's tagline, "Robust job processing in Elixir", let's see what else:

  - The same job states, including the British spelling for `cancelled`
  - Snoozing and cancelling jobs inline
  - The prioritization system
  - Tracking where jobs were attempted in an attempted_by column
  - Storing a list of errors inline on the job
  - The same check constraints and the same compound indexes
  - Almost the entire table schema, really
  - Unique jobs with the exact same option names
  - Table-backed leadership election
Please give some credit where it's due.

[1]: https://github.com/sorentwo/oban

replies(4): >>kamika+r6 >>bgentr+I9 >>Thaxll+NU >>jchw+pq1
2. kamika+r6[view] [source] 2023-11-20 20:32:21
>>sorent+(OP)
…how else do you spell cancelled? With one l? Wow, learning this on my keyboard as I type this…
3. bgentr+I9[view] [source] 2023-11-20 20:45:44
>>sorent+(OP)
Hi Parker, I'm genuinely sorry it comes across as though we lifted this stuff directly from Oban. I do mean it when I say that Oban has been a huge inspiration, particularly around its technical design and clean UX.

Some of what you've mentioned are cases where we surveyed a variety of our favorite job engines and concluded that we thought Oban's way was superior, whereas others we cycled through a few different implementations before ultimately apparently landing in a similar place. I'm not quite sure what to say on the spelling of "cancelled" though, I've always written it that way and can't help but read "canceled" like "concealed" in my head :)

As I think I mentioned when we first chatted years ago this has been a hobby interest of mine for many years so when a new database queue library pops up I tend to go see how it works. We've been in a bit of a mad dash trying to get this ready for release and didn't even think about crediting the projects that inspired us, but I'll sync with Brandur and make sure we can figure out the right way to do that.

I really appreciate you raising your concerns here and would love to talk further if you'd like. I just sent you an email to reconnect.

replies(1): >>throwa+jm
◧◩
4. throwa+jm[view] [source] [discussion] 2023-11-20 21:39:00
>>bgentr+I9
Ok so maybe just put it on the github readme? "Inspired by Oban, and X, and Y..."

JFC One line of code you don't even have to test

5. Thaxll+NU[view] [source] 2023-11-21 01:04:47
>>sorent+(OP)
As if Oban invented anything, like queues on RDMS is not a new concept at all. Oban is 4 years old, do you know how many queues baked by DB were created in the last 10years?

I don't see Sidekiq credited on the main page of Oban.

replies(2): >>sorent+lY >>hamand+lg1
◧◩
6. sorent+lY[view] [source] [discussion] 2023-11-21 01:28:14
>>Thaxll+NU
I’d argue strongly that Oban did invent things, including parts of the underlying structure used in River, and the authors agree that it was a heavy influence.

While there is no overlap in technology or structure with Sidekiq, the original Oban announcement on the ElixirForum mentions it along with all of the direct influences:

https://elixirforum.com/t/oban-reliable-and-observable-job-p...

◧◩
7. hamand+lg1[view] [source] [discussion] 2023-11-21 03:25:57
>>Thaxll+NU
Not sure if you meant to compare to Sidekiq (which uses Redis). But delayed-job and que are both projects that stretch back much more than 4 years in the ruby ecosystem that leverage relational databases as well.
8. jchw+pq1[view] [source] 2023-11-21 04:39:00
>>sorent+(OP)
Data point: I am American and I would not spell 'cancelled' any other way. I don't think it is strictly British.
replies(1): >>Groxx+zI1
◧◩
9. Groxx+zI1[view] [source] [discussion] 2023-11-21 07:21:50
>>jchw+pq1
As far as I've seen, Americans are just plain inconsistent on this spelling.

Cancelled has nice pairing with cancellation, canceled can be typed nicely without any repeated finger use on qwerty, both clearly mean the same thing and aren't confused with something else... I say let the battles begin, and may the best speling win.

Referer pains me though.

replies(1): >>jchw+dJ1
◧◩◪
10. jchw+dJ1[view] [source] [discussion] 2023-11-21 07:30:04
>>Groxx+zI1
To be fair, "referer" is just a misspelling, I don't think it was ever accepted as a correct spelling by a large number of people. I'm sure you know the backstory though.
[go to top]