[workflow] 시각 장애인 인 경우 어떻게 프로그램 할 수 있습니까?

시력은 대부분의 프로그래머가 당연하게 여기는 감각 중 하나입니다. 대부분의 프로그래머는 컴퓨터 모니터를 살펴 보는 데 몇 시간을 소비하지만 (특히 존에 있을 때 ), 시각 장애인 프로그래머 (예 : 현재 Google에서 일하는 TV Raman)가 있다는 것을 알고 있습니다.

시각 장애인 인 경우 (또는 천천히 시각 장애인이되는 경우) 프로그래밍을 돕기 위해 개발 환경을 어떻게 설정 하시겠습니까?

(답변마다 한 가지 제안을 부탁드립니다.이 질문의 목적은 좋은 아이디어를 맨 위에 가져 오는 것입니다. 또한 스크린 리더는 좋은 아이디어를 미리 읽을 수 있습니다.)



답변

나는 몇 가지 프로그래밍 인턴쉽을 가진 완전히 맹인 대학생이므로 내 대답은 이것들을 기반으로 할 것입니다. Windows XP를 운영 체제로 사용하고 Jaws 를 사용하여 화면에 나타나는 내용을 합성 음성으로 읽습니다. Java 프로그래밍의 경우 Eclipse에 액세스 할 수있는 완전한 기능을 갖춘 IDE이므로 Eclipse를 사용합니다.

일반적으로 SWT를 GUI 툴킷으로 사용하는 Java 프로그램은 Swing을 사용하는 프로그램보다 액세스하기 쉽기 때문에 netbeans에서 멀리 떨어져 있습니다. 모든 .net 프로그래밍의 경우 Visual Studio 2005는 인턴쉽에서 사용되는 표준 버전이므로 양식 디자이너와 같은 것들을보다 쉽게 ​​액세스 할 수 있도록 개발 된 Jaws와 일련의 스크립트를 사용하여 매우 액세스 할 수 있기 때문에 Visual Studio 2005를 사용합니다.

C 및 C ++ 프로그래밍의 경우 gcc를 컴파일러로 사용하고 cymac을 사용하여 수행해야 할 작업에 따라 편집기로 emacs 또는 vim을 사용합니다. 제 인턴쉽은 Z / OS 프로그래밍과 관련이있었습니다. Cygwin을 통해 rlogin 세션을 사용하여 메인 프레임의 USS 하위 시스템에 액세스하고 3270 에뮬레이터로 C3270을 메인 프레임의 ISPF 부분에 액세스했습니다.

나는 보통 합성어에 의존하지만 점자 디스플레이가 있습니다. 나는 보통 음성으로 더 빨리 작업하지만 문장 부호가 중요하고 복잡한 상황에서 점자 디스플레이를 사용합니다. 문장 부호가 매우 중요한 중첩 된 괄호와 JCL이 많은 if 문입니다.

최신 정보

cygwin http://emacspeak.sourceforge.net 에서 Emacspeak로 놀고 있습니다. 응답이 다소 응답하지 않지만 구성 옵션을 보지 못했기 때문에 프로그래밍 편집기로 사용할 수 있는지 확실하지 않습니다. 아직.


답변

저는 시각 장애인이며 Windows, Mac, Linux 및 DOS에서 C / C ++, Python, Java, C # 및 다양한 소규모 언어의 언어로 약 13 년 동안 프로그래밍을 해왔습니다. 원래 질문은 환경 구성과 관련이 있었지만 맹인이 컴퓨터를 사용하는 방법을 살펴 보는 것이 가장 좋습니다.

일부 사람들은 다른 답변에서 언급 한 TV Raman 및 Emacspeak 환경과 같은 대화 환경을 사용합니다. 가장 일반적인 해결책은 백그라운드 모니터링 OS 활동에서 실행되고 가상 음성 또는 물리적 점자 디스플레이 (일반적으로 한 번에 20-80 자 정도의 어딘가에 표시)를 통해 사용자에게 경고하는 화면 판독기를 사용하는 것입니다. 이것은 맹인이 모든 접근 가능한 응용 프로그램을 사용할 수 있음을 의미합니다.

그래서 요즘에는 개인적으로 Visual Studio 2008을 사용하고 거의 수정하지 않고 실행합니다. 이 산만 함을 알기 때문에 입력 할 때 오류 표시와 같은 특정 기능을 끕니다. Microsoft에 합류하기 전에 메모장과 같은 표준 텍스트 편집기에서 모든 개발 작업을 수행 했으므로 다시 한 번 사용자 정의 할 수 없습니다.

들여 쓰기를 알리도록 스크린 리더를 구성 할 수 있습니다. Visual Studio 가이를 처리하고 C #은 중괄호를 사용하기 때문에 개인적으로 이것을 사용하지 않습니다. 그러나 이것은 공백이 중요한 Python과 같은 언어에서 매우 중요합니다. 마지막으로, Emacspeak는 구문의 다른 부분 (키워드, 주석, 식별자 등)을 나타 내기 위해 다른 음성 / 피치를 사용합니다.


답변

저는 시각 장애인이며 지난 12 년 동안 프로그래머였습니다. 현재는 선임 설계자이며 Sapient Corporation (웹 기반 및 씩 클라이언트 기반 엔터프라이즈 솔루션을 모두 만드는 캠브리지 기반 컨설팅 회사)과 협력하고 있습니다. 여러 화면 판독기를 사용하지만 대부분 창과 NVDA에 Jaws를 사용합니다.

나는 주로 내 환경으로 Microsoft 플랫폼과 Visual Studio에서 일했습니다. 나는 또한 MS Sql 엔터프라이즈 스튜디오와 같은 도구를 DB 액세스, 네트워크 모니터링 등에 사용합니다. emacspeak로 시간을 보내려고 노력했지만 내 작업은 주로 MS 플랫폼을 기반으로 했으므로 실제로 많은 시간을 소비하지 않았습니다. 나는 또한 리눅스에서 C ++로 작업하는 데 2 ​​년을 보냈습니다. 주로 모든 코딩을 위해 메모장에서 비주얼 스튜디오를 사용했으며 리눅스 환경에서 파일을 공유하기 위해 삼바를 사용했습니다. 또한 실험적인 재료로 볼랜드 C를 사용했습니다. 최근에 파이썬으로 놀아 왔습니다. 다른 사람들이 언급했듯이 맹인 사용자에게는 들여 쓰기를 중첩 메커니즘으로 사용하기 때문에 특히 눈에 띄지 않습니다. NVDA는 가장 인기있는 오픈 소스 스크린 리더는 파이썬을 사용하여 완전히 작성되었으며 해당 프로젝트의 커미터 중 일부는 스스로 눈을 멀게합니다. 특히 건축가로서 자주 묻는 질문은 UML, visio 및 합리적인 장미 등 다이어그램을 처리하는 방법입니다. Visio는 아마도 가장 접근하기 쉬운 다이어그램 도구 일 것입니다. 나는 합리적인 장미 다이어그램을 읽을 수있는 턱 스크립트를 작성할 수있었습니다. UML 2.0 다이어그램에 액세스하기 위해 독일 대학에서 개발 한 T-dub (맹인을위한 기술 다이어그램 이해)라는 도구를 사용했습니다. 모델 중심 개발을 위해 magic draw라는 Java 기반 추악한 도구를 사용했으며 androMDA 프로젝트의 커미터였으며 UML 모델에서 .Net 코드 생성기를 개발하는 데 도움이되었습니다. 특히 건축가로서 자주 묻는 질문은 UML, visio 및 합리적인 장미 등 다이어그램을 처리하는 방법입니다. Visio는 아마도 가장 접근하기 쉬운 다이어그램 도구 일 것입니다. 나는 합리적인 장미 다이어그램을 읽을 수있는 턱 스크립트를 작성할 수있었습니다. UML 2.0 다이어그램에 액세스하기 위해 독일 대학에서 개발 한 T-dub (맹인을위한 기술 다이어그램 이해)라는 도구를 사용했습니다. 모델 중심 개발을 위해 magic draw라는 Java 기반 추악한 도구를 사용했으며 androMDA 프로젝트의 커미터였으며 UML 모델에서 .Net 코드 생성기를 개발하는 데 도움이되었습니다. 특히 건축가로서 자주 묻는 질문은 UML, visio 및 합리적인 장미 등 다이어그램을 처리하는 방법입니다. Visio는 아마도 가장 접근하기 쉬운 다이어그램 도구 일 것입니다. 나는 합리적인 장미 다이어그램을 읽을 수있는 턱 스크립트를 작성할 수있었습니다. UML 2.0 다이어그램에 액세스하기 위해 독일 대학에서 개발 한 T-dub (맹인을위한 기술 다이어그램 이해)라는 도구를 사용했습니다. 모델 중심 개발을 위해 magic draw라는 Java 기반 추악한 도구를 사용했으며 androMDA 프로젝트의 커미터였으며 UML 모델에서 .Net 코드 생성기를 개발하는 데 도움이되었습니다. 나는 합리적인 장미 다이어그램을 읽을 수있는 턱 스크립트를 작성할 수있었습니다. UML 2.0 다이어그램에 액세스하기 위해 독일 대학에서 개발 한 T-dub (맹인을위한 기술 다이어그램 이해)라는 도구를 사용했습니다. 모델 중심 개발을 위해 magic draw라는 Java 기반 추악한 도구를 사용했으며 androMDA 프로젝트의 커미터였으며 UML 모델에서 .Net 코드 생성기를 개발하는 데 도움이되었습니다. 나는 합리적인 장미 다이어그램을 읽을 수있는 턱 스크립트를 작성할 수있었습니다. UML 2.0 다이어그램에 액세스하기 위해 독일 대학에서 개발 한 T-dub (맹인을위한 기술 다이어그램 이해)라는 도구를 사용했습니다. 모델 중심 개발을 위해 magic draw라는 Java 기반 추악한 도구를 사용했으며 androMDA 프로젝트의 커미터였으며 UML 모델에서 .Net 코드 생성기를 개발하는 데 도움이되었습니다.

일반적으로, 나는 내가 힘을 발휘할 수있는 팀 환경에서 가장 번창한다는 것을 알았습니다. 예를 들어, 다이어그램은 디자인을 전달 / 문서화하는 데 매우 유용하지만 실제 디자인 프로세스에는 많은 생각과 브레인 스토밍이 필요하며 디자인을 생각할 때 팀 동료 중 한 명이 깔끔하게 그릴 수 있도록 도와 줄 수 있습니다 그것에서 그림. 사람들은 위의 독립 또는 능력 부족으로 위의 내용을 잘못 오인합니다. 그러나 이것은 순수한 상호 의존으로 간주됩니다. 팀 동료만으로는 결코 그 자신과 그 디자인을 생각해 낼 수 없었습니다. -디자인을 문서화하기 위해 그를 의지한다면, 그렇게하십시오. 내가 직면 한 대부분의 장애물은 도구 기반의 접근이 불가능합니다.


답변

저는 맹인 개발자이며 Windows, GNU Linux 및 MacOS X에서 일하고 있습니다. 각 플랫폼에는 맹인 사용자를위한 서로 다른 워크 플로가 있습니다. 이것은 맹인 개발자가 사용하는 스크린 리더에 달려 있습니다. 맹인 개발자가 개발 도구에 완전히 액세스 할 수있는 것은 아닙니다. 모든 IDE에서 코드를 입력하고 컴파일 함수를 사용할 수 있지만 Interface Builder, XGlade 또는 기타와 같은 설계 도구를 사용하여 인터페이스를 설계해야하는 경우 많은 문제가 있습니다. Borland Delphi로 개발할 때 컨트롤 (예 : Button)을 추가 할 수 있었고 객체 검사기 창을 사용하여 컨트롤의 각 시각적 속성을 수정할 수있었습니다. 많은 IDE는 객체 검사기 창을 사용하여 시각 및 비 시각 속성을 수정하지만 시각 장애인 개발자의 문제는 새로운 컨트롤을 추가하는 방법이 팔레트에서 캔버스로 컨트롤을 끌어서 놓는 것으로 구성되어 있기 때문에 새로운 컨트롤을 추가하는 것입니다. Visual Studio 200x는이를 위해 대체 방법을 사용하지만 새 버전마다 IDE의 인터페이스가 변경되므로 Windows 용 화면 판독기는 일부 비표준 응용 프로그램의 각 영역을 식별하기 위해 스크립트를 사용하여 특별한 지원이 필요하기 때문에 큰 문제입니다. 시각 장애인 개발자는 화면 판독기와 함께 Visual Studio 2008을 사용할 수 있지만이 IDE의 새 버전이 나타나면이 버전의 IDE에 대해 새 버전의 스크립트를 기다려야합니다. 인터페이스 빌더가있는 Xcode는 아직 작업을 끌어다 놓을 수있는 대안이 없습니다. 나는 애플에게 여러 번 물었지만 다른 일을하고있다. App Store에 3 개의 앱 (액세스 가능한 지뢰 찾기, 액세스 가능한 fruitmachine 및 ciegas RSS Programar)을 게시했으며 코드로 모든 인터페이스를 디자인해야했습니다. 힘든 작업이지만 각 컨트롤의 모든 기능을 관리 할 수 ​​있습니다. Eclipse에는 액세스 가능한 코드 편집기가 있지만 디버그 콘솔과 같은 기타 개발 도구, 설계 또는 문서화를위한 플러그인은 맹인 사용자를위한 보조 도구에 문제가 있습니다.

문서는 시각 장애인 개발자에게도 문제가됩니다. 많은 샘플과 데모는 이미지를 사용하여 설명을 보여줍니다 (그림에서 가능한 환경 설정 설정).

나는 그 질문이 맹목적이지 않다고 생각한다. 문제는 회사와 개발 그룹이 접근성이 최종 소프트웨어에는 영향을 미치지 만 개발 소프트웨어에는 영향을 미치지 않는다고 생각한다는 것입니다. 그들은 맹인 사용자가 클라이언트 여야한다고 생각하지만 맹인 사용자는 개발 메이트가 될 수 없습니다.

맹인 협회는 제품 및 서비스에 대한 접근성을 요구하지만 맹인 개발자를 잊었습니다. 시각 장애인은 변호사, 언론인, 교사로 일할 수 있지만 시각 장애인 개발자는 시각 장애인에게는 이상한 개념입니다. 내 눈먼 친구들이 내 일을 이해하지 못해 여러 번 외로움을 느낀다.

이 기사, 스페인어, 내 블로그 http://www.programaraciegas.net/2010/11/05/la-accesibilidad-en-crisis-para-los-desarrolladores-ciegos/ 에서이 문제에 대한 의견을 읽을 수 있습니다 .
웹 페이지에는 번역 도구가 있습니다. 죄송하지만 번역하지 않았습니다.


답변

Emacs는 시각 장애인이 텍스트 파일을 조작 할 수 있도록 여러 가지 확장자를 가지고 있습니다. 이 주제에 대해 전문가에게 문의해야하지만 emacs에는 텍스트 음성 변환 기능이 있습니다. 그리고 아마도 더.

또한 BLinux가 있습니다.

http://leb.net/blinux/

맹인을위한 리눅스. 아주 오랫동안 주변에있었습니다. 10 년 이상 생각하고, 매우 성숙했습니다.


답변

“맹인”은 다양한 조건이라는 점을 명심하십시오. 실제로 큰 모니터를 읽거나 확대 도움을받을 수있는 법적인 장님이 있으며, 비전이없는 사람도 있습니다. 책을 확대 할 수있는 특수 장치와 화면의 일부를 확대하는 데 사용할 수있는 특수 소프트웨어가있는 대학 친구를 기억합니다. 그녀는 시력이 나 빠지고 완전히 사라지기 때문에 대학을 마치기 위해 열심히 노력했습니다.

프로그래밍에는 다양한 요구 사항이 있습니다. 어떤 사람들은 많은 코드를 작성하는 데 능숙하며 어떤 사람들은 큰 그림과 아키텍처를보다 잘 볼 수 있습니다. 화면 인터페이스로 인한 어려움으로 인해 실명으로 인해 큰 그림을 얻는 능력이 향상 될 수 있다고 생각합니다 …


답변