2009年,我进入西安某大学计算机系,开始了我从未接触过的计算的学习。
2009年的第一个学期,开始学习C语言,从来没有接触过编程的我非常吃力,但是这是这个专业的基础,我必须搞定。由于我当时没有带电脑,学校机房也很不好用,于是我在学校东门网吧办了一张会员卡,一个学期的很多时间都是泡在网吧用 Dev C++ 写代码度过,由此我的写代码能力走在了班里前列。当时对博客什么的还没什么印象,调代码的经验写了一个word保留了下来。
2010年开始尝试自学C++,整天也就是在图书馆看书而已或者实现一下简单的例子,并没有涉及到太多的编程更没什么经验。
2011年开始尝试一些MFC程序的编写,当时宿舍的同学喜欢一起打游戏,避免不了激动的出声,我于是到图书馆写程序,但是图书馆又没有网,于是我只能先把问题都用txt记下来,然后回到宿舍统一上网查,然后也就把解决方法一块记到了txt文件中封存在我的硬盘上了。从此,我习惯了这种方式,一直延续到2014年11月。
2014年想多接触一下其他语言,学了一段时间C#,后来又学了几天Apple刚推出的Swift语言。由于swift是刚推出的语言,中文资源很少,遇到问题都得去英文网站搜,实在搞不定就去stackoverflow提问了,几个小时就能收到正确的解决。
这个时候我突然意识到,我费了这么大劲,去学习一个刚推出的编程语言,为什么不给国内同行制造一点福利呢?都藏在自己的代码和txt里面有什么意义呢?自己又能看几次呢?
曾经觉得写代码在某种意义上是一种效率非常低的工作,因为需要一直学习,并且学习的还是人制定的规则,虽然主流编程语言都非常重视代码的复用,也有很多开源项目,但是目前代码的复用还远没有达到理想的模块化,也没有统一的标准。不像机械,需要个什么样的螺丝,需要个什么样的零件都可以购买现成的。软件行业远没达到这种程度,由于商业竞争的原因,除了C/C++之外,C#,java,swift等优秀的编程语言在跨平台开发上做的非常不好(不要说java能跨平台,实际使用java的跨平台软件并不多),为什么微软这个拥有足够技术实力的公司不把C#提供到别的平台?这个问题比手机接口的统一还要困难。IT行业的一些竞争伤害的永远都是开发者和用户,没有足够强硬的规范,其实最终还是阻碍了整个行业的发展。可以算可喜的是,几天前微软宣布.NET要开源了,要支持mac、android、ios等系统了。我在这里不去评论开源后的.NET能走到哪里,至少微软早点做这件事情对微软、对整个行业会更有利。我们改变不了这个行业的大方向,相信它会越走越好,当下,我们能做的就是保持自己的更新和推动知识的传播。
更可惜的是,几年前的技术可能现在用不到了,IT行业更新迭代太快了,开发和学习完全不同步。在学校的图书馆里看到的最多的编程相关的书就是MFC,学校的机房装的还是VC6.0(至少在我本科毕业的时候是这个样子的)。这样的大学教育和这个高速迭代的行业格格不入,我们在大学学到了什么?
也许更多的同学是工作后在公司实习期间学习的编程知识,是公司的员工一代代传承下来的经验,没有人会把这些经验写成书(等有人写出来也晚了),一行行优秀的代码都沉淀在SVN服务器中。也许某一天你发现了一个底层的bug,哇,发现新大陆一样,前人的代码是如此的优秀!!也许你找到一个开源库,代码写的是那么的工整、完美。但是就那么几页的wiki仅仅简单介绍了一下基本接口,尽管拿去用吧,足够了。可里面的技术就死在代码里吗?这些零散的东西无法写成书,有的只能是大牛的一篇篇技术博客。
对于很多东西,我刚刚入门,我写的代码也许不是最优秀的,但是至少它能帮助比我入门更晚的同行,哪怕只是一个人。看着blog.csdn.net/cckit每天增长的访问量,我很满意。数字并不重要,不像QQ空间、微博那样疯狂的访问量,毕竟那是娱乐性的。技术博客的每一个次访问不知道帮助访问者节省了多少时间,能帮助一点算一点,我的努力又为这个行业做出了一点点贡献,这就够了。
2014年11月,我把收藏了多年的按文件夹整理的整整齐齐的txt发到了我的csdn博客上,花了不少时间。以后学到的知识及时写到博客吧,很有意义。但是后来觉得CSDN太不好用,可以自定义的东西非常少,并且每天还有发表数量限制,不能修改发表时间,各种不方便。
2015年10月26日,我买了自己的域名caock.net。
2015年11月,由于种种原因,我租了一个VPS,然后在上面搭了WordPress。经过一周的努力,很快上手了CentOS以及WordPress,从而将博客迁移到了自己的主页。