This has apparently been in the works for over a year, but it’s just recently popped-up on my radar as a I’ve received a browser extension warnings for a few tools…
‘NPAPI’ is the ‘Netscape Plugin Application Programming Interface’ architecture used for a majority of web browser plugins – such as Quicktime, Flash, etc. It was initiated by the fine folks at Abobe in order to help integrate their PDF technology (Acrobat) with the web experience. You can read more about the history of NPAPI at Wikipedia.
Google’s Chrome browser has planned dropping support for NPAPI plugins since 2013, according to that article, due to “NPAPI’s 90s-era architecture [becoming] a leading cause of hangs, crashes, security incidents, and code complexity.”
So more recent versions of Chrome have blocked any such plugins from running without explicit permission which, to me, was fine (in the guise of a bit more secure). But now, with Chrome v42, such plugins just won’t start at all!
According to the ‘NPAPI deprecation: developer guide‘,
“In April 2015 (Chrome 42) NPAPI support will be disabled by default in Chrome and we will unpublish extensions requiring NPAPI plugins from the Chrome Web Store…We will provide an override for advanced users (via chrome://flags/#enable-npapi) and enterprises (via Enterprise Policy) to temporarily re-enable NPAPI (via the page action UI) while they wait for mission-critical plugins to make the transition…
In September 2015 (Chrome 45) we will remove the override and NPAPI support will be permanently removed from Chrome. Installed extensions that require NPAPI plugins will no longer be able to load those plugins.”
So how does this affect us in the eLearning World? Probably not horribly overall…unless your eLearning development or delivery depends on Java or similar plugins.
I’ve worked with a few companies that originally had web-based video integrated into their online content via the QuickTime player…and while not ideal these days (in favor of HTML5 video support), and aside from requiring users to download the QT plugin, it’s worked fine overall – delivering quality video over a variety of connections.
Now, however, they really need to move on to HTML5/MP4 video.
Perhaps one of the biggest issue may be the vast amount of web applications that depend on Silverlight or Java, such as Blackboard, Screenr, Panopto, Screencast-o-matic, and Unity. Such applications currently suggest forcing support of Java in Chrome, or using a different browser…but all such web tools need to start working on alternatives (i.e. Screencast-o-matic has developed a local ‘launcher’ to run the tool via Java if browser support is not present; Panopto is migrating to Flash and HTML5 support)
University sites such as UNH and Carnegie are suggesting students simply move to using NON-Chrome browsers, at least for now while other browsers still support the NPAPI architecture (and rumor has it Firefox is not far behind in deprecating NPAPI support). Ultimately, it’ll be up to Oracle (who maintains Java) to port the NPAPI plugin to a supported alternative, such as NACL. Whether they will or not, I don’t have any grapevines to source…
One piece of good news; as I understand it, Chrome has integrated the Flash plugin into its codebase for years…so since Flash support on Chrome does NOT require the NPAPI browser plugin – so there should not be any issue with interacting with Flash-published (SWF) content in Chrome (exception: Chrome for Android does NOT include the Flash player components).
I already have IE, Firefox, and Chrome installed on my various machines, and I’m fairly used to flipping between browsers to check design output and performance, so I’m not terribly concerned about switching to, say, IE if I encounter such an issue…
…but it doesn’t make my day any easier (though hopefully more ‘secure’)
One way to see what plugins you have installed is to type:
into your Chrome address bar. The resulting list are the ‘plug-ins’ you have installed.
Or, of course, you can wait til you run a web piece that just shows a broken plugin and understand it’s probably Chrome’s dropping of NPAPI that’s resulted in that ‘error’.
For more techie details on Chrome’s NPAPI support overall, head over to the Chromium Blog (NPAPI Deprecation).