从 BASIC 到 Ruby：入门编程语言的体悟
为什么 BASIC 是一种备受喜爱的入门语言？下一代该如何学习编程？
BASIC
220.188.54.232
Jk
delrey [Mobile Safari 12.1|iOS 12.3]
2019-07-16T12:08:29.000
220.188.54.232
w b
delrey [Mobile Safari 12.1|iOS 12.3]
2019-07-17T13:02:42.000
为什么 BASIC 是一种备受喜爱的入门语言？下一代该如何学习编程？

> 
> 为什么 BASIC 是一种备受喜爱的入门语言？下一代该如何学习编程？
> 
> 
> 


![Listen to the Command Line Heroes Podcast](/data/attachment/album/201907/14/131843zs9eh4nnk3sexvnb.png "Listen to the Command Line Heroes Podcast")


《[Command Line Heroes](https://www.redhat.com/en/command-line-heroes)》 第三季的第二集今天抵达了，它对我的入门编程的怀旧让我回到了过去。


（LCTT 译注：《Command Line Heroes》 是红帽公司制作的播客，讲述了开发人员、程序员、黑客、极客和开源反叛者如何彻底改变技术前景的真实史诗。其第一季制作于 2017 年，邀请到了谷歌、NASA 等重量级企业的技术专家担当嘉宾，讲述操作系统战争风云、美国航天局如何开源等等，涉及开源、操作系统、容器、DevOps、云计算等话题。）


### 语言会影响可访问性


这一集告诉我，BASIC 是计算机的理解力民主化的一次巨大飞跃。我很难想象，在一个不太遥远的、计算机尚且是稀罕之物的时代，是 BASIC 改变了世界。正如 [Saron Yitbarek](https://twitter.com/saronyitbarek) 提到的那样，“在早些年编程，你几乎得有个博士学位才行。”BASIC 是一个巨大的飞跃，它专注于可用性（适合初学者的命令）和资源共享（单个计算机的分时操作）。它使得编程不在局限于当时的“计算机玩家”（我喜欢这集中的这句话），并帮助了新一代人参与了进来。进入编程领域的壁垒得以下降。


### 入门编程语言


这一集的核心话题是围绕学习入门语言展开的。关于学习什么编程语言以及如何学习，有很多建议。关于这个问题[在这里](/article-8379-1.html)已经写了很多。我喜欢听到 Saron 以 Ruby 作为她的介绍的故事，以及它以一种几乎意想不到的方式变得有趣。我有一些类似的经历，因为我在一些项目中用到了 Ruby。它的灵活性让我感到开心。当我（对编程）感到紧张时，正是这种快乐让我重新回到它的身边，并且它有一些能够使语言如此充满情感的强大功能。


我第一次体验编程是用 HTML 和 CSS，但我第一个重型编程语言是 Java。我永远不会忘记在课堂的第一天被告知要记住 `public static void main`，但没有告知我关于它意味着什么的任何信息。我们花了很多时间在面向对象编程的上下文环境中探讨它是什么，但它从未像我在 Ruby 中使用 `.each` 迭代列表，或者像在 Python 中用 `import numpy` 做一些数学魔术那样感到兴奋。然后我听说孩子们正在学习如何使用 Python 编写 [Minecraft](https://opensource.com/life/15/5/getting-started-minecraft-pi) 或使用像 [Scratch](https://opensource.com/education/11/6/how-teach-next-generation-open-source-scratch) 这样的可视化编程语言，我因此而悟，BASIC 的遗产正在以新的方式存在。


我从这一集中获取到的内容：


* 请记住，没有人出生就是程序员。每个人都没有这样的背景。你并不孤单。
* 学习一门语言。任何一种都行。如果你有选择的可能，那么请选择能带给你最大乐趣的那个。
* 不要忘记所有语言都可以构建一些东西。请为人类创造有意义的事物。


《Command Line Heroes》整个第三季将涉及编程语言。[请在此处订阅来学习你想要了解的有关编程语言的起源](https://www.redhat.com/en/command-line-heroes)，我很乐意在下面的评论中听到你的想法。




---


via: <https://opensource.com/19/7/command-line-heroes-ruby-basic>


作者：[Matthew Broberg](https://opensource.com/users/mbbroberg) 选题：[lujun9972](https://github.com/lujun9972) 译者：[wxy](https://github.com/wxy) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出

