Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feedback from @marcopolo #36

Open
guillaumemichel opened this issue Jun 28, 2023 · 2 comments
Open

Feedback from @marcopolo #36

guillaumemichel opened this issue Jun 28, 2023 · 2 comments

Comments

@guillaumemichel
Copy link
Contributor

Feedback from @MarcoPolo

I watched your walkthrough last night. Great stuff!

I love the trace view of the system

one yellow flag for me was the the modularization/abstraction of everything. I would push against having an interface for a single concrete implementation. Instead try keeping things concrete until you need multiple concrete implementations.

You can still control what users of the concrete implementation do by controlling the public methods.

You know a lot more about what makes sense for the interface once you have used it a bit more, and the moment you need to split things to support multiple concrete implementations is the point when you add the interfaces.

@guillaumemichel
Copy link
Contributor Author

There are already multiple implementations for many modules. But I agree, for instance in the scheduling logic, all modules have a single implementation, so it probably makes sense to remove the interfaces there, and have a single scheduler implementation.

However, we want to have multiple message formats, message endpoints, routing tables, and message handlers (server)

@MarcoPolo
Copy link

However, we want to have multiple message formats, message endpoints, routing tables, and message handlers (server)

I’m not suggesting we don’t have multiple concrete implementations, just that before we do we stick to a single concrete implementation. This doesn’t apply to cases where we already have multiple concrete implementations.

@iand iand moved this to Unplanned in DHT Optimization Jul 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Unplanned
Development

No branches or pull requests

2 participants