你的第一(编程)语言,代表了你是谁

发布时间 2023-04-19 15:08:16作者: Saliha混迹于江湖
        本文内容主观,纯属闲扯,且受限于我有限的视野,仅供娱乐。如有冒犯,纯属无意,请大家多多包涵。
 
        一个人学会的第一门语言,可以很大程度地代表他的身份与背景。举个例子,一对大学情侣毕业后扎根大城市,结婚并有了下一代。父母二人学会的第一门语言是各自家乡的方言,而孩子学会的第一门语言是普通话。方言与普通话,便代表了两代人各自的年代与地域身份。
        (举例而已,没有说普通话比方言好的意思)
        我曾经想过,同样的概念其实也可以适用于编程语言。一个人学会的第一门编程语言,可以或多或少描述他的时代与群体,毕竟编程语言和人类语言一样,会带上地域与时代的印迹。
        以我的大学举例子。我校计算机系有一位资历最深,声誉最高的老教授,我不知道他的年龄,但我听说他学的第一门编程语言是Ada。
with Ada.Text_IO;

procedure My_Hello_World is
begin
   Ada.Text_IO.Put_Line ("Hello, World!");
end My_Hello_World;

(这是Ada语言的Hello World)

        比他年轻一些的教授,他们在大学里学的第一门编程语言是Pascal。更年轻的青年教师,入门编程用的是C语言。
        而比他们都年轻的我,2015年9月在该大学里上了第一门编程课,用的语言是Java。
        我们的第一(编程)语言,与计算机科学发展史紧密相连。
        日本人用天皇年号标记世代,有“昭和男儿”和“平成废柴”的说法。计算机系也可以效仿,称老教授那代人为Ada世代(或Ada Generation),我这一代学生为Java世代,我们中间隔了Pascal世代C世代
        计算机系之外,还有很多教授,学会的第一门编程语言是MATLAB。他们通常是其他院系的教授(工程类居多),学编程是出于科研需求。MATLAB也是他们身份的象征之一,有了Python之后,计算机系的基本上不学这个了。
        我还听说物理系有一些德高望重的老教授,入门编程用的是Fortran。作为最古老的高级编程语言没有之一,Fortran很有生命力,在有些地方的土木工程系里至今还在使用。
module hello_world
contains
  function hello()
    character(12) :: hello
    hello = 'Hello World'
  end function hello

end module hello_world

(这是Fortran语言的Hello World)

        大学环境之外,第一门编程语言也可能承载不少身份信息。
        如果你学的第一门编程语言是Ruby,那很大概率你是在日本学的编程,或者你是日本文化爱好者。(Ruby是日本人设计的,日本对它很偏爱)
        而如果你学的是Lua,很可能你入门编程是在巴西,或者你对游戏行业很感兴趣。(Lua是巴西人设计的,在游戏领域应用广泛)
        如果一个中国人告诉我,他学编程用的是C++,我想他大概率是学生时代搞过编程竞赛。
        而一个第一门语言是Python的人,很有可能是从别的专业转码的,或者最初只想学下编程试试看。(大部分大学以Python开设的编程课,都是面向非计算机专业的。Python也经常作为向大众介绍编程的语言使用)
        (没有说Python或者转码不好的意思)
 
        我的第一门编程语言是Java,你呢?

欢迎关注我的微信公众号【变量x的域】,里面是我的后端程序员日常,感谢!

变量x的域