{"id":2412,"date":"2023-09-06T20:35:46","date_gmt":"2023-09-07T03:35:46","guid":{"rendered":"https:\/\/self-issued.info\/?p=2412"},"modified":"2023-09-06T20:35:46","modified_gmt":"2023-09-07T03:35:46","slug":"adoption-time-and-lessons-learned","status":"publish","type":"post","link":"https:\/\/self-issued.info\/?p=2412","title":{"rendered":"Adoption Time! And Lessons Learned\u2026"},"content":{"rendered":"<p><span class=\"plain\"><img decoding=\"async\" align=\"right\" src=\"https:\/\/self-issued.info\/images\/ietf-logo.png\" alt=\"IETF logo\"><\/span>I&#8217;ve had two different IETF specifications adopted by two different working groups in the last two days &#8211; a pleasant coincidence!  Yesterday, the <a href=\"https:\/\/www.ietf.org\/archive\/id\/draft-ietf-cose-typ-header-parameter-00.html\">COSE &#8220;typ&#8221; (type) Header Parameter<\/a> specification was adopted by the COSE working group.  Today, the <a href=\"https:\/\/www.ietf.org\/archive\/id\/draft-ietf-oauth-resource-metadata-00.html\">OAuth 2.0 Protected Resource Metadata<\/a> specification was adopted by the OAuth working group.  Their journeys from individual drafts to working group drafts couldn&#8217;t have been more different!<\/p>\n<p>As I was musing with <a href=\"https:\/\/www.linkedin.com\/in\/phunt\/\">Phil Hunt<\/a>, who wrote the <a href=\"https:\/\/datatracker.ietf.org\/doc\/html\/draft-jones-oauth-resource-metadata-00\">original individual draft of OAuth 2.0 Protected Resource Metadata<\/a> with me, I\u2019m pretty sure that this is the longest time from writing an individual draft to it becoming a <a href=\"https:\/\/www.ietf.org\/archive\/id\/draft-ietf-oauth-resource-metadata-00.html\">working group draft<\/a> in my experience:  August 3, 2016 to September 6, 2023 \u2013 seven years and a month!<\/p>\n<p>Whereas, the time from the <a href=\"https:\/\/www.ietf.org\/archive\/id\/draft-jones-cose-typ-header-parameter-00.html\">individual draft of COSE &#8220;typ&#8221; (type) Header Parameter<\/a> to the <a href=\"https:\/\/www.ietf.org\/archive\/id\/draft-ietf-cose-typ-header-parameter-00.html\">first working group draft<\/a> was only three months:  July 8, 2023 to September 5, 2023.  Which got me thinking&#8230;  Is that the fastest progression I&#8217;ve had?<\/p>\n<p>It turns out that my fastest time from individual draft to working group draft was for the JWK Thumbprint URI specification which I wrote with <a href=\"https:\/\/twitter.com\/kristinayasuda\">Kristina Yasuda<\/a>.  It went from <a href=\"https:\/\/www.ietf.org\/archive\/id\/draft-jones-oauth-jwk-thumbprint-uri-00.html\">individual draft<\/a> to <a href=\"https:\/\/www.ietf.org\/archive\/id\/draft-ietf-oauth-jwk-thumbprint-uri-00.html\">working group draft<\/a> in only two months:  November 24, 2021 to January 28, 2022.  (And it became <a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc9278.html\">RFC 9278<\/a> on August 9, 2022 &#8211; less than nine months from start to finish, which I believe is also a personal record.)<\/p>\n<p>Ironically, while OAuth 2.0 Protected Resource Metadata took over seven years from individual to working group drafts, a closely-related draft, OAuth 2.0 Discovery (which became <a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc8414.html\">RFC 8414<\/a>) was previously my fastest from <a href=\"https:\/\/datatracker.ietf.org\/doc\/html\/draft-jones-oauth-discovery-00.html\">individual draft<\/a> to <a href=\"https:\/\/datatracker.ietf.org\/doc\/html\/draft-ietf-oauth-discovery-00.html\">working group draft<\/a>: 2.5 months!  (The journey to becoming an RFC took 2.5 years.)<\/p>\n<p>The other relative speed demon was Proof-Of-Possession Semantics for JSON Web Tokens (JWTs): 3.5 months from <a href=\"https:\/\/datatracker.ietf.org\/doc\/html\/draft-jones-oauth-proof-of-possession-00.html\">individual draft<\/a> to <a href=\"https:\/\/datatracker.ietf.org\/doc\/html\/draft-ietf-oauth-proof-of-possession-00.html\">working group draft<\/a> and two years from start to <a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc7800.html\">RFC 7800<\/a>.<\/p>\n<hr\/>\n<p>What are my takeaways from all these musings about starting things?<\/p>\n<ul>\n<li><b><i>Starting things is something to celebrate.<\/i><\/b>  It&#8217;s a creative process to go from an idea to something concrete and useful.  But as my COSE co-chair <a href=\"https:\/\/www.linkedin.com\/in\/ivaylo-petrov-a0b17241\/\">Ivaylo Petrov<\/a> wrote, &#8220;We would also like to remind you that adoption does not mean a document is finished, only that it is an acceptable starting point.&#8221;<\/li>\n<li><b><i>Perseverance is essential.<\/i><\/b>  Progressing things can take dedication and persistence.  My most-referenced specification, <a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc7519.html\">JSON Web Token (JWT) &#8211; RFC 7519<\/a>, <a href=\"https:\/\/datatracker.ietf.org\/person\/michael_b_jones@hotmail.com\">referenced from 45 RFCs<\/a>, <a href=\"https:\/\/self-issued.info\/?p=1387\">took 4.5 years<\/a>.<\/li>\n<li><b><i>Focused specifications that do one thing well can progress quickly.<\/i><\/b>  <a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc7800.html\">Proof-Of-Possession Semantics for JSON Web Tokens (JWTs) &#8211; RFC 7800<\/a> and <a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc9278.html\">JWK Thumbprint URI &#8211; RFC 9278<\/a> are prime examples.  I&#8217;m hoping that <a href=\"https:\/\/www.ietf.org\/archive\/id\/draft-ietf-cose-typ-header-parameter-00.html\">COSE &#8220;typ&#8221; (type) Header Parameter<\/a> will be one of these &#8211; a sentiment I shared with co-author <a href=\"https:\/\/twitter.com\/OR13b\">Orie Steele<\/a>.<\/li>\n<li><b><i>Finishing things matters.<\/i><\/b>  That speaks for itself, but it&#8217;s sometimes easier said than done.  Finished things get used!<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve had two different IETF specifications adopted by two different working groups in the last two days &#8211; a pleasant coincidence! Yesterday, the COSE &#8220;typ&#8221; (type) Header Parameter specification was adopted by the COSE working group. Today, the OAuth 2.0 Protected Resource Metadata specification was adopted by the OAuth working group. Their journeys from individual [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[29,32,27,26,25],"tags":[],"class_list":["post-2412","post","type-post","status-publish","format-standard","hentry","category-cbor","category-ietf","category-json","category-oauth","category-specifications"],"_links":{"self":[{"href":"https:\/\/self-issued.info\/index.php?rest_route=\/wp\/v2\/posts\/2412","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/self-issued.info\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/self-issued.info\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/self-issued.info\/index.php?rest_route=\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/self-issued.info\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2412"}],"version-history":[{"count":4,"href":"https:\/\/self-issued.info\/index.php?rest_route=\/wp\/v2\/posts\/2412\/revisions"}],"predecessor-version":[{"id":2416,"href":"https:\/\/self-issued.info\/index.php?rest_route=\/wp\/v2\/posts\/2412\/revisions\/2416"}],"wp:attachment":[{"href":"https:\/\/self-issued.info\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2412"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/self-issued.info\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2412"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/self-issued.info\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2412"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}