Ses tanıma yazılımı ile programlama [kapalı]


10

Dragon Naturally Speaking'i birkaç yıl önce kısaca kullandım ve bunun programlama için uygun bir çözüm olup olmayacağını mı düşünüyordum?

Daha çok düşünüyordum ki, kolunuzu kırmanız ya da programlamaya büyük bir saygı duyacağınız bir şey varsa.

Aynı soru SO üzerinde ama asla cevaplanmadı.


5
bu ilginç bir fikir, ama bence dil sözdizimi bu dil için çalışmaya
adanmamış bir

1
Noktalama işareti kodlamasının ötesinde, çok fazla düzenleme içerir, ses kontrolünün iyi olmayacağı bir şey.
Loren Pechtel

1
Çoğu programlama dilinde ortak noktalama kötüye kullanımı ile bunu denemek, Victor Borge'un Fonetik Noktalama Komedi skeçini akla getiriyor.
hotpaw2

VS ile otomatik tamamlama ile çalışmayı hayal edebiliyor musunuz?
Chad Harrison

1
Derleme, derlenen uygulamayı başlatma, e-postaları oluşturma / yanıtlama, gerçek kodlamayı engelleyebilecek veya geciktirebilecek bazı yaygın şeyler gibi gerçek kodlama dışındaki şeyler için Dragon Dictate kullanmak bir fikir olabilir.
Gortron

Yanıtlar:


18

Buna kişisel deneyimimden cevap verebilirim. Birkaç yıl önce, bir kazada iki kolu da kırdım . İşim tam zamanlı programlama olduğundan, bu bir sorundu. Biraz yardım ile dizüstü bilgisayarıma Dragon yükledim.

Zaman kaybıydı.

Kod doğal dile benzemez; öncelikle yazılır, konuşulmaz. Tam olarak ne y_z = (x < 0 ? -x : x) + 2;anlama geldiğini biliyorum , ama nasıl telaffuz edeceğim konusunda hiçbir fikrim yok, ne de umrumda değil.

Yalnızca yazılı bir dil olan kod, karakter düzeyinde çok hassastır. (x+2)*3Ve arasında büyük bir fark vardır (x+2*3). Konuşma-metin programları karakterlere değil, kelimelere dikkat etmede iyidir. Belirli karakterler eklemek için "sol parantez, x, artı işareti, iki, sağ parantez" gibi pek çok şey söylemek gerekir.

Kod yazarken çok fazla hareket ve yeniden yazıyorum. Konuşma metni, tek bir dil akışı için iyidir. Her yerde ileri geri gitmek için iyi değil.

Kodlamadaki küçük görevlerin çoğu yazmaya eşdeğer değildir, bu da tüm metinden konuşmaya iyi gelir. Sekmeleri başka bir kod modülüne bakmak için ne sıklıkta değiştirdiğinizi veya düzenleyicinizdeki bir işlevi ne sıklıkta katlayıp açtığınızı düşünün.

Eğer bir metinden konuşmaya programınız varsa, bir deneyin ve kendiniz görün. Çok etkileneceğini sanmıyorum.


Bu arada, her iki kolu da aynı anda kırmayın. Her seferinde bir tane kırın, bu şekilde çok daha kolay.

Eğer tek bir kırık kolum olsaydı, tüm kodumu tek elle yapardım. Konuşmadan metne yazılım kullanmaktan daha hızlı olurdu.



3
İlk başta değil, kesinlikle. Ancak kendinizi daha iyi hissettiğinizde, dizüstü bilgisayarınızı evde bulundurun, ancak birkaç ay araba kullanamazsınız, biraz iş yapmak istersiniz.
Joe

13

Şiddetli karpal tünel veya el yaralanmaları (vb.) Olan çalışan bir profesyonel programcı (zamanın para olduğu) için, bir genç / stajyer "çift programcısı" kiralamak ve "ses tanıma" yapmasına izin vermek çok daha verimli olabilir ve yazıyor.


Bu iyi bir düşünce. Çift programlama ile, nasıl kod yazacağını ve nasıl yazılacağını bilen bir ortakla birlikte çalıştığınız sürece iki kırık kolla üretken olabilirsiniz.
Kyralessa

4

İşte Tavis Rudd'un Emacs, vim ve terminalde programlama ve düzenlemeye uygun bir kelime dağarcığı oluşturmak için Python eklenti yapısını kullanarak Dragon Naturally Speaking'i nasıl özelleştirdiğini açıkladığı bir Python Sözleşmesi'nden bir videoya bağlantı. Programlama ve geliştirme alanında ses tanıma olanaklarına ilham veren bir bakış.

Sesle Kodlamak için Python Kullanma

İki yıl önce çok şiddetli bir Emacs Pinkie (RSI) vakası geliştirdim, ellerim uyuştu ve artık yazamadım veya çalışamadım. Umutsuz, ses tanımayı denedim. İlk başta programlama çok acı vericiydi ama yazamadığım için ısrar ettim. Python ve Emacs Lisp'de birkaç aylık kelime ayarlama ve koli bandı kodlamasından sonra, sesle daha önce hiç olmadığı kadar hızlı ve verimli bir şekilde kod yazmamı sağlayan bir sistemim vardı.

Hızlı tempolu bir canlı demoda, Python kullanarak küçük bir sistem artı iyi bir ölçüm için birkaç dil daha oluşturacağım ve klavyeye dokunmadan dağıtacağım. Demo tanrılar planlanmış bir görünüm yapacaklar. Umarım ses tanıma artık engelliler için bir koltuk değneği değildir veya düz bir nesirle sınırlı değildir. Artık tüm programcılara fayda sağlayabilecek son derece etkili bir araç ...


1
ne yaptığını ve neden sorulan soruya cevap vermesini öneriyorsunuz? "Yalnızca Bağlantı cevaplar" oldukça Stack Borsası hoş karşılanmaz
tatarcık

1
gnat - Gönderiyi neden alakalı ve yararlı bir kaynak olduğunu düşündüğümü yansıtacak şekilde güncelledim. Bağlantılar biçim için uygun değilse kaldırırım.
starsinmypockets

1

Gerçekten de Dragon NaturallySpeaking kullanarak ses çözümü ile bir programlama oluşturabilirsiniz, ancak Dragon NaturallySpeaking genel çözümün sadece küçük bir parçası olacaktır.

Sesle başarılı bir şekilde programlamak için sesi kelimelere dönüştürmenin ötesinde birçok teknolojiye ihtiyacınız var. Ele alınması gereken sorunlara bazı örnekler:

Ostreambuf_iterator gibi anlaşılmaz kelimeleri nasıl giriyorsunuz? Programlama dillerindeki ağır noktalama işaretlerini nasıl ele alırsınız? Pencereler arasında nasıl geçiş yapacaksınız?

Genellikle sesli çözüm ile bir program oluşturmak ve öğrenmek birkaç ay sürer. Joe gibi bir ya da iki günde bir şeyler yapmayı bekleyen insanlar hayal kırıklığına uğrayacaklar.

Makul bir komut seti verildiğinde sesle ileri ve geri hareket etmek işe yarar. Örneğin, hedef satırı, gösterilen satır numarası mod 100'ü kullanarak kolayca belirtebilirsiniz. Kelimelerle veya noktalama işaretleriyle hareket etmek, bir satır içinde hareket etmek için programlama dillerinde iyi çalışır.

Bu sorunlar hakkında daha fazla bilgiyi http://vocola.net/programming-by-voice-FAQ.html adresindeki sesli SSS ile programlamada bulabilirsiniz.


0

Joe'nun Sorunun nerede olduğunu ileri geri gidemeyeceğiniz cevabına dayanarak :

Bu sorunu çözmek için göz izlemeyi ayrıca kullanabilirsiniz.

Programlama dilleri okunabilir. Smalltalk oldukça okunabilir.

10 timesRepeat: [
    Transcript show:'hello'.
    Transcript cr.
].

Konuşma için optimize edilmiş bir programlama dili düşünün. Yapılabilir.

Müşterilerime ne istediklerini sorsaydım daha hızlı bir at söylerlerdi. - Henry Ford

Bu terimlerle: Konuşulan bir metin girişi bu olmayabilir. Ancak programlanabilir özelliklere sahip konuşma kontrollü bir ortam bir adım daha ileri olacaktır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.