首页 > 代码库 > 程序员应该关注的一些事儿

程序员应该关注的一些事儿

  0.  关注你的健康

  毫无疑问,软件开发是一项最需要久坐的工作之一,每天在电脑前要坐 8 到 16 个小时,中间几乎没有休息,这就很容易长肉。而肥胖很很可能会引起其它的疾病,心脏病就是其中一种严重的疾病。当然,你可以通过一些锻炼避免它,比如花点儿钱去办一张健身卡。

  长时间不符合人体工程学的打字姿势,会造成软件开发人员重复性的肌肉损伤,比如腕管综合征。你应该每隔几个小时的打字后就活动伸展一下手腕,防止这样的损伤,或者选择买带有手腕保护功能的鼠标和键盘。总盯着屏幕也会给你的眼睛带来压力,这就是为什么建议你戴一副防闪光的眼镜而不是普通眼镜的原因(假设你是戴眼镜的)。

  1.  提高你的数学能力

  数学可以提高你的逻辑思维能力,拓宽解决问题的角度,还有培养你的耐心。有一些数学分支,比如离散数学,可以直接应用到软件开发上,还有一些可能你会忘记,但也没关系,看你是从事的是哪个领域的开发了。比如说,游戏开发人员经常会用到物理和微积分,但我作为一名企业应用的开发人员,就很少有能用上它们的地方。无论怎样,数学能力的提升可以让你变得更优秀,做更好的程序员。

  2.  提高你的英语水平

  所有编程语言,脚本语言和标记语言都是英文的,而且像 Linux 这样的开源项目的注释通常也都是英文的。世界各地的开发人员都在使用英语来合作开发,针对国际客户的开发者都必须学习英语,因为这样才能够将业务需求转化为实际的解决方案。明白了吧,英语对开发者而言就和二进制对于计算机一样。

  3.  一个属于自己的域名和网站

  你不觉得有一个属于自己的邮箱地址很酷吗?不是那种像 something@yahoo.com 或 someone@gmail.com 一样的大众邮箱。有一个自己的域名能让你在其他人中脱颖而出,关键是每年只需要花很少的钱就可以实现它。我买的这个 lambdageek 域名只花了 13 美金,个人域名还能给你的个人品牌,也就是你自己,增添自信和专业性,让潜在的用户或者同事了解到你。当然这一切的前提都是你的域名不是像什么 hotmale-loves-chicks.com 一样瞎起的。

  4.  一个活跃的 Github 账号

  Github 账号对于程序员而言,就如同作品集对于艺术家一样。有了它,其它的就不需要说什么了。

  5.  一台好的设备

  你没有听说过程序员没有自己的电脑的吧?我也没听说过。没有自己电脑的程序员就好比没有激光剑的绝地武士一样。我说的一台好的电脑至少得有 4GB 内存,我比较推荐的是 4000 刀的 Macbook Pro,当然不排除那些有极端需求的特例。

  6.  足够快的网速

  网络对于程序员就像氧气一样,所以没有网络的世界就好比断了空气供给,是无法忍受的。一个稳定的网络连接可以让你多学习,看在线视频,泡泡论坛,然后及时关注 Hacker News 上的最新文章。

  7.  阅读经典的计算机科学书籍

  有一些书我认为是软件开发领域的经典之作:

  1. 计算机程序的构造和解释(Structures and Interpretations of Computer Programs)
  2. 代码大全2(Code Complete 2)
  3. 程序员的修炼之道(Pragmatic Programmer)
  4. 重构-改善既有代码的设计(Refactoring)
  5. 算法导论(Introduction to Algorithms)
  6. 离散数学及其应用(Discrete Mathematics and Its Applications)
  7. 人月神话(Mythical Man Month)

  8.  学士学位

  一个本科学历能够增加找到工作的概率,无论是新的毕业生还是刚辞职准备找下一份工作的人都一样。想像一下这样的情况:很多毕业生都在争抢一份工作,那么一个在校生的简历是不是更容易被忽视呢?

  9.  资格认证(可选)

  资格考试可以检验你某一方面的技术能力,而通过了某项认证意味着这个人在某一方面有着比较深入的了解,而恰好这方面是一个企业认可的。有一些公司会给有相关认证的程序员提供更高的薪水,当然,也有些公司根本就不在乎这些。比如说,作为一名有资格认证的 Java 程序员说明你对 Java 语言还是有比较好的理解,但同时它不意味着你可以直接将你的理解转为解决问题的能力。所以,一些公司更看重个人的思考能力,而非某种编程语言的经验,因为编程语言可以学得很快,但是解决问题能力的培养不是一朝一夕的。

程序员应该关注的一些事儿