这篇文章应该发布在好几年前,2011年计算机界大师Dennis Ritchie仙逝,那时对大师的映象还停留在大一刚学编程时:Unix的合作开发者,C语言的发明人.通过网上的纪念文章<<Unix传奇>>,才真正了解到大师的伟大之处.那年我参加工作刚好1年,所使用的语言是c#(从大二开始学习,也没想到伴随我到现在),抱着纪念大师的想法,也顺便重温下C语言,我在书店买了一本原版的<<The C Programming Language>>,打算拜读一遍.没想到这本书"读了"6年,陪我从长沙去往深圳又回到长沙.

 
    当时自己的英语不怎好(当然现在也不太好),阅读起来非常困难,很多单词都靠字典翻译,句子读得也不太顺畅,但是书的内容,还是吸引了我继续坚持下去.当时想靠着自己的努力,将整本书翻译一遍,后来因为去深圳工作,工作比较忙就落下了.
    13年时又陆陆续续进展了一些,并完成了一些示例代码和习题.初步翻译了一遍,但有很多地方都不太清楚,我又鼓起劲打算重读一遍,并参考中文版的一些内容,帮助自己理解.结果中途再次中断,那时Unity3d开始流行,可以使用C#语言来开发游戏(之前LS开发游戏也有接触),我哥一直做游戏,想着我们以后可以一起开发游戏的愿景,开始接触学习Unity3d,尝试一断时间后放弃,感觉对在游戏引擎下开发游戏脚本索然无味,也没有再拿起这本书继续学习.15年底公司变故,回到长沙,带回来的书籍中看到这本书,打算继续完成目标.中途又因为一次误删git,将托管的代码示例全部删除的"惨案"中断了一段时间,直到现在磕磕绊绊总算完成了当初的目标.读完整本书,你会发现C语言是如此简洁优美,又如此强大.Ritchie大师用一本薄薄如同参考手册般的书籍,将C语言娓娓道来.全书简单,实用.正如大师在序中所言,读完本书并借此学会C语言.
    自从写下第一行"hello,world\n",到现在已经有10个年头了.我时常在想,自己与编程结下不解之缘,是什么一直推动自己不断学习坚持走下去?编程就像工艺和艺术的结合,而编程语言就是我们的工具,也像是画笔和音符.而正是对美好事物的追求让我心存满足,充满期待.Ritchie大师为人低调谦逊,始终如一,并且身体力行告诉我们"Keep it simple stupid".大师已经走了6年,但是我相信他将永远指引着走入编程道路上的人们.另,Ritchie大师终身未婚,而我去年领证找到了自己的另一半:) Happy Life,Happy Coding!
 
 
 

不忘初心 --- 重读<<The C Programming Language>>的更多相关文章

  1. iOS Swift-元组tuples(The Swift Programming Language)

    iOS Swift-元组tuples(The Swift Programming Language) 什么是元组? 元组(tuples)是把多个值组合成一个复合值,元组内的值可以使任意类型,并不要求是 ...

  2. iOS Swift-控制流(The Swift Programming Language)

    iOS Swift-控制流(The Swift Programming Language) for-in 在Swift中for循环我们可以省略传统oc笨拙的条件和循环变量的括号,但是语句体的大括号使我 ...

  3. iOS Swift-简单值(The Swift Programming Language)

    iOS Swift-简单值(The Swift Programming Language) 常量的声明:let 在不指定类型的情况下声明的类型和所初始化的类型相同. //没有指定类型,但是初始化的值为 ...

  4. Java Programming Language Enhancements

    引用:Java Programming Language Enhancements Java Programming Language Enhancements Enhancements in Jav ...

  5. The Swift Programming Language 英文原版官方文档下载

    The Swift Programming Language 英文原版官方文档下载 今天Apple公司发布了新的编程语言Swift(雨燕)将逐步代替Objective-C语言,大家肯定想学习这个语言, ...

  6. The Swift Programming Language 中文翻译版(个人翻新随时跟新)

    The Swift Programming Language --lkvt 本人在2014年6月3日(北京时间)凌晨起来通过网络观看2014年WWDC 苹果公司的发布会有iOS8以及OS X 10.1 ...

  7. [iOS翻译]《The Swift Programming Language》系列:Welcome to Swift-01

    注:CocoaChina翻译小组已着手此书及相关资料的翻译,楼主也加入了,多人协作后的完整译本将很快让大家看到. 翻译群:291864979,想加入的同学请进此群哦.(本系列不再更新,但协作翻译的进度 ...

  8. Questions that are independent of programming language. These questions are typically more abstract than other categories.

    Questions that are independent of programming language.  These questions are typically more abstract ...

  9. What is the Best Programming Language to Learn in 2014?

    It’s been a year since I revealed the best languages to learn in 2013. Once again, I’ve examined the ...

随机推荐

  1. nodejs 代码设计模式1:同步函数变异步

    同步函数变异步 1 问题: 1.1 碰到需要调用你刚正在创建的对像. function createServer(data, cb) { data.num = 1; cb(); return data ...

  2. Javascript几种跨域方式总结

    在客户端编程语言中如javascript,同源策略规定跨域之间的脚本是隔离的,一个域的脚本不能访问和操作另外一个域的绝大部分属性和方法.只有当两个域具有相同的协议,相同的主机,相同的端口时,我们就认定 ...

  3. 【转】Jqgrid学习之数据

    jqGrid可支持的数据类型:xml.json.jsonp.local or clientSide.xmlstring.jsonstring .script.function (…). Json数据 ...

  4. 编程思想之——"人是活的,程序是死的"

    "人是活的,程序是死的"这句话我时常提起,可能很多人不是很理解我为什么会这样说,下面我就简单来谈谈我对这句话的理解. 1.不要因为技术而技术,技术选型的初衷是需求. 现在很多人在做 ...

  5. VUE2.0实现购物车和地址选配功能学习第五节

    第五节 单件商品金额计算和单选全选功能 1.vue精髓在于操作data模型来改变dom,渲染页面,而不是直接去改变dom 2.加减改变总金额功能: html:<div class="c ...

  6. 锋利的jQuery事件

    一:事件 1.鼠标事件 (1)$()是$(document)的简写,默认参数是document. $(function(){}是$(document).ready(function(){})的简写. ...

  7. ACM 树形数组

    树状数组(Binary Indexed Tree(BIT), Fenwick Tree)是一个查询和修改复杂度都为log(n)的数据结构.主要用于查询任意两位之间的所有元素之和,但是每次只能修改一个元 ...

  8. java爬虫查找四川大学所有学院的网站的网址中的通知和新闻——以计算机学院为例

    需求:查找四川大学所有学院的网站的网址中的通知和新闻——以计算机学院为例 流程图 3. 具体步骤 (1) 学院的主页为:http://cs.scu.edu.cn/ 获取该页面的所有内容(本文只获取新闻 ...

  9. Spring Boot启动过程(五):Springboot内嵌Tomcat对象的start

    标题和上一篇很像,所以特别强调一下,这个是Tomcat对象的. 从TomcatEmbeddedServletContainer的this.tomcat.start()开始,主要是利用Lifecycle ...

  10. Android Fragment 开发(一)

    最近在学习Fragment 的使用,想弄一个在子窗体中调用父的方法,一直报错,终于找到解决方法啦 父窗体名称:MainActivity 父中有一个public的方法show() 子窗体调用: Main ...