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

Board Review: Azure Synapse Data Plane Track2 SDK For Python #952

Closed
aim-for-better opened this issue Jan 16, 2020 · 6 comments
Closed

Board Review: Azure Synapse Data Plane Track2 SDK For Python #952

aim-for-better opened this issue Jan 16, 2020 · 6 comments
Assignees
Labels
architecture board-review Request for an Architectural Board Review

Comments

@aim-for-better
Copy link
Member

aim-for-better commented Jan 16, 2020

Thank you for starting the process for approval of the client library for your Azure service. Thorough review of your client library ensures that your APIs are consistent with the guidelines and the consumers of your client library have a consistently good experience when using Azure.

** Before submitting, ensure you adjust the title of the issue appropriately **

To ensure consistency, all Tier-1 languages (C#, TypeScript, Java, Python) will generally be reviewed together. In expansive libraries, we will pair dynamic languages (Python, TypeScript) together, and strongly typed languages (C#, Java) together in separate meetings.

The Basics

About this client library

Artifacts required (per language)

We use an API review tool (apiview) to support .NET and Java API reviews. For Python and TypeScript, use the API extractor tool, then submit the output as a Draft PR to the relevant repository (azure-sdk-for-python or azure-sdk-for-js).

Python

Champion Scenarios

A champion scenario is a use case that the consumer of the client library is commonly expected to perform. Champion scenarios are used to ensure the developer experience is exemplary for the common cases. You need to show the entire code sample (including error handling, as an example) for the champion scenarios.

  • Champion Scenario 1: Create/Submit a spark batch job. Developer wants to run a Spark job Once the job is complete, they need to see the results

  • Champion Scenario 2: Administrator needs to maintain the pool of workers; for this they need to be able to list the jobs in queue, including finding which one is currently running and potentially cancel or delete them from the list.

  • Champion Scenario 2.1: Get a spark batch job

  • Champion Scenario 2.2: List all spark batch jobs under the specific spark pool

  • Champion Scenario 2.3: Cancel a spark batch job

Agenda for the review

A board review is generally split into two parts, with additional meetings as required

Part 1 - Introducing the board to the service:

  • Review of the service (no more than 10 minutes).
  • Review of the champion scenarios.
  • Get feedback on the API patterns used in the champion scenarios.

After part 1, you may schedule additional meetings with architects to refine the API and work on implementation.

Part 2 - the "GA" meeting

  • Scheduled at least one week after the APIs have been uploaded for review.
  • Will go over controversial feedback from the line-by-line API review.
  • Exit meeting with concrete changes necessary to meet quality bar.

Thank you for your submission

@aim-for-better aim-for-better added architecture board-review Request for an Architectural Board Review labels Jan 16, 2020
@adrianhall adrianhall assigned johanste and unassigned adrianhall Jan 17, 2020
@adrianhall
Copy link
Member

@johanste - can you do a first review?

@adrianhall
Copy link
Member

Based on the champion scenarios, I think you can boil it down to two:

  1. Developer wants to run a Spark job (no idea what that is - but ok). Once the job is complete, they need to analyze the logs to see the results.
  2. Administrator needs to maintain the pool of workers; for this they need to be able to list the jobs in queue, including finding which one is currently running and potentially cancel or delete them from the list.

@aim-for-better
Copy link
Member Author

Based on the champion scenarios, I think you can boil it down to two:

  1. Developer wants to run a Spark job (no idea what that is - but ok). Once the job is complete, they need to analyze the logs to see the results.
  2. Administrator needs to maintain the pool of workers; for this they need to be able to list the jobs in queue, including finding which one is currently running and potentially cancel or delete them from the list.

Updated

@aim-for-better aim-for-better changed the title Board Review: Azure Synapse Data Plane SDK For Python Board Review: Azure Synapse Data Plane Track2 SDK For Python Apr 14, 2020
@johanste
Copy link
Member

I have created an API view listing (sorry, internal only - we are working on making the tool available publicly)

@lmazuel
Copy link
Member

lmazuel commented May 22, 2020

@johanste I just updated it with the latest from Azure/azure-rest-api-specs#9534 FYI

@aim-for-better
Copy link
Member Author

@johanste I just updated it with the latest from Azure/azure-rest-api-specs#9534 FYI

Thank you @lmazuel

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
architecture board-review Request for an Architectural Board Review
Projects
None yet
Development

No branches or pull requests

5 participants