屈指数算,我从大二开始接触编程,到现在已经第五个年头。这五年里摸爬滚打,绕了不少弯路。计算机世界似乎是一个无边的宇宙,这五年道阻且长,我试图探寻编程世界的边界。经历了五年代码的洗礼,我似乎依稀能看见编程世界的轮廓。下面是我这五年的感悟,反鸡汤文,胆小者慎入。

习得一项本领总会经历三个阶段:入门、缓步提升、超越。

第一阶段:入门。

所谓万事开头难,任何一项本领在入门时总要花费一翻精力,编程也是如此。每个程序员都由C语言开启编程世界的大门。C中的指针、内存管理让刚接触编程的我们晕头转向。但如果弄清楚了这些基本概念,也许在黑白界面中完成我们人生第一个学生成绩管理系统并非难事。入门阶段也许会伴随着艰难困苦与不知方向,但只要坚定信念,反复咀嚼基础知识,入门并非难事。

第二阶段:缓慢提升

当我们熟悉了一门语言、了解了一些计算机基础知识、并成功实现了一个看似简陋但充满成就感的软件,接下来我们将会进入一段漫长无际的缓慢提升阶段。这个阶段我们开始涉足一些项目,用先前积累的基础知识可以合作完成一个项目,这个过程也会伴随各种考验,但实现每个功能后的成就感会使我们信心百倍。然而,受到成就感驱使,我们在这个过程中往往会一味地追求成就感而疏忽探寻问题的本质,成就感会取代我们对技术本身的思考。遇到问题时我们更擅于使用拿来主义,在网上一通搜索,忽然发现某个论坛中的某中方法可行,便转而继续下一个问题。若你也有这样的体会,恭喜你正式成为码农。
成为码农也许是每个程序员必经的阶段。成为码农并不可怕,可怕的是你是否意识到自己正处于码农的阶段。在这一阶段也许已经积累了一些项目经验,对编程语言也有所了解。也许你已经在中等规模的公司获得一份薪资不错的工作,并且凭目前的经验足以混口不错的饭吃,但若想进入顶级互联网公司仍有较大的差距。也许你会发现,当遇到问题时你能通过搜索引擎快速地找到解决方案,但仔细想来你具备的是信息搜索能力,并非高超的编程水平。国内的程序员论坛潜伏着太多这样的拿来主义者。他们只希望获得解决当前问题方法,并不会究其问题的本质。你若体会到这一点,并意识到拿来主义巨大的危害,那你即将踏入第三阶段;你若安于现状、不作改变,那终将成为码农无法自拔。

第三阶段:看透一切

正如道教的思想:一生二,二生三,三生万物。万事万物虽形态各异,但究其本源都是“一”。编程也是如此,计算机技术发展至今新技术层出不穷,每隔17秒就会有一种新的框架诞生。很多人苦于编程技术发展太快,学习更不上新技术的迭代。但大家不曾发现,当今计算机技术的发展都是表层技术的发展,计算机根基数十年未变。HTTP协议、TCP协议、UDP协议、面向对象编程思想……再往底层,如今的所有计算机仍然基于这个1903年出生的犹太人冯诺伊曼提出的计算机架构。若要成为高手,必须要看透事物的本质,若要成为计算机大神,必须要学透计算机基础学科。那些框架都是浮云,随着新技术的出现必将成为过眼云烟,而真正经得起时间洗礼的是那些几十年未变的计算机基础。当了解了这一点,你就会忽然明白,为什么大学计算机专业要学四年基础知识?为什么BAT招聘都会考大量变态的基础知识?那些在高校制定教学计算的老教授们、那些BAT的大神们早就参透了这一点。高手总是以不变应万变。
所以励志成为大神的你,不要再抱怨学校的课程多么地没用,不要再抱怨校招的笔试题多么地变态,从现在起重视基础、恶补基础吧。

最后的干货

最后分享给大家编程过程中的一些干货。
学习编程是一场马拉松,你永远别想一口吃成一个胖子。快餐式的IT培训机构最多把你培养成码农,若要更上一层楼一定要多多思考、拒绝拿来主义。
在参与项目过程中都会受到deadline的压力,也许你没有太多的时间探究每个问题的根源。我建议大家养成记录的习惯,把开发过程中遇到的每个问题都记录下来,在周末或项目空窗期把问题探究清楚。
你要知道,任何问题都有原因,不要把重启一下电脑就解决的问题归咎于你所使用的框架的bug,即便真的是框架的bug,那你也需要看源码找到bug的根源。
保持一颗探寻问题本源的心,编程世界在你面前终将一丝不挂。

码农与大神也许只是一步之遥相关推荐

  1. C#码农的大数据之路 - 使用C#编写MR作业

    写在前面 从Hadoop出现至今,大数据几乎就是Java平台专属一般.虽然Hadoop或Spark也提供了接口可以与其他语言一起使用,但作为基于JVM运行的框架,Java系语言有着天生优势.而且能找到 ...

  2. 深井冰!沙雕码农脑洞大,盘点Github上那些不忍直视奇葩脑回路的沙雕项目!

    大家好,我是hub妹,又到了本期分享.这期我们来分享一下Github那些 沙!雕!项!目! PornHub风格Logo生成器 沙雕指数:◉◉◉◉◉◉◉◎◎◎ 一个在线的 PornHub 风格 Logo ...

  3. 叹服!华为JDK负责人手写HotSpot VM源码744页大神笔记

    不知道各位同学发现了没有:现在对于Java开发岗位需求仍旧是需求大于供给,但是就是这样的情况还是很多同学找不到心仪的工作.究其原因就会发现:现在招聘的要求是不仅仅是要会应用,同时更要明白其中的内部运行 ...

  4. c# 字典按ascii 排序_C语言 按ASCII码排序 求教大神

    展开全部 总得思想还是冒泡排序,改良一下就可以了e69da5e887aa62616964757a686964616f31333335343961.#include #include #include ...

  5. 小码哥IOS大神班11期 大神班

    链接:http://pan.baidu.com/s/1eRTq8oE 密码:mm8a 转载于:https://www.cnblogs.com/aleafo/p/10622806.html

  6. 码农翻身 各章节链接

    大话编程 我是一个线程 我是一个Java class Javascript: 一个屌丝的逆袭 Java:一个帝国的诞生 JSP:一个装配工的没落 TCP/IP 之 大明王朝的邮差 TCP/IP 之 大 ...

  7. Python为什么这么厉害? 不想成为专业码农? 来学习Python吧!

    2019独角兽企业重金招聘Python工程师标准>>> 什么是码农? 什么是码农,大家用它来自娱自乐,然而,其中的辛酸只有程序员自己知道.程序员冲锋在第一线,各个人都在盯着你的结果, ...

  8. 码农翻身全年文章精华

    在码农翻身公众号写了一年多, 最大的体会就是:原创真心不易! 每天思考的最大问题就是: 下一篇文章写啥? 在大家的支持和鼓励下,还是坚持了下来,  回头看看走过的路,这一年过得还算充实. 很快就要过年 ...

  9. 学python吧-Python为什么这么厉害? 不想成为专业码农? 来学习Python吧!

    什么是码农? 什么是码农,大家用它来自娱自乐,然而,其中的辛酸只有程序员自己知道.程序员冲锋在第一线,各个人都在盯着你的结果,不断给你施加压力.你就是一个机器一样的干活,除了干活还是干活.程序员的压力 ...

最新文章

  1. 大小端字节序介绍以及判断当前环境字节序的程序【C语言】
  2. 用CSS实现梯形图标
  3. 数据库监听触发器java_SqlServer触发器监听数据调用存储器调用java接口
  4. python【蓝桥杯vip练习题库】ALGO-50 数组查找及替换
  5. 华为上机考试题系列(一):牛客网的奇葩操作
  6. NSFetchedResultsController和UITableView显示CoreData的数据时用relationship分组的方法
  7. spingboot 集成swagger2
  8. QT学习笔记(六):Qt5主窗口框架示例
  9. jvm面试2 jvm如何加载java代码? JVM知识重点:内存模型和GC
  10. 怎样进行大数据的入门级学习
  11. 解决Vscode提示bodyparser已被弃用的问题
  12. vue根据屏幕大小适配表格高度
  13. android开发歌词滑动效果_一些Flutter开发中的“坑”
  14. DPDK初始化分析(五)
  15. 电脑用上这些壁纸站与软件,惊艳你的眼球!
  16. html圈c为什么显示问号,朋友圈中能翻译变文字的“问号”是怎么回事?
  17. 【Pyecharts50例】添加背景图片/Logo
  18. 电视浏览器Emotn V1.0.0.2+悟空跨屏电视输入法
  19. linux shrink dev sd,Virt相关命令(转)
  20. LeetCode 643 题解

热门文章

  1. 有什么毫不起眼却闷声发大财的行业或者生意?
  2. 韩国计划扩展网络道德课程
  3. 仿微信图片查看器入场退场动画
  4. 前端-html-01
  5. FunAdmin开发框架系统V2.3正式颁布了
  6. 用python实现新年祝福微信的自动回复
  7. Mac os 创建自己的证书并且找到自己的证书 I
  8. vue 在v-for列表动态添加ref,并获取对应元素
  9. 多元一次不定方程解的个数
  10. 【数据库】对不起navicat我投入了DataGrip的怀抱