- A+
我们的工作正在不断发生改变。
掌握编程技能的重要性正在不断提升,包括AI在内的各行各业都对开发者有着巨大的需求,更别提编程还能锻炼大脑的思维能力。
应该怎么学编程?学习哪种编程语言?从何时开始学编程?
最近HackerRank发布了《2018开发者技能报告》。这份报告指出,学习编程最常见的方法是——自学。参与调查的开发者中,74%都曾自己教自己。
当然还有70%是在学校或者大学里学习的编程,有老师领进门。
平均而言,开发者们掌握了4种语言,而且还想再多学4种。对学习的渴望程度因人而异,18-24岁的年轻开发者想学6种语言,而35岁以上这个数字降低为3种。
即使新语言经常出现,但掌握核心的传统语言对开发者来说非常重要。总体来说,现在雇主最常见的语言要求是:JavaScript、Java、Python、C++和C。
但参与调查的开发者们,最爱的编程语言是Python。
以下是这份报告的主要内容。
1/4的开发者不会开车已会编程
在所有参与调查的39000名开发者中,超过四分之一在16岁前,就写出了自己的第一段代码。但是,只要你有一颗进取的心,开始写程序的时间早晚并不重要。
那些26岁以后才开始编程的开发这种,有36%现在是高级(甚至更高级)的开发者,他们在职业生涯中获得了快速的迁升。
有意思的是,虽然电脑已经越来越普及,但开始接触编程的时间却在推迟。
调查显示,目前45-54岁之间的开发者,超过一半在16岁之前就开始编程。而现在18-24岁的开发者,反而最不可能在16岁前开始编程(仅有20%)。
几乎所有的开发者都渴望学习
似乎每年都有一个新的标志性编程语言、框架或者库在开发者博客中泛滥。以前是Backbone.js,现在是AngularJS和React。自学是所有开发者的常态,有74%的被调查者都有过自学经历,至少部分技能是自学的。
平均而言,开发者们掌握了4种语言,而且还想再多学4种。对学习的渴望程度因人而异,18-24岁的年轻开发者想学6种语言,而35岁以上这个数字降低为3种。
开发者自学的头号工具是——Stack Overflow。
而学习习惯正在悄然改变。视频网站Youtube已经成为自学者的第二大利器。年轻一点比年长一代更喜欢看视频,而不是看书自学。
雇主想要什么?
即使新语言经常出现,但掌握核心的传统语言对开发者来说非常重要。总体来说,现在雇主最常见的语言要求是:JavaScript、Java、Python、C++和C。
不同行业对语言的需求略有差异。例如,Java在金融服务领域流行多年。C语言主导了硬件行业。C#在政府机构中间更为普遍。
雇主最看重开发者的什么能力?解决问题的能力。这不仅仅是编程语言的熟练程度问题。事实上,与教育背景相比,雇主更看重你的实际能力。
绝大数招聘经理会从简历里寻找你过往的工作证明,你干过的项目,放在GitHub上的代码都能成为你工作能力最有力的背书。
开发者想要学什么?
开发者未来想学哪种语言,似乎跟硅谷科技巨头的方向密切相关。
调查显示,Go是开发者未来最想掌握的语言。谷歌推出的Go语言提供了很高的并发性、快速编译并且提供了广泛的支持。另外谷歌把Android的开发语言从Java改成Kotlin也影响不小。
同理,Twitter放弃了Ruby on Rails改用Scala,苹果从Objective-C迁移到Swift……这些变动都让开发者不得不做出相应的调整。
但,Python才是唯一。
参与调查的开发者们,最爱的编程语言就是Python。
有意思的是,与年长的开发者相比,年轻的开发者更不喜欢新出现的语言,例如Go、Kotlin、Scala等。实际上,对Go的看法分歧最大。
18-24岁的开发者,对Go不屑一顾。而45-54岁的开发者则把Go当做最爱的语言之一。JavaScript正好相反。
福利不是找工作最重要的事情
什么样的工作最打动开发者?
使命感?福利?
都不是。在这项调查中,开发者们最关注的事情是:工作与生活的平衡。更具体一点,美国的开发者比亚洲等地的开发者,更渴望工作与生活的平衡。
但对于18-24岁的开发者来说,工作与生活的平衡并不重要。
如何改善这个平衡?
参与调查的开发者最想要弹性工作制度。他们最喜欢的工作时间是上午10点到下午8点。另外,开发者们希望能够远程办公,而不必跑到办公室。
One More Thing
在10岁之前接触编程,好像有额外的加成。
调查显示,15%的创始人/CEO/CTO在11岁之前开始编程,而不是高管的群体中5%的比例。
写在最后
前几天有私信小编要Python的学习资料,小编整理了一些有深度的Python教程和参考资料,从入门到高级的都有,文件已经打包好了,正在学习Python的同学可以下载学习学习。文件下载方式:点击小编头像,关注后私信回复“资料”即可下载。首先把代码撸起来!首先把代码撸起来!首先把代码撸起来!重要的事说三遍,哈哈。“编程是门手艺活”。什么意思?得练啊。