程序员如何打造竞争力?

点击上方蓝字关注公众号

码个蛋第223次推文

如何脱颖而出?

我最近打算学习python。

正好有人主动私信问我“想利用业余时间学习第二种语言提升竞争力,没有方向能不能推荐?”,这个问题其实牵扯到如何扩展技术广度的问题,我个人建议是以深度为主以广度为辅,时间分配80%放在自己第一技术上面,20%可以选择扩展技术广度。之前我在《如何在移动开发者的寒冬中破冰而出?》中讲过了如何提升自己的深度,今天来讲讲如何利用业余提升技术广度。

你掉进了这个学习误区吗?

技术广度很好理解,就是多学习一门或多门编程语言,横向扩展技术,不局限于目前所会的这一种。那这个时候有人肯定会想“技多不压身”,那就多学点,下班后有1.5个小时用来学习,半小时学习前端语言,半小时学习服务端语言,半小时学习脚本语言。这种学习方法最终会导致每天会很累,并且学习效果还不好。建议一段时间专注一种技术,这样学习起来会更加高效,要记住一句话“贪多嚼不烂”。

如何选择语言?

如何定技术方向?
选择对了合适的技术方向在打造竞争力这件事情上能够做到事半功倍。无论学习什么都是需要时间成本的,所以在这件事上我们需要慎重考虑。我说说自己的经历:3年前在公司我担任Android主管,在管理好自己的团队前提下,我选择了学习iOS开发,自掏腰包购买学习必需品Mac电脑,也是因为学习了iOS开发,协助了iOS团队开发了3个企业级项目之后,最终我升职为移动端主管。我说这件事情并不是让大家都去学习iOS开发,而是想说明一个道理就是你要找到学习的目标,我当时想法是公司缺什么样的技术人才,就利用工作之余的时间去学习相关技能,快速学习,加入实战帮助公司,从而提升个人价值。如果你是想自己想做一个产品,你是前端开发,你就可以选择一门服务器的语言来学习,学习的方向其实都是根据自己的目标需求进行选择的。

如何精确选择编程语言?
我们知道了自己的技术方向后,有人肯定这个时候会问了“我找到自己的学习方向了,比如学习服务端技术,但是很多语言都可以做服务端。这个该怎么办?”我的做法是根据GitHub的数据来判断。

这一张图是2017 GitHub 上最受欢迎的语言排行榜,GitHub是一个全球最大源码托管平台,它的数据具有一定的权威性,越是受欢迎也就证明解决方案和就业机会越多。如果你需要选择服务端技术,根据上面的数据来看选择Java是非常合适的。当然要是你有一些特殊要求,你还可以再参考一下语言的特征。

如何学习?

通过以上方法选择一门语言之后,我们开始正式学习了,我认为学好一门新的编程语言需要以下几点

  1. 学者心态

  2. 优秀导师

  3. 学习氛围  

学者心态
虽然你已经会了一门语言,并且找到了一份还不错的工作,但是就算是这样,学习一门新的语言的时候也不要碍于面子,不懂也不问,怕人笑话,要像一个初学者一样具有探索,研究的学习精神。罗曼·文森特·皮尔说过“态度决定一切!”。

优秀导师
找到在这个领域比较资深的人做为学习对象,可以看他们的博客,书籍,视频。虽然在现在这个信息爆炸的时代,不缺学习资料,但是不要忘记了信息爆炸除了意味着找学习资料很好找了,同时有个弊端就是太多垃圾信息了。我喜欢付费学习,因为优秀的导师产出的高质量内容,能让我更快的更好的学习,毕竟名师出高徒。

学习氛围
一个人学习总是很枯燥的,一旦枯燥无味时间长了,就很容易放弃学习,所以最好的方式就是加入一些高质量的同主题的学习社群,一起学习,互相成长,互相讨论,互相帮助,做到比学赶超。《荀子·劝学》中也提到了一点:“蓬生麻中,不扶而直”。

我会如何选择?

我个人会选择Python,理由如下:

  1. 有段时间公司服务器被攻击了,研究了一段时间Web安全相关的知识,得知很多攻击脚本都是用Python写的。

  2. 想把自动化测试让公司用上,得知自动化测试脚本语言也可以Python写的。

  3. Python可以写爬虫,学会了以后能更容易找自己想要的资源。

除此之外还可以有更多的发展机会:

并且从GitHub排行榜的数据来看 Python 已代替 Java 从去年的第三突进了第二,相比去年它新增了 40% 的 PR 数。近几年 Python 的增长势头一直非常迅猛,Python 虽然是脚本语言,但容易学,学习成本低。

最近收到了腾讯合作伙伴优达学城Udacity的官方人员邀请体验他们的课程。

首先对于Udacity我不是很了解,之前没有上过他们的课程,第一想到的就是市面上的大部分网课模式:登陆账号=》查看已购买的教学视频,视频是录制桌面的模式,看着老师边讲解边敲代码,说实话我认为如果是这样不如去看书,这样学习更高效。后来我去免费体验了下他们的教学模式,与市面上不同的点

  1. 视频全英文带中文字幕,可以顺便练习英语能力,至于英语对程序员的重要性,这个不说大家也都懂。    

  2. 还有用文章的形式展示,还支持在线写练习题可以运行以及提交答案。    

  3. 课程是有时间限制的,2个月课程可以学习3个月,在学习中会有人审核作业答案,以及1对1答疑辅导。

这种教学模式能够想学习的人更快更好的去学习,我认为收费与免费本质的区别是学习效果的问题。Udacity的教学模式很好的提高了学习效果。以下是很多人学习效果不好的原因,看看Udacity是怎么解决的。

  1. 只看不练,很多人都是看完教学视频了就觉得自己学会了,等到要用了才发现自己不会,那是因为缺乏练习,Udacity在每个知识点下面都可以在线编程直接运行做作业看效果,提交答案,这样避免了看完不做的现象。

  2. 看了不理解,找不到询问对象,这个时候就会打击学习积极性,导致中途放弃。这个问题Udacity用导师1对1解答的方式解决了。

  3. 想学习但是一直没行动,懒癌犯了。Udacity每个课程都有开班时间和结束时间这样就会让时间逼这你去学习,一旦没有截止日期大部分的人的学习最终只是口头说说。

因为以上这些所以我接受了Udacity的邀请,成为了Udacity的“明星学员”。

对 Python 感兴趣的同学可以加入 Python 学习小组。让我们一起学习成长,扫码即可进入。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值