I know enough about JSON Schema to know how much I do not know. I’ve hung out with people using JSON Schema on a daily basis who are completely unaware they are using a standardized schema, and I’ve also hung out with people using JSON Schema on a daily basis who are completely aware of every property, vocabulary, $ref, and use case of the spec. JSON Schema is ubiquitous and critical to our operations, yet so many of us have barely scratched the surface when it comes to putting the specific to work, let alone getting our house in order—we need help.
To prepare me for a call with Juan Cruz Viotti, JSON Schema contributor and tooling maker, I wanted to gather a list of the JSON Schema help we need across the enterprises I have worked with.
- Discovery - We need help finding our schema — they are EVERYWHERE!!
- Source of Truth - We need help establishing the source of truth for our schema.
- Draft - Please help me always use the latest draft of the JSON Schema spec.
- Naming - Please help me properly name the properties of all my schema.
- Descriptions - I am regularly overwhelmed with describing objects and properties.
- Regex - I don’t know what I am doing with Regex, please help me craft them.
- $ref - I get so lost with $ref and I feel like I don’t use them very well.
- Bundle - Help me bundle schema so I can work on them in more modular pieces.
- Unbundle - Please help me unbundle my schema so that I can organize better.
- Intellisense - Please autocomplete whatever I should be typing while I do the work.
- Maturity - Please help me understand how mature or immature my schema is.
- Authority - Who is responsible for the schema and how do I contact them?
- Provenance - What is the story behind this schema and everything that went into it.
- OpenAPI - Please help me sensibly reuse my schema across my HTTP APIs.
- Tooling - Help me standardize the tooling I am using, as well as across my teams.
- Reusability - Help me ensure my schema is modular and always reusable everywhere.
- Examples - Provide me with more examples and encourage me to create examples.
- Types - Help me better understand the different types of properties and how I use them.
- Sprawl - It is a mess across my operations, please understand this reality.
- Validation - Tell me what I’ve done wrong, but also tell me what I’ve done right.
- Forms - How can I better use schema to publish forms and interact with business people.
- Education - Provide me with workable and distributable education to help my teams.
Let’s start there. I am sure I will have other ideas about where we need help, but this would really help us normals better utilize JSON Schema. I know there are so many advanced properties I am not even aware of, and that there are vocabularies and other dimensions I should be thinking about. But it is hard. Things are a mess. I need a lot of help dealing with the mess, getting teams up to speed, upgrading to the latest version, and mastering the basics of JSON Schema before we get to work on the complicated things. I have a lot of business and technical details in my head each day, most of which can and is represented as JSON Schema, and I think a little help would go a long way towards helping me feel less frazzled.
I have the ear of all the smart JSON Schema folks. Now I need to get the ear of all the enterprise folks who are using JSON Schema on a daily basis. I also need to find more money to spend on JSON Schema. I managed to hustle 1M+ to spend on JSON Schema over the years, and could use some more. So if you have deep pockets and want to make a massive impact on how enterprises operate, please reach out. I am not kidding. I am on the hunt for my next JSON Schema sugar daddy-—it could be you. If you need more help to better understand the scope in which JSON Schema defines and validates the world, feel free to reach out and I’ll give you a primer. It is significant and nearly invisible to most of the business stakeholders who are moving and shaking things today.