未来是属于计算机的
与计算机对话,需要shell,需要编程语言。所以需要掌握这些知识。
未来已来。
时代和技术在发展,如果站着不动,就会落后,这也就是为什么提倡“终身教育”。刻意练习,每日精进。让我们的知识不会落后太久。
编程界的明星
Linux的发明者Linus Torvalds年纪轻轻的时候,因为外祖父的原因接触到PC。大学期间,依据Minix的结构,创建Linux操作系统,并一力维护至今。没有Linux,也许就没有,应该说肯定就没有当今世界Web领域的坚强后盾。奠基性的贡献,非他莫属。
当然还有众多优秀的系统,软件的优秀作者,多如填上繁星。不一一列举。
Python是怎么火起来的?
Python是荷兰人Guido在上个世纪80年代开发出来,其实作为小众的语言,延续了很久,很久。TIOBE上编程语言的排行,我们看一下Python的坎坷历程:
可以说在2004年之前,python都没有什么存在感。为什么?那时候有系统应用,和网站应用,动态网站,都是用的CGI,使用PERL开发的。Python包也不全,性能也不咋地。
知道后来,Python3的推出,解决了一些棘手的,在Python2所不能完全解决的问题。受众有所增长。
然而,仍然是不温不火。
知道2017年,AlphaGo持续打败了世界上最厉害的围棋高手,大众才被“人工智能”这个名词吸引。原来,计算机已经远远不是许多年前的“书呆子”,人们研究算法,将程序赋予灵魂,让计算机真正有了可约束的自我学习能力。
AI,机器学习,哪门语言能承担的起向前冲锋的重任?
PHP吗,专门在做web开发,别的领域,它没有涉及。
Java吗。有相应的库,笨重而繁琐的配置,不完善的生态,它也担不起。
C/C++吗,速度一流,包不健全,学习难度大,学习曲线陡峭,也在备选梯队。
“忽如一夜春风来,千树万树梨花开”!
Python默默耕耘了这么多年,默默积攒了众多优秀的类库。简单的语法,极快的上手速度,注定让它迅速收割了一帮科学家的芳心。
我们知道,生物学家在写Python,化学家在写Python,计算机科学家在写Python,老师也在写Python。甚至,测试的小姐姐也开始写Python。我们终于意识到,Python的时代已经来了!
Python就够了吗?
Python是解释型语言,注定其运行速度慢。怎么办?
核心的算法和计算,使用C/C++重写,于是有CPython解释器。于是有Numpy这样的专门的数学计算库。画图的有专门的matplotlib。甚至机器学习,也优先推出基于python的版本,比如谷歌的TensorFlow,比如Facebook的Pytorch。
底层使用速度较快的编译型语言写,然后将接口开放出来给python调用。这很Pythonic!
这就是Python的风格,一堆import,三行搞定!
这是编程该有的样子吗?
编程的基本功,不能丢;计算机基本功,不能丢!
我们只有掌握了大体全面的知识,才有可能想出更为优秀的算法。这是万变不离其宗的根本。
所以,Python适合入门。
应该怎么学?
Python有许多方向,许多领域的包库,可供学习。
每一个专业的包,库,学习时间都不会是24小时,48小时。需要大量的知识。
面向对象
如果python说自己是面向对象的,class内函数形参内的那一个一个的self算怎么回事儿?
它只是一个好像可以用面向对象的方式编程,然而它不纯粹。
C++/JAVA/C#,可以了解一下,什么是一切皆对象。如何封装,继承,多态,反射。
数学计算
想要学习数学计算,首推numpy。
学numpy则不足以知numpy。
你得过很多关,数据类型要掌握吧,一维数组要掌握吧,多维数组要掌握吧?这还只是程序语言层面的。
数学知识呢?矩阵运算要掌握吧,矩阵为什么要转置,矩阵叉乘,点乘分别是做什么的?
逆矩阵怎么来的,矩阵如何分块,克拉默法则如何适用,要了解吧?
矩阵初等变换呢,求解线性方程组呢?
numpy提供了封装的函数,却独独不会告诉你该如何解题。
所以,你应该知道,什么是本,什么是末了吧。

结语
所以选定一个方向进行深入地学习,比漫无目的地转来转去,要好的多。
工具有千千万,你要懂得如何用一个个的小工具,搭建起宏大坚定的建筑。这就是计算机学习过程中的知识,经验积累。