你使用过多少种编程语言?

了解为什么有这么多不同的编程语言。
172 位读者喜欢这篇文章。

机器说一种语言,但我们人类说许多不同的语言......编程语言,也就是说......从 Python 到 Go 再到 JavaScript 以及更多。这一切都始于 Grace Hopper。

“语言中最具破坏性的短语是:一直以来都是这样做的。

在 20 世纪 40 年代,Grace Hopper 在海军后备队以机器级别进行编程,逐位进行。她意识到人类使用机器语言是多么的局限,并希望从根本上改变我们编程的过程。她知道,如果不改变,计算永远无法发挥其潜力。

“一旦人类可以学会说编程语言,并且一旦编译器开始将我们的意图翻译成机器语言,就像打开了闸门,”Command Line Heroes 播客的主持人 Saron Yitbarek 说。

通过收听 Command Line Heroes 第二季的第 2 集,了解更多关于 Grace Hopper 以及为什么有这么多编程语言的信息,以及关于第一个开源编译器的历史。

User profile image.
Jen 领导红帽数字社区团队的社区经理团队。她与丈夫和女儿 June 和 Jewel 一起住在罗利。

10 条评论

我的很多编程都是基于工作中的需求。

- 我在 Excel 中开始使用 VBA 来浏览来自大型机的海量文本文件,以获取最后一位的总数。
- 我学习了 VB 脚本和 SQL,将数据从大型机移动到 SQL Server。然后他们开始教我 Pick Basic(Unidata 的一种变体)。
- 当我需要将数据从数据仓库发送给我们的销售代表时,我学习了 ASP (classic)。

除了上面的 Unidata,以及高中(89 年)的 Basic 和 Pascal,上面的列表都是在工作中自学的。

困难的是,我不知道自己学的是否正确,直到我开始上课并发现 IT 部门给出的建议与课堂上说的不要做的事情相同。

最终,在另一家公司,我接受了关于 ASP.NET 和 VB.NET 以及 SQL Server 的培训。

与此同时,在家里,我自学了 Linux、PHP 和 C#。

根据我在家里的 Linux 和 PHP 经验,我受命将公司 Drupal 站点从 5 更新到 7。我不仅要学习 Drupal 是什么以及 CMS 如何工作,还要学习如何根据我在家里的 Linux 经验来管理它所在的 FreeBSD。

这花了我大约 14 个月,或者正如我的老板喜欢指出的那样“3 个财政年度”(那是上一个财政年度的最后一个月,一个财政年度以及第三个财政年度的一个月)。

有趣的是,正是我自己学习的技术(ASP、Linux、PHP)为我带来了机会。

你提醒了我,我确实学了足够的 PHP 来连接到 MySQL,并且我涉猎过 MySQL 并将其内容导出到 Excel。我曾在 Drupal 和 Moodle 上做过后端工作。

回复 dragonbite

我在高中时开始学习 visual basic 6,我非常喜欢它,但在两个学期后,我的老师鼓励我学习一门新的编程语言。所以我一直在学习新的语言,例如 c#、c++、Java 等。我真的有动力学习新的 PL。最近,我一直在学习 python 以在我的项目中使用 ML。

“一直以来都是这样做的”……我们使用一个我们称之为“切掉烤肉末端”的轶事……基本上这是一个关于一个女孩想知道为什么她的母亲在烤肉时要切掉烤肉末端的故事……妈妈不知道,并派女孩去问她的祖母和曾祖母,以找出曾祖母切掉烤肉末端的原因,因为她的锅太小,放不下整个烤肉……所以妈妈这样做是因为“一直以来都是这样做的。”

我第一次听到这个轶事是在 1974 年的 IBM 培训学校。这是一个很好的故事,准确地反映了我工作过的许多地方的状态。

回复 作者:AdamWood (未验证)

我是前端,Js 对我来说足够了。此外,我有时需要 SQL

我从 AppleSoft BASIC 和 FORTRAN77 开始,但不要因此而责怪我。 :-)

这些天,我使用最适合工作的任何编程语言或脚本语言。当我想自动化某些事情时,我通常使用 Bash。如果我要编写网站,我更喜欢 PHP。如果我想进行底层编程,我使用 C。如果我需要以简单的方式处理数据,我可能会使用 Awk,或者如果我需要以奇怪的方式处理数据,我可能会使用 Perl。

从 cobol (bs2000) 和 asm、rexx (大型机)、prolog、fortran77、basic 开始,转移到 c、c++、c#、java、python、perl、php、javascript、rust、golang, ...

我认为几乎更容易说出我没有在其中做过项目的语言。Brain***k 就是其中之一,不过,我确实从中获得了乐趣,很好的思维游戏 :-)。

我倾向于将编程/脚本语言视为高效完成工作的框架(这排除了 Brain***k)。对于语言本身,我并不在意,当然,我确实有偏好 :-)。

PS:对我个人而言,开源 a、GNU 和 Linux 在我的道路上至关重要,因为编译器变得可用,即使在当时对于私人用途来说,编译器也很昂贵且难以获得,就像一个好的 C 编译器。GNU 和 Linux 真的在那里为我带来了改变。我从未学习过编译器开发,这是一个我在教育中完全错过的领域,也是我非常钦佩的技能,即使已经使用 ASM 进行了开发。Linux 使我能够通过操作系统正确使用这些工具。

BASIC
Pascal
C
Lisp
Modula 2
汇编语言 (6502,x86, Eclipse-MV, VAX, Sparc)
Objective C
C++
Forth
Postscript
SQL
Java
Groovy
Javascript
ActionScript
Python
Perl
Bourne Shell/Bash
Powershell
C#
XSLT

知识共享许可协议本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.