From 59458076ca5c9ce4a787706dad161acbc8d186ae Mon Sep 17 00:00:00 2001 From: Juan Cruz Viotti Date: Fri, 9 Aug 2024 12:13:03 -0400 Subject: [PATCH 1/4] Kickstart the Contractor program See: https://github.com/orgs/json-schema-org/discussions/779 Signed-off-by: Juan Cruz Viotti --- programs/contractors/README.md | 18 +++++ programs/contractors/contractors-schema.json | 77 ++++++++++++++++++++ programs/contractors/contractors.json | 38 ++++++++++ 3 files changed, 133 insertions(+) create mode 100644 programs/contractors/README.md create mode 100644 programs/contractors/contractors-schema.json create mode 100644 programs/contractors/contractors.json diff --git a/programs/contractors/README.md b/programs/contractors/README.md new file mode 100644 index 00000000..c7f1991a --- /dev/null +++ b/programs/contractors/README.md @@ -0,0 +1,18 @@ +This document covers the organizational and operational aspects of the JSON Schema Contractor Program. + +### What is the JSON Schema Contractor Program? + +The JSON Schema Contractor Program aims to promote official professional services around JSON Schema coming from TSC members and Ambassors, connecting companies with the key people they need to be successful with JSON Schema, while promoting the sustainability of JSON Schema organization. + +### How does the program work? + +- The TSC and existing ambassadors can opt-in to be listed as contractors at any time. +- All contractor information will be displayed on the JSON Schema website. + +### Contractor requirements + +The participation will be determined and checked annually. The only requirement for being listed as a contractor is being a current TSC member or an current Ambassador. + +### Become an JSON Schema Contractor + +The process of becoming a listed contractor is very simple. Go to the **community** repository and open a PR to edit the `contractors.json` file. The TSC will then evaluate your candidacy! diff --git a/programs/contractors/contractors-schema.json b/programs/contractors/contractors-schema.json new file mode 100644 index 00000000..d7e8ba58 --- /dev/null +++ b/programs/contractors/contractors-schema.json @@ -0,0 +1,77 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "type": "array", + "description": "Array of contractor profiles", + "items": { + "type": "object", + "description": "Contractor profile", + "properties": { + "name": { + "type": "string", + "description": "Full name of the contractor" + }, + "bio": { + "type": "string", + "description": "Biography of the contractor" + }, + "email": { + "type": "string", + "format": "email", + "description": "E-mail address of the contractor" + }, + "website": { + "type": "string", + "format": "url", + "description": "Website URL of the contractor" + }, + "github": { + "type": "string", + "description": "GitHub profile URL of the contractor" + }, + "twitter": { + "type": "string", + "description": "Twitter profile URL of the contractor" + }, + "mastodon": { + "type": "string", + "description": "Mastodon profile URL of the contractor" + }, + "linkedin": { + "type": "string", + "description": "LinkedIn profile URL of the contractor" + }, + "incorporatedIn": { + "type": "array", + "description": "Countries where the contractor is incorporated", + "items": { + "type": "string" + } + }, + "type": { + "enum": [ "tsc", "ambassor" ], + "description": "Status of the contractor in the JSON Schema organization" + }, + "links": { + "type": "array", + "description": "List of key links to showcase", + "items": { + "type": "object", + "description": "Details of a specific link", + "properties": { + "title": { + "type": "string", + "description": "Title of the link" + }, + "url": { + "type": "string", + "format": "uri", + "description": "The link URL" + } + }, + "required": ["title", "url"] + } + } + }, + "required": ["name", "bio", "type", "github", "incorporatedIn", "links"] + } +} diff --git a/programs/contractors/contractors.json b/programs/contractors/contractors.json new file mode 100644 index 00000000..30422b45 --- /dev/null +++ b/programs/contractors/contractors.json @@ -0,0 +1,38 @@ +[ + { + "name": "Juan Cruz Viotti", + "github": "jviotti", + "linkedin": "jviotti", + "email": "jv@jviotti.com", + "website": "https://www.jviotti.com", + "type": "tsc", + "incorporatedIn": [ "UK", "US" ], + "bio": "I'm a TSC member of JSON Schema, did award-winning research at the University of Oxford in the space of binary serialization and compression using JSON Schema, co-authored an O'Reilly book covering JSON Schema, and own several projects in the ecosystem, ranging educational material like LearnJSONSchema.com to a high-performance C++ JSON Schema compiler and validator. I have experience helping organizations be successful with JSON Schema in the Data, API, and IoT spaces all the way from architecture and training to custom development. I'm eager to help you take your JSON Schema integrations to the next level!", + "links": [ + { + "title": "O'Reilly Book: Unifying Business, Data, and Code: Designing Data Products with JSON Schema", + "url": "https://learning.oreilly.com/library/view/unifying-business-data/9781098144999/" + }, + { + "title": "JSON Schema CLI: The CLI for working with JSON Schema. Covers formatting, linting, testing, bundling, and more for both local development and CI/CD pipelines", + "url": "https://github.com/intelligence-ai/jsonschema" + }, + { + "title": "JSON BinPack: binary serialization with JSON Schema, more space-efficient than Protocol Buffers and similar alternatives (work in progress)", + "url": "https://jsonbinpack.sourcemeta.com" + }, + { + "title": "Alterschema: Automatic upgrades between versions of JSON Schema (downgrades coming soon)", + "url": "https://alterschema.sourcemeta.com" + }, + { + "title": "JSON Toolkit: a C++ implementation of JSON Schema, featuring a state-of-the-art schema compiler and a custom JSON parser", + "url": "https://github.com/sourcemeta/jsontoolkit" + }, + { + "title": "Blog post: A deep dive on lexical and dynamic scopes, essential for understanding more advanced topics like dynamic referencing", + "url": "https://json-schema.org/blog/posts/understanding-lexical-dynamic-scopes" + } + ] + } +] From a3a63ab4039a57aa5c25ba91a51e2dfa7bbb9306 Mon Sep 17 00:00:00 2001 From: Juan Cruz Viotti Date: Fri, 9 Aug 2024 18:45:51 -0400 Subject: [PATCH 2/4] Update programs/contractors/README.md Co-authored-by: Greg Dennis --- programs/contractors/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/programs/contractors/README.md b/programs/contractors/README.md index c7f1991a..f84333b7 100644 --- a/programs/contractors/README.md +++ b/programs/contractors/README.md @@ -11,7 +11,7 @@ The JSON Schema Contractor Program aims to promote official professional service ### Contractor requirements -The participation will be determined and checked annually. The only requirement for being listed as a contractor is being a current TSC member or an current Ambassador. +The participation will be determined and checked annually. The only requirement for being listed as a contractor is being a current TSC member or a current Ambassador. ### Become an JSON Schema Contractor From 0aa326dfe4e497e887dd550f91648fbabcedde47 Mon Sep 17 00:00:00 2001 From: Juan Cruz Viotti Date: Fri, 16 Aug 2024 20:15:06 -0400 Subject: [PATCH 3/4] Update programs/contractors/README.md Co-authored-by: Jason Desrosiers --- programs/contractors/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/programs/contractors/README.md b/programs/contractors/README.md index f84333b7..2dc3f904 100644 --- a/programs/contractors/README.md +++ b/programs/contractors/README.md @@ -2,7 +2,7 @@ This document covers the organizational and operational aspects of the JSON Sche ### What is the JSON Schema Contractor Program? -The JSON Schema Contractor Program aims to promote official professional services around JSON Schema coming from TSC members and Ambassors, connecting companies with the key people they need to be successful with JSON Schema, while promoting the sustainability of JSON Schema organization. +The JSON Schema Contractor Program aims to promote official professional services around JSON Schema coming from TSC members and Ambassors, connecting companies with the key people they need to be successful with JSON Schema, while promoting the sustainability of the JSON Schema organization. ### How does the program work? From 681d469ab953ca897d2d285d402284d6bc1ef888 Mon Sep 17 00:00:00 2001 From: Juan Cruz Viotti Date: Fri, 16 Aug 2024 20:16:20 -0400 Subject: [PATCH 4/4] Twitter => X Signed-off-by: Juan Cruz Viotti --- programs/contractors/contractors-schema.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/programs/contractors/contractors-schema.json b/programs/contractors/contractors-schema.json index d7e8ba58..56964b19 100644 --- a/programs/contractors/contractors-schema.json +++ b/programs/contractors/contractors-schema.json @@ -28,9 +28,9 @@ "type": "string", "description": "GitHub profile URL of the contractor" }, - "twitter": { + "x": { "type": "string", - "description": "Twitter profile URL of the contractor" + "description": "X profile URL of the contractor" }, "mastodon": { "type": "string",