โปรแกรมช่วยในการเขียนโปรแกรมที่ดีที่สุดสำหรับโปรแกรมเมอร์กำลังสอง


125

ก่อนที่คุณจะข้ามไปสู่ข้อสรุปใช่สิ่งนี้เกี่ยวข้องกับการเขียนโปรแกรม ครอบคลุมสถานการณ์ที่อยู่ภายใต้หัวข้อ "ที่นั่น แต่เพื่อพระคุณของพระเจ้าไปหาคุณหรือฉัน" นี่เป็นพื้นที่ใหม่สำหรับฉันดังนั้นฉันจึงขอความช่วยเหลืออย่างจริงจังที่นี่

ชายหนุ่มคนหนึ่งHonza Ripaในเมืองใกล้เคียงได้ทำ Dumb Thing แบบคลาสสิกสองสัปดาห์หลังจากจบการศึกษาจาก High School เขากระโดดลงไปในน้ำตื้นในแม่น้ำรัสเซียและมีการหยุดพัก C-4 / C-5ซึ่งบางครั้งเรียกว่าการว่ายน้ำ พักสระว่ายน้ำ. ในเวลาไม่กี่วินาทีเขาก็เปลี่ยนจากนักกอล์ฟและนักมวยปล้ำที่ยอดเยี่ยมไปเป็นสี่เท่า (อ่านเรื่องราว ... พวกเราทุกคนน่าจะโชคดีมากที่มีแฟนอย่างบรีแอนนา) นั่นคือ 10 เดือนที่แล้วและเขากลับมาควบคุมนิ้วชี้ขวาของเขาได้เพียงเล็กน้อยและอีกสองมือ / การเคลื่อนไหวของเท้าไม่มีสิ่งใดที่ละเอียด

การควบคุมคอมพิวเตอร์ทั้งหมดของเขา (ปัจจุบันใช้งาน Win7 แต่เราสามารถเปลี่ยนได้ตามต้องการ) โดยใช้คำสั่งเสียง Honza ไม่ใช่คนโง่ เขามีเกรดเฉลี่ย 3.7 พร้อมคณิตศาสตร์และฟิสิกส์ AP

ปัญหา:

  1. เนื่องจากข้อมูลทั้งหมดของเขาใช้คำสั่งเสียงเขาจึงกังวลว่าความเด่นของอักขระพิเศษในการเขียนโปรแกรมจะต้องใช้คำสั่ง verbose จำนวนมาก ไม่มีใครรู้ใด ๆทำได้ดีระบบการป้อนข้อมูลด้วยเสียงที่ออกแบบมาเฉพาะสำหรับโปรแกรมเมอร์? ฉันกำลังคิดเกี่ยวกับบางสิ่งที่อาจเป็นกิริยา - เช่นคุณพูดว่า "อินพุต Python" และมันจะเข้าสู่โหมดมาโครสำหรับการกำหนดคลาส ฯลฯ เนื่องจาก RSI ทั้งหมดในโปรแกรมเมอร์ที่ดินจะต้องมีบางอย่างอยู่ที่นั่น มันทำงานบนระบบปฏิบัติการอะไร?

  2. ฉันกำลังวางแผนที่จะสอนเขา Python ซึ่งเป็นภาษาที่ฉันชอบสำหรับการเขียนโปรแกรมและการสอน มีแอปพลิเคชัน / อะไรบ้างที่เขียนด้วย Python และจะเหมาะอย่างยิ่งสำหรับการมีส่วนร่วมทางจิตใจในขณะที่สนับสนุนความพิการของเขาหรือไม่? ความสนใจอย่างหนึ่งของเขาคือการลงทุนในหุ้น แต่นั่นอาจไม่ใช่จุดเริ่มต้นที่ดีสำหรับโปรแกรมเมอร์หน้าใหม่

  3. มีเป็นจำนวนมากของสภาพแวดล้อม (Flash, JavaScript, ฯลฯ ) ที่ไม่เป็นมิตรโดยเฉพาะอย่างยิ่งกับคนที่มีความท้าทายในการเข้าถึง ฉันจำได้ไม่ชัด (แต่ไม่พบ) โครงการวิจัยที่สร้างระบบภาพซ้อนทับที่ด้านบนของสภาพแวดล้อมหน้าจอจากนั้นอนุญาตให้สร้างคำสั่งมาโครที่ด้านบนของภาพหน้าจอ หากเราสามารถรับ / ฝึกระบบนี้ได้เราอาจสามารถขจัดอุปสรรคมากมายในการใช้เน็ตได้

  4. ฉันสนใจเป็นพิเศษในการค้นหาโครงการหุ่นยนต์ที่ใช้ Python แบบโอเพนซอร์สและหุ่นยนต์ขาเทียมเพื่อที่เขาจะได้เรียนรู้แนวคิดการเขียนโปรแกรมขั้นสูงไปพร้อม ๆ กันในขณะที่เรียนรู้การแก้ปัญหาเฉพาะหน้าของเขาเอง

ฉันได้ทำ Googling ไปหลายอย่างแล้ว แต่ฉันรู้ว่ามีบางอย่างที่ขาดหายไป ฉันกำลังขอให้ชุมชน SO ก้าวขึ้นมาที่นี่ ฉันรู้ว่ากลุ่มนี้มีคำตอบดังนั้นให้ฉันฟังพวกเขา! ครอบงำฉันด้วยโอกาสที่พวกเราทุกคนอาจมี / จำเป็นต้องตั้งโปรแกรมหลังจากเหตุการณ์ที่เปลี่ยนแปลงชีวิตเช่นนี้

อัปเดต:ฉันเพิ่งลงทะเบียน computingforquads.org และฉันจะสร้างหน้าสำหรับวิธีแก้ปัญหาทุกประเภทสำหรับปัญหาทุกประเภท ขอบคุณสำหรับความช่วยเหลือจนถึงตอนนี้และทำให้คำตอบเหล่านั้นมาถึง!


4
บางทีคนดีที่ superuser.com อาจมีข้อมูลเชิงลึกที่ดีเกี่ยวกับโปรแกรมการช่วยสำหรับการเข้าถึง ไม่สามารถพูดถึงเครื่องมือที่เกี่ยวข้องกับการเขียนโปรแกรมเพิ่มเติมได้ ขออภัยที่ช่วยไม่ได้
zneak

3
อืมฉันอยากจะแนะนำให้ใช้ภาษาสร้างที่กำหนดเองแทนที่จะพยายามสร้างสิ่งที่จะทำงานได้อย่างสมบูรณ์สำหรับ Honza มีภาษาต่างๆเช่น COBOL ซึ่งเป็นคำหลักและ "มนุษย์อ่านได้" (และสามารถพูดออกมาได้) เช่นเดียวกับหุ่นยนต์ทำไมไม่เริ่มต้นด้วย LEGO? IMHO บางภาษากับเต่า (หุ่นยนต์ - สิ่งที่เคลื่อนไหวผ่านหน้าจอและลากเส้นได้) และไวยากรณ์ง่ายๆก็ค่อนข้างดี ฉันมีปัญหาในการเขียนโปรแกรมด้วยตัวเองและฉันเข้าใจว่าการ "แตกต่าง" นั้นไม่มีอะไรมาก แต่ในกรณีนี้มันดูสมเหตุสมผลสำหรับฉัน
Gabriel Ščerbák

7
เราเคยพูดถึงการเขียนโปรแกรมด้วยเสียงมาก่อนแล้ว (โดยพื้นฐานแล้วมันยังหยาบอยู่ในขั้นทดลองและส่วนใหญ่ไม่รองรับ) ดูstackoverflow.com/questions/1408874/...และstackoverflow.com/questions/87999/...
dmckee --- อดีตผู้ดูแลลูกแมว

4
น่าเศร้าที่ฉันไม่มีคำตอบที่ดีสำหรับเรื่องนี้ ฉันสังเกตเห็นในบทความว่าการเคลื่อนไหวของนิ้วชี้เพียงพอที่เขาจะควบคุมจอยสติ๊กขนาดเล็กบนรถเข็นของเขาได้ คุณอาจต้องการมองหาเมาส์ USB แบบจอยสติ๊กขนาดเล็ก ฉันเคยเห็นมาก่อน แม้ว่าจะไม่ถูกโดยเฉพาะอย่างยิ่ง (ปริมาณต่ำเกินไป) แต่ก็อาจเป็นประโยชน์ในฐานะอุปกรณ์ป้อนข้อมูลเพิ่มเติม
Nicholas Knight

2
@RCIX: ฉันเข้าใจและขอขอบคุณในความกระตือรือร้นของคุณ ความเข้าใจผิดทางออนไลน์เช่นนี้ย้อนกลับไปอย่างน้อยที่สุดใน PLATO IV Notes ในปี 1973 ซึ่งเราได้เรียนรู้ว่าการพิมพ์ไม่ได้สื่อถึงภาษากายและน้ำเสียงที่สำคัญ มี FlameWar หนึ่งเล่มในปีพ. ศ. 2517 (ซึ่งเกิดขึ้นจากความเข้าใจผิด) ซึ่งเป็นพื้นฐานสำหรับสิ่งที่อาจเป็นวิทยานิพนธ์ของปริญญาโทเรื่องแรกเกี่ยวกับปฏิสัมพันธ์ระหว่างบุคคลในสภาพแวดล้อมทางสังคมที่ใช้คอมพิวเตอร์ วันที่ 2 และ 3 มิถุนายนจะมีการประชุมPLATO @ 50ที่ Computer History Museum ใน Mt. วิวแคลิฟอร์เนีย จะมีเคราหลายตัวบินวนอยู่รอบ ๆ :-)
Peter Rowell

คำตอบ:


92

ฉันมีอาการบาดเจ็บจากการเล่นกีฬาและฉันไม่สามารถพิมพ์อักขระเกินสองสามตัวได้หากไม่มีอาการปวดอย่างรุนแรง

แต่ฉันใช้ emac ร่วมกับ Dragon NaturallySpeaking ฉันได้เขียนมาโครและสคริปต์เพื่อช่วยให้มันผ่านพ้นไปได้ ระบบไม่สมบูรณ์ แต่ใช้งานได้ ฉันเขียนโปรแกรมใน C ++ เป็นส่วนใหญ่ แต่ฉันก็ใช้ python ด้วย

ถ้าคุณต้องการฉันจะช่วยคุณเอง ฉันต้องเตือนคุณใช้เวลาไม่กี่เดือนในการทำความคุ้นเคยกับซอฟต์แวร์ข้อความและการฝึกพูด ยิ่งกว่านั้นฉันไม่ใช่เจ้าของภาษาอังกฤษแน่นอนว่าจะเข้ามาขวางทาง

อย่าสิ้นหวังมีทางแก้ไข

นี่คือลิงค์ไปยังไฟล์ emacs และ Dragon (ขออภัยยังไม่ได้จัดทำเอกสาร)

http://code.google.com/p/asadchev/source/browse/#svn/trunk/home/Dragon

http://code.google.com/p/asadchev/source/browse/#svn/trunk/emacs/elisp

หากคุณต้องการข้อมูลเพิ่มเติมหมายเลขของฉันคือ 515 230 9363 (สหรัฐอเมริกาไอโอวา) ฉันยินดีที่จะช่วยเหลือคุณถ้าทำได้


1
โปรดอย่าปล่อยให้การตรวจสอบนี้เป็น "คำตอบ" หยุดคุณไม่ให้โพสต์ความเป็นไปได้อีกต่อไป ฉันจะเพิ่มด้วยว่า (อ้าปากค้าง) ฉันเป็นคนที่แต่งตัวประหลาด vi (และตอนนี้เป็นกลุ่ม) มาตั้งแต่ปี 1980 ดังนั้นฉันจะต้องสร้าง "ชุดมาโคร vi" เพื่อเสริมงานที่ Andre ได้ทำไปแล้วและอาจ นอกจากนี้ยังมีชุด Notepad ++ หรือชุด Aptana (Eclipse + PyDev)
Peter Rowell

ว้าวฉันไม่รู้จนกระทั่งอ่านโพสต์ของคุณ โพสต์ทั้งหมดของคุณที่ฉันเห็นจนถึงตอนนี้ไม่ปรากฏ ... อย่างน้อยฉันก็รู้ว่า Dragon NaturallySpeaking ทำงานได้ดีสำหรับคุณ
Xavier Ho

19

มันคุ้มค่าที่จะดูDasher Projectซึ่งทำให้สามารถป้อนข้อความได้เร็วพอสมควรแม้ในกรณีที่ปิดใช้งานอย่างรุนแรง Dasher สร้างขึ้นจากรูปแบบของภาษาที่น่าจะเป็นเพื่อให้สามารถป้อนคำพูดเข้าสู่ระบบได้ง่ายขึ้น ระบบการสาธิตมาพร้อมกับชุดภาษาธรรมชาติที่น่าประทับใจ ควรเป็นเรื่องง่ายที่จะได้รับคลังโปรแกรมขนาดใหญ่ที่เขียนด้วย Python โหลด Dasher ด้วยคลังข้อมูลและสร้างเวอร์ชันวัตถุประสงค์พิเศษสำหรับเข้าสู่โปรแกรม Python


ข้อเสนอแนะที่ยอดเยี่ยม! ฉันเป็นนักเล่นเน็ตระบบประสาทเก่าจากยุค 80 และเสียงนี้มีแนวโน้มมาก
Peter Rowell

8

นี่ไม่ใช่ส่วนหนึ่งของซอฟต์แวร์ระดับมืออาชีพ แต่เมื่อฉันเห็นสิ่งนี้ฉันคิดว่ามันน่าจะดีสำหรับการป้อนข้อความโดยใช้การติดตามการเคลื่อนไหวของดวงตาหรือการเคลื่อนไหวของเมาส์เพียงเล็กน้อย ดูหน้าการประมวลผลของ Ken Perlinและดูที่แอพเพล็ตสำหรับ "การป้อนข้อมูลด้วยปากกา"


ขอบคุณ! ลิงค์เยี่ยม! สิ่งนี้อาจมีประโยชน์อย่างยิ่งกับการควบคุมเคอร์เซอร์ซึ่งฉันเชื่อว่ายังคงเป็นเรื่องท้าทายสำหรับเขา ยังไม่ถึงเวลาที่คุณจะต้องจัดการกับปัญหาประเภทนี้โดยที่คุณเริ่มเข้าใจว่าคนเหล่านี้บางคนกำลังปีนภูเขา เอเวอเรสต์ทุกวันเพียงเพื่อทำในสิ่งที่เราคิดไม่ถึง
Peter Rowell

5

ฉันรู้จักคนในหมู่บ้านแห่งหนึ่งในอินเดียที่เป็นอัมพาตซึ่งใช้ซอฟต์แวร์Dragon Speech to Textเขียนลงในคอมพิวเตอร์ของเธอ ฉันไม่รู้ว่ามันเหมาะกับโปรแกรมเมอร์แค่ไหน (เธอไม่ใช่โปรแกรมเมอร์) แต่มันเป็นการเริ่มต้น

นอกจากนี้คุณยังอาจต้องการที่จะมองเข้าไปในจุดธรรมชาติ เป็นเมาส์ที่ควบคุมด้วยตาซึ่งอาจช่วย Honza ได้

หวังว่านี่จะช่วยได้


ตอนนี้ Honza ใช้ Dragon ได้ดีพอสมควร เรามุ่งเน้นเป็นพิเศษในการจัดการกับวิธีที่คุณป้อนอักขระพิเศษที่มีอยู่ทั่วไปในการเขียนโปรแกรม
Peter Rowell

3

iPython เสร็จสมบูรณ์

ทางด้าน python iPython จะแสดงพารามิเตอร์ฟังก์ชัน ฯลฯ และมีคำสั่งที่สมบูรณ์ บางทีมันอาจจะปรับแต่งให้ตอบสนองกับอุปกรณ์อินพุตต่างๆได้ด้วย?

http://ipython.scipy.org/moin/


1

สิ่งหนึ่งที่อาจช่วยให้ (ฉันได้รับมันจากคำถามนี้ ) เป็นhttp://shorttalk-emacs.sourceforge.net/ ดูเหมือนว่าจะเป็นส่วนต่อประสานระหว่าง emac และการรู้จำเสียง และเกี่ยวกับภาษาฉันขอแนะนำให้ใช้Luaกับ Python มีการไหลของภาษาอังกฤษที่เป็นธรรมชาติมากขึ้น


1

ฉันรู้ว่าคำถามนี้ค่อนข้างเก่าแล้ว ฉันสงสัยว่าสิ่งต่าง ๆ เป็นไปได้อย่างไรสำหรับ Honza เกี่ยวกับการเขียนโปรแกรม มันจะเป็นการดีที่จะได้ยินกลับมา

สำหรับสิ่งที่คุ้มค่าฉันต้องทนทุกข์ทรมานจาก RSI และตอนนี้พยายามลดการใช้แป้นพิมพ์และโดยเฉพาะเมาส์

ประสบการณ์การจดจำเสียงของฉันเองก็คือสิ่งนี้ใช้ได้ผล ฉันใช้ซอฟต์แวร์รู้จำเสียงในตัวของ Windows สำหรับ Windows 7 (WSR) ฉันยังใช้นิ้วเสียง (http://voicefinger.cozendey.com/) เพื่อช่วยเลื่อนตัวชี้เมาส์ ประเด็นสำคัญบางประการที่ฉันจะพูดถึงคือ:

เรียนรู้ทางลัด คุณสามารถทำเกือบทุกอย่างโดยใช้ทางลัดและการพูดใช้งานได้ดีโดยใช้การจดจำเสียงเมื่ออยู่ใน "โหมดการพิมพ์" (ดูด้านล่าง)

ใช้โหมดการพิมพ์ หากคุณไม่ได้เขียนข้อความสิ่งนี้เหมาะอย่างยิ่งสำหรับการพูดทางลัดกับคอมพิวเตอร์หรือการสะกดคำแปลก ๆ ที่น่าสนใจคือมันไม่ใช่ฟังก์ชัน "โฆษณา" อย่างชัดเจนของ WSR

สัทอักษร. หากต้องการใช้โหมดการพิมพ์ให้เกิดประโยชน์ให้เรียนรู้อักษรสัทอักษร: http://en.wikipedia.org/wiki/NATO_phonetic_alphabet คุณไม่สามารถทำได้โดยปราศจากสิ่งนี้เมื่อใช้การรู้จำเสียงในรูปแบบใด ๆ

เสียงเรียกเข้า (หรืออีแมคฉันเดา - ไม่แน่ใจ) Vim เหมาะสำหรับการแก้ไขข้อความโดยไม่ต้องแตะเมาส์เลยทีเดียว ทำให้เหมาะสำหรับการแก้ไขข้อความโดยใช้ WSR ฉันเป็นเพียงผู้เริ่มต้น VIM แต่พบว่ามันมีประโยชน์อย่างเหลือเชื่อ

การท่องเว็บ. จากประสบการณ์ของฉันการท่องเว็บยังคงเป็นสิ่งที่ยากมากที่จะทำโดยไม่ใช้เมาส์ มีหลายสถานการณ์มากเกินไปที่ทำให้คุณต้องวางเมาส์เพื่อไปยังคำสั่งพื้นฐาน นี่เป็นความอัปยศอย่างยิ่ง อย่างไรก็ตามมีปลั๊กอิน Firefox ที่ดีจริง ๆ เพื่อช่วยในการท่องเว็บโดยไม่ต้องใช้เมาส์

  1. การเรียกดูแบบไม่ใช้เมาส์: https://addons.mozilla.org/en-us/firefox/addon/mouseless-browsing/นี่เป็นเครื่องมือเล็ก ๆ ที่เรียบร้อยพร้อมตัวเลือกการกำหนดค่ามากมายสำหรับการใส่หมายเลขถัดจากลิงก์ทั้งหมด จากนั้นคุณสามารถพิมพ์ตัวเลขเหล่านี้เพื่อเปิดใช้งานลิงก์
  2. Vimperator: http://vimperator.org/ สิ่งนี้ไปได้ไกลกว่าการท่องเว็บแบบไม่ใช้เมาส์ โดยพื้นฐานแล้วจะช่วยให้คุณเป็นกลุ่มที่สมบูรณ์เช่นการควบคุม Firefox ฉันพบว่าสิ่งนี้ใช้งานได้ดีกว่าการท่องเว็บโดยไม่ใช้เมาส์ แต่อาจเป็นเรื่องที่น่ารำคาญในกรณีที่มันเปลี่ยนพฤติกรรมเริ่มต้นของ Firefox

นี่เป็นเพียงประสบการณ์ส่วนตัวของฉันเอง คงจะดีไม่น้อยหากได้รับทราบว่า Honza กำลังดำเนินต่อไปอย่างไร

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.