Small Basic中文站-快乐编程

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 537|回复: 0

教未来的儿子Small Basic

[复制链接]
发表于 2017-6-29 20:36:56 | 显示全部楼层 |阅读模式
本文转载自http://blog.renren.com/share/335245415/7784524207/0,作者未知

在前面的话:以下内容完全基于这样一种假设,那就是我以后会结婚生孩纸而且重要的是,得是个儿子。

---------------------------------------分-勒-个-割-的-线----------------------------------------
上午看到关于微软推出Small Basic正式版的新闻,颇有一种inspired的感觉。
http://msdn.microsoft.com/en-us/beginner/ff384126.aspx
微软中国MSDN在官方微博上如是说:【#轻松编程 微软发布Small Basic 1.0正式版#】Small Basic是微软两年前推出的一款免费的Basic语言开发环境,非常适合青少年和初学者,它提供了一些简单的命令,界面也很干净。经过两年的测试,微软本周终于发布了Small Basic 1.0正式版。http://www.smallbasic.cn/article-1-1.html
上面是msi安装包下载地址,我试了一下,不到6M大小,有超过10种语言可以选择。
界面简洁,功能明确。视觉效果上来讲,一个字:Q

有比较明显的动画效果,如图中的自动填充下拉框(附带函数简要的说明),以及右侧随输入内容而变的函数及变量说明。Hello World只需一行,没有包含命令,没有严格的函数体,继承了BASIC语言的特色。可执行程序很小,Hello World竟然只有2KB,原因在于它需要一个叫做SmallBasicLibrary.dll的运行库(很多东西已经放这里了)。另外,需要.NET 3.5以上平台支持。
当然我不是来介绍这个东西怎么用的(我估计今后这辈子不会用这个写超过10行东西吧...),我想表达的是某种趋势。
简单地说,不管计算机语言多么地繁杂,软件技术多么地发展迅速,库与平台多么地多种多样,它们在面向开发者的层次而言都只是在经历一个很简单的发展思路:简单化,大众化,通用化,人性化。如果非要再矫情一点,就说还有生活化。
这几个观点没什么太多好解释的。展开一点说也就是,实现细节上被抽象了,上层调用却被具体了。
试想有一天,我有了一个儿子,有一天他爬到电脑前面乱拍键盘写下了他人生的第一行编译通不过的代码。可能受他老爸的影响他会很早开始系统地接触计算机编程(但是显然我绝对不会刻意这么做),我的做法将会是,像教他走路、说话、唱歌、写字一样,教他那种行状符号。我会告诉他,那些东西都是一样的,没有什么是特殊的,都只是现代人生活的一部分。曾经没有自行车,人们会很自然地走路出门,后来有了自行车,人们又很自然地骑上它。因为走路或者骑车,没有什么是特殊的。唯一不同的就是,你变得轻松了。
99%的人在出生的时候就沉浸在自然语言的环境中,如果等TA成长到18岁的时候再去接触一种叫做Formula Language的语言模型,那会很艰难(比如今天的我们),因为Natural Language的模型已经在我们的大脑中根深蒂固。如果先后进入会导致先入为主,何不让它们同时进行。That might be a little tough at the beginning, but kids are generally moldable.
类似于Small Basic这样的语言,以及它的开发工具,在某种所谓的高手看来也许不值一提,有人会不屑一顾,但毫无疑问的一点是,这代表了一种方向:让最没有基础的人,也可以用严格的代码表达自己的想法。降低写代码的门槛,消除人们的恐惧感,将计算机的接口以最明了简单的方式给用户呈现出来,实现硬件能力的使用最大化——再也不需要专业的软件开发人员给我编写完整的程序了,因为我自己会写。而且,我想怎么写就怎么写,想做什么就做什么,因为它太简单了。在技术上使编程变得简单的一种简单方法是:再封装20层吧。那就基本上可以做到“傻瓜化”了。稍作矫情地说,代码应当是面向生活的,那是计算机编程的伟大前途的里面的二分之一。
若干年后,我的儿子就会持“它太简单了”的想法。当他想很快地完成数学计算题的时候,当他想画出方程几何图形的时候,当他想管理自己的零花钱收支的时候,他将拥有两种方法供他选择:By memory in Words, or By computer in Code. 两种方法不在于哪个更好,而是他的潜意识里将比别人多一种思维方式——这种思维方式,别人将要在很多年后才能艰难建立起来。It's another way to model the world.
但是,他的老爸不会希望他将来get paid by writing code, 我希望他的代码是为了自己而写,而不是为了别人。他可以为了任何别的目的而去写代码,for fun, for killing time, for interests, or for girls, 都行,就是不能for money. 要毁掉一门爱好的最好办法,就是让它成为挣钱的饭碗。所以更不必去做一个专职的程序员,哪怕水平再高。再说了,毕竟,搞IT,伤身体。
所以,我的儿子会在10岁的时候精通计算机语言,但不会到了20岁还在为它熬夜花时间。但我想他可以从中获得的,将比我这一代人写10年代码得到的,还要多。顺便说一句,这属于“父亲”的智慧,与微软无关。

---------------------------------------分-勒-个-割-的-线----------------------------------------
写在后面的话:以上内容完全基于假设,至于靠不靠谱......先等我找到他妈再说。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|Small Basic中文站-快乐编程 ( 闽ICP备09051788号 |

GMT+8, 2019-12-12 16:03 , Processed in 0.229624 second(s), 11 queries , File On.

Powered by Discuz! X3.3

快速回复 返回顶部 返回列表