Poate că tu sau cineva pe care-l cunoști, a întâmpinat dificultățile de interacțiune cu calculatorul pentru cei cu deficiențe. În general, sistemele de operare și suitele de programe au prevăzut accesibilitate pentru audiența cu deficiențe de auz, audiența cu viziune defavorizată și internaționalizare; cu toate acestea, web-ul deschis nu a prins atât de repede. Multe site-uri ignoră complet accesibilitatea.
Poate că unul dintre motivele pentru acest lucru este că, în mod evident, nu există o sursă de conținut actualizat, digerabil, centrat exclusiv pe accesibilitate.
Proiectul de accesibilitate (a11yproject.com) schimba acest lucru. Prin oferirea unei platforme deschise (prin intermediul GitHub), proiectul construiește un set de conținut cu conținut de mulțime de sine stătător, care este digerabil, la zi, și iertător. (Vedeți despre pagina lor.)
Proiectul de accesibilitate este un exemplu foarte bun al modului în care tehnologia poate contribui la dezvoltarea colaborativă. Oricine poate contribui. Costul suportului pentru acest lucru este aproape nimic, iar managementul site-ului este minim, condus de comunitate.
Există o mulțime de oameni în spatele unui proiect, printre care Dennis Gaebel de la Gray Ghost Visuals, Dave Rupert la Paravel, Jamie Piper la Alliants, Mat Marquis și o mulțime de alții. (Aruncați o privire la lista avatarelor contribuitori din partea de jos a paginii de pornire.)
Acesta este un grup care merită să se unească, iar partea minunată este că poți contribui pur și simplu!
Proiectul de accesibilitate este creat pentru colaborare la distanță și asincronă. Site-ul nu utilizează o bază de date și nu necesită niciun furnizor de gazde. Iată cum o fac.
Site-ul este în întregime găzduit de GitHub prin paginile GitHub. Paginile GitHub permit utilizatorilor GitHub să publice materiale statice și le servește drept pagină web.
Paginile GitHub sunt, în general, create pentru a sprijini proiectele și utilizatorii, oferindu-le un loc pentru găzduirea documentației, exemplelor etc. Oamenii de la GitHub au făcut paginile compatibile cu Jekyll.
Jekyll este cadrul de lucru bazat pe Ruby-gem din spatele Proiectului de accesibilitate. Construit de Tom Preston-Werner și alții de la GitHub, Jekyll este a generator de site static care permite utilizatorilor să creeze postări și pagini în Marcarea sau Textile (desi posturile sunt doar Markdown).
Jekyll folosește setările de configurare YAML pentru a ajuta la generarea de pagini / postări la nivel local. Aceste postări și pagini apar ca fișiere statice HTML, JavaScript și CSS. (Aflați mai multe despre Jekyll aici: wiki de utilizare Jekyll pe GitHub.) Dacă doriți să contribuiți la Proiectul Accessibility, acesta este cel mai bun mod de a crea un nou post.
pachet
pentru a instala toate dependențele. Gemfilele specifică trei pietre care vor fi instalate. (De asemenea, veți avea nevoie de Bundler pentru pachet
a munci.)rake -T
pentru a lista comenzile pe care le puteți utiliza care sunt specifice acestui proiect. greblă
, sau "Ruby make", este un instrument care permite ca sarcinile repetitive sau automate să fie abstracte într-un fișier din directorul de lucru (numit Rakefile) și invocat prin linia de comandă.rake post title = "Ceva interesant despre accesibilitate"
pentru a crea o postare.O caracteristică chiar mai rece a paginilor GitHub: va compila site-ul dvs. Jekyll pentru dvs., dacă doriți.
De ce doriți să mergeți cu un generator de site-uri statice? Există o mulțime de motive pentru care acesta este un răspuns bun la multe probleme de dezvoltare. În primul rând, fișierele statice sunt ușor de servit. Practic, orice server web poate servi fișiere statice. Dincolo de aceasta, servirea fișierelor statice este în general incredibil rapid și eficient.
În mod similar, cheltuielile aferente servirii fișierelor statice sunt mult mai scăzute pe server. Descărcarea gestionării conținutului într-un mediu de dezvoltare locală reduce incertitudinea și necesitatea unui mediu orientat spre sysadmin.
Un alt motiv bun pentru a merge cu un generator de site-uri statice este securitatea; site-urile statice sunt infinit mai puțin vulnerabile la problemele de securitate precum SQL injection decât site-urile bazate pe baze de date. În cele din urmă, cea mai mare parte a conținutului periodic se pretează deja fișierelor statice; conținutul nu este generat de un algoritm bazat pe date sau de date live. Mai degrabă, acesta este un conținut bazat pe text care nu se va schimba (dacă edițiile nu sunt făcute manual). Distincția importantă aici este că posturile sunt create manual și aspectul în jurul conținutul nu se modifică dinamic. Acestea sunt toate semne că utilizarea fișierelor statice este o soluție bună.
RVM este un instrument care gestionează instalări multiple ale limbajului de programare Ruby. RVM utilizează .rvmrc
pentru a vă asigura că versiunea corespunzătoare a Ruby este selectată pentru a rula pentru un anumit proiect. O sugestie utilă: orice fișier care începe cu a .
este cel mai probabil un fișier de configurare; în special, fișierele * rc sau fișierele de "configurare în execuție" sunt în general evaluate în momentul execuției / runtime-ului, de obicei doar o singură dată.
Fișierul de configurare CodeKit este folosit pentru a genera setări pentru CodeKit, care compilează fișierele SASS pentru proiect. Acest config ajută la menținerea conformității între diferiți utilizatori. S-ar putea să recunoașteți tipul de fișier (JSON) - fișierul este un obiect JavaScript valid. JSON este, de asemenea, utilizat pentru multe alte configurații de mediu.
"Cel mai bun flux de lucru web modern" este un subiect evaziv, dar mulți oameni au publicat recent despre flexibilitatea și utilitatea integrării dezvoltării orientate spre caracteristici care se revolvează în jurul discuțiilor cu GitHub Issues și Requests Pull. (Verificați-o pe marele Speaker Deck al lui Zach Holman despre acest subiect.) Pentru a depune o problemă, pur și simplu mergeți la un proiect și faceți clic pe Probleme și explicați problema. Proprietarul proiectului vă poate clasifica problema și puteți răspunde la aceasta; dacă o solicitare de patch-uri sau trageți rezolvă problema, limbajul natural poate fi folosit în mesajul de comitere Git pentru a marca problema ca rezolvată. De exemplu, "Problema fixă # 42". Apoi, puteți trimite o solicitare de tragere referindu-se la un comitet specific; dacă cererea de tragere este acceptată, acea problemă este marcată ca rezolvată.
Dar să facem un pas înapoi, înainte să intrăm peste capul nostru vorbind despre fluxurile de lucru Git de ore întregi.
Modul în care Proiectul de Accesibilitate utilizează GitHub este o modalitate de a gestiona conținutul, atât în stadiul său pre-publicat, cât și în etapa publicată. Dacă aveți o idee pentru un articol, îl puteți crea (fie printr-un GitHub Gist, fie printr-o clapetă). Odată ce acest lucru se întâmplă, depunerea unei probleme pe GitHub care face referire la Gist / Clap începe conversația despre articolul dvs. particular. În cele din urmă, luați articolul din Gist într-un post Jekyll. Aceasta implică câteva comenzi terminale simple, o comitere și o cerere de tragere pentru a rezolva problema pe care ați depus-o cu privire la articolul respectiv. Deci, iată pașii de bază.
rake post title = "titlul tău"
în copia ta locală a depozituluirake server
și vizitați http: // localhost: 4000 pentru a arunca o privire la postarea dvs. (și restul site-ului)rake check
pentru a vă asigura că nu ați întrerupt nimic. (Dacă ați făcut-o, acesta este un subiect pentru firul de comentarii.)Dacă nu sunteți în stare să vă îmbraciți abilitățile Jekyll sau Git / GitHub încă, puteți solicita, de asemenea, ajutor în rularea postului într-o comitet. Comentariu la emisiunea asociată postării. De asemenea, asigurați-vă că ați verificat acest videoclip pe site-ul nostru Tuts +, NetTuts.
În cazul în care nu ați observat, întregul proces de creare a conținutului se referă la conversații legate / subiecte legate de conținut de pe GitHub. Aceasta oferă o modalitate de a combina în mod natural o conversație cu o acțiune asociată. Aceasta este o integrare critică pentru orice fel de colaborare.
Site-ul se bazează pe un port Sass / Compass de pe Twitter Bootstrap, deci nu este nimic surprinzător de inovativ în ceea ce privește proiectarea site-ului. Cu toate acestea, este deschis și pentru contribuții și colaborări; Problemele depuse pe GitHub nu sunt doar pentru colaborarea în idei de post, ci și pentru a sublinia inexactități, inaccesibile și bug-uri. Chiar și dincolo de aceasta, oricine este binevenit să prezinte probleme și să tragă solicitări de a îmbunătăți site-ul în orice mod; cred că site-ul ar putea folosi o piele nouă?
* A deveni faimos nu are legătură cu trimiterea cererii dvs. de tragere.
Proiectul de Accesibilitate este construit exclusiv folosind SASS și Compass; dacă doriți să trimiteți modificări de proiectare, trebuie să faceți acest lucru utilizând SASS și Compass.
În timp ce unii pot considera acest lucru o limitare, acesta servește un scop. În primul rând, face ca baza de cod să fie mai puțin complexă; dacă proiectul a încercat să susțină CSS, LESS și SASS de vanilie, rezultatul ar determina dependență majoră. De asemenea, ar fi nevoie de contribuabili la actualizarea atât a fișierelor LESS, cât și a celor SASS - ceea ce este mult mai puțin probabil să încurajeze implicarea. În cele din urmă, cei care sunt determinați să contribuie și au, de asemenea, aptitudinile sau conținutul de calitate pentru a contribui vor cunoaște deja SASS sau vor avea un mijloc de a învăța. Deși acest lucru pare exclusiv, trebuie să ne gândim, de asemenea, că acest lucru, la un moment dat, este cazul în cazul oricărei tehnologii; cei care nu știu (și nu sunt dispuși să învețe) cum să integreze JavaScript cu jQuery pur și simplu nu pot scrie jQuery plugin-uri.
Open-source este un instrument uimitor de puternic. Folosind platforme precum GitHub și unelte precum Jekyll fac strălucire sursă deschisă. Comunicarea integrată cu documentele de lucru este esențială pentru o colaborare eficientă, mai ales dacă activitatea desfășurată este în paralel cu alte activități similare.
Proiectul de accesibilitate este un exemplu foarte bun al tuturor acestor principii care vin în plină desfășurare. Cu aproape 40 de contribuabili de vârf, este o demonstrație a puterii open-source și a voinței oamenilor de a colabora pentru a face ceva grozav. Proiectul presupune foarte puțin, fără cheltuieli generale, ca acest site să existe.
?