Autores: Microsoft Edge Team Última actualización: 2018-12-06
Durante los últimos años, Microsoft ha aumentado significativamente la participación en la comunidad de software de código abierto (OSS), convirtiéndose en uno de los mayores partidarios del mundo de proyectos OSS. Estamos comenzando una ruta para adoptar el código abierto de Chromium en el desarrollo de Microsoft Edge en el escritorio, convirtiéndose en un contribuyente y un usuario más amplio de su código abierto para que podamos crear una mejor compatibilidad web para nuestros clientes y menos fragmentación de la web para todos desarrolladores web.
Este documento existe para aclarar nuestro pensamiento sobre cómo continuará ese trabajo : queremos explicar nuestros planes e intenciones relacionadas con Microsoft Edge y el Proyecto de Fondos Abiertos de Chromium. El público que creemos que encontrarán este documento más relevante y útil son (a) las personas que trabajan en cromo como aprobadores/mantenedores y lideran ese proyecto (b) las compañías e ingenieros que construyen otros navegadores y estarán interesados en las contribuciones que planeamos Haga, y (c) la comunidad más amplia de desarrolladores web, gerentes de TI corporativos y socios con los que trabajamos en Windows y Microsoft Edge. Y, por supuesto, a nosotros y a todos aquellos audiencias se preocupan principalmente por el usuario final, que en última instancia es el público que este trabajo tiene la intención de beneficiarse.
Trabajar con código abierto no es nuevo para Microsoft Edge. Nuestro nuevo navegador móvil se ha basado en código abierto desde sus inicios hace más de un año. También hemos utilizado el código abierto para varias características de Microsoft Edge en el escritorio (por ejemplo, ángulo de la corriente, audio web, brotli) y hemos comenzado a hacer contribuciones al proyecto de Chromium para ayudar a mover la navegación hacia adelante en nuevos dispositivos de Windows a base de brazo. En ese contexto, hemos estado pensando en los planes de adoptar el proyecto de código abierto de Chromium en el desarrollo de Microsoft Edge en el escritorio para crear una mejor compatibilidad web para nuestros clientes y menos fragmentación de la web para todos sus desarrolladores, y estamos ahora listo para avanzar.
Como parte de esto, esperamos y tenemos la intención de convertirnos en un contribuyente significativo para el cromo, de una manera que puede hacer no solo Microsoft Edge, sino también otros navegadores, mejor tanto en PC y otros dispositivos. Hemos escrito nuestros "Principios OSS para Microsoft Edge" a continuación y "What Happens A continuación" para describir claramente nuestro enfoque de las contribuciones.
Nuestro plan es participar de una manera que abarque el modelo de código abierto bien establecido que ha estado funcionando de manera efectiva durante años: contribuciones significativas y positivas que se alinean con la arquitectura de larga data, ingeniería colaborativa y teniendo en cuenta que nosotros, juntos, juntos, juntos, juntos, juntos Como comunidad, busque el mejor resultado para todas las personas que usan la web en muchos dispositivos.
Nuestra intención está profundamente informada por nuestro contexto. Históricamente, Microsoft se ha centrado en tres circunscripciones principales: usuarios finales, desarrolladores y empresas/organizaciones. Estas audiencias han informado las inversiones que hemos realizado en Internet Explorer en el pasado, y ahora informan las inversiones que realizamos en Microsoft Edge. Como hemos escuchado a estos clientes en los últimos años, un tema consistente que hacen eco es la mayor complejidad de sus entornos y un deseo de consistencia, simplicidad, confiabilidad, compatibilidad.
Nos hemos asociado efectivamente con Google y otros proveedores de navegadores a lo largo de los años, primero en el W3C y ahora aún más estrechamente a través del WhatWG, para crear estándares comunes para la plataforma web para reducir esta complejidad y mejorar la experiencia web general. Si bien los proveedores de navegadores en toda la industria han logrado un progreso significativo en la alineación con estos estándares comunes, las implementaciones subyacentes y los diferentes horarios de lanzamiento han creado dificultades para que nuestros desarrolladores se beneficien completamente de las promesas de la web abierta.
Ahora vemos una oportunidad para avanzar de una manera más profunda en una plataforma web compatible común que servirá bien a los clientes de Microsoft y proporcionará un beneficio mutuo para la comunidad web más grande mientras mantiene los beneficios del mercado de la diversidad competitiva en el ecosistema del navegador. Considere las siguientes oportunidades a medida que las vemos en nuestros segmentos de clientes:
Usadores finales : aunque Microsoft Edge tiene una compatibilidad web muy alta para HTML basado en estándares y para las capacidades agregadas por navegadores de alta usa como Chrome, nuestra base de código de plataforma web única todavía enfrenta problemas de compatibilidad ocasionales a medida que los desarrolladores web se centran menos en los estándares HTML y Centrarse racionalmente en plataformas ampliamente utilizadas como Chrome para desarrollar y validar experiencias para sus clientes. Si bien trabajamos duro para realizar actualizaciones y solucionar estos problemas continuamente, nuestra implementación de Microsoft Edge como un componente que se envía únicamente en el mismo horario que el sistema operativo completo de Windows ha ralentizado nuestra capacidad de actualizar, causando fragmentación de plataformas y exponiendo los espacios de compatibilidad. Creemos que un mayor uso del software de código abierto (OSS) puede mejorar esta experiencia para nuestros usuarios finales.
Fuera del navegador Microsoft Edge, los usuarios de otros navegadores en las PC de Windows a veces enfrentan conjuntos de características inconsistentes y rendimiento/vida de batería en todos los tipos de dispositivos. Algunos navegadores han tenido un progreso más lento para adoptar nuevas capacidades de Windows como procesadores de tacto y brazo. Como saben, recientemente hemos comenzado a hacer contribuciones que proporcionan este tipo de soporte de hardware a los navegadores basados en el cromo, y creemos que este enfoque puede generalizarse: creemos que podemos ayudar a acelerar la web y la experiencia de los usuarios. Contribuyendo nuevas capacidades al código abierto de cromo para el beneficio de todos estos navegadores y usuarios.
Desarrolladores : a medida que la web ha crecido en un uso en una variedad cada vez mayor de tipos de dispositivos, la complejidad y la sobrecarga involucrada en las pruebas de sitios web han explotado. Dado que los desarrolladores web, particularmente aquellos en pequeñas empresas, necesitan probar tantos sistemas diferentes, es casi imposible asegurarse de que los sitios interesantes funcionen bien en todos los tipos de dispositivos y todos los navegadores. Esperamos simplificar esta matriz para los desarrolladores web alineando la plataforma web de Microsoft Edge con otros navegadores de cromo y proporcionar capacidades significativas y alineadas en Windows que cualquier navegador puede usar.
Corporate IT : los gerentes de TI enfrentan la complejidad posterior de los usuarios con muchos tipos de dispositivos diferentes, utilizando sitios nuevos y antiguos, en dispositivos propiedad tanto personalmente como por la corporación. Vemos un valor significativo en la creación de una mejor compatibilidad web y una plataforma web alineada entre los navegadores para Corp IT, independientemente de la plataforma de dispositivos.
Lo que es común en todas estas audiencias es el beneficio de dos lados que creemos que podemos traerlos cuando (a) diseñamos nuevas capacidades valiosas en un proyecto de código abierto compartido, en beneficio de múltiples navegadores, y (b) utilizamos cada vez más eso compartido. de código abierto en el navegador que distribuimos a escala. Tenemos la intención de hacer ambos.
Durante el último año, hemos comenzado a participar en los proyectos de código abierto de Chromium y WebRTC (entre otras áreas de OSS más ampliamente en Microsoft), y nuestros esfuerzos han aumentado a medida que consideramos una gama más amplia de tipos de dispositivos. Algunos ejemplos incluyen ...
Porting Chromo a Arm64 : hemos trabajado significativo en colaboración con los ingenieros de Google para permitir que los navegadores basados en el cromo compilen y funcionen de forma nativa en las ventanas en los dispositivos ARM. Debido a nuestra inversión de ingeniería, los navegadores basados en Chromium pronto podrán enviar implementaciones nativas para las PC de Windows basadas en ARM, lo que mejora significativamente su rendimiento y duración de la batería. Este es un gran ejemplo de que nosotros realizamos inversiones en Chromium para mover la experiencia web en una gama de navegadores en estos nuevos tipos de PC.
Permitir que WEBRTC funcione para las aplicaciones de Windows UWP : durante más de un año, hemos estado trabajando en WEBRTC para la plataforma Universal Windows (UWP). Esto ofrece a los desarrolladores una solución de WEBRTC para todas nuestras plataformas de Windows 10, incluidos Desktop, Xbox, Hololens/VR e IoT. La semana pasada, anunciamos nuestro acuerdo con Google para impulsar la bifurcación UWP de WebRTC lib a Webrtc.org Repo.
Mejora del ángulo : en el pasado, hemos realizado mejoras en el backend D3D11 de Angle y mejorar su rendimiento. Más recientemente, colaboramos con Intel y el equipo de Angle en mejoras adicionales para hacer que Angle sea el backend oficial de WebGL en Microsoft Edge.
Reconocemos que estos son ejemplos modestos pero importantes de contribuciones de código abierto orientadas a la web. Ambos nos han proporcionado una perspectiva valiosa sobre cómo podemos usar colaborativamente y contribuir al cromo de manera saludable. En todo Microsoft, nuestra experiencia y enfoque de OSS ha crecido, y nuestros equipos web están entusiasmados de tomar estas lecciones y mover la experiencia web para millones de personas hacia adelante.
Llegar a las tachuelas de latón ... Hemos reunido este documento para ser transparentes a los contribuyentes y socios relevantes de OSS sobre nuestra intención.
Si bien hemos sido consumidores de CHROMIUM Open Source para enviar nuestro navegador móvil Microsoft Edge y para algunos componentes de Microsoft Edge Desktop, hemos tomado la decisión de mover mucho más de Microsoft Edge Desktop para usar Cromium Open Source y aumentar nuestras contribuciones Volver a esta comunidad.
Los aspectos clave de esta evolución en la dirección para Microsoft Edge son:
Adoptaremos Chromium como plataforma web para Microsoft Edge Desktop . Nuestro deseo aquí es alinear la plataforma web de Microsoft Edge tanto (a) con estándares web como (b) con otros navegadores basados en cromo, para mejorar la compatibilidad y una matriz de pruebas más simple para los desarrolladores.
Evolucionaremos la arquitectura de aplicaciones de Microsoft Edge, permitiendo la distribución a todas las versiones compatibles de Windows, incluidas Windows 7 y Windows 8, así como Windows 10. También llevaremos Microsoft Edge a otras plataformas de escritorio, como Macos . Mejorar la experiencia web para los usuarios finales (mejor compatibilidad) y los desarrolladores (menos fragmentación) requiere una plataforma web consistente lo más ampliamente disponible posible. Para lograr esto, utilizaremos la tecnología de aplicaciones multiplataforma de Chromium junto con un cambio en nuestro modelo de distribución, de modo que la experiencia de Microsoft Edge y la plataforma web estén disponibles en todos los sistemas operativos compatibles.
Ofreceremos nuestra experiencia en la plataforma de Windows para mejorar la experiencia de todos los navegadores basados en cromo en Windows . Nuestra filosofía de una mayor participación en el código abierto de Chromium adoptará la contribución de la nueva tecnología beneficiosa, de acuerdo con parte del trabajo que describimos anteriormente. Reconocemos que mejorar la web en Windows es bueno para nuestros clientes, socios y nuestro negocio, y tenemos la intención de contribuir activamente a ese fin. Agradecemos la oportunidad de asociarnos con la comunidad de Chromium en las áreas de duración de la batería, tacto, accesibilidad, seguridad y otras áreas de interés mutuo.
Un objetivo clave para proporcionar este documento a los equipos y personas que ya están inmersas en Chromium Oss es indicar cómo planeamos contribuir y iniciar la planificación de la ingeniería necesaria para llevar una nueva tecnología valiosa a los navegadores de cromo.
Estamos emocionados de involucrarnos más profundamente con el proyecto de cromo más amplio. Esta ha sido una decisión muy arraigada y que creemos que es el siguiente paso correcto. Dicho esto, estamos dando ese paso en el espíritu de aprendizaje. Sabemos que tenemos mucho que aprender a medida que aumentamos nuestro uso y contribuciones al cromo, y esperamos participar y contribuir a la comunidad en general de manera colaborativa. Esperamos evolucionar la naturaleza y el alcance de nuestra participación con el tiempo.
Estamos tomando esta decisión a largo plazo . Esperamos que nuestros ingenieros aprendan y con el tiempo se conviertan en expertos en el proyecto de cromo y se conviertan en miembros activos y responsables de la comunidad. Estamos ansiosos por aumentar nuestras contribuciones al proyecto de Chromium y continuaremos manteniendo cualquier contribución que hagamos.
Al buscar mejoras en la plataforma web, nuestra posición predeterminada será contribuir . Estamos enfocados en entregar un navegador de clase mundial con Microsoft Edge a través de sus características diferenciadas de experiencia de usuario y servicios conectados, pero en lo que respecta a las nuevas capacidades de la plataforma, buscaremos una "marea ascendente que flote todos los barcos". Comenzaremos con correcciones de errores y contribuciones significativas en áreas como el soporte de ARM64, la accesibilidad, la seguridad, la entrada táctil y las mejoras de energía en las ventanas.
Reconocemos y respetamos los requisitos de arquitectura y el enfoque de ingeniería que son intrínsecos en los proyectos de código abierto web y han hecho que el cromo sea exitoso . Hay muchos aspectos que han gobernado el cromo oss y otros proyectos: soporte de dispositivos múltiples, soporte múltiple, ingeniería rigurosa en tiempo real, etc. Aunque históricamente nuestra compañía se ha centrado en las PC de Windows y creemos que podemos hacer contribuciones que Mejorar los navegadores en Windows, también entendemos que los proyectos de OSS web adoptan una amplia gama de tipos de dispositivos, incluido Android, y que las contribuciones deben acomodar esta diversidad de dispositivos. Contribuiremos de una manera que sea consistente con el diseño arquitectónico que satisface las necesidades multiplataforma y del dispositivo cruzado de Chromium.
Creemos que la evolución de la web abierta es mejor servida a través de las comunidades estándares y los beneficios web abiertos del debate abierto desde una amplia variedad de perspectivas . Permaneceremos profundamente y vigorosamente involucrados en las discusiones de estándares en el contexto de la W3C, ECMA y Whatwg, donde se pueden escuchar y considerar las perspectivas de los proveedores que desarrollan navegadores competidores y la comunidad web más grande.
A medida que avanzamos nuestro trabajo de OSS y consideramos los lugares donde nuestra experiencia en ingeniería puede marcar la mayor diferencia para los usuarios y desarrolladores, hemos reunido una lista inicial de "áreas de enfoque" de contribución.
Nos gustaría subrayar que vemos esta lista simplemente como el punto de partida, algunas áreas donde podemos aprender/practicar juntos y crear un valor significativo en la base de código de cromo para todos sus consumidores.
ARM64 - Nuestros planes aquí son continuar/terminar el trabajo de portada que trae la base de código de cromo para admitir el ARM -64 y, por lo tanto, se pueden enviar navegadores que admiten estos dispositivos de forma nativa.
Accesibilidad : para satisfacer las necesidades de todos nuestros clientes, tenemos la intención de aprovechar la accesibilidad de la base de código de Chromium agregando interfaces de automatización de UI (UIA) de Microsoft para admitir narradores y otras tecnologías de asistencia en Windows, integrando con la configuración de acceso de Windows, como la configuración de acceso, como Estilización de alto contraste y subtítulos, mejorando los controles de accesibilidad y soporte de navegación de caret.
Evolución de PC -hardware para tipos de entrada modernos (por ejemplo): podemos ayudar a mejorar el toque de escritorio, el reconocimiento de gestos y la suavidad de desplazamiento/panorámica, particularmente en dispositivos de Windows más nuevos y modernos.
Seguridad : por supuesto, es de suma importancia para todos los proveedores de navegadores que los usuarios web se mantengan lo más seguros posible. En apoyo de este objetivo compartido, esperamos asociarnos estrechamente con el equipo de seguridad de Chromium y contribuir con nuestra experiencia con la creación de software seguro en general, y nuestra experiencia con la plataforma Windows, en particular.
Este es un gran paso para Microsoft, para el equipo de Microsoft Edge, y reconocemos que también será un gran paso para el proyecto de Chromium. Estamos entusiasmados con el beneficio que creemos que esto traerá a la comunidad web más grande. Estamos ansiosos por comenzar a participar con nuestras homólogos en Google y los otros contribuyentes al Proyecto Chromium, y en el proyecto de Chromium en general, sobre cómo podemos avanzar juntos en una plataforma web común. Al mismo tiempo, reconocemos el valor de la competencia y tenemos la intención de traer a la vida nuestra mejor visión para un navegador de Microsoft Edge que se basa en el código abierto de Chromium a través de características diferenciadas de experiencia de usuario y servicios conectados.
Ya tenemos relaciones laborales positivas con muchos contribuyentes de cromo basados en nuestro trabajo en los organismos de estándares y en esfuerzos de ingeniería compartidos previos. Esperamos construir sobre esas relaciones y aprender como para que vamos cómo podemos contribuir mejor a esta implementación de la web abierta.
Para proporcionar un sentido más específico de con qué acciones tomaremos y después de este memorando, aquí está la lista corta:
¡Invitamos sus comentarios, consejos y comentarios a medida que comenzamos a interactuar con usted en el proyecto de cromo!