如何成为一个高效、快乐、健康的程序员
只需每天做一些小改变,就可摆脱病痛、保持健康.....学会去积累工作经验和成果就会变得高效......具备这些小习惯就会保持快乐……
一:高效
互联网发展日新月异,社会科技每天都在发生着翻天覆地的变化,而程序员已经成了这个时代的庞大群体,各种各样的程序员数不胜数,我们每天上下班,不 论你是坐公交还是乘地铁,在你的身边一定有程序员。本人我就是其中的一员,本人主修java语言,从事java类开发工作。由于本人工作时间不长,经验尚 浅,都是学着前辈高人的路子,在慢慢前行,下面我给大家分享下,如何从菜鸟成长为高效程序员。要想成为一个高效的程序员,不是一朝一夕的事,而是贵在坚 持,程序员的工作都是在不断淘汰旧的东西,接受新的,我们必须学会去积累工作经验和成果。所谓高效程序员,就是逻辑思维敏捷,学习能力强悍,敲代码速度绝 对是要快,代码规范严谨,善于总结经验,视野开阔,不局限于某一门专属编程语言,能够举一反三。
筑基阶段:
1.敲代码速度要快,要求手指灵活,尽量减少输入出错。这个是基本功,不然何以达到一定的代码量。
2.精通几个常用的代码编辑工具。(注意,这里说的是编辑工具,除了常用的eclipse,myeclipse,jBuilder等IDE工具外,还必须掌握文本编辑工具,如notepad++,vim)。
3.掌握Linux系统中常规命令。(这个是所有程序员都必须掌握的基本功)。
4.随时随地的做笔记。(这个就不解释了,反正善于总结经验不会错了,可以推荐使用有道笔记)。
5.学会一些主流的代码管理工具的使用。(如SVN,gitHub,maven等)
初级阶段:
6.熟悉并精通某种编程语言的基础和特性。(java语言必须掌握corejava基础部分)
7.善于给自己写一些工具,拿来即用的那种。(如数据库连接,文件读写操作等等)
8.掌握web开发的常用技术。(如HTML,CSS,javascript,Ajax,JSP,jQuery)
9.掌握常用数据库的基本操作。(如oracle,mysql)
中级阶段
10.掌握一些主流开源框架,设计思想。(如,spring MVC ,Struts2+hibernate+spring/SSH ,EJB等)
11.掌握设计模式,学会使用一些开发模式。
12.掌握Linux中的shell编程
14.学会使用数据库的DDL,DML,以及存储过程。
15.熟悉项目的整个生命周期,从需求到上线中的各个阶段。
16.关注技术网站和社区,开拓思路,汲取他人的优序经验,同时分享自己经验。(如csdn ,oschina等)
17.熟悉整个项目周期的中的各类文档。
18.定期给自己策划一个项目,练手。
高级阶段
19.关注科技,了解IT界动态,学会发现和创新。
20.开始学习项目管理相关知识,学会如何成为一个优秀的项目管理人。
21.适时给自己买一些书籍,给自己大脑及时充电。
22.经常参加一些培训讲座,开拓视野。
23.关注政策,了解时代互联网发展趋势,学习和创新。
本人现阶段还处在初级阶段,刚刚摸到中级阶段的门槛,能力有限,暂时想到的就是这么多。这里23条方子助你成为一个高效程序员。其实IT界已然成了一大江湖,IT江湖门派之多,编程流派何其多,可能每个人踏足IT江湖都身怀绝技吧,上面的23条也许不一定适合你,但是我还是希望它能帮助大家,大家共同努力。
二:健康
相信大家已经注意到了,程序员的大部分时间都花在电脑桌前编程,这会损害程序员的健康。其实不需要多么复杂的养生,你只需每天做一些小小的改变,就可以摆脱病痛、保持健康。
变换姿势
虽然站立桌、昂贵的椅子和一些基于人体工程学的玩意的确很酷,哪怕LINUS(linux创始人)都在踏步机前工作,而事实上你并不需要这些。
关键是要变换姿势,如果你保持一个姿势数个小时不活动,你的脖子在数天后疼痛是必然的。每15分钟站起、坐下、跳、蹲下、活动一下手脚、放松一下眼睛;每小时变换一下姿势;每天走一走,爬一些楼梯,保证你的健康会得到很大的改善,关节的僵硬和肌肉的疼痛都会得到缓解。
我个人拥有一个电动站立式办公桌, 每个小时我都变换一下姿势。而且我运行一个程序来提醒我每15分钟做一个小休息,每个小时做时间较长的休息。对于苹果X操作系统而言,有个“Time out”应用非常好,在windows上,我一般采用“Big Stretch Reminder”。
锻炼
锻炼是改善健康最好的方法之一,但是必须用正确的方法锻炼。首先要确保不要在无用的事情上浪费时间。
不要跑步
跑步被广泛当作一种锻炼方式,其实并不适用于所有人。在决定通过跑步来锻炼以前,你需要确认两件事情:1 你的身体状态足以满足跑步锻炼所需,一个严酷的事实是大部分程序员达不到跑步锻炼所需的身体条件。(译者注:对胖程序猿来说,跑步极有可能会损伤膝关 节)2 跑步锻炼需要掌握正确的跑步姿势和跑步方法。
我曾经常跟随在街道跑步的人们,紧跟他们的步伐和僵硬的背部(译者注:作者可能指一部分跑步的人姿势不对,背部僵硬),不正确的跑步姿势极有可能损 伤背部和膝部。如果你想跑步锻炼,请先确保体重不要过大,学习正确的姿势和方法,以慢速跑和短距离跑开始练习。所有超过5公里的跑步练习都是过度的,最好 是不要以跑步来锻炼(译者注:对长期缺乏锻炼的程序员而言?)
不要骑自行车
你都在电脑前坐了一天了,锻炼的时候又坐在自行车上,哈哈。多么有才的选择啊,先生!如果你真的喜欢骑自行车,那么去骑吧,但不要期望能从中得到什么。
不要到健身房健身
高强度的健身方式适用于有意保持健美外形或有意取得某种特定目标的职业人士。通常,高强度训练不适合程序员们。
我们都有自己的职业目标和适合自己的使命,所以就不要玩健身了嘛。
没有效果,太多疼痛和受伤。健康的程序员不需要高强度健身。
应该步行健身
步行比跑步和其他的方式更好。步行简单、安全而且有效。我每天步行5-10公里,这个习惯给我的健康带来很大的改善。请买双薄鞋底的好鞋子(仔细看好,不要买仿制经典篮球鞋)开始步行锻炼吧!
如果感到太单调,跑步时可听电子书或者播客。边学习边锻炼,多么充实!
更强壮 更灵活
你开始步行锻炼了?很好。让我们进入下一级。首先学会正确的腹式呼吸。这可能需要花几天甚至几个星期的时间来养成这个锻炼时的呼吸习惯,这个技能非常必须,可有效缓解颈部和上背部的疼痛。
程序员们花了太多时间坐在电脑前,可能都忘记怎么运动了。建议从头开始,但不需要任何额外的器材,你只需要在视频网站上搜索运动操视频,然后跟着一起运动即可。
当你的移动变得自然平稳,当你走路柔软得像老虎,当你采用腹式呼吸,你的身材正在变得优雅,而大部分疼痛都将离你而去。我建议以下简单的辅助练习:
俯卧撑、下蹲、引体向上和桥式运动。使所有事情简化而不是复杂化。设定小的目标,百分之百关注在动作技巧上。如果你有兴趣,请阅读《The Naked Warrior by Pavel Tsatsouline (裸体战士)》 这本书有很多智慧技巧能帮助你进步。
睡眠
最后,我必须指出的是优质睡眠。大家知道,但却实践的少。使你自己在一个结实的床垫上度过一整晚。不要在晚上还盯着电脑或者手机和平板,至少保证睡前一小时不使用这些电子产品。10点上床,6点半起床,你就是个快乐程序员!
结论:
你已经知道了,获得健康很容易。只需保持以下习惯:
-
变换姿势
-
经常休息
-
不做蠢事,比如高强度器材健身
-
更多的步行
-
正确呼吸
-
训练灵活性和力量
-
更多的睡眠
只要坚持几个月,你就会看到收获。
三:快乐
在那段时间里我学到的最重要的事情之一就是当我快乐的时候我的状态最好。这的确很不一样。当我心情愉悦,写代码就更有效率,应对问题就更敏捷,并且更容易保持专注。
寻寻觅觅,终于我找到了,对于我来说,保持快乐非常有效的几个习惯。当我没有 100% 感觉的时候,它们还能迅速恢复我的“蓝”,提升我的愉悦水平,让我可以继续放大招。下面是我的 6 个习惯:
1. 早起
自己开公司的其中一项优势就是,我完全可以自由安排时间来完成我日常的工作。
通过试验,我发现,每天早起最让我精力充沛和心情愉悦。一日之计在于晨,早起使得我的工作效率高,完成的工作多,这样晚上我就能尽早休息,保证充足 的睡眠,形成一个良性循环。随着时间的推移,我发现我越来越喜欢清晨,因为在清晨我能搞定很多“疑难杂症” ,并且注意力高度集中。Gretchen Rubin 在他的《The Happiness Project 》一文中也有相似的段落:
“我每天早上 6 点准时起床,即使周末和假期也不例外。我非常享受早起的感觉。”
每天早起是需要自律的,特别是要约束自己前一天晚上的睡觉时间。现在,我能保证自己在晚上 9 点半就开始做睡前准备工作,然后 10 点准时睡。第二天一早醒来,哇塞,这感觉真棒!
2. 每天运动
“我们发现,爱运动的人比不爱运动的人心情更为愉悦,工作更为活跃。”—— Amanda Hyde
在过去的三年时间里,运动从偶尔为之变成了我的每日必修课。一开始在健身房,我都不知道该做什么,然后我询问了我兄弟,他是个私人教练。接着在听取了他的建议之后,我叫上我的好朋友一块开始健身。很快,我就爱上了健身。
现在我如果不去健身的话,我就浑身提不起劲。我最近还发现了一点:运动甚至还能有助于我们解决其他领域的问题。而且,不瞒你说,是运动治好了我的失眠,让我重回高质量睡眠的温柔怀抱。
3.适当放松
“最快乐、最富有、最有成效的生活不光是有全身心面对手头一切挑战的能力,而且还得能定期把自己脱离这些包围圈,以寻求一定的放松。”——Loehr and Schwarz,《The Power of Full Engagement》
所谓“文武之道,一张一弛”,“磨刀不误砍柴工”。正如我上面说提到的,我早上能够保证 6 点起来是因为我在前一天睡前的准备。我晚上 9 点半就会去散步,沿着我曾经无数次走过的小道慢慢行进。因为路线已经确定,我也不做别的,就只是散步,所以这反而能让我好好放松。
在步行时,总是会有各种想法进出我的脑海,然后我发现这对健康很有益处。有的时候,我会想起那天我完成的大 case。也有的时候,我会想想如何才能保持快乐。一路上我的心情都特别平静和放松,以致于差不多洗漱之后,头一沾上枕头就能睡着。无需多言,这肯定是比 我一直工作,然后睡觉前面几分钟才关上电脑要睡得熟、睡得香。
4. 乐于助人
目前为止,我关于自己的一个最可爱的发现就是,帮助他人能让我感觉快乐。曾经有一段时间,我常常会见创业者帮助他们解决新创公司的一些问题,心情总 是感觉很愉快,但我没有仔细探究原因。然后当我有幸读到 Matthieu Ricard 的《Happiness: A Guide to Developing Life’s Most Important Skill》,再思及自己的情况,我终于明白了,是帮助他人让我感到了身心愉悦。
我反复阅读了上面那篇文章提及的,关于利他主义和快乐之间的联系的相关段落,不断思考。也是从那时起,我开始坚持帮助那些需要帮助的创业者:发现可以应对他们当前挑战的方法,找到更优的流程等等。这回报给我极大的快乐和幸福。
如果你想得到关于创业的建议,欢迎发我 email 或者 Skype。
5. 学习新技能
“当有那么一刻,你全神贯注于某一任务,在工作中发现一种平静和幸福的愉悦感,那么好好享受吧。这就是流程。”——Leo Babauta
还有一件事是我在 Buffer 上面学到的关于快乐的一个关键因素是,挑战。有挑战我就快乐。大家或许会奇怪,为什么新的挑战会让我快乐?因为如果生活一帆风顺,没有惊涛骇浪,会让我失去激情,闷闷不乐。
而学习新技能能带来快乐的一个关键原因就是,我们需要集中精力去学才能有所进步,简而言之,这也是一种挑战。根据陡峭的学习曲线,在短时间内我们的 确能学到很多。例如,在前面两周的时间里,我才从零开始学习 Android 开发技术,而现在相较于两周以前,连我自己都难以置信我竟然学会这么多了。
6. 认真过好每一天
上面我提到的这 5 点都需要我们不断坚持去做的。而我,在过去的那么多日日夜夜,我做到了。我每一天的生活都非常充实且有意义,这感觉真心赞!在工作上我有目标,在我的吨位 体重上,我也有目标。此外,我试着每天都能安排时间会面或者在 Skype 上给别人提供帮助。这是大概在一年前我从一次面试中学到的。具体帖子我也曾在我的博客中有所提及,但是它非常值得分享,所以我想再重复一遍:
“即便你全身心地投入到新创企业中,也总有超出你控制范围的因素,然后你可能会觉得沮丧、不自信,而这些会影响你能力发挥。所以,我的建议是,你应 该,打个比方说,参加攀岩这类的健身活动。试着在这上面花时间。我的建议是至少得有一个体育锻炼活动。然后即使发生各种不顺心的事——例如,你与你的合伙 人散伙了——那么你仍然可以度过美好的一周,因为你可以去健身房破自己的纪录,或者在跑道上挥洒汗水等等等等。”