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

dashboard: session logs, events logs, integration module #315

Merged
merged 2 commits into from
May 20, 2024
Merged

Conversation

itayd
Copy link
Contributor

@itayd itayd commented May 20, 2024

No description provided.

@itayd itayd requested review from efiShtain, daabr and ig-ra May 20, 2024 07:51
Copy link
Contributor

@efiShtain efiShtain left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

only super sophisticated users will be able to use the sdk
it would be much easier to use the protos natively instead of using all of this wrappers

I really think we should rethink the SDK
provide a super super ultra simple SDK to the client and stop using the SDK in the backend and use simpler less abstracted / wrapped code

Copy link
Contributor

@daabr daabr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't really review the dashboard code and web content, because I consider it to be throwaway code.

only super sophisticated users will be able to use the sdk
it would be much easier to use the protos natively instead of using all of this wrappers

I really think we should rethink the SDK
provide a super super ultra simple SDK to the client and stop using the SDK in the backend and use simpler less abstracted / wrapped code

I agree with Efi for slightly different reasons:

The rule of thumb in Google was to never create libraries that wrap proto services - because then you have to maintain them for multiple languages, whereas generated proto clients are universal.

Also, the result is that our SDK contains, or more precisely hides, all the validation logic from the server side. It would make more sense to me to put all validation in the proto server instead of promising to it that the input is valid. That promise is both dangerous in the long term when we don't have a single person who owns this code, and has already created a steep learning curve for our codebase.

I also suspect that our heavy reliance on generics in the SDK is... less than efficient. But we don't have the time to check this.


document.querySelectorAll('.jsoneditor').forEach((element) => {
let content = { json: JSON.parse(element.innerText), text: undefined }
element.innerHTML = ''
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@itayd
Copy link
Contributor Author

itayd commented May 20, 2024

i guess i need to do another once over the SDK, but not in the very near future

@itayd
Copy link
Contributor Author

itayd commented May 20, 2024

@itayd itayd merged commit 66dec94 into main May 20, 2024
9 checks passed
@itayd itayd deleted the itay/sessions branch May 20, 2024 23:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants