{"id":2194,"date":"2021-09-17T10:30:00","date_gmt":"2021-09-17T14:30:00","guid":{"rendered":"https:\/\/www.pwvconsultants.com\/blog\/?p=2194"},"modified":"2021-09-16T17:44:31","modified_gmt":"2021-09-16T21:44:31","slug":"deprecation-of-javascript-iframe-functions-begins","status":"publish","type":"post","link":"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/","title":{"rendered":"Deprecation of JavaScript iFrame Functions Begins"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\" id=\"h-chrome-removes-support-for-certain-javascript-iframe-functions-breaking-websites-and-applications-the-lack-of-timeline-communication-to-developers-forced-chrome-to-temporarily-roll-back-the-change\">Chrome removes support for certain JavaScript iFrame functions, breaking websites and applications. The lack of timeline communication to developers forced Chrome to temporarily roll back the change.<\/h2>\n\n\n\n<p>There has long been a standing rule among developers, a sort of \u201cprime directive\u201d way to approach standards. That rule says, \u201cDon\u2019t break the internet.\u201d It doesn\u2019t matter what project you are working on or what you\u2019re trying to do, just don\u2019t break the internet. Yet that\u2019s exactly what happened when Chrome removed support for certain JavaScript functions in iFrame (cross-domain) platforms. Removal of alert functions saw web apps and web pages break and lose all functionality over the last few weeks, causing Chrome to roll back the update to give devs time to prepare for the change.<\/p>\n\n\n\n<p>The handling of the deprecation of some JavaScript functions, including alert(), confirm(), and prompt(), was not done well by Chrome. While they posted an <a href=\"https:\/\/groups.google.com\/a\/chromium.org\/g\/blink-dev\/c\/hTOXiBj3D6A\/m\/PVc8zwKTAwAJ?pli=1\" target=\"_blank\" rel=\"noreferrer noopener\">Intent to Remove<\/a> notice, citing security issues with iFrame alert functions, their timeline of deprecating the functions was not published. One day, they simply stopped working, much to the chagrin of devs worldwide. Which is why they rolled back the change, temporarily, to allow devs time to adjust for the change.<\/p>\n\n\n\n<p>This change is also the first step in removing support for JavaScript dialogs in cross-origin iFrames on the web platform entirely. Yes, entirely. JavaScript dialogs are not going anywhere yet, but, at some point in the future, you will not be able to use them across domains AT ALL.&nbsp;<\/p>\n\n\n\n<p>According to CodePen\u2019s <a href=\"https:\/\/css-tricks.com\/choice-words-about-the-upcoming-deprecation-of-javascript-dialogs\/\" target=\"_blank\" rel=\"noreferrer noopener\">Chris Coyier<\/a>, which uses cross-origin iFrames for every customer, \u201cFor now, even the cross-origin removal is delayed until January 2022, but as far as we know this is going to proceed, and then subsequent steps will happen to remove them entirely. This is <a href=\"https:\/\/github.com\/whatwg\/html\/issues\/5407\">spearheaded by Chrome<\/a>, but <a href=\"https:\/\/www.chromestatus.com\/feature\/5148698084376576\" target=\"_blank\" rel=\"noreferrer noopener\">the status reports<\/a> that both <a href=\"https:\/\/bugzilla.mozilla.org\/show_bug.cgi?id=1624978\" target=\"_blank\" rel=\"noreferrer noopener\">Firefox<\/a> and Safari are on board with the change. Plus, this is <a href=\"https:\/\/github.com\/whatwg\/html\/commit\/7c8fb864f83341dd55f851d86692d553eb164687\" target=\"_blank\" rel=\"noreferrer noopener\">a specced change<\/a>, so I guess we can waggle our fingers literally everywhere here, if you, like me, feel like this wasn\u2019t particularly well-handled.\u201d<\/p>\n\n\n\n<p>Indeed, the sentiment among devs is that this wasn\u2019t well-handled at all. However, the good news is that there is now awareness that this is happening, whether we like it or not. The bad news is that JavaScript using iframe dialogs will break and have to be re-written with the new methods. It\u2019s not just Chromium that is deprecating cross-origin iFrames, Firefox, Safari and Microsoft are all in line to do the same.<\/p>\n\n\n\n<p>The ramifications of this are unknown. The question remains, why not update these functions rather than remove them entirely? Not only will this require an intense re-education for current devs to figure out new ways to provide the same functions to their users, but it will also cause users (and even some devs) to use older browsers longer. Using older browsers poses a security risk for businesses because they lack support. And if your business has a regular modernization cycle (which it should), then those older browsers cause technical debt your business doesn\u2019t need.<\/p>\n\n\n\n<p>As a business leader or owner, you want to make sure that all of your systems are up to date, that all software and known vulnerabilities in technology are patched, that tech debt is kept to a minimum. Most devs and internal IT teams are incredibly overworked and struggling to keep up with their daily tasks. Don\u2019t make more work for them, bring in an expert who can help you ensure your business and security are modernized and stable. Big changes like this happen from time-to-time, so it\u2019s important you have someone you can call at a moment\u2019s notice for assistance. Build that relationship and make sure your business stays in business!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The rollout of deprecating certain JavaScript iFrame functions was poorly handled. It marks the beginning of the end of cross-domain dialogs<\/p>\n","protected":false},"author":1,"featured_media":2221,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"content-type":"","footnotes":""},"categories":[599,2118,12,14],"tags":[1973,1569,602,31,2409,2000,1904,19,17,571,2410],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v22.2 (Yoast SEO v22.2) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Deprecation of JavaScript iFrame Functions Begins - PWV Consultants<\/title>\n<meta name=\"description\" content=\"The rollout of deprecating certain JavaScript iFrame functions was poorly handled. It marks the beginning of the end of cross-domain dialogs\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Deprecation of JavaScript iFrame Functions Begins\" \/>\n<meta property=\"og:description\" content=\"The rollout of deprecating certain JavaScript iFrame functions was poorly handled. It marks the beginning of the end of cross-domain dialogs\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/\" \/>\n<meta property=\"og:site_name\" content=\"PWV Consultants\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/PWV-Consultants-110444033947964\" \/>\n<meta property=\"article:published_time\" content=\"2021-09-17T14:30:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-09-16T21:44:31+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.pwvconsultants.com\/blog\/wp-content\/uploads\/2021\/09\/Deprecating-JavaScript-scaled.jpeg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1600\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Pieter VanIperen\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@PWV_Consultants\" \/>\n<meta name=\"twitter:site\" content=\"@PWV_Consultants\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Pieter VanIperen\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/\"},\"author\":{\"name\":\"Pieter VanIperen\",\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/#\/schema\/person\/c15d5d40126a8ad906cb3067de95f8d4\"},\"headline\":\"Deprecation of JavaScript iFrame Functions Begins\",\"datePublished\":\"2021-09-17T14:30:00+00:00\",\"dateModified\":\"2021-09-16T21:44:31+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/\"},\"wordCount\":638,\"publisher\":{\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.pwvconsultants.com\/blog\/wp-content\/uploads\/2021\/09\/Deprecating-JavaScript-scaled.jpeg\",\"keywords\":[\"Application\",\"code\",\"Coding\",\"Cybersecurity\",\"deprecation\",\"development\",\"JavaScript\",\"Modernization\",\"Security\",\"technology\",\"web page\"],\"articleSection\":[\"Coding\",\"Development\",\"Modernization\",\"Security\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/\",\"url\":\"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/\",\"name\":\"Deprecation of JavaScript iFrame Functions Begins - PWV Consultants\",\"isPartOf\":{\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.pwvconsultants.com\/blog\/wp-content\/uploads\/2021\/09\/Deprecating-JavaScript-scaled.jpeg\",\"datePublished\":\"2021-09-17T14:30:00+00:00\",\"dateModified\":\"2021-09-16T21:44:31+00:00\",\"description\":\"The rollout of deprecating certain JavaScript iFrame functions was poorly handled. It marks the beginning of the end of cross-domain dialogs\",\"breadcrumb\":{\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/#primaryimage\",\"url\":\"https:\/\/www.pwvconsultants.com\/blog\/wp-content\/uploads\/2021\/09\/Deprecating-JavaScript-scaled.jpeg\",\"contentUrl\":\"https:\/\/www.pwvconsultants.com\/blog\/wp-content\/uploads\/2021\/09\/Deprecating-JavaScript-scaled.jpeg\",\"width\":2560,\"height\":1600,\"caption\":\"Oops 404 error page, vector template\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.pwvconsultants.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Deprecation of JavaScript iFrame Functions Begins\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/#website\",\"url\":\"https:\/\/www.pwvconsultants.com\/blog\/\",\"name\":\"PWV Consultants\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.pwvconsultants.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/#organization\",\"name\":\"PWV Consultants\",\"url\":\"https:\/\/www.pwvconsultants.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.pwvconsultants.com\/blog\/wp-content\/uploads\/2020\/04\/logo-alternate-e1585773530392.png\",\"contentUrl\":\"https:\/\/www.pwvconsultants.com\/blog\/wp-content\/uploads\/2020\/04\/logo-alternate-e1585773530392.png\",\"width\":98,\"height\":84,\"caption\":\"PWV Consultants\"},\"image\":{\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/PWV-Consultants-110444033947964\",\"https:\/\/twitter.com\/PWV_Consultants\",\"https:\/\/www.linkedin.com\/company\/pwv-consultants\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/#\/schema\/person\/c15d5d40126a8ad906cb3067de95f8d4\",\"name\":\"Pieter VanIperen\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.pwvconsultants.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/8b294918257a810803e2befc9a71b7bc?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/8b294918257a810803e2befc9a71b7bc?s=96&d=mm&r=g\",\"caption\":\"Pieter VanIperen\"},\"description\":\"PWV Consultants is a boutique group of industry leaders and influencers from the digital tech, security and design industries that acts as trusted technical partners for many Fortune 500 companies, high-visibility startups, universities, defense agencies, and NGOs. Founded by 20-year software engineering veterans, who have founded or co-founder several companies. PWV experts act as a trusted advisors and mentors to numerous early stage startups, and have held the titles of software and software security executive, consultant and professor. PWV's expert consulting and advisory work spans several high impact industries in finance, media, medical tech, and defense contracting. PWV's founding experts also authored the highly influential precursor HAZL (jADE) programming language.\",\"sameAs\":[\"https:\/\/www.linkedin.com\/company\/pwv-consultants\"]}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Deprecation of JavaScript iFrame Functions Begins - PWV Consultants","description":"The rollout of deprecating certain JavaScript iFrame functions was poorly handled. It marks the beginning of the end of cross-domain dialogs","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/","og_locale":"en_US","og_type":"article","og_title":"Deprecation of JavaScript iFrame Functions Begins","og_description":"The rollout of deprecating certain JavaScript iFrame functions was poorly handled. It marks the beginning of the end of cross-domain dialogs","og_url":"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/","og_site_name":"PWV Consultants","article_publisher":"https:\/\/www.facebook.com\/PWV-Consultants-110444033947964","article_published_time":"2021-09-17T14:30:00+00:00","article_modified_time":"2021-09-16T21:44:31+00:00","og_image":[{"width":2560,"height":1600,"url":"https:\/\/www.pwvconsultants.com\/blog\/wp-content\/uploads\/2021\/09\/Deprecating-JavaScript-scaled.jpeg","type":"image\/jpeg"}],"author":"Pieter VanIperen","twitter_card":"summary_large_image","twitter_creator":"@PWV_Consultants","twitter_site":"@PWV_Consultants","twitter_misc":{"Written by":"Pieter VanIperen","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/#article","isPartOf":{"@id":"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/"},"author":{"name":"Pieter VanIperen","@id":"https:\/\/www.pwvconsultants.com\/blog\/#\/schema\/person\/c15d5d40126a8ad906cb3067de95f8d4"},"headline":"Deprecation of JavaScript iFrame Functions Begins","datePublished":"2021-09-17T14:30:00+00:00","dateModified":"2021-09-16T21:44:31+00:00","mainEntityOfPage":{"@id":"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/"},"wordCount":638,"publisher":{"@id":"https:\/\/www.pwvconsultants.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/#primaryimage"},"thumbnailUrl":"https:\/\/www.pwvconsultants.com\/blog\/wp-content\/uploads\/2021\/09\/Deprecating-JavaScript-scaled.jpeg","keywords":["Application","code","Coding","Cybersecurity","deprecation","development","JavaScript","Modernization","Security","technology","web page"],"articleSection":["Coding","Development","Modernization","Security"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/","url":"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/","name":"Deprecation of JavaScript iFrame Functions Begins - PWV Consultants","isPartOf":{"@id":"https:\/\/www.pwvconsultants.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/#primaryimage"},"image":{"@id":"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/#primaryimage"},"thumbnailUrl":"https:\/\/www.pwvconsultants.com\/blog\/wp-content\/uploads\/2021\/09\/Deprecating-JavaScript-scaled.jpeg","datePublished":"2021-09-17T14:30:00+00:00","dateModified":"2021-09-16T21:44:31+00:00","description":"The rollout of deprecating certain JavaScript iFrame functions was poorly handled. It marks the beginning of the end of cross-domain dialogs","breadcrumb":{"@id":"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/#primaryimage","url":"https:\/\/www.pwvconsultants.com\/blog\/wp-content\/uploads\/2021\/09\/Deprecating-JavaScript-scaled.jpeg","contentUrl":"https:\/\/www.pwvconsultants.com\/blog\/wp-content\/uploads\/2021\/09\/Deprecating-JavaScript-scaled.jpeg","width":2560,"height":1600,"caption":"Oops 404 error page, vector template"},{"@type":"BreadcrumbList","@id":"https:\/\/www.pwvconsultants.com\/blog\/deprecation-of-javascript-iframe-functions-begins\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.pwvconsultants.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Deprecation of JavaScript iFrame Functions Begins"}]},{"@type":"WebSite","@id":"https:\/\/www.pwvconsultants.com\/blog\/#website","url":"https:\/\/www.pwvconsultants.com\/blog\/","name":"PWV Consultants","description":"","publisher":{"@id":"https:\/\/www.pwvconsultants.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.pwvconsultants.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.pwvconsultants.com\/blog\/#organization","name":"PWV Consultants","url":"https:\/\/www.pwvconsultants.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.pwvconsultants.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.pwvconsultants.com\/blog\/wp-content\/uploads\/2020\/04\/logo-alternate-e1585773530392.png","contentUrl":"https:\/\/www.pwvconsultants.com\/blog\/wp-content\/uploads\/2020\/04\/logo-alternate-e1585773530392.png","width":98,"height":84,"caption":"PWV Consultants"},"image":{"@id":"https:\/\/www.pwvconsultants.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/PWV-Consultants-110444033947964","https:\/\/twitter.com\/PWV_Consultants","https:\/\/www.linkedin.com\/company\/pwv-consultants"]},{"@type":"Person","@id":"https:\/\/www.pwvconsultants.com\/blog\/#\/schema\/person\/c15d5d40126a8ad906cb3067de95f8d4","name":"Pieter VanIperen","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.pwvconsultants.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/8b294918257a810803e2befc9a71b7bc?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/8b294918257a810803e2befc9a71b7bc?s=96&d=mm&r=g","caption":"Pieter VanIperen"},"description":"PWV Consultants is a boutique group of industry leaders and influencers from the digital tech, security and design industries that acts as trusted technical partners for many Fortune 500 companies, high-visibility startups, universities, defense agencies, and NGOs. Founded by 20-year software engineering veterans, who have founded or co-founder several companies. PWV experts act as a trusted advisors and mentors to numerous early stage startups, and have held the titles of software and software security executive, consultant and professor. PWV's expert consulting and advisory work spans several high impact industries in finance, media, medical tech, and defense contracting. PWV's founding experts also authored the highly influential precursor HAZL (jADE) programming language.","sameAs":["https:\/\/www.linkedin.com\/company\/pwv-consultants"]}]}},"_links":{"self":[{"href":"https:\/\/www.pwvconsultants.com\/blog\/wp-json\/wp\/v2\/posts\/2194"}],"collection":[{"href":"https:\/\/www.pwvconsultants.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.pwvconsultants.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.pwvconsultants.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pwvconsultants.com\/blog\/wp-json\/wp\/v2\/comments?post=2194"}],"version-history":[{"count":6,"href":"https:\/\/www.pwvconsultants.com\/blog\/wp-json\/wp\/v2\/posts\/2194\/revisions"}],"predecessor-version":[{"id":2222,"href":"https:\/\/www.pwvconsultants.com\/blog\/wp-json\/wp\/v2\/posts\/2194\/revisions\/2222"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.pwvconsultants.com\/blog\/wp-json\/wp\/v2\/media\/2221"}],"wp:attachment":[{"href":"https:\/\/www.pwvconsultants.com\/blog\/wp-json\/wp\/v2\/media?parent=2194"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.pwvconsultants.com\/blog\/wp-json\/wp\/v2\/categories?post=2194"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.pwvconsultants.com\/blog\/wp-json\/wp\/v2\/tags?post=2194"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}