• 发文
  • 评论
  • 微博
  • 空间
  • 微信

MATLAB被禁用,“二哈”冤不冤?

本来科技 2020-06-23 14:39 发文

自从哈尔滨工业大学、哈尔滨工程大学(简称哈工大、哈工程,合称“二哈”)被美国禁止使用MATLAB之后,网上出现这样一个批评的观点:

哈工大的软件学院发展了二十多年,国家给你们这么多投入,但实际上只不过是给BAT这样的互联网公司培养了一大批可以“996”的程序员。

言外之意,MATLAB被禁,你们也不冤——谁让你们只顾培养996的程序员,没有研究出和MATLAB一样的基础软件?

在6月21日在线举办的YOCSEF哈尔滨特别论坛上,哈尔滨工业大学计算学部、国家示范性软件学院教授,计算机科学与技术学院副院长王忠杰在引导发言中,就此进行了深刻反思。

王忠杰资料图(截自哈工大官网)

王忠杰认为,把美国禁止“二哈”使用MATLAB这口“锅”甩给软件学院只培养了“996”的程序员,冤也不冤。

——说“冤”,是因为软件学院都以研究计算机本身技术为主,很少与其他领域交叉,这就很难研发出适用于其他领域专用的基础软件;

——说“不冤”,是因为现今人们大多一味追求热门的“云智大物移”,却几乎没人去做基础软件,是“偷懒”“投机”的表现。

王忠杰还提出,为什么每次技术封禁一出现,都好像是釜底抽薪?他认为,我们目前的考核导向等都太重应用而轻基础,导致我们在计算机技术领域的根基不牢。

“当我们赶时间去追求短期效果的时候,其实是在丢掉未来的东西。”王忠杰表示,要做出中国的MATLAB,靠市场论、靠情怀论和靠国家体制论都有潜在的问题,最重要的,恐怕还是要通过改变考核机制,让更多的人愿意投身在这些领域之中。

以下为王忠杰在“CCF YOCSEF哈尔滨特别论坛”上的发言原文,《本来科技》做了不改变原意的编辑整理:

软件学院只能培养996的程序员?

当我看到这个观点之后,非常自责。但是冷静下来一想,这个观点也有些站不住脚。这么说软件学院,我觉得有点冤。

为什么说冤?

《三体》中有一个情节:三体人用质子干扰地球上的加速器,封锁了地球上基础科学的发展,防止地球上在短时间内产生“技术爆炸”。现如今美国封禁MATLAB,与《三体》有异曲同工之处。因此,我认为此次美国禁止哈工大、哈工程使用MATLAB这件事,并不局限于“二哈”范围内。

另外,软件学院,包括计算机专业在内,其实是纯粹在研究计算机本身的技术和理论。如果让我们切入到去研发MATLAB或其他基础工业软件、科研软件,是没有这些特定领域的专业知识的。

比如,假设让我做一个控制领域或电子学领域、化学领域的仿真软件,我是没有相关领域知识的。只有把领域专业知识和计算机知识很好地结合在一起, 才能去做一些跨领域的事情。

所以,大多数搞计算机的人很难在短时间之内拥有非常丰富的领域知识。在这种情况下,让我们去做工业基础软件或科研基础软件就很困难。

但是,反过来讲,我们也不冤。

因为如果我们深入思考,就能发现这其中存在着非常重要问题:投机心理。

我们都知道基础软件非常重要,对国家也非常重要。但是为什么都不去做?

生物信息学专业的学生都能把生物学和计算机交叉在一起,我们的教授、学者、工程师们为什么不去做这些交叉?

这其中有一个很重要的原因:我们经常是偷懒的。

当前,所谓的“云智大物移”“ABCDE”非常热门——很多是外国人发明的——我们经常盯着这些热门。道理很简单,因为吸引眼球,国家也有很多科研经费投入,所以大家一股脑都扑到这些方向上。这些既简单直观、容易理解,又容易出成果,容易在期刊发表论文。

从这个角度来看,我们就不冤——每个人的科研方向都是自己做出的选择,我们为什么没有选那些对国家看起来更重要的,而是去选这些热点?

美国人用了40多年做出来MATLAB,中国没有,因为没有人去做这块。

所以也不能怪人们把“MATLAB被禁”这口“锅”甩到软件学院的头上,我们确实没有这方面的成果。

为什么技术封禁一出现就是釜底抽薪?

万丈高楼,起于平地。但是,为什么每次技术封禁一旦出现,都好像是釜底抽薪?

计算思维中有一个重要的观点:任何社会系统和技术系统都是分层的。大到国家治理体系,小到计算机系的课程体系都是如此。

以计算机系的课程体系为例。大家知道计算机领域的新技术、新知识日新月异,导致大学四年的课时已经无法容纳了。怎么办?

我注意到,很多学校、院系在更新课程体系的时候,“不经意间”会把底层的基础层给压缩掉。

道理很简单,上层不断地涌现新知识、新技术,这些新内容又是和工业界接轨的,所以老师们宁可牺牲掉基础课,去扩展这种顶层应用的内容。

很具体的一个例子:之前我们也讨论过,计算机系大一的编程课到底要去学习汇编语言,还是去学习C、C++甚至是Python?

这实际上反映了一个“到底是重视基础层还是重视应用层”的问题。

越底层的东西,构造难度就越大。芯片、操作系统、基础软件,如果都不去做,自然也就不需要去学这种靠近计算机底层的基础知识。

只解决顶层的应用问题,Python就够了。

同样的道理在AI领域也是一样。我经常参加硕士和博士论文的答辩评审,几乎每篇论文都涉及深度学习的很多算法如CNN、RNN,框架如TensorFlow、PyTorch,但都不是我们的。

硕士、博士使用这些算法和框架去“创造”所谓自己的算法和创新,但十几年、二十年后呢?

中国提出的AI国家战略很好,但我担心,AI的根基也会慢慢被压缩掉。

所以,当针对我们的技术制裁一旦出现,就相当于是一种釜底抽薪。教育界、研究领域都在忽视基础的东西,但如果没了吃饭的工具,就只能用手抓了。

用手抓着吃,肯定吃不好,对不对?

当追求短期效益时,就在丢掉未来

事物都是有发展规律的。MATLAB经过三四十年的发展,通过不断地积累完善和迭代,才有了今天强大的生命力。它不仅涉及到软件本身的技术,还涉及到在不同的科研领域里对领域知识的积累。

所以,我们不能奢望不去打基础,一下子就能做出一个MATLAB。

也正因此,所谓的“弯道超车”,我并不是非常赞同。因为当我们赶时间去追求短期效果的时候,其实是在丢掉未来的东西。

搞研究也是如此,年轻时如果一味投机取巧,也可以发表很多论文和成果;但是如果没有内功的修炼,以后想去做出更高水平的成就,就变得非常困难。

有很多博士生是这样做事情的:一般是从论文当中发现要做的问题——这常常是一种空想主义——这个问题没有遇到过,但是看到别人在做,于是就决定“我也去做”。那这样做出来的成果,很多并不是为我们的工业界服务的,而是为论文服务的。

如此一来,就会带来很大的麻烦。

怎么去解决这个问题?很多人提出要靠市场机制。但我认为靠市场机制不太灵。

一个很直接的问题:今天MATLAB被禁了,但可能两个月以后、一年以后又放开了。放开了会怎样?即使有了国产替代软件,但可能在性能上、质量上比不上MATLAB,很多科研人员又回到MATLAB的怀抱了。

那么靠情怀行不行?准备在火星上退休的埃隆·马斯克,搞出来了SpaceX,有时候靠情怀是有用的。但是像MATLAB这种东西,我们不能把它推到一两个人、一两家公司身上。

是不是要靠国家体制?我觉得更重要的是,是通过改变考核机制,让更多的人愿意投身在这些领域之中。MATLAB就是通过长时间的持续不断地积累,才变成这样一个产品。

另外,要从我们每个人做起。前几天跟同事们聊天,说我们还有20多年就退休了,这20年如果让你把时间都放在去开发MATLAB最核心、最基础的一个模块上,可不可以?

大家回答说:让我们去做编程没问题,但是如果跟其他学科的人一起去做——面向产业界的需求、用自己的设备去做实验、积累基础数据、形成领域知识,就没问题。其实就是搞软件工程的人从软件的角度切入,各个领域的专家从各自专业切入,大家一起去打磨,完全是可以做得到的。

但这其中非常重要的是,现在短期的目标考核导致很多人不愿意这么去做。

要知道,做操作系统的人很多,也曾出现过一百多个操作系统,但最终留下来的只有Windows、Linux、BSD这些。这给我们什么启示呢?

现在的博士论文,不管水平多高,最终评审时往往一刀切:你的创新点有哪些?是不是通过几条漂亮的对比曲线证明了你的方法、研究结果可以超过美国人、英国人的结果?

我想说的是,如果我们能够允许博士论文“重复造轮子”,可以去重复走过诸如MATLAB最早期发展的那一段时间,可不可以?

这不是我能说了算的。这是考验我们整个中国科研领域所有学者耐性和持久性的问题。

(王忠杰系哈尔滨工业大学计算学部、国家示范性软件学院教授,计算机科学与技术学院副院长)

相关阅读:

“如果美国长期封禁,中国芯片企业就都有饭吃了”

高校老师的无奈:几乎没有学生愿意做芯片

旅美学者:“放卫星”放不出中国芯片未来

声明:本文为OFweek维科号作者发布,不代表OFweek维科号立场。如有侵权或其他问题,请及时联系我们举报。
2
评论

评论

    相关阅读

    暂无数据

    本来科技

    不说大话、假话、空话、套话,敢说...

    举报文章问题

    ×
    • 营销广告
    • 重复、旧闻
    • 格式问题
    • 低俗
    • 标题夸张
    • 与事实不符
    • 疑似抄袭
    • 我有话要说
    确定 取消

    举报评论问题

    ×
    • 淫秽色情
    • 营销广告
    • 恶意攻击谩骂
    • 我要吐槽
    确定 取消

    用户登录×

    请输入用户名/手机/邮箱

    请输入密码