《关于编程一些鲜为人知的真相》一文讲了一些编程的真相:如果把所有项目的生命周期平均一下,那么一个程序员大概10-20%的时间用来写代码,并且大多数程序员可能每天大约只有10-12行代码会进入最终的产品,无论技能水平如何。优秀的程序员会将剩余的90%的时间大多用在思考、研究和试验上以发现更棒的设计。而非优秀程序员他们的大多数剩余时间是在调试代码。

一个好的程序员的工作效率是普通程序员的10倍,而一个伟大的程序员则是普通的20-100倍。一个糟糕的程序员不单是一事无成,相反——不仅完不成分配给他的任何工作,还会制造各种各样的麻烦和问题需要别人来解决。

“伟大的车工拿几倍于普通车工的工资,但是一个伟大的代码作家——程序员却是值得我们付出普通软件写手10,000倍的薪水。” – 比尔·盖茨

一、 程序员逆袭应具备的7大技能

程序员一直被认为是一个苦逼的职业,工资一般般,但工作压力却很大,类似“程序员职业病、程序员光棍”等话题充斥着整个行业的讨论区。程序员需要逆袭,做好以下这7点,你可以混得更好一点。

  1. 对技术的热忱
  2. 懂得数据分析
  3. 了解业务
  4. 良好的沟通技能
  5. 与他人团结协作的能力
  6. 精通企业以及相关行业的知识
  7. 掌握并应用现代信息技术

二、 初级软件开发人员进修必备的20本书(上)

  1. 《学习软件开发》
  2. 《返朴归真:以自由为原则的软件开发人员》
  3. 《不要掷骰子》
  4. 《每个程序员都应该了解的97件事》
  5. 《开发流程中的效率》
  6. 《基础编程》
  7. 《HACKNOT:软件开发》
  8. 《初级程序员的动机》

相关阅读:《软件开发人员进修必备的20本书(下)》

三、 程序员常用的一些工具

一些高效的软件可以给我带来高效的工作效率。下面说一下程序员常用的一下工具,高效的工具。

  1. Xshell Xftp——免费软件 Xshell 和 Xftp 都是 NetSarang 出品的优秀网络管理、安全传输工具。
  2. Axure RP Pro——一个产品经理必备的交互原型设计工具,能够高效率制作产品原型,快速绘制线框图、流程图、网站架构图、示意图、HTML 模版等。
  3. FastStone Capture——一款极好用的图像浏览、编辑和截屏工具,支持 BMP、JPG、JPEG、GIF、PNG、TIFF、WMF、ICO 和 TGA 在内的主流图片格式,其独有的光滑和毛刺处理技术让图片更加清晰,提供缩放、旋转、剪切、颜色调整功能。
  4. Lingoes 灵格斯词霸——内置的基础英汉词典、海词在线词典、句酷双语例句、互动百科、Google 网络释义、即时翻译。
  5. 印象笔记——把自己在工作中遇到的一下问题,及时的记下来。
  6. Mindjet MindManager——是一款优秀的思维导图和知识管理软件,能够帮助你将想法和灵感以清晰的思维导图的形式记录下来,这对梳理工作计划和规划很有帮助,广泛应用于研究、组织、解决问题和决策中。
  7. EditPlus——一套功能强大,可取代记事本的文字编辑器,拥有无限制的撤消与重做、英文拼字检查、自动换行、列数标记、代码折叠与高亮等功能、同时还能编辑多文件、全屏幕浏览功能。

相关阅读:Mac开发者常用的工具

四、 写代码前的准备,你做好了吗?

在程序员写代码之前,还有很多工作要做,做好了这些准备,所写的代码才能更加完美。

  1. 编写设计文档——A、反复思考得出最优结果和B、加快今后编码速度
  2. 绘制原理图——一图抵万言
  3. 制定开发计划
  4. 制定测试计划

五、 程序员健康指南 真的很受用

  1. 健康管理支撑着你的工作
  2. 简单的每日检查
  3. 职业病的处方
  4. 对付睡眠不足
  5. 心理健康很重要
  6. 尽情的放松
  7. 简单的营养补给

六、 你曾后悔进入 IT 行业吗?为什么?

两天前极客头条上的问题,目前已有166顶和148条评论,欢迎大家一起来探讨和交流。有网友认为:IT有IT特有的魅力所在;说多了都是泪啊;不后悔;妹子太少,感觉有些孤单;不后悔,还是觉得自己好牛逼懂一些人家不懂的技术;后悔迟入行了……

此外,还值得关注的有:程序员创业前需考虑的6条建议程序员,你需要大量地阅读周鸿祎:比情怀更重要的硬件创业三定律幽默趣味:程序员如同妓女程序员迷茫的未来

关于编程一些鲜为人知的真相 csdn的更多相关文章

  1. C++ STL中Map的相关排序操作:按Key排序和按Value排序 - 编程小径 - 博客频道 - CSDN.NET

    C++ STL中Map的相关排序操作:按Key排序和按Value排序 - 编程小径 - 博客频道 - CSDN.NET C++ STL中Map的相关排序操作:按Key排序和按Value排序 分类: C ...

  2. java 编程时候的性能调优

    一.避免在循环条件中使用复杂表达式 在不做编译优化的情况下,在循环中,循环条件会被反复计算,如果不使用复杂表达式,而使循环条件值不变的话,程序将会运行的更快. 例子: import java.util ...

  3. 程序员书单_java学习基础编程篇

    Java程序设计语言.(美国)阿诺德.清晰版 http://download.csdn.net/detail/shenzhq1980/9076093 JAVA2核心技术第1卷.基础知识7th.part ...

  4. Delphi xe7并行编程快速入门(三篇)

    现在多数设备.计算机都有多个CPU单元,即使是手机也是多核的.但要在开发中使用多核的优势,却需要一些技巧,花费时间编写额外的代码.好了,现在可以使用Delphi做并行编程了. 在Delphi.C++ ...

  5. python socket编程实现的简单tcp迭代server

    与c/c++ socket编程对照见http://blog.csdn.net/aspnet_lyc/article/details/38946915 server: import socket POR ...

  6. python udp编程实例

    与python tcp编程控制见 http://blog.csdn.net/aspnet_lyc/article/details/39854569 c++ udp/tcp 编程见 http://blo ...

  7. Linux 高性能服务器编程——多线程编程

    问题聚焦:     在简单地介绍线程的基本知识之后,主要讨论三个方面的内容:    1 创建线程和结束线程:    2 读取和设置线程属性:    3 线程同步方式:POSIX信号量,互斥锁和条件变量 ...

  8. Linux 高性能服务器编程——多进程编程

    问题聚焦:     进程是Linux操作系统环境的基础.     本篇讨论以下几个内容,同时也是面试经常被问到的一些问题:     1 复制进程映像的fork系统调用和替换进程映像的exec系列系统调 ...

  9. Linux 高性能服务器编程——I/O复用

    问题聚焦:     前篇提到了I/O处理单元的四种I/O模型.     本篇详细介绍实现这些I/O模型所用到的相关技术.     核心思想:I/O复用 使用情景: 客户端程序要同时处理多个socket ...

随机推荐

  1. App分类

    目前主流应用程序大体分为三类:Web App.Hybrid App. Native App.web app(网页应用)hybrid app(混合应用)native app(原生应用) 淘宝天猫这样的超 ...

  2. HAOI2012音量调节

    Description 一个吉他手准备参加一场演出.他不喜欢在演出时始终使用同一个音量,所以他决定每一首歌之前他都要改变一次音量.在演出开始之前,他已经做好了一个列表,里面写着在每首歌开始之前他想要改 ...

  3. [SoapUI] Groovy在SoapUI里获取Text文本第一行数据

    // get external txt file datadef groovyUtils =new com.eviware.soapui.support.GroovyUtils(context)def ...

  4. springMVC下jsp引用外部js,css等静态资源的解决方法

    直入主题. 1. web.xml对springMVC配置如下: <servlet> <description>Spring MVC配置</description> ...

  5. contiki-断点的保存和恢复

    保存断点 保存断点是通过保存行数来完成的,在被中断的地方插入编译器关键字_LINE_,编译器便自动记录所终端的行数.展开那些具有中断功能的宏,可以发现最后保存行数是宏LC_SET,取宏PROCESS_ ...

  6. django站点管理

    一.启动django站点管理功能 1.关于django.contrib包   包含了django自带的众多附加组件,主要包括:   1)管理工具: django.contrib.admin   2)用 ...

  7. c#什么时候使用virtual什么时候使用abstract

    一.C#中virtual与abstract的区别(引用"姓吕名布字子乔"的文章) C#的virtual & abstract经常让人混淆,这两个限定词都是为了让子类进行重新 ...

  8. WAP站点(IIS/Apache)的服务器设置

    Server 端的设置IIS服务器:为了使IIS支持WAP(WML)页面的发布,在IIS的Web站点的属性 / HTTP信息中设置WAP的MIME属性,添加如下的MIME类型:扩展名 内容类型(MIM ...

  9. 解决Gradle生成Eclipse支持后,发布到Tomcat丢失依赖jar包的问题

    最近一个项目中,使用号称下一代构建工具的Gradle构建项目. 使用中发现一个问题,Gradle从中央库下载的jar文件在系统的其它目录,使用gradle eclipse添加Eclipse支持时,ja ...

  10. 关于vs调试中kaze时出现的问题

    在kaze程序中,调试时,会出现内存释放出现问题,导致调试失败. 解决方法:将主函数所在的源文件中的所有函数中的vector声明的向量都放在主函数外面,成为全局变量,让系统自己释放,再次调试就不会出现 ...