overview icon indicating copy to clipboard operation
overview copied to clipboard

跨界: 哪些中文非IT领域会偏好中文API, 编程/脚本语言?

Open nobodxbodon opened this issue 7 years ago • 26 comments

个人感觉越和IT无关的领域越会希望易于理解和上手的. 妄自猜度, 文学/艺术类可能是其中之一. 不知各位有什么看法? @taostein 请问您能分享一些编程创作艺术作品的体会, 以及文艺界有怎样的软件需求吗?

nobodxbodon avatar Aug 08 '17 06:08 nobodxbodon

关于艺术方面,按我了解。国外教设计类课程的大学,已经有使用processingp5js来制作电子艺术作品和人机交互的原型的课程。国内的话不知道是否已经有了类似的课程,如果有的话,或许把前者的api用中文来表示可以更容易被学习者所理解。

lightrabbit avatar Aug 09 '17 07:08 lightrabbit

试着中文化了一下这个p5js的简单例程, 感觉是应该好懂些, 不少简单注释都能省掉. 不过最好要有领域背景的来看看翻译是否妥当.

function 构图() {
  新画布(720, 400);
  背景色(200);

  填色(204, 101, 192, 127);
  笔色(127, 63, 120);

  长方形(40, 120, 120, 40);
  椭圆(240, 240, 80, 80);
  三角形(300, 100, 320, 100, 310, 80);

  // 小花
  偏移(580, 200);
  无边界();
  for (var i = 0; i < 10; i ++) {
    椭圆(0, 30, 20, 80);
    旋转(PI/5);
  }
}

一个不直接相关的问题, javascript的IDE有类似于javadoc的文档提示吗? 就是比如输入"填色"之后, 鼠标放上去之后能看到这个API的注释, 像这样: screen shot 2017-07-20 at 4 50 19 pm 因为想象写上面程序的时候, 应该经常需要查到底各个参数是啥意思.

如果基于p5js中文化版本(可以逐渐增强图形库), 然后做成像jsfiddle那样的在线编辑运行环境, 再添加一些IDE功能(比如上面的文档集成), 感觉可能对用户会更加方便.

nobodxbodon avatar Aug 10 '17 04:08 nobodxbodon

游戏设计方面可能有很多应用,例如编写技能脚本或敌人的行动策略之类的

azige avatar Aug 14 '17 15:08 azige

摘自 @wangyu190810 自己想要的编程语言

当然你希望,有种语言能计算xls中的各种数据。并且能随时计算,不需要等待,不需要什么高超的编程能力,你就是想计算一下一些数据而已,为什么 我要懂得编程。

也许需要一个比xls公式运算更接近自然语言的编程环境, 而且还最好和Excel集成

工作了,做用户运营。我们希望,我们希望知道,最近为什突然用户少了?话题上了?活跃低了?你告诉程员,你想要知道为什么?程序员说,我也不知 道啊。 自己气的只能说:“不就仗着你们能随便写代码吗?要是我会写代码。我自己就统计了,要你们干啥?”。 你知道可能那些因素会影响,你自己 要来数据,自己开始搞统计,你希望,编程很简单,不仅能算出来各种数据,还能把数据使用漂亮的图表展示出来。

也许类似于R但更易上手

你有很好的思路。你知道这个游戏一定会成功。你找了很多人。你说" 我有一个好主意,能让我们暴富(i have a dream)"。别人都不信你,你自己不 知道如何说服他们,你觉得自己要是能做出一个简单模型(demo)。那么你见到投资人,希望得到到一笔钱天使资金,相比余仅仅有ppt,投资人会更加认 为你很靠谱。

前端的原型开发编程环境. 现在已经有不少所见即所得的原型开发工具, 比如gomockingbird之类. 游戏原型创作对图形绘制要求更高.

nobodxbodon avatar Oct 20 '17 06:10 nobodxbodon

@nobodxbodon 我的个人想法,

  1. 当然你说xls公式,可以完成统计,当然没什么基础的也可以。
  2. R语言,可以完成统计,更好学习,很多大牛都在用
  3. 前端圆形工具,当然这个例子有点极端,编程语言到原型工具之间的差距,不是一点半点的。所以python没有优势可言 不过学习python,可以轻松的解决1,2 问题,并且学习曲线比较低 同样,python也可以变成一个工具,加深理解,就可以用来简单谋生。

十分感谢阅读blog,我的东西实在写的有点烂了。

wangyu190810 avatar Oct 20 '17 07:10 wangyu190810

@wangyu190810 不好意思, 澄清一下. 之前很高兴看到你对编程语言的设想, 因为这里也正好在讨论其他领域对编程的需求. 所以很希望看到一些专业人士的个人体会. 个人觉得xls和R自然是功能强大, 不过也许在易于上手和对中文用户友好方面还不够. 另外, 看来用Python解决了不少工作中1/2的问题吧? 请问在此过程中有没有什么心得?

nobodxbodon avatar Oct 20 '17 16:10 nobodxbodon

@nobodxbodon 简单写了一些感受 可能和你的想要的还是不一样,但是我觉得你可以尝试一下python。 xls和R专业的工具,必然是解决良好结构化的数据。 但是很多时候,数据没有结构化,或者数据机构化不严谨, 更甚者,数据需要自己采集。 这个时候,python可能就比xls和R更有用,可以从头处理到最后。 并且更加灵活。

wangyu190810 avatar Oct 21 '17 10:10 wangyu190810

@wangyu190810 多谢分享! Python确实是易于上手. 不少大学也把计算机基础课从Java/C改为了Python. 现在看来也可以理解为啥中蟒 周蟒选择Python作为汉化对象. 我们现在在尝试汉化其他一些编程语言, 以降低学习门槛, 提高可读性: https://github.com/program-in-chinese/overview/issues/25 从你的应用里, 看到数据抓取和分析这个需求, 个人感觉也是蛮有代表性的. 以后如果编写一些中文编程的教程时, 希望会包括这部分内容.

nobodxbodon avatar Oct 21 '17 15:10 nobodxbodon

对在代码中使用中文命名的质疑与回应一文有回复中建议:

如果能有一个类似discuz或者cms这样普通站长也广泛应用的系统,进行中文化的开发,可能对中文在编程中的应用起到比较好的推广效果。

感觉这是个很有需求的领域. 汉化现有框架或是新创一个轻量化的框架都是有可能的.

nobodxbodon avatar Oct 29 '17 15:10 nobodxbodon

@chencun 早先指出:

比如广告营销,新闻媒体。网赚,还有其他的需要自动化操作的领域。 这些人,他们都希望自动化,但是,他们又请不起专业的程序员,也不想外包

nobodxbodon avatar Nov 04 '17 22:11 nobodxbodon

https://www.zhihu.com/question/26071216/answer/268485364 建议:

比如说WPS完全可以在软件内,开发一个比较简单的中文编程语言或者与某个中文编程语言相集成,让简单的一些易用程序可以跑起来,再慢慢的扩大规模,这样类似于WPS这样的完全和Office的用户重叠的软件可以吸引一部分的用户,实例就是主流编程圈子VB早就被抛弃,但是在OfficeVBA上还是有太多用户,毕竟大部分人不是搞程序开发的,只是想写个简单的东西方便自己的日常工作而已……性能也不是特别在乎……还有,中文编程最好能和类似于siri这样的人工智能相结合,有效降低编程的门槛,方便用户使用,比如我们在office编辑中经常会遇到2008年8月8日改成2008年08月08日或者是改成2008-08-08甚至是20080808这样的事情,对于不懂编程的小白来说这必须手动操作很麻烦,编程我们可以直接类似于siri一样,就写一句“把日期改成2008年08月08日”就能让系统自动识别并进行相关操作(这个例子不够严谨,反正就是类似的意思)。

nobodxbodon avatar Nov 30 '17 15:11 nobodxbodon

刚看到那位"抚子"日语编程语言的作者还有个项目好像是从日文的类似"哆来咪"之类的乐谱生成midi文件. 示例.

nobodxbodon avatar Dec 19 '17 19:12 nobodxbodon

今天想到, IFTTT之类的网络服务对API进行了自然语言化, 它的受众更多也是非IT专业的普通用户. 感觉这个方向也是个可能的入手点. 知乎想法链接在此

nobodxbodon avatar Jan 08 '18 07:01 nobodxbodon

说到哆来咪【想到basic的play函数【扩展成了music mml,8bit爱好者很多人用此语法作曲【 论各种东西的字面量(还想到了b站开源的最新弹幕语法(

farteryhr avatar Apr 25 '18 17:04 farteryhr

@farteryhr 弹幕语法是指这里? 之前发觉的应用很广的广义上的中文编程的一个方向: 从人机交互角度看中文编程:'打开微信'

nobodxbodon avatar Jul 01 '18 21:07 nobodxbodon

前两天的合作项目之后, 有个想法, 主要面向非IT领域的业余项目的需求, 感觉此类需求不少时候可以通过较简短的脚本实现, 而且经常有现成开源项目/库可以借鉴.

nobodxbodon avatar Oct 01 '18 03:10 nobodxbodon

基于楼上, 新开万事屋repo. 作为一个与最终用户的交流渠道. 有闲/兴趣的可以关注一下.

nobodxbodon avatar Oct 01 '18 06:10 nobodxbodon

我这边最近了解到,很多文化水平不够的(专科往下,或者年纪较大的(30以上,非IT从业人员,也对编程感兴趣。他们通常英语水平也不够,然后间接的,受认知影响,很多也不知道有chrome翻译这样的方法

4b5ent1 avatar Oct 02 '18 10:10 4b5ent1

另外我认为,现在的编程形式,和音乐制作的形式很像(我认识做游戏音乐的)。跟做视频后期也有些类似。当然,现在很多做视频后期的,也被逼着自己用代码实现渲染效果了。。

游戏开发和脚本制作属于IT,故不展开赘述。

其次应该是一些办公的,比如会用到office里面的excel公式(甚至用到word的eq域,但是对编程可能还没有一个完整的认知。

4b5ent1 avatar Oct 02 '18 10:10 4b5ent1

找了一下太吾绘卷的源码(由于主创并非程序员专业, 更接近游戏总体设计, 可以认为是跨界), 看起来还是英文命名, 但如主创所言, 配备了非常详尽的中文注释: 1538289363868708 @lightrabbit 如果有接触途径的话不妨建议他在业务部分用中文命名(开发环境允许的情况下), 相信在重构代码时可以节省不少维护工作.

nobodxbodon avatar Oct 02 '18 18:10 nobodxbodon

楼上1楼上2:

个人认为, 通过第三方应用集成手机的系统和应用功能的方式, 中文编程的潜力很大, 别说基本的日常命令还有很大提升空间, 进一步的简单条件/循环语句也可以有很多功能增强(之前的脑洞), 而似乎现在的语音助手都不具备这个功能. 类似的服务如IFTTT, 虽然只支持如果...就...不然的逻辑, 通过集成各种网络服务也有了很多用户.

不知有没有手机应用, 可以实现如果收到了xx的短信, 把短信内容写到记事本里, 或者如果收到了yy的微信自动回复"xxxx"(假设微信支持调用接口)这样的功能呢? @MikaGuraNTK

nobodxbodon avatar Oct 28 '18 00:10 nobodxbodon

试着中文化了一下这个p5js的简单例程, 感觉是应该好懂些, 不少简单注释都能省掉. 不过最好要有领域背景的来看看翻译是否妥当.

function 构图() {
  新画布(720, 400);
  背景色(200);

  填色(204, 101, 192, 127);
  笔色(127, 63, 120);

  长方形(40, 120, 120, 40);
  椭圆(240, 240, 80, 80);
  三角形(300, 100, 320, 100, 310, 80);

  // 小花
  偏移(580, 200);
  无边界();
  for (var i = 0; i < 10; i ++) {
    椭圆(0, 30, 20, 80);
    旋转(PI/5);
  }
}

这绝不是什么随意的演示,能做成这样,API设计的功底真的很强。单纯随意使用中文是没有这样的效果的,我自己也经常尝试。使用中文意味着要隐藏实现细节,只保留主干逻辑,而且妥善抉择命名的是目的还是行为,才会直观。否则底层实现通常是和计算机术语相关,变成中文只会更乱。佩服。@nobodxbodon

LongTengDao avatar Aug 09 '19 01:08 LongTengDao

@LongTengDao 这是基于原英文API的中文化, 因此做的工作只是选择对应的中文命名进行一对一封装. 本人没什么计算机图形学背景, 用语方面肯定还有改进空间.

我自己也经常尝试

请问可否分享一下? 也好交流一下心得

否则底层实现通常是和计算机术语相关,变成中文只会更乱

不知指的是哪方面? 可否举个例子?

nobodxbodon avatar Aug 09 '19 05:08 nobodxbodon

我自己也经常尝试

请问可否分享一下? 也好交流一下心得

否则底层实现通常是和计算机术语相关,变成中文只会更乱

不知指的是哪方面? 可否举个例子?

谦虚了。比如这样就是非常失败的:

for ( var 总次数 = 10, 第几次 = 0; 第几次<总次数; ++第几次 ) {
    // ...
}

LongTengDao avatar Aug 09 '19 17:08 LongTengDao

@LongTengDao 关于命名风格, 欢迎到此专题贴探讨. 和你的例子比较接近的是"如何命名临时变量"部分. 另外此文供参考

nobodxbodon avatar Aug 09 '19 21:08 nobodxbodon