Möglicherweise haben Sie oder jemand, den Sie kennen, die Schwierigkeiten der Computerinteraktion für Behinderte erlebt. Im Allgemeinen haben Betriebssysteme und Softwarepakete Vorkehrungen für den Zugang für hörgeschädigte, sehbehinderte Zuschauer und Internationalisierung getroffen. Das offene Netz hat jedoch nicht so schnell aufgeholt. Viele Websites ignorieren die Zugänglichkeit vollständig.
Möglicherweise liegt dies unter anderem daran, dass es wahrscheinlich keine Quelle für aktuelle, verdaubare Inhalte gibt, die ausschließlich auf die Zugänglichkeit ausgerichtet sind.
Das Accessibility Project (a11yproject.com) ändert dies. Durch das Angebot einer offenen Plattform (über GitHub) erstellt a11yproject einen Crowd-Sourcing-Content, der selbst kuratiert wird verdaulich, auf dem neusten Stand, und versöhnlich. (Siehe ihre Seite über.)
Das Accessibility-Projekt ist ein hervorragendes Beispiel dafür, wie Technologien die kollaborative Entwicklung unterstützen können. Jeder kann dazu beitragen. Die Kosten für die Unterstützung hierfür sind nahezu Null, und die Verwaltung der Website ist minimal und wird von der Community gesteuert.
Hinter einem 11-Projekt stehen viele Menschen, darunter Dennis Gaebel von Gray Ghost Visuals, Dave Rupert in Paravel, Jamie Piper bei Alliants, Mat Marquis und eine ganze Reihe anderer. (Schauen Sie sich die Liste der Mitwirkenden an, die sich auf der Startseite befindet.)
Dies ist eine Gruppe, die es wert ist, Mitglied zu werden, und der großartige Teil ist, Sie können dies tun, indem Sie einfach dazu beitragen!
Das Accessibility-Projekt ist für die asynchrone Remote-Zusammenarbeit eingerichtet. Die Site verwendet keine Datenbank und erfordert keinen Hosting-Provider. So machen sie es.
Die Website wird vollständig von GitHub über GitHub Pages gehostet. GitHub Pages ermöglicht GitHub-Benutzern das Veröffentlichen statischer Inhalte und stellt diese als Webseite bereit.
GitHub Pages wurde im Allgemeinen erstellt, um Projekte und Benutzer zu unterstützen und ihnen Platz für Dokumentationsunterlagen, Beispiele usw. zu geben. Die Leute von GitHub haben auch Seiten mit Jekyll kompatibel gemacht.
Jekyll ist das auf Ruby-Gem basierende Arbeitstier-Framework hinter The Accessibility Project. Jekyll wurde von Tom Preston-Werner und anderen bei GitHub gebaut statischer Standortgenerator So können Benutzer Beiträge und Seiten erstellen Abschlag oder Textilien (obwohl a11y Posts nur Markdown sind).
Jekyll verwendet YAML-Front-Matter-Konfigurationseinstellungen, um Seiten / Beiträge lokal zu erstellen. Diese Beiträge und Seiten sind statische HTML-, JavaScript- und CSS-Dateien. (Weitere Informationen zu Jekyll finden Sie hier: Jekyll-Benutzungs-Wiki auf GitHub.) Wenn Sie einen Beitrag zum Accessibility-Projekt leisten möchten, ist dies der beste Weg, um einen neuen Beitrag zu erstellen.
bündeln
alle Abhängigkeiten installieren. Das Gemfile gibt drei Edelsteine an, die installiert werden. (Außerdem benötigen Sie Bundler für bündeln
arbeiten.)Rechen -T
Sie können Befehle auflisten, die für dieses Projekt spezifisch sind. Rechen
, oder "Ruby make" ist ein Tool, mit dem sich wiederholende oder automatisierte Aufgaben in eine Datei innerhalb des Arbeitsverzeichnisses (Rakefile genannt) abstrahieren und über die Befehlszeile aufgerufen werden können.rake post title = "Etwas Interessantes über Zugänglichkeit"
einen Beitrag erstellen.Eine noch coolere Funktion von GitHub Pages: Sie erstellt Ihre Jekyll-Site für Sie, wenn Sie möchten.
Warum sollten Sie mit einem statischen Standortgenerator arbeiten? Es gibt viele Gründe, warum dies eine gute Antwort auf viele Entwicklungsprobleme ist. Erstens sind statische Dateien einfach zu bedienen. Grundsätzlich kann jeder Webserver statische Dateien bereitstellen. Darüber hinaus werden statische Dateien generell bereitgestellt unglaublich schnell und effizient.
In ähnlicher Weise ist der Aufwand für das Bereitstellen statischer Dateien auf dem Server wesentlich geringer. Das Entladen der Verwaltung von Inhalten in eine lokale Entwicklungsumgebung verringert die Unsicherheit und die Notwendigkeit einer sysadminorientierten Umgebung.
Ein weiterer guter Grund für einen statischen Standortgenerator ist die Sicherheit. Statische Sites sind unendlich viel anfälliger für Sicherheitsprobleme wie die SQL-Injektion als datenbankabhängige Sites. Schließlich eignet sich der meiste periodische Inhalt bereits für statische Dateien. Der Inhalt wird nicht durch einen datengetriebenen Algorithmus oder durch Livestreaming-Daten generiert. Es handelt sich vielmehr um textbasierten Inhalt, der sich nicht ändert (es sei denn, Änderungen werden manuell vorgenommen). Der wichtige Unterschied hier ist, dass die Beiträge manuell erstellt werden und das Layout um Der Inhalt ändert sich nicht dynamisch. Dies sind alles Anzeichen dafür, dass die Verwendung statischer Dateien eine gute Lösung ist.
RVM ist ein Tool, das mehrere Installationen der Programmiersprache Ruby verwaltet. RVM verwendet .rvmrc
Dateien, um sicherzustellen, dass die richtige Version von Ruby zur Ausführung für ein bestimmtes Projekt ausgewählt ist. Ein hilfreicher Hinweis: jede Datei, die mit a beginnt .
ist höchstwahrscheinlich eine Konfigurationsdatei; Insbesondere werden. * rc-Dateien oder "Laufzeitkonfigurations" -Dateien im Allgemeinen zum Zeitpunkt der Ausführung / Laufzeit ausgewertet, in der Regel nur einmal.
Die CodeKit-Konfigurationsdatei wird zum Generieren von Einstellungen für CodeKit verwendet, mit dem die SASS-Dateien für das Projekt kompiliert werden. Diese Konfiguration hilft, die Konformität zwischen verschiedenen Benutzern aufrechtzuerhalten. Möglicherweise erkennen Sie den Dateityp (JSON) - die Datei ist ein gültiges JavaScript-Objekt. JSON wird auch für viele andere Umgebungskonfigurationen verwendet.
Der "beste moderne Webworkflow" ist ein schwer fassbares Thema, aber kürzlich wurde viel über die Flexibilität und Benutzerfreundlichkeit der Integration von funktionsorientierter Entwicklung berichtet, die sich auf Diskussionen mit GitHub-Problemen und Pull-Requests konzentriert. (Sehen Sie sich Zach Holmans großartiges Sprecher-Deck zu diesem Thema an.) Um ein Problem einzureichen, gehen Sie einfach zu einem Projekt und klicken auf Probleme, um das Problem zu erklären. Der Projektbesitzer kann Ihr Problem kategorisieren und darauf reagieren. Wenn ein Patch oder eine Pull-Anfrage das Problem behebt, kann in der Git-Commit-Nachricht eine natürliche Sprache verwendet werden, um das Problem als gelöst zu kennzeichnen. Zum Beispiel "Behobenes Problem # 42". Dann können Sie eine Pull-Anforderung senden, die auf ein bestimmtes Commit verweist. Wenn diese Pull-Anfrage akzeptiert wird, wird das Problem als gelöst markiert.
Aber lasst uns hier einen Schritt zurückgehen, bevor wir uns stundenlang über Git-Workflows unterhalten.
Die Art und Weise, wie das Accessibility-Projekt GitHub verwendet, ist eine Möglichkeit zum Verwalten von Inhalten, sowohl in der vorab veröffentlichten als auch in der veröffentlichten Phase. Wenn Sie eine Idee für einen Artikel haben, können Sie ihn erstellen (entweder über eine GitHub-Gist oder einen Clap). Sobald dies erledigt ist, beginnt das Gespräch mit Ihrem Gist / Clap, wenn Sie ein Problem auf dem GitHub hinterlegen, das Gespräch über Ihren bestimmten Artikel. Nehmen Sie den Artikel aus dem Gist schließlich in einen von Jekyll angetriebenen Posten. Dazu gehören einige einfache Terminalbefehle, ein Commit und eine Pull-Anforderung, um das Problem zu lösen, das Sie zu diesem Artikel eingereicht haben. Hier sind die grundlegenden Schritte.
rake post title = "dein Titel"
in Ihrer lokalen Kopie des RepositorysRake-Server
und besuchen Sie http: // localhost: 4000, um einen Blick auf Ihren Beitrag (und den Rest der Website) zu werfen.Rechenüberprüfung
um sicher zu gehen, dass du nichts kaputt hast. (Wenn ja, ist das ein Thema für den Kommentarthread.)Wenn Sie noch nicht an Ihren Jekyll- oder Git / GitHub-Fähigkeiten interessiert sind, können Sie auch um Hilfe bitten, um Ihren Beitrag in ein Commit zu rollen. Kommentieren Sie die zugehörige Ausgabe des Beitrags. Schauen Sie sich auch diesen Screencast auf unserer Tuts + -Site, NetTuts, an.
Falls Sie dies nicht bemerkt haben, dreht sich der gesamte Inhaltserstellungsprozess um verknüpfte Konversations- / Inhaltsthreads auf GitHub. Auf diese Weise können Sie eine Konversation auf natürliche Weise mit einer zugehörigen Aktion kombinieren. Dies ist eine wichtige Integration für jede Art von Zusammenarbeit.
Die Site setzt auf einen Sass / Compass-Port von Twitter Bootstrap, daher ist das Design der Site nicht überraschend innovativ. Es ist jedoch auch offen für Beiträge und Kollaborationen. Bei GitHub hinterlegte Ausgaben dienen nicht nur der Zusammenarbeit bei Post-Ideen, sondern auch dem Hinweis Ungenauigkeiten, Unzugänglichkeiten und Fehler. Darüber hinaus kann Anyone gerne Probleme einreichen und Anfragen zur Verbesserung der Website auf irgendeine Weise einholen. Ich denke, die Site könnte einen neuen Skin verwenden?
* Berühmtheit hat nichts mit dem Senden Ihrer Pull-Anfrage zu tun.
Das Accessibility-Projekt wird ausschließlich mit SASS und Compass erstellt. Wenn Sie Designänderungen einreichen möchten, müssen Sie dies mit SASS und Compass tun.
Während einige dies für eine Einschränkung halten, dient sie einem Zweck. Erstens macht es die Codebase weniger komplex; Wenn das Projekt versucht hat, Vanille-CSS, LESS und SASS zu unterstützen, würde das Ergebnis zu erheblichen Abhängigkeiten führen. Außerdem müssten die Mitwirkenden dazu aufgefordert werden, sowohl LESS- als auch SASS-Dateien zu aktualisieren. Schließlich werden diejenigen, die dazu angehalten werden, einen Beitrag zu leisten, und die auch über die Fähigkeiten oder Qualitätsinhalte verfügen, entweder SASS bereits kennen oder haben die Möglichkeit, sie zu erlernen. Dies scheint zwar exklusiv zu sein, aber wir müssen auch berücksichtigen, dass dies irgendwann bei jeder Technologie der Fall ist. Diejenigen, die nicht wissen (und nicht bereit sind zu lernen), wie sie ihr JavaScript in jQuery integrieren, können einfach keine jQuery-Plugins schreiben.
Open Source ist ein erstaunlich leistungsfähiges Werkzeug. Durch die Verwendung von Plattformen wie GitHub und Tools wie Jekyll wird Open-Source-Glanz erweckt. Kommunikation, die in Arbeitsdokumente integriert ist, ist für eine effiziente Zusammenarbeit von wesentlicher Bedeutung, insbesondere wenn die geleistete Arbeit parallel zu anderen Arbeitnehmern verläuft, die eine ähnliche Arbeit leisten.
Das Accessibility-Projekt ist ein hervorragendes Beispiel dafür, dass all diese Prinzipien zum Tragen kommen. Mit fast vierzig hochkarätigen Mitarbeitern ist dies ein Beweis für die Leistungsfähigkeit von Open Source und die Bereitschaft der Menschen, zusammenzuarbeiten, um etwas Großes zu schaffen. Das Projekt verursacht nur sehr wenig bis gar keinen Aufwand, damit diese Site existiert.
?