program-in-chinese / overview

中文编程的历史、现状和展望。issue 中进行相关问题的讨论.
https://zhuanlan.zhihu.com/codeInChinese
GNU General Public License v3.0
386 stars 34 forks source link

专栏及问答 评论摘要收集 2018 #64

Closed 4b5ent1 closed 6 years ago

4b5ent1 commented 6 years ago

如题。专门收集觉得还不错的提问和讨论

4b5ent1 commented 6 years ago

中文编程兴起的可能途径 https://zhuanlan.zhihu.com/p/31466218

理性批判 https://www.zhihu.com/people/li-xing-pi-pan-23

大佬,建议你讲讲编译器,编译原理等用代码实现的具体案例,精确到每个语法词法的作用意义特性等.连带着,把编程语言或相关的计算机知识,冯诺依曼计算结构都科普一遍,想到什么说什么,只要是计算机相关的,发散思维,或者画图说明算法,数据结构等,整理成文章.目前,我们需要的是人多,参与的人多起来才能提高更多智慧去解决中文编程,但对中文编程感兴趣并有意实现的一般都是像我这样的入门小白新手,什么都一知半解的半桶水,就像p2p一样,一个复制为两个,两个复制为4个.不断传播到新的受众,让他们都来,让他们的知识储备为此而生.

神父 https://www.zhihu.com/people/shen-fu-98-92

有时候,简单的事情才更有杀伤力,中文编程并不是要求设计者创造一门中文语言,实际上只需要将语言关键词提炼出来就已经很优秀了。 真正的压力来自于IDE本身的结构优化,这已经与用什么语言编程无关了,图形化是一个方向。 我觉得这位高人,对市场的探索和分析并不够,程序员一定做着文人相轻的事情跟你对抗,因为中文编程拉低了程序员的门槛,很多人因此收入降低,而你只针对弱者推广中文编程肯定是没有出路的,有两个身份可以撬开程序员坚硬的大脑: 1.产品经理 程序员开发什么,并不是自己决定的,而是由产品经理写成技术文档,下开发指令给程序员的,如果要求使用中文,程序员很难拒绝,而产品经理的身份就很有意思了,有公司老板就是产品经理的,也有从市场或客服岗位来的,这些人的英语编程水平很菜,却决定了程序员是否得到岗位,程序员做什么。 2.架构师 一个项目如果从技术开始,基本上都是饿死的,而一个项目如果从市场开始,则基本都是累死的,合理的项目都是先由商业架构向技术架构演进的,前期商业架构落实成技术DEMO过程不需要那么多高端的编程,却需要快速应对市场变化,领导者直接盯程序员是在创业初期不可避免的情况,那你是选择一群不写文档,只能在产品外观层面和你沟通的程序员,还是选择能够将自己的开发项目结构化成中文文档的程序员呢?

编程要解决的是人机交互,编程目前产生的问题是制造了人与人交互的困难,各种语言之间也存在隔阂,当python这样充满生命力的语言诞生时,中文编程是不是该做点什么了? 1.如何快速闭环,实现python编程的中文化(多语言化)? 2.如何将诸多开源的python项目中文化(多语言化)? 3.母语化的编程项目或IDE是否自带任意切换语言关键词快速替换功能? 4.可否在代码审计上做一些尝试?在母语化基础上引入代码审计,或提供接口? 5.可否找到python编程过程中的盲区,使用中文化的产品替换它,使用多语言规范? 6.能不能做到更开放

吴烜 (作者) 回复神父

多谢分享. "只针对弱者推广中文编程肯定是没有出路的" -- 个人觉得, 只要是对中文编程有需求的, 就应该是推广的目标群体. 限于个人现状, 暂时没有余力对中文命名之外再作探索. "产品经理写成技术文档,下开发指令给程序员的,如果要求使用中文,程序员很难拒绝" -- (对现在国内情况不大了解, 仅是猜度)如果技术文档涉及到了软件设计与API设计/风格, 那么作者一般是资深程序员吧? 而如果文档只是需求的细化, 那么决定API的还是程序员. 另外, 只要产品经理的首要目标是产品结果, 而不是过程, 恐怕也难以避免"避险"心理(详见中文命名实践的阻力和应对) "领导者直接盯程序员是在创业初期不可避免的情况,那你是选择一群不写文档,只能在产品外观层面和你沟通的程序员,还是选择能够将自己的开发项目结构化成中文文档的程序员呢?" -- 同上, 在追求产品短期结果的大风气下, 文档很多情况下会被牺牲掉. 恐怕自动测试的优先级都在它之上. 更不用说程序员本身也反感写文档. 无论如何, 很同意文档和代码结合是个重要趋势(几年前的了解, 某湾区大厂也在实践). 之前的"Literate Programming"一书摘记之一也是相关考古. "编程要解决的是人机交互,编程目前产生的问题是制造了人与人交互的困难" -- 很同意! 从人机交互角度看中文编程:'打开微信' 有些个人看法. 1.如何快速闭环,实现python编程的中文化(多语言化)?-- 如果指的是关键词汉化, 可以做到: 为Python添加中文关键字 2.如何将诸多开源的python项目中文化(多语言化)?-- 如果指把核心API汉化, 华蟒和中蟒都是先驱, 但都不活跃了. 如果指把热门的第三方库接口汉化, 把最常用的开源的英文API进行中文化 · Issue #9 · program-in-chinese/overview 有些探讨. 比较现实的问题是工作量, 以及中文化的用语一致问题, 而用语一致实际上是需要实践积累的, 这也是中文命名的作用之一, 因为它是最小代价(只要语言和框架支持Unicode命名即可, 不需任何额外工具辅助)积累中文代码, 一致中文术语的途径. 3.母语化的编程项目或IDE是否自带任意切换语言关键词快速替换功能?-- CTS(5分钟入门CTS-尝鲜中文版TypeScript)好像用插件实现了这个功能 @htwx 4.可否在代码审计上做一些尝试?在母语化基础上引入代码审计,或提供接口?-- 代码审核需要一个一致的风格. 而中文命名风格至今还是无根之水(缺乏实践). program-in-chinese/java_in_hours_chn 里有些尝试. 希望能够结合一些以中文命名为主的项目实践, 一起总结出一些比较实用易用的命名方法 @MikaGura N 5.可否找到python编程过程中的盲区,使用中文化的产品替换它,使用多语言规范?-- 很难想象有这样的盲区, 毕竟Python也几十年了. 追着新应用领域是个可能, 但也需要很大人力投入(本身API开发就是个功夫+技术活) 6.能不能做到更开放?-- 除了开源之外?

nobodxbodon commented 6 years ago

请在 https://github.com/program-in-chinese/overview/issues/3 继续. 以从实际项目或实践中发现的问题/需求优先. 对于中文编程的一般性看法/讨论, 如果特别有同感或认为有建设性意义, 也可转载.