转眼大学生活就要结束了,想想还真有点舍不得。简单叙述一下我大学的编程生涯。

  大学一年级,对我来说,可以说基本上没有接触到什么编程的技能,买了个笔记本也就是用来聊聊天看看电影什么的。至于C语言是什么,我去!还是睡觉打球吧。从大一就养成了翘课的习惯,导致整个大学基本上都没有上过几节课。罪过…幸运的是靠着考前的几天的抱佛脚居然没有挂科,还拿了几次奖学金,和学霸们埋头苦读比起来也算是值了。

  记得大一下学期开设了C语言的课,也是大学期间唯一的一门专门教授编程语言的课,尼玛由于缺课太多,中途去听一堂完全是天书,老师讲的也很死板,毫无激情。后来索性和同学打好招呼点名告诉我一声,然后就不去了。记得考前一天的晚上,正值夏天,那个热呀~~~捧着C语言的书,心里还不停的骂:尼玛这个‘*’(指针)简直就是坑爹呀!由于缺少练习,加上平时成绩不高,期末考试成绩自然不会高了。

  转变是在大一暑假,那时候有个C语言的课程设计,是我们学校一个出了名严苛的女老师带的,年纪有点大了,几乎每一个在她实验室里的人都被他狠狠的批斗过。进实验室那是很严肃的,必须衣着整洁,必须携带课本(没有会被骂或赶出去),上机前必须要预习和规划本次实验要做的内容(没错这个要写在纸上,还要拿给她看然后评分),不许大声说话,不能把水和食物带进去,甚至连每个仪器应该放在什么位置都规定好了,她的记忆力很好,如果上次犯了错,就别想下次了。总之想糊弄她老人家,门都没有。习惯懒散的我还真的是很不适应,还好我为人比较低调,估计是少数的几个没有被骂的人了。

  课设的题目是要做一个学籍成绩管理系统,开发的模式大约是上世纪90年代的模式。所用的开发工具当然也是老到那种你根本不可能轻易在Window 7之类的系统下安装成功的玩意儿,有兴趣的朋友可以百度一下“UCDOS”和“Turbo C2.0”这两个老古董!没错,尼玛就是这样的鼠标完全不能发挥作用的开发环境。现在VS都2015了,但是在我们实验室里,VC6.0 那都是高大上的万一,记得当时有个同学用的VC6写的,瞬间就想膜拜。但是这东西在实验室老师眼里却是不行的,没错,老师绝不允许使用VC6.0这样的偷懒的方式做课程设计,唯一有一个国防生估计是以前就接触过编程使用VC6也是哀求了老师好多次才让通过。你能想象那个Turbo C有多么操蛋吗?下载一个试一下就知道了!

这个就是传说中的UCDOS

这个就是传说中的Turo C(TC2.0),你能想象在上面调试上千行的程序时的感受吗?

  显然,仅仅靠在实验室里面的几个小时是不可能完成这个艰巨的任务的,不得不安装环境在课后完成。但是老师会这么轻易让你得逞的吗?我们那时候已经普遍使用Windows7的操作系统了,我用的是x64的,别说UCDOS了,就连Turbo C你都不可能装的上去(我那时候也真的很老实,在课后看到别人用VC6.0完全被那花哨的界面和强大的功能惊吓到了,基本上是望而生畏不敢用),以我们当时的水平,自己搭建环境还是很困难的。后来,我了解到还有虚拟机这个东西存在,下载了一个VMWare破解了,照着网上的教程一步一步安装,经过无数次的失败,也是花了整整两天才搞好。

  当时下载一个东西还是蛮困难的,你知道失败一个镜像损失是很惨重的,学校的网速是1M的带宽,也就是下载速度封顶了也就128K每秒,现在的手机都比他快!并且上网收费还贵。不过一切的一切都是值得的!我是第一个在自己的电脑上成功配置好自己的环境的,没错Windows 98(这也算得上古董级的东西了)可以完美运行UCDOS和TC2.0!当那个丑陋的屎绿色(不知道用什么来形容)界面出来的时候,我的那个兴奋呀。然后我也被很多同学叫过去帮他们配置环境,我的那个优越感瞬间爆棚呀!

  经过多方借鉴,最终我还是完成了,下面是两张简略的截图:支持增删查改的基本操作,另外可以存盘,从文件中读取数据,可以统计各科的数据。

当年费好大力气完成的学籍管理系统

  这还没完,课程设计做完了当然要写实验报告,为了防止Ctr+C,V的现象发生,实验报告一律手写,至少20页。卧槽,为了这个实验报告,我居然写了整整一个白天加晚上。

手写的近30页的实验报告

  从连C语言的基本语法都不会,到一个软件的成型,过程虽然相当的艰苦,但是最后回头看也是收获颇丰的,最重要的是打开了我的变成世界大门,建立了信心。

  大二就分专业了,我选择了物联网工程专业,选择的原因很简单,听学长说这个专业课很多,我想多磨练一下自己。后来证明,课程的确很多,就是那种周一到周五全是课,偶尔有空隙就安排实验,周某也是。至于磨练自己,呵呵,还是高估了自己的积极性,满课对于我来说也基本上是没有课。

  有了大一某课程设计的经历,我决定好好补一补C语言基础,买了本《C和指针》,这是我所遇见的最经典的C语言入门著作了,没有之一!开始只是看电子版,后来买了纸质书越看越入迷,每天8点起床开始看,边看边在电脑上实验,晚上10点就困得不行了。坚持了十天左右吧,顿时觉得豁然开朗,可以大喊一句C语言so easy(当然现在不这么认为,现在基本上每年我都会重新学习一遍C语言,每次都会有不同的感受)。

  然后对我影响最大的就是“面向对象”这个术语了,最初接触是在大二一个同学跟我讲:大学一定要学一门面向对象的语言。比如C++、Java。后来我才知道C语言是面向过程的,用来做大型工程是很困难的。我周围的大神是在是太多了,我荒废了大一,看这他们用上了高大上的Java,C++。我嘞个去!好高端,Java的代码好长,他们是怎么记住的?C++ 和C语言长得还比较像,但是一看书就懵了,什么命名空间,构造函数,析构函数,复制构造,STL。Fuck 完全搞不懂!

经常听院里的某某某大神用xxx语言写了个xxx东西,好牛逼!顿时心就凉了一大截,不得不问一句上天:难道人与人之间的差距就这么大吗?

当然人最不能丧失的就是憧憬,没错对未来的憧憬。我下定决心奋起猛追,中途累了或是遇到了挫折就停下来抽支烟,在椅子上仰面一躺,看着烟圈在台灯周围萦绕,享受着这份特有的孤独,5分钟后便又有了动力。

那段时间,我不知道熬过了多少个这样的夜晚,所学的技术莫非是C/C++/Java/Linux/Android之类的,不知道从什么时候开始,我也成为他们眼中厉害的角色了。我开始接触项目,适应团队的协作工作。

这里提一下中途的一个插曲,有一次准备报一个培训班,那个时候在我们学校周围有个比较出名的IT培训机构,里面有很多来自不同高校传奇的人物(我认识的很多都去过)。我当时正准备学习Android,一个学长(传奇人物,也是做展示的人之一)带着我去他们的项目报告(宣传),很多邻校的高手轮番展示他们的项目,个个都高大上!最后有个大神和我同一个年级,然而他却独自开发了好几款Android游戏,那时候Android开发并没有现在普及,我还用的2.3的系统,会Android开发的人比较少。完了之后,学长对我说:你看人家同样都是大二,人家就这么NB了。我那个自卑呀!

机缘巧合,大三暑假一个国内还算可以的软件公司来招暑假实习生,我和他在都进了,我相当兴奋,叙述了仰慕他的经过,实习期间我们住在一起,成了无话不谈的朋友。后来共事,才发现我已经追上他的脚步了。

大三可以说是我的爆发期。有了大二的基础,一般的项目基本上都能搞定,上了很多项目,拿了很多奖。后来还和几个死党创业,也是一场腥风血雨,从每个人100元启动资金开始,到月入上万的规模,我们也付出了很多。虽然最后还是失败了,但至少也是一次人生的冒险!

从程序小白,到职业码农,这个过程很苦,但是我一直在坚持。相信很多人都有类似的经历,对和错其实不重要。引用最近热播电视剧中的一句话:莫问前路凶吉,但求落幕无悔!

转载于:https://www.cnblogs.com/csulennon/p/4242054.html

我是如何从程序小白成为码农的相关推荐

  1. 恕我直言!千万别随便叫一个程序员为“码农”

    今天邻居家的大朋友找我做职业规划的时候,问了我一个很有意思的问题:为什么程序员会自嘲自己为码农? 这个问题也引起了我的好奇,不知从何时开始,这个圈子里不再以"软件工程师"自称,取而 ...

  2. 程序员和码农,有什么本质上的区别?

    常有人问,"那些只学了XX的人,编程能力都退化成什么样了?" 之前看到一个比喻,真的很赞同: 当土著拿到猎枪之后,他们射箭的技能退化严重,但因为食物更多了,厨艺有了长足的进展. 当 ...

  3. 用一句话证明你是优秀程序员!码农们的这些回答也太大脑洞了吧!

    作为一名程序员,一名技术人员,每个人都想做最优秀的那个,但是优秀这个词大家好理解,但是却又很难量化,什么是优秀的?关于优秀又是什么样一个标准,想必每个程序员的内心都有一个自己的标准,有的认为则是成为公 ...

  4. “野生程序员”加入码农战队!新业态+低门槛正让“写代码”走向平民化

    互联网上流传着这样一段关于 "野生码农"的描写:他们没有专业学历背景,仅凭对计算机开发的兴趣就可以进入这个行业成为一名程序员,从前端开发到后台维护都能一手包揽,最快的时间仅仅只需要 ...

  5. 2020程序员VS码农,“金三银四”春招指南

    从代码实现层面看,在功能刚开始开发时,这两个设计区别不是很大,但随着系统演进.越来越多的功能加入,继承关系带来的耦合会导致模块之间关系越来越复杂,牵一发而动全身,终究有一天哪怕只做很小的改动,也将成为 ...

  6. 今日小程序推荐:码农老黄历-看今天哪个方位BUG最少

    码农们, 注意啦!注意啦!! 今天宜: - 面向「东方」写程序哦,因为BUG最少: - 上生产要白天上线哦: - 在妹子面前吹牛哦 今天忌: - 命名变量为"ad" - 代码复审 ...

  7. 工程师、程序员、码农有什么区别?

    正常来讲工程师范围更加广泛,包括程序员,现在有硬件工程师,实施工程师,安装工程师等等都属于工程师的范畴,一般称呼程序员高大上的称呼软件工程师. 程序员这个称呼目前来讲最贴切,但是很多程序员又自称码农, ...

  8. 程序员如何看待码农这个称谓?

    "编程是快乐的,一切的最后,殊途同归,追求的都是心灵的极限." 就目前来说,绝大多数人对程序员的认识都非常非常的不足.这一点甚至包括很多程序员自己.他们每天消极悲观,被迫加班,找不 ...

  9. 三年程序人生 深圳码农成长中进步

    (是篇很实在的文章,每天都要奋斗吧!) 从2011年工作到今天 深圳--魔都--深圳 从一个菜鸟到一个标准码农,在此很感谢那些帮助过我的人,steven呀 adam呀 还有dav,还有小基友edwar ...

最新文章

  1. directx 双缓冲 运动 闪烁_24期0利率 | BMW超值福袋开启“双11”购车狂欢节!!
  2. [Swift]LeetCode388. 文件的最长绝对路径 | Longest Absolute File Path
  3. Pwntools的context设置与shellcode
  4. apache压力测试
  5. python 协程、进程、线程_Python 中的进程、线程、协程
  6. eprom是计算机内存吗,存储器EPROM的应用
  7. XML解析(一),SAX解析XML
  8. pip软件包安装 + Anaconda软件库安装 教程
  9. 让webstorm支持avalon语法自动补全
  10. 一个基于DataTable的后台框架的实现
  11. 持久化消息队列memcacheq的安装配置
  12. 【路径规划】基于matlab帝国企鹅算法求解机器人栅格地图避障路径规划问题【含Matlab源码 784期】
  13. HDU 4568 Hunter
  14. 【CV系列】Retinex理论模型及其应用
  15. 光阴深处岁月静好可待流年
  16. /deep/ >>> ::v-deep的用法
  17. Markdown编辑神器Typora最终免费版
  18. 利用钉钉【上下游组织】搭建企业外部协作平台
  19. 广州二手房价分析与预测
  20. 选对池塘钓大鱼([美]雷恩·吉尔森)第四章 想钓什么鱼?发现自己内在的需求...

热门文章

  1. Photoshop自由变换图形大小
  2. Spring杂谈 | 什么是ObjectFactory?什么是ObjectProvider?
  3. 20万用户同时访问一个热点Key,如何优化缓存架构?
  4. 电商系统设计之商品(上)
  5. 追求极简:Docker镜像构建演化史
  6. 剑指offer:给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,..,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]
  7. jQuery的核心函数
  8. Android --- 无法预览xml布局视图的解决办法
  9. 网络故障排除工具 | 快速定位网络故障
  10. 数据中心即服务(DCaaS):建筑设计师的下一个重大机遇