Tal vez usted, o alguien que conozca, haya experimentado las dificultades de la interacción con la computadora para los discapacitados. En general, los sistemas operativos y las suites de software han hecho las disposiciones de accesibilidad para la audiencia con discapacidad auditiva, la audiencia con discapacidad visual y la internacionalización; Sin embargo, la web abierta no se ha puesto al día tan rápido. Muchos sitios ignoran completamente la accesibilidad.
Quizás una de las razones para esto es que posiblemente no haya una fuente de contenido actualizado y digerible centrado exclusivamente en la accesibilidad.
El Proyecto de Accesibilidad (a11yproject.com) está cambiando esto. Al ofrecer una plataforma abierta (a través de GitHub), a11yproject está creando un conjunto de contenido autocurador de fuentes múltiples que es digerible, A hoy, y indulgente. (Ver su página sobre).
El Proyecto de accesibilidad es un gran ejemplo de cómo la tecnología puede ayudar a apoyar el desarrollo colaborativo. Cualquiera puede contribuir. El costo del apoyo para esto es casi nada, y la administración del sitio es mínima, impulsada por la comunidad.
Hay muchas personas detrás de un proyecto, incluyendo a Dennis Gaebel de Gray Ghost Visuals, Dave Rupert en Paravel, Jamie Piper en Alliants, Mat Marquis y muchos otros. (Mire la lista de contribuyentes de avatares en la parte inferior de la página de inicio).
Este es un grupo al que vale la pena unirte, y la parte más interesante es que puedes hacerlo simplemente aportando!
El Proyecto de accesibilidad está configurado para una colaboración remota y asíncrona. El sitio no utiliza una base de datos y no requiere ningún proveedor de alojamiento. Así es como lo hacen..
El sitio está alojado en su totalidad por GitHub a través de GitHub Pages. GitHub Pages permite a los usuarios de GitHub publicar contenido estático y sirve como página web.
GitHub Pages es, en general, creado para apoyar proyectos y usuarios, dándoles un lugar para albergar documentación, ejemplos, etc. Las personas en GitHub también han hecho páginas compatibles con Jekyll.
Jekyll es el marco de trabajo basado en Ruby-gem detrás del Proyecto de Accesibilidad. Construido por Tom Preston-Werner y otros en GitHub, Jekyll es un generador de sitio estático que permite a los usuarios crear mensajes y páginas en Markdown o Textil (aunque todas las publicaciones son solo Markdown).
Jekyll usa los ajustes de configuración de la parte frontal de YAML para ayudar a generar páginas / publicaciones localmente. Estas publicaciones y páginas aparecen como archivos estáticos HTML, JavaScript y CSS. (Vea más información sobre Jekyll aquí: wiki de uso de Jekyll en GitHub). Si desea contribuir al Proyecto de Accesibilidad, esta es la mejor manera de crear una nueva publicación..
haz
Para instalar todas las dependencias. El Gemfile especifica tres gemas que se instalarán. (Además, necesitarás Bundler para haz
trabajar.)rastrillo -T
para listar los comandos que puede usar que son específicos para este proyecto. rastrillo
, o "Ruby make", es una herramienta que permite extraer tareas repetitivas o automatizadas en un archivo dentro del directorio de trabajo (llamado Rakefile) e invocarse a través de la línea de comandos.rake post title = "Algo interesante sobre la accesibilidad"
para crear una publicación.Una característica aún más interesante de GitHub Pages: compilará su sitio Jekyll para usted, si lo desea.
¿Por qué querrías ir con un generador de sitio estático? Hay muchas razones por las que esta es una buena respuesta a muchos problemas de desarrollo. Primero, los archivos estáticos son fáciles de servir. Básicamente cualquier servidor web puede servir archivos estáticos. Más allá de esto, el servicio de archivos estáticos es generalmente increíblemente rapido y eficiente.
Del mismo modo, la sobrecarga de servir archivos estáticos es mucho menor en el servidor. La descarga de la gestión de contenido a un entorno de desarrollo local reduce la incertidumbre y la necesidad de un entorno orientado a sysadmin.
Otra buena razón para ir con un generador de sitio estático es la seguridad; Los sitios estáticos son infinitamente menos vulnerables a problemas de seguridad como la inyección de SQL que los sitios que dependen de la base de datos. Por último, la mayoría del contenido basado en el periódico ya se presta a archivos estáticos; el contenido no se genera mediante un algoritmo controlado por datos o datos transmitidos en vivo. Más bien, es un contenido basado en texto que no cambiará (a menos que las modificaciones se realicen manualmente). La distinción importante aquí es que las publicaciones se crean manualmente, y el diseño alrededor El contenido no cambia dinámicamente. Todos estos son signos de que usar archivos estáticos es una buena solución..
RVM es una herramienta que gestiona múltiples instalaciones del lenguaje de programación Ruby. Usos RVM .rvmrc
archivos para asegurarse de que la versión correcta de Ruby está seleccionada para ejecutarse para un proyecto determinado. Un consejo útil: cualquier archivo que comience con una .
es muy probable que sea un archivo de configuración; en particular, los archivos. * rc, o los archivos de "configuración de tiempo de ejecución", generalmente se evalúan en el momento de la ejecución / tiempo de ejecución, generalmente solo una vez.
El archivo de configuración CodeKit se utiliza para generar configuraciones para CodeKit, que compila los archivos SASS para el proyecto. Esta configuración ayuda a mantener la conformidad entre diferentes usuarios. Es posible que reconozca el tipo de archivo (JSON): el archivo es un objeto JavaScript válido. JSON también se utiliza para muchas otras configuraciones de entorno.
El "mejor flujo de trabajo web moderno" es un tema difícil de encontrar, pero muchas personas han publicado recientemente sobre la flexibilidad y la facilidad de uso de la integración del desarrollo orientado a funciones en torno a la discusión con GitHub Issues and Pull Requests. (Echa un vistazo a la gran cubierta de oradores de Zach Holman sobre el tema). Para presentar un problema, simplemente vas a un proyecto, haces clic en Problemas y explicas el problema. El propietario del proyecto puede clasificar su problema y responderlo; Si un parche o una solicitud de extracción soluciona el problema, se puede usar un lenguaje natural en el mensaje de confirmación de Git para marcar el problema como resuelto. Por ejemplo, "Problema solucionado # 42". Luego, puede enviar una solicitud de extracción que haga referencia a un compromiso específico; Si se acepta esa solicitud de extracción, ese problema se marca como resuelto.
Pero retrocedamos un paso aquí, antes de que hablemos de los flujos de trabajo de Git durante horas y horas..
La forma en que el Proyecto de accesibilidad utiliza GitHub es como una forma de administrar el contenido, tanto en su etapa pre-publicada como en su etapa publicada. Si tiene una idea para un artículo, puede crearla (ya sea a través de un GitHub Gist o un Clap). Una vez hecho esto, presentar un problema en el GitHub que hace referencia a su Gist / Clap inicia la conversación sobre su artículo en particular. Finalmente, lleva el artículo de The Gist a un post con Jekyll. Esto implica algunos comandos de terminal simples, un compromiso y una solicitud de extracción para resolver el problema que presentó sobre ese artículo. Entonces, aquí están los pasos básicos..
Título de la publicación de rake = "tu título"
en su copia local del repositorioservidor de rake
y visite http: // localhost: 4000 para ver su publicación (y el resto del sitio)cheque de rastrillo
para asegurarse de que no rompiste nada (Si lo hiciste, ese es un tema para el hilo de comentarios).Si aún no estás preparado para tus habilidades de Jekyll o Git / GitHub, también puedes pedir ayuda para convertir tu publicación en un commit. Comenta sobre el tema asociado a la publicación. Además, asegúrese de ver este video en nuestro sitio de hermanos Tuts +, NetTuts.
En caso de que no lo hayas notado, todo este proceso de creación de contenido gira en torno a hilos de conversación / contenido vinculados en GitHub. Esto proporciona una manera natural de combinar una conversación con una acción asociada. Esta es una integración crítica para cualquier tipo de colaboración..
El sitio se basa en un puerto Sass / Compass de Twitter Bootstrap, por lo que no hay nada sorprendentemente innovador en el diseño del sitio. Sin embargo, también está abierto para contribuciones y colaboraciones; Los problemas presentados en GitHub no son solo para colaborar en ideas de publicaciones, sino también para señalar inexactitudes, inaccesibilidades, y errores. Incluso más allá de esto, cualquier persona puede enviar problemas y retirar solicitudes para mejorar el sitio de cualquier manera; Creo que el sitio podría usar una nueva piel.?
* Hacerse famoso no tiene relación con enviar tu solicitud de extracción.
El Proyecto de Accesibilidad está construido exclusivamente con SASS y Compass; Si desea enviar algún cambio de diseño, debe hacerlo utilizando SASS y Compass..
Si bien algunos pueden considerar esto como una limitación, tiene un propósito. Primero, hace que el código base sea menos complejo; Si el proyecto intentara soportar CSS, LESS y SASS de vainilla, el resultado conllevaría grandes dolores de cabeza por dependencia. También requeriría que los colaboradores actualicen los archivos LESS y SASS, algo que es mucho menos probable que fomente la participación. Finalmente, aquellos que están motivados a contribuir y también tienen las habilidades o el contenido de calidad para contribuir ya sabrán SASS o tendrán un medio para aprenderlo. Si bien esto parece exclusivo, también debemos considerar que esto, en algún momento, es el caso de cualquier tecnología; aquellos que no saben (y no están dispuestos a aprender) cómo integrar su JavaScript con jQuery simplemente no pueden escribir complementos de jQuery.
El código abierto es una herramienta increíblemente poderosa. El uso de plataformas como GitHub y herramientas como Jekyll hacen que el código abierto brille. La comunicación integrada con los documentos de trabajo es esencial para colaborar de manera eficiente, especialmente si el trabajo que se realiza es paralelo a otros que realizan un trabajo similar..
El Proyecto de accesibilidad es un gran ejemplo de todos estos principios que han llegado a buen término. Con casi cuarenta colaboradores de primer nivel hasta la fecha, es una muestra del poder del código abierto y la disposición de las personas a colaborar para hacer algo grande. El proyecto incurre en muy poca o ninguna sobrecarga para que este sitio exista..
?