给新程序员的建议

给新程序员的建议

初学编程的学生并不是每天都有机会向709名软件开发人员征求意见。

概述

在瑞典的马尔默有一个学校叫做游戏大会(The Game Assembly),这个学校致力于教导学生制作游戏。从编程到艺术和设计,应有尽有。这里是三年的学制,并且最后一年是在一个游戏工作室中度过。

由于我在一家游戏公司任职,这些年被邀请为这里的学生们举办过几次讲座,我对此感到非常的荣幸。

今年我和一年级的学生有一次交流会,原本我的想法是回顾一下面向对象编程的基础知识,但是我还有另外一个想法。

为什么不在 Twitter 上面咨询一下人们对于”容易受影响的年轻人”有什么建议?

Ólafur Waage olafurw

嗨,推特上的开发者朋友们!

过几天,我将与一些易受影响的年轻人有一场交谈。

他们正处于学习的初期,大概二十来岁的样子。

你能给一个靠谱点的建议吗?与语言无关的。

欢迎转推。

如果有好的好的建议我也会在 ppt 中引用的。


2019年1月27日 3点53分


令我没有预料到的是竟然收到超过700条回复。因为从发推文到演讲只有两天的时间,我来不及将所有建议都总结出来。但是我尽量整理出了那些比较热门的回复以及从事于游戏行业的人的回复。


但是还有很多不相关的信息需要忽略,所以我需要对这些回复做些分析。


获取数据


首先我试着根据推特上的时间线浏览并复制内容,但是显然当时间线达到一定大小时,推特会限制你能阅读的推文数量。至此,我只能看到285条回复信息。


接下来使用 Twitter 开发者编程接口(Twitter Developer API),它拥有严格的限制,但是可以实现更加精准的查询。


利用 Python 和 Tweepy,并且在每一个请求之间休眠5分钟,我可以拉取到763条推文,这些推文直接回复了我的问题。共耗时362分钟,或者说6小时。休眠时间短一些也可以,但是我给它留了一夜,所以这不重要。


给新程序员的建议

基本分析

分析文本语料库本身就是一个教育领域,我并不具备相关的专业知识或时间来深入研究,不过我想强调说明一些突出的观点。

编程属于人文领域

673条推文中有131条提到了其他人,占17.1%

他们谈到了人类、团队、同龄人、朋友、同事。

下面是一些例子:

网友A

软件编程是一种团队运动

网友B

生活中最重要的事,以及那些你总在关注的,就是如何与别人打交道

网友C

在知识的旅途中保持信心与激情

每天结束的时候与其他开发者聊聊,你们是一个团队

成为 “Rockstar“ 的一员,因为知识应该共享

网友D

永远不要忘记在计算中寻找同情的空间

编程是持续学习

有13个回复确切地提到了“不要停止学习”。

在763条推文中,有82条是以不同的方式谈到了学习与实践,占10.7%

下面是一些例子:

网友A

这里没有捷径,只有实践、实践,再实践

网友B

你有义务持续学习并作出职业规划

网友C

即使你所会的不过沧海一粟,你仍然可以指导别人并帮助他们学习编码

网友D

你还将继续学习

你尚未成功

做好实践

阅读书籍和博客

不要期望一蹴而就

编程可能使人望而却步

许多回复很好的反映了这一点,你仍有很多未知的东西需要学习

有27条回复谈到了错误或者失败,29条涉及恐惧,担心或者害怕

网友A

不要与其他人比较,与之前的你比较

网友B

不要害怕说你不知道

不要害怕向他人求助

我们都有自我能力否定倾向

网友C

我们都会犯错

尽量诚实的承担错误,不要感到羞耻,并且不要在他人犯错时耻笑他人

网友D

技术是暂时的,但关系是长久的

从情感上了解你的同事和你自己

拥有在逆境中抗争的勇气

即使你看起来有些愚蠢,也要寻求帮助

编程不只是新技术

诚然,那些新的惹人眼球的库/语言/框架很酷,但是正如许多回复所描述的,基础更为重要。

34条回复直接谈到了关于技术、算法以及关注更广阔的领域。

网友A

语言和工具迭代很快

学习在不同语言、库甚至范例中所看到的相同的或者更有韵味的模式

了解不同技术的优缺点,以便为特定的问题选择最佳解决方案

网友B

选择你感兴趣的编程领域并为此工作

小增量任务-“嘿,我让屏幕变红了!我做了一个渐变”,“嘿,我在页面上移动了按钮”,等等

语言、框架、库、“技术栈”并不重要(忽略那些肯定它的人)

网友C

世界需要的是解决问题的人,而不是固有的算法

编程可能对你有高的要求

还有一个常见的讨论点是个人健康,正确的睡眠和饮食被列在健康行为的首位。

33条回复讨论了睡眠、饮食、个人健康以及工作时长的相关内容。

网友A

保持睡眠,健康饮食,照顾好自己的身体—即使你感觉身体很好

高工作时长并不意味着高质量,也不表示高完成度

你不必完全通晓你的职业

你不必打破外部的生活模式,只要开心就好

网友B

照顾好自己的身体

没错,实际的编程技巧是有用的,但是要保证使用的鼠标的时候不会伤到自己,坐下的时候不会感到背痛,关注屏幕的时候不会感到头痛,等等

网友C

过犹不及。尽可能享受你那糟糕透顶的生命。署名,一个22岁但看起来像44岁的人

网友D

每周工作100小时并不意味着你就是专注的

照顾好自己的身体,坦诚的与经理交谈

享受你的业余时间,这样你每次都能保持最好的工作状态

爱好+朋友与良好的职业道德并不相违背

关于编程,其他一些有趣的回复

上面的几类都属于常见话题,还有一些不属于常见类别但是仍然值得一提的回复。

30条回复提到测试

网友A

学会先问这些问题:

* 我怎么知道它有效?

* 我该如何使它自动化?

学习依靠自动化测试 ASAP 可以节省人们大量时间

18条回复谈到某种版本控制

网友B

使用一种版本控系统

如果之前有人告诉过我,我会很高兴

14条回复关注调试

网友C

代码往往不存在不确定原则

确保事件真实发生的唯一方法就是通过调试密切观察!

致谢

像这样的主题相当罕见,因为这么多人花费时间来回复着实有些让人难以置信。

感谢所有回复,转发和喜欢这篇推文的人。

我希望这个主题能够对你有所启发,也希望这篇博文能对你有所帮助。

保持谦虚,保持好奇心。

英文原文:http://olafurw.com/2019-01-27-programmer-advice/
译者:敦伟


分享到:


相關文章: