首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
这是一个专门讨论 idea 的地方。

每个人的时间,资源是有限的,有的时候你或许能够想到很多 idea,但是由于现实的限制,却并不是所有的 idea 都能够成为现实。

那这个时候,不妨可以把那些 idea 分享出来,启发别人。
拉钩
V2EX  ›  奇思妙想

直接通过说话来写代码能做吗?

  •  
  •   Kongtou · 209 天前 · 6378 次点击
    这是一个创建于 209 天前的主题,其中的信息可能已经有所发展或是发生改变。
    不用键盘,直接说话,会不会引发软件工程革命?
    85 回复  |  直到 2018-05-21 14:58:52 +08:00
        1
    opengps   209 天前 via Android
    问题是,说错了修改的时候废话超级多
        2
    alvin666   209 天前 via Android   ♥ 1
    就中国程序员的英语水平,一个字母一个字母地读都不一定准确
        3
    fengye1996   209 天前 via Android   ♥ 3
    锤粉变相宣传 TNT ?
        4
    lukefan   209 天前   ♥ 1
        5
    f2f2f   209 天前   ♥ 48
    直接通过说话来写代码能做吗?
    > 项目经理不就很早就实现此功能了吗
        6
    whileFalse   209 天前
    直接通过鼠标写代码能做到吗?
    能啊,但我不觉得会引发革命。
        7
    artvista   209 天前 via Android   ♥ 29
    在别的地方看到的😂
    井号!

    include!

    空格!

    左尖括号!

    iostream!
    不是,,,退格!退格!
    挨欧死菌姆!
    右尖括号!

    换行!
    换行!

    int!
    退格!退格!
    挨~嗯~踢~!

    空格!
    main!
    左圆括号!
    void!
    右圆括号!
    换行!
    左花括号!
    换行!
    两个个空格!
    退格退格!
    四个空格!

    std!
    冒号! 冒号!
    cout!
    退格!
    死诶! 奥特!
    空格!
    左移!
    哈?无法识别?!
    小于!小于!
    空格!
    双引号!
    妈的不要全角的!
    模式!
    半角!
    退格!
    双引号!
    Hello! Whatever! Fuxk my life!
    双引号!
    空格!

    小于!小于!
    std!

    冒号! 冒号!

    end!
    诶藕!
    分号!
    安静!吵到我用 TNT 写代码了!

    我没有叫你识别这句啊!
    退格退格退格....退格!
    换行!
    四个空格!
    return!
    空格!
    零!
    诶,不要中文啊!
    阿拉伯数字零!
    分号!
    换行!

    右花括号!
    编译!
    链接!
    运行!
    error: redefinition of 'productivity'!
        8
    Luckyray   209 天前 via iPhone   ♥ 1
    做是能做到,但是效率想赶上键盘,靠语音是白搭了,100 %的识别率也不行。
        9
    woscaizi   209 天前 via iPhone
    还是用键盘鼠标,利用人工智能,做输入预测,然后写代码时大片大片地输入,到时只把精力放到业务逻辑的编写上。我觉得这样靠谱。
        10
    joouis   209 天前 via Android   ♥ 2
    结对编程啊,一个人说一个人写 XD
        11
    pheyer   209 天前 via iPhone
    不如脑电波写代码
        12
    jdjd   209 天前 via iPhone
    以前刚学 c 的时候,就想能不能做个翻译器,把汉语翻译成 c
        13
    scusjs   209 天前   ♥ 2
    出处见水印
        14
    nightcat   209 天前
    想起了以前贴吧一个段子,请一个电脑高手帮忙重装系统,结果没系统盘,高手用针在 CD 上戳孔一下午写出了一个系统装上了
        15
    fatedier   209 天前   ♥ 1
    说出编程意图,程序智能识别后自动编码,感觉不是没有可能,首先需要对足够多的场景去模块化,框架化,减少变数,比如从编程语言层面,实现一个功能尽量只有一种方式实现。
        16
    frienmo   209 天前
    @scusjs 新建 HelloWorld 类,右边就有模板包括 main 的,sout 了解下,括号补全也不难吧
        17
    forte   209 天前   ♥ 5
        18
    Bijiabo   209 天前
    @f2f2f 我觉得这才是老罗对工作站的定义,哈哈哈
        19
    muziki   209 天前
    @scusjs String 写错啦,看来音标会是语音编程的第一 bug 来源
        20
    imn1   209 天前
    如果锤子手机的公司,在下一场发布会前,除了服务器外全部换成 TNT 工作站的话,我买两台顶配放在家看它俩自己聊天玩
        21
    FRankie222   209 天前 via iPhone
    不一定非得是用语音写代码啊,把 IDE 里面那些比较难记住,组合比较繁琐的快捷键做成语音命令不就快多了,比如说全局搜索,类搜索,符号搜索,代码格式化等进行相应的操作,感觉会快一些吧
        22
    Jackeriss   209 天前 via iPhone
    说话很累的,比动手指头累多了。
        23
    F1024   209 天前
    像霍金轮椅那样控制应该快些
        24
    kxxoling   209 天前
    早就有了:
        25
    noe132   209 天前 via Android
    说着说着怕是自己思路就忘了
        26
    yangqi   209 天前
    @fatedier #15 到那时候大部分码工码农们就下岗了
        27
    0attocs   209 天前 via iPhone
    @fatedier program synthesis。写清楚 specification 也很难。requirement -> specification -> implementation,越高层越难说清楚。无论人插手哪一步,思考是不可避免的,坑也是不可避免的。
        28
    Wicked   209 天前 via iPhone
    其实我支持楼主做的,总要有人为残障人士做点事情
        29
    youngxhui   209 天前 via Android
    键盘我只要打几个字母就可以自动补全,而语音怕是要全部说完啊,而且标点符号还是个问题,代码一般是英文符号,而输出显示一般会用中文符号。
        30
    HookSafe   209 天前 via Android
    那遇到那种大型项目 怕是嗓子要哑来说不出话吧 代码真不适合语音输入 效率很慢啊😥
        31
    mseasons   209 天前
    为什么你会觉得用嘴比用手效率高呢?
        32
    MrXiong   209 天前
    兄弟,说话说多了,嘴遭罪
        33
    justfindu   209 天前   ♥ 1
    如果要语音编程, 至少需要固定某一些识别语对应固定格式, 比如说
    如果变量 A 等于 1 就变量 B 等于 2 否则等于 3, 直接就是 if(){}else{} 这样是不是就方便了
        34
    thinkif   209 天前   ♥ 1
    为什么想到的语音输入都是以单词或字母为单位?

    语音输入的未来一定是描述功能和意图,然后 AI 理解之后完成。

    不过到那个时候程序员应该不是一个工作了。所以语音输入写代码在未来就是伪命题了。
        35
    old9   209 天前
    @thinkif 非常赞同,语音输入写代码在未来就是伪命题。
        36
    guolaopi   209 天前
    @fengye1996 皮?
        37
    mmrx   209 天前
    我感觉想要比键盘输入效率还高,语音就别想了,脑电波还差不多
        38
    zgx030030   209 天前
    成千上万行的代码,那时候金嗓子可能会大卖
        39
    harryyyt   209 天前
    你指的说话是自然语言还是把代码复述一遍?自然语言会有二意,准备率不高,复述代码赶不上打字快吧
        40
    deving   209 天前
    语言描述太不准确了,可以含糊,可以转弯抹角,可以歧义,可以指桑骂槐,可以。。。怎么可能编写代码?
        41
    fadaixiaohai   209 天前
    哈哈,普通话不标准的,英语发音不标准的,没办法干活了
        42
    qiayue   209 天前
    就下面四句,现在机器学习深度学习可以做到翻译成代码吧

    获取用户输入昵称
    查询昵称是否存在
    如果存在,则提示用户已存在
    如果不存在,则插入一条新纪录到数据量
        43
    UnPace   209 天前   ♥ 1
    如果能实现语义控制机器自己写代码才有价值。
    例如,为机器设置好语言后,说:”生成宽度 1000px,左右比例 3:1,左右间隔 20px,左右区块内边距 10px 的网页布局“..
        44
    mcluyu   209 天前   ♥ 1
    要语音控制显然不是要像现在的代码方式一样一个字母一个字母的写, 如果真要语音控制,那编程的方式应该要这样:
    1.直接告诉 IDE,我需要一个什么样的功能,IDE 自动去实现底层代码;
    2.告诉 IDE 我需要这个界面什么样, 哪里需要一个按钮,哪里需要一个图片,然后再调整。
    所以未来也许真的是这样的,普通的软件项目根本不再需要会编码的程序员,只需要类似项目经理、产品的人就行,真正的程序员是写这些工具和系统的人。
        45
    mofe   209 天前
    @kxxoling 请问一下 V2EX 内嵌视频是如何做到的?
        46
    hellormrfool   209 天前
    问下 xx 你手快还是嘴快 (逃
        47
    mineqiqi   209 天前
    键盘写代码的效率永远比语音强 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 倍
        48
    rocksolid   209 天前
    你现在就能试,语音输入不就行了
        49
    madmen   209 天前
    请联系小浩浩
        50
    g00001   209 天前
    如果有独立办公室就可以了,
    用语音写代码有很多好处,例如可以躺着写代码,

    因为是人工智能了,所以不用一句句写代码了,例如:“给我写一个视频播放器,界面要漂亮”.........“ ,像领导那样悠闲的躺在躺椅上,悠闲的挥挥手,“这个界面不好看,滚回去重新搞一个!”。
        51
    maichael   209 天前
    人工智能自己写代码才能引起革命。
        52
    stephen9357   209 天前
    产品经理:我一直都是这么编程的啊。
        53
    SuperMild   209 天前   ♥ 1
    突发奇想,完全语音编程暂时不可行,但如果是语音辅助呢!

    比如当光标停在一个变量名时,喊一句“小写” 或 “大写” 或 “驼峰” 之类的,就自动改变大小写,这不是很方便吗。

    比如编辑过程中喊一句 “下一句” 就自动在句末加分号并跳到下一行。

    比如想在编辑器和控制台之间切换时,喊一句“控制台”就自动跳到控制台。喊一句“侧栏”就跳到侧栏。

    比如喊一句“切换”就弹出已打开文件的编号和完整标题,再说“ 3 ”就跳到第三个文件。

    还有 “句首”、“句末”、“格式化”、“折叠”……等等

    关键是语音口令特别容易记忆,这就是优势啊。

    这就和鼠标手势一样,但比鼠标手势更符合直觉、更容易记忆。

    语音控制电脑也一样,比如截屏,不用快捷键,用语音多方便啊,喊一句“截屏!”就搞定了,符合人本身的反应。

    而且当然可以自定义,比如我会想把最小化窗口定义为 “退下!”,很中二,我知道很多人不喜欢,但总有人喜欢吧。

    而且不是强迫使用,只是辅助。
        54
    newtype0092   209 天前
    不会引发软件工程革命,但会在残疾人编程领域引起革命,也算是很伟大但革命了~
        55
    wsph123   209 天前
    配合易网页,我感觉也不是不行🤣 http://front.dog/e/
        56
    ZhLTE   209 天前
    应该要做到 我需要一个功能 说出功能 自动完成 而不是说一个字打一个字
        57
    MeteorCat   209 天前
    int value = 1;
    int Value = 2;
    int vAlue = 3;
    int vaLue = 4;
    int valUe = 5;
    int valuE = 6;
        58
    janxin   209 天前
    产品经理:我想要一个表单,能填数据能显示结果,最好效果再炫酷一点
        59
    janxin   209 天前
    @ZhLTE 前端可以的
        60
    May725   209 天前 via iPhone
    都用语音了就不要局限在逐个字符输入上,转而粒度更大的输入。不过细想下这跟语音又有什么关系呢! 在双手不方便的时候,等同于组合快捷键
        61
    402124773   209 天前
    Smartisan TNT+易语言
    哈哈。
    这个傻逼 Smartisan 单词我还是谷歌搜索的。
        62
    simpleliang   209 天前
    https://github.com/liangjingyang/voice_kit
    前段时间脑袋一热, 动手试了试. 自己做了一个. 正如 @SuperMild #53 楼说的那样, 想实现的只是一个辅助工具.

    遇到的问题及思考 ( 还未动手尝试 ) :
    1. 这种工具要用顺, 用来连接 语音识别结果 ( 文本 ) 和 执行的操作 ( 命令 ) 的中间层很重要, 其实就相当于一套适合的 api.
    2. 语音 -> 文本的准确率的问题, 想到一个优化的方法: 因为每个人的口音都不太一样, 在使用工具之前, 给一篇涵盖语素相对比较全面的文章让使用者朗读, 构建一个个人语素对标准语素(比如普通话)的映射关系, 用来辅助提高识别的准确率. 但对语音识别了解不多, 不知道可行性如何.
    3. 我这个项目比较简单粗暴, 语音识别是用的手机某厂的语音识别 sdk 的 Demo 改的 lol, 所以相当于有 3 个端, 云端, app, 电脑. 除了识别准确率之外, 反应速度也不满意, 操作之间需要停顿. 如果真要用的爽, 要把三端合一, 并且 1 中的中间层定义的要简短.
        63
    DOLLOR   209 天前
    能引起革命的不是语音,而是脑电波
        64
    hellobanny   209 天前
    本来只有腰酸手痛,现在还要加上嗓子哑了。
        65
    lanjz   209 天前
    @artvista 哈哈哈哈
        66
    it1989   208 天前
    通过意念写代码可否实现?
    认真问!
        67
    gfh110   208 天前
    用易语言的 AST 就可以了。或者 Lisp 方言
        68
    SuperMild   208 天前
    @simpleliang 这个倒是有一个笨方法解决,就是有一个设置过程,初次使用时引导用户把语音命令念一遍,同时演示效果。这样做还有个好处,用户可以趁此机会自定义命令,因此不受语言影响,不管说英语、普通话还是粤语,反正就以用户念的为准。

    由于是一种全新的交互模式,第一次使用时有互动教程应该不会引起用户反感。
        69
    tnter   208 天前
    带动了嗓子药产业的发展 /dog
        70
    hangzhoupm   208 天前
    说的更不上思维的速度,效率会有很大的影响
        71
    murmur   208 天前
    @SuperMild

    格式化
    格式化
    cnm 让你格式化啊
    哎你 sb 么我让你把代码格式化没让你把 d 盘格了

    大概场景就是这样吧
        72
    Admstor   208 天前
    @mcluyu
    那也依然不需要语音编程
    你说的第一点就实际上是 UML->代码,已经有一些工具可以帮助实现,自动编程这个领域也在做类似的发展
    第二点,图形这一块也显然是鼠标键盘甚至触摸的效率更高,也与语音毫无关系

    语音仅仅是为一些障碍人士使用的辅助工具,试图代替主流工具目前看不到任何可能性
        73
    simpleliang   208 天前
    @SuperMild 恩也是一个很好的方案, 但是优缺点很明显

    优点是: 提高的识别准确性, 但前提是没有相似的语音命令, 再前提是命令比较少且结构简单

    缺点是: 如果有组合命令, 或命令很多, 那么准确性还是一样会打折扣; 给每个命令设置语音有点像设置快捷键, 如果命令很多, 这个过程还是比较磨人的
        74
    SNOOPY963   208 天前
    - - 感觉人和人直接把我重点的能力真的差太多。

    理论上可以。甚至能到非常可用的程度。

    上面说 PM 这么编程不厚道,PM 也是帮你们梳理过的,应该说老板(需求方)才是这么做的。


    无非是,目前机器智能程度,还不足以自己定义某一个东西。要做到理想的程度,起码还需要一两个技术突破。
    这个时间上是不确切的。
        75
    Symo   208 天前
    其实是有的, 盲人程序员.
    确实比普通程序员编码速度更慢一些, 但是通过语音输入可以完成
        76
    hxd   208 天前
    目前用眼睛写代码也许更容易实现一点,而且不打扰别人
        77
    Yycreater   208 天前
    @artvista 丫的,画面感~真强!服了!!~
        78
    pandaaa   208 天前
    @artvista 你要笑死我继承我的橘子吗?
        79
    Shawn5   208 天前
    可以想象在一个办公室,大家一起用语音编码的场景,估计直逼菜市场吧,哈哈啊哈哈哈哈啊哈哈
        80
    param   208 天前 via Android
    我觉得,只要设计一门专用于语音编程的语言也未必不行。通常文字都是基于语言的。
        81
    param   208 天前 via Android
    其实我之前还想过用眼球来控制光标,应该会比 hjkl 方便
        82
    leekafai   208 天前 via Android
    control A,delete
        83
    ahjsrhj   207 天前
    @SuperMild #52 vim 相比效率更高吧
        84
    kxxoling   206 天前 via iPhone
    @mofe 自动的,粘链接记就可以了。
        85
    onepunch   205 天前
    emmmmm 那写代码就费嗓子了 ,手动心疼一波 996 的朋友们 请准备好你们的金嗓子喉宝
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3615 人在线   最高记录 4019   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.1 · 32ms · UTC 06:44 · PVG 14:44 · LAX 22:44 · JFK 01:44
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1