发表日期:2019-03-12 原创 精选文章
学好这门基础课,许自己一个更美好的未来
—— 编入中小学教材、高考加分,连国务院都发文扶持相关技术的培训…你有什么理由不好好学学它?
作者:欧剃
一个真实的故事
正月过了。对小徐来说,这个年他过的并不愉快,因为就在年前,他供职的一家互联网金融公司在年底的裁员潮中“末位淘汰”了几乎一半的员工,而他就是其中之一。
过去的十几天来,他也不是没有去各种新春招聘会。但吃了许多闭门羹,又面对着只有原先一半甚至更低的薪资,他无奈地回到出租屋里喝闷酒。
朋友圈里,和他一起被裁的旧同事小张,却在晒着自己的新工位——一个电商企业的数据分析师。
嗯,那是个什么?
(图片来源:PXHere.com)
回想起来,两三年前,趁着消费金融的热潮,小张和小徐在公司里都过得挺滋润。小徐的年纪不大,但在公司的资历比小张还久一点,线上线下的人脉都更多,业绩一直都不错,闲来无事还能去酒吧小酌一下。有一个中午,他在公司附近的咖啡店等妹子,无意中看到了坐在角落的小张,却发现小张正埋头看着什么讲座视频,还在本子上写写画画。
“这是什么呀?写代码?你又不是计算机专业的,做销售也用不上,整这干啥呢?”小徐已经记不清自己当时还说了什么,但现在想来,心里可真不是滋味。
小徐顺手又拉开一瓶啤酒,举到嘴边,却又放了下来。他掏出手机,在搜索框里输入了“数据分析课程”几个字。
不能再这样下去了。
(图片来源:Pixabay.com )
你和文盲之间,就差一个核心竞争力
这是一个变革的时代。
如今,网络、计算机以及各类智能设备已经渗入我们生活中的每一个角落,深刻地改变了几乎所有传统行业的面貌,也将重新塑造出数不胜数的新兴行业。早在 2017 年,国务院就印发了《新一代人工智能发展规划》,文中明确提出支持开展人工智能技能培训,还指出,要“让从事简单重复性工作的劳动力和因人工智能失业的人员通过培训转岗”的思路。
诚然,你所在的行业或许不见得就会像上面这个故事中那样,突然变成泡沫。但不断深化的体制机制改革,不断推陈出新的技术进步,必将淹没那些故步自封,沉溺在舒适区中的人。只有不断提升自己的核心竞争力,才能脱颖而出,做时代的弄潮儿。
(图片来源:PXHere.com)
那么,核心竞争力在哪里呢?
显然,在计算机的时代,不论你从事的是什么行业,核心竞争力必然反映在有效利用智能化或自动化技术,提高效率,加快创新上。比如上面提到的人工智能,现在在医疗、制造、物流、环保、教育,甚至传统媒体行业,都有了深入的应用;而商业、金融、文化等行业,包括许多机关单位,都亟需计算机数据分析、大数据处理等技术的帮助;而新兴的互联网、计算机软硬件、新媒体和游戏领域就更不用说了。
因此,为了培养自己的核心竞争力,掌握这些新兴技术,你一定需要掌握一门计算机语言,以此为工具,搭建起与计算机沟通的桥梁。
(图片来源:Pixabay.com )
所以,我该学点什么?
恰好,有一门简单易学的计算机语言,只要你认得26个字母,还记得一点初中的数学知识,就能学会。更加恰好的是,上面说的人工智能、数据分析、网络技术、游戏开发等等等等,都是用这门语言就能实现的技术。这门语言叫做 Python。
根据全球最大的电子技术组织“电气电子工程师学会“(IEEE)2018年发布的编程语言排行榜,Python 已经连续 2 年高居榜首,是最热门,就业机会也最多的编程语言。从 2017年6月起,Python 就超过了 Javascript,成为 StackOverflow 上阅读量最高的标签。
Python 连续两年综合评分排行第一(图片来源 spectrum.ieee.org)
近年来,Python 被许多大公司用于构建 Instagram、YouTube 和 Spotify 这样的网站,也是谷歌人工智能算法的核心语言,因此它也有可能是你拿到顶级 IT 企业职位的敲门砖。除此之外,为了适应网络化、智能化的市场变革,许多传统企业也纷纷开始招收数据分析等方向的职位,懂 Python 将让你在这方面拥有额外的优势。
Python 基金会的顶级会员企业(来源 python.org)
说了这么多,你有没有一点点心动了呢?俗话说,天上不会掉馅饼,但今天我把饼给你画好了,愿不愿意让它变成现实就看你自己的了!
对新手特别友好的编程语言,没有之一
提到编程,很多没玩过的同学,大概会觉得一阵头大。其实,编程不是太高深莫测的玩意,起码做出一个能用的东西一点也不难。
它本质上和你在手机上设了个闹钟差不多——都是给计算机下达了一个带有数据的命令,以便让它帮你完成某个特定的任务。只不过在手机上你数通过按钮或是图形的界面指定个时间,而编写程序的时候你是通过按照规则写下命令,让电脑按照你的命令办事。
(图片来源:Pixabay.com )
简单就是美
让人安心的是,Python 是一种贯彻了简单主义的语言。你的代码其实非常接近人类的自然语言,接近人类思考问题的方式,而且没有人类语言里那些令人头大的特殊用法!Python 的这种特性是它最大的优点之一。它使你能够专注于解决问题而不是花时间去搞明白语言本身。
Hello World(你好,世界)是传说中编程初学者必念的咒语,在 Python 里显示这行字也只需要一个命令而已。(图片来源:作者提供)
细节都帮你考虑好了
作为一种高级语言,当你用 Python 语言编写程序的时候,你无需考虑这个程序要如何操作内存等硬件设备,也基本不用去担心各种平台的兼容性,Python 语言本身会帮你处理好这些问题。
不需要重新造轮子
为什么 Python 语言能在科学计算、数据分析、网络爬虫、游戏开发、人工智能等各种不同的领域都能做到门门精通?这是因为它拥有庞大的第三方库。
使用 Python 语言,就像使用一个工具套装一样。而且这个套装里包含了数不胜数的各种工具包,你可以根据自己的需要,利用别人已经帮你做好的工具,来实现你自己的想法。目前 PyPi 上只需要一行命令就能安装利用的库(软件包)已经达到了14.1万个,涵盖了从简单的数学计算到复杂的人工智能处理等各种方面,你只需要简单地调用拼装,就能做出许多实用的小功能啦。
(图片来源:Pixabay.com)
安装运行方便快捷
因为 Python 是一种解释执行的“脚本”式语言,它的代码无需经过编译处理就能直接运行,别人要运行你的代码,或是你想把代码拿到不同的设备上运行,都只需要简单地装上一个不大的 Python 解释器软件(或是 Anaconda 这样的一揽子解决方案),你的代码就变成可执行程序啦。此外,你也可以用各种编辑器打开别人的程序,直接看到里面的代码是怎么编写的,方便你学习其他人的编程思路。
用途广泛,功能强大的编程语言
没有错综复杂的指针迷宫,没有层层嵌套的括号森林,也没有动辄十数分钟的编译过程,Python 就像一位干净清爽的小伙伴,随时愿意帮助你解决问题。
不仅如此,Python 语言的许多特性,比如一行函数、列表生成器、动态类型等,都使开发者能用比其他语言少得多代码完成相同或相似的任务。它的良好可读性也使初学者和新手学习语法的时间少了许多。有统计表明 Python 代码的编写时间平均只有 Java 的三到五分之一。
但你可别因此就小看了 Python。Ta可是神通广大, 上天入地无所不能,十八般武艺样样俱全,一个筋斗……反正,基本上就差两开花了。
例如,在 Scipy 这个库里,已经集成好了大量的数学算法和科学计算函数,包括物理和数学常数、快速傅立叶变换程序、信号处理、还有许多统计上的函数和分布等功能,科研工作人员可以很方便地用它处理研究中采集到的各种数据,并进行数据可视化等操作。
一个 SciPy 绘制数据的例子(图片来源:维基百科)
说到数据处理,就一定要提一下 Pandas 库,这个库可以让你用一两行代码就处理并统计数万行规模的表格,自动化分析数据的统计特征。此外,它还可以同时操作许多不同来源、不同格式的数据文件,进行合并、清洗,并批量完成许多重复性的工作——即使你不打算从事计算机相关的工作,这个库也能极大地节省你日常处理报表的时间。
Pandas 库的 Logo(图片来源:维基百科)
又比如,利用 Django 或者 Flask 这类网络框架,你可以很方便地用 Python 搭建自己的网站或 web 应用程序。小到呈现个人简历的主页,大到知乎、豆瓣,都用上了 Python 技术。如果你有志于在网络时代开拓一片疆土,从 Python 开始会是一个不错的选择。
另一方面,在如今纷繁复杂的网络中,人工获取信息是一件费时费力、低效易错的工作。托 urllib3、requests、HTMLparser 等库的福,只需要简单的一些代码,就可以批量抓取许多网址,并自动分析处理里面的内容,甚至可以导出成表格、数据库,方便之后用 Pandas 之类的库进一步处理。是不是很厉害?
最后,必须要提一下的就是 Google 开发的一个 Python 库:人工智能开源工具 TensorFlow 。作为一个新兴的深度学习框架,自 2015 年底开源以来,它已经为各行各业提供了强有力的人工智能构建服务。比如通用电气医疗利用它训练神经网络,以识别大脑核磁共振上图像中的解剖结构;中国移动利用它开发出了能同时协调数以亿计的物联网设备的智能化系统;澳大利亚的海洋生物学家利用它控制探测器,从数以万计的航拍照片中自动识别出海牛的踪迹……
NASA 用 TensorFlow 分析天文望远镜拍摄到的星光,寻找可能适合人类生存的恒星系。(图片来源:altoros.com)
而这一切辉煌的基础都是从 Python 的 print('Hello World!')
开始的,是不是很神奇?
各行各业必修的编程语言
Python 作为各行各业与高新技术接轨的基础技术,已经逐步变成入门这些行业的先修基础。要想在变革与发展的浪潮中占有一席之地,Python 可以说是必点的技能点了吧。
也正是因此,从 2018 年起浙江省信息技术教材编程语言将会从 VB 更换为 Python,北京和山东也确定要把 Python 编程基础纳入信息技术课程和高考的内容体系,Python 语言课程化也将成为孩子学习的一种趋势。2018 年 3 月全国计算机等级考试(NCRE)也将 Python 语言纳入了考试范围。这可是从娃娃抓起,培养高新技术人才啊。
此外,随着近年来人工智能等新技术热点的不断涌现,Python 相关职位的需求也是逐渐加大,薪资水平更是水涨船高。
让我们看一些统计图表吧:
可以看出 Python 在去年又新增了大约5000个不同的职位。(图片来源:Indeed.com)
主要编程语言的增长状况。自 2017年起,Python 超过 Java 和 Javascript,成为最热门的编程语言。(图片来源:stackoverflow.blog)
美国各个州的 Python 程序员的平均薪资,基本上年薪都超过或接近百万美金。(图片来源:daxx.com)
所以,选择 Python,就是驶入了通向热门新技术的快速通道,就是踏上了迈向财务自由的第一步,也是跳出舒适区,提升自己核心竞争力的重要抉择。
千里之行始于足下
说到这里,也许你已经心动了,也许你还在犹疑,也许你对自己没有信心,别担心,这非常正常,一点也没有关系。如果你希望给自己更美好的未来,你现在唯一要做的,就是立刻开始行动。给自己一个机会,试一下,踏出你的第一步。
不论你现在从事的是哪个行业,是什么工作,现在开始永远都不算太迟。毕竟,打开未来的钥匙,已经在你手中了。
(图片来源:pixabay.com)
(本文已投稿给「优达学城」并发表(有删节),作者:欧剃, 转载请保留此信息)
标签:Udacity、Python、Nanodegree