版权声明:本文为博主原创文章,未经博主同意不得转载。

https://blog.csdn.net/gmszone/article/details/30045055

最终能够在和自己的电脑上写下这些字了,实习的日子也就算到一段落了。时间过得非常多,也过得非常短。非常丑陋地用着没有UI的Fcitx,只是对于我来说已经足够了。五笔是一个不错的中国产物。拼音仅仅能算是一种泊来品。

(转载保留:实习记-《Rethink》序

告别了用了半年的MacBook Pro,发现原来在Mac OS上仅仅能选择某个软件,而如今却能够有不同的选择。在纠结完openSUSE、Ubuntu Kylin还是Mint之后,我选择了Mint,毕竟我还是属于追求新软件及一些特性的“追新族”(主要原因还是显卡不支持了)。将公司配的电脑留在公司里。配置了两个晚上——从Fcitx到bash、vim、Emacs、Texlive。

接着我開始计划着写上这些东西,我须要用Markdown去写这些东西,须要选择一个编辑器。没有了Mou。Retext对于UTF8的支持不如想像中的好,最后算是用上了MdCharm(印象中是一个国人写的)。自己用基于node-webkit写的lumia写的编辑器似乎性能又不好,有空真应该自己又一次写一个。也许当某一天自己正式成为一员的时候。应该抛弃Mac OS。

假设有一天发现这些不是自己想要的时候又会怎样呢?创造和生活有时就是互相矛盾,一天接着一天地过去了,没有找到最初想要的东西。可是却能够慢慢地掌握想要的能力。实习也许就是这样,然而又没有一种足够的能够燃起兴趣之火。

于是,我知道我须要去创造。

在创造中学习,在写作中学习。

技术×思考=RETHINK

假设有那么几本书值得一看的话,那么《REWORK》算是不错的一本。

实习之前我仅仅是一个热衷于技术的硬件出身的软件project师,那本书是在找工作的艰难的日子里买的。慢慢地開始以不同的眼光来看待技术这东西。人会不停地成长,从一个台阶迈向还有一个台阶。

非常早曾经仅仅会去学习不同的技术。没有理解它们之间的一些奥秘,也许是由于没有多少的项目实践。以硬件为例。当须要一个串口通信来点亮一个LED的时候,可能会拿51开发板去做,可能会用MSP430去做,类似的有时候也须要K60去实现。而在刚開始的时候会去研究代码。渐渐地发现我们还是用Arduino吧,我们仅仅须要环绕着我们的功能并高速去实现。换句话说,理解那么不同框架的类似之处没有多大的意义,不同框架的不同之处的学习才是有意义的。

  1. print "Hello,World"

研究这些类似的知识已然没有多大的意义,我们须要的也许是诸如

  1. if __name__=='__main__':

这样的限于某种语言的语法。

慢慢地会发现应依据要做的事去选择我们须要的东西。用Holmes的话说就是,

我们要有选择地将某些东西放进大脑里。

他的意思就是,我们不须要去关心一些无关紧要的东西——如地球是不是环绕着太阳转的。假设没有打算对某个领域进行研究的话,那么我们有时候能够放弃这领域的知识,虽然我们可能能够从中学到某些知识。

于是我開始以有用的角度来考虑问题:

  • 怎样加快站点的加载速度
  • 怎样提高站点的用户体验
  • 怎样创造有价值的内容
  • ...

什么是我们须要的知识,什么是我们不须要的知识便一目了然。大概这就是所谓的有用主义。以解决这个问题来学习,而在无聊的时候便是所谓的写作驱动学习。非常扯淡却又不扯淡。

某天我突然醒悟过来自己似乎又上了一个台阶,RETHINK的意义和REWORK有着异曲同工之妙。技术之路才算真正地開始,当寻ta開始有一点不错的势头的时候,我開始在想金字塔中底层的基石是最多的,而社会是金字塔结构。

技术×工匠=手工艺人

假设我们还是用学徒制的话,那么中医就不会发展成如今这副模样。工匠的技艺也不会失传。

我们学习了外国的太多的东西。在我们開始忘记了我们的/(Linux中是指根)的时候,我们是否会去追述起源。

曾经

  • 热衷于古诗词
  • 会试着做风筝
  • 记录古建筑的结构
  • ...

我们接受着越来越多的外来文化,然而我们的文化有传承么?看过一些工匠的故事,我们总在感概别人的设计巧夺天工。总是不喜欢被人叫所谓的project师,为什么在一个所谓五千年文化的国度,我们不能再以工匠而自居呢?

习惯于网上看到所谓的各种程序猿、程序猿、码农的称呼,便无力吐嘈,没有影响力是一方面。另外一方面没有一个合适的称谓。

直至寒假的一次偶然,看到一本书的书名是《巴黎的手工艺人》(或者是诸如此类名字的时候)才醒悟到这是我想要的名字。

我们是手工艺人。一个能够熟练地掌握着不同技术的工匠,然而与工匠不同的是——我们能够不停地创作。创作和码字的同样处在于他们都是在码字。所以我们没有必要去研究他们的同样之处,不同之处是。创作更easy让人有自豪感。

我们能够创造不同的机器去做不同的事——

  • 打扫卫生
  • 洗碗做饭
  • 带你去某地
  • ...

然而世界也须要程序猿去给他们编码,可是在未来相当长的一段时间内,还做不到如此地智能。

于是这个世界会剩下非常大一群手工艺人。那就是我们。

熟练×传承=大师

无他,唯手熟尔。

不知还有多少人会记得《卖油翁》中的这句话,在今天这些仍然是适用的。和“某个孩子”聊天的时候。她总会说:

那些字写得好的,都是从小练起的。

换成IT领域的话,会发现这些仍然是适用的。

当我们把一切不可能的线索都排除时。剩下的就算再不可思议也是事实。

而这也成为了一个事实的存在。当我看着一个又一个所谓的天才程序猿的诞生的时候,都会伴随着从某个个位数年纪開始编程。一開始慢慢成长的一点点积累会为之后的进步带来非常重要的影响。当我们開始一点一滴积累的时候,我们就须要一个又一个的导师去帮助我们。

由于仅仅有熟练是不够的,假设我们不知道C有指针的时候,C一点儿也不强大也不危急。虽说唯手熟尔,熟悉仅仅是一部分,更重要的是要知道方法。假设我们不知道怎样更好地将油倒入罐中的话。熟练显得没有多少实际意义。

有多少人反复干一些事情多少年。却没有多一点的长进。

单纯地仅仅是每天熟练性的复制、替换一些代码,最后也成为不了一个好的程序猿。

记得小学时候的一次计算机比赛。我仅仅是由于不知道一些LOGO语言的特殊指令及使用方法,就那样输掉了比赛。即使在如今也是记忆犹新,当时我们连所谓的用户手冊都没有办法弄到。在我们村上的那个连不上网的计算机室。而非常早曾经计算机的普及率也没有如今的高,换句话说我们老师学会上网是和我们一起接受的培训。

有意思的是又回到我们上面所说的所谓的学徒制,这也许能够为天朝带来一些新的希望。

仅仅是所谓的学徒制在当前很多其它地是限制于一些大型公司的内部,要流传出来怕不是一件easy的事。

在这个时代要成为一个独行狭已然不是一件easy的事,而要在一个成功的大型项目内部成为大师也然变得简单了。经验慢慢地积累,也许不一定有用,可是有时又可能起着关键的数据。

实习记——《Rethink》的更多相关文章

  1. 【实习记】2014-09-26恢复linux下误删的ntfs盘中的文件

        情景,ubuntu下把NTFS格式的盘中的“实习记”文件夹彻底删除了,追毁莫及,粗心觉不是一件好的事情. linux下回复ntfs盘下的文件不能用ext3grep,而使用debugfs命令实在 ...

  2. 【实习记】2014-08-20实习的mini项目总结

        实习项目总结文档 项目介绍 项目逻辑很简单,只有几个页面,只能登录,查看,支付和退款.主要作用是熟悉C++的cgi的web服务开发方式. 项目页面截图 图一:登录页面 图二:买家查看 图三:买 ...

  3. 【实习记】2014-08-19升级vim配置YouCompleteMe并debug的过程+qtcreator有语言包没法换语言

        做了个小项目,有空闲可以做点事了. 偶然查资料看见YouCompleteMe的鼎鼎大名. 演示demo <img src="http://i.imgur.com/0OP4ood ...

  4. 【实习记】2014-09-24万事达卡bin查询项目总结

            8月28号,接到这个问题:现有前缀查询速度较慢,改进此知值求区间问题. 一开始没想到用二分法,更没有想到这个项目用了一个月,这一个月里,我学习并使用了middle框架写出了server ...

  5. 【实习记】2014-09-04浏览代码查middle资料+总结我折腾过的源码浏览器

        浏览着代码,看源码可以先看make文件,make文件有制造的流程信息. 一般可以从运行的程序对应的cpp看起.然而如果有框架,那就不容易了,会关系错纵复杂. 总结一下我折腾过的源码阅读器. s ...

  6. 【实习记】2014-09-01从复杂到简单:一行命令区间查重+长整型在awk中的bug

        9月1号,导出sql文件后,想到了awk,但很复杂.想到了用sed前期处理+python排序比较的区间查重法.编写加调试用了约3小时. 9月2号,编写C代码的sql语句过程中,发现排序可以交m ...

  7. 【实习记】2014-08-29算法学习Boyer-Moore和最长公共子串(LCS)

        昨天的问题方案一:寻找hash函数,可行性极低.方案二:载入内存,维护成一个守护进程的服务.难度比较大.方案三:使用前5位来索引,由前3位增至前5位唯一性,理论上是分拆记录扩大100倍,但可以 ...

  8. 【实习记】2014-08-27堆排序理解总结+使用typedef指代函数指针

        过程记录 4个月前C语言版的七大排序算法实践让我在写C++版时轻车熟路.特别是冒泡,插入,希尔,选择这四种排序不用调试即运行成功.输出的效果与C语言做的版本完全一样,其中令我印象深刻的是,co ...

  9. 【实习记】2014-08-26都是回车惹的祸——shell脚本必须是unix行尾

        事情由起:svn的url在excel里,我复制到txt文本下,vi做些文本处理,只提取了url,保存为url.txt.再用vi处理url.txt,加上svn checkout等词,变成可以运行 ...

随机推荐

  1. 50-python基础-python3-列表-函数sorted() 对列表进行临时排序

    sorted()函数对列表进行临时排序,返回排序后的列表: 区别列表方法sort()原地修改,无返回值. 1-要保留列表元素原来的排列顺序,同时以特定的顺序呈现它们,可使用函数sorted() . 2 ...

  2. 【ARC076F】 Exhausted

    hall定理大概是匈牙利的理论基础吧 hall定理的内容:二分图\(G\)的的左部点点集为\(\rm X\),右部点点集为\(\rm Y\),设\(|\rm X|\leq |Y|\),则二分图\(G\ ...

  3. hdu3555 Bomb(数位dp)

    题目传送门 Bomb Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/Others)Total ...

  4. 数组归一 reduce (数组归一) reduceRight(从右至左)

    var addTwoNumbers = function(l1, l2) { var e = l1 .reverse() .map((v, index, array) => v * Math.p ...

  5. while 循环语句举例

  6. 第十一章 存储之ConfigMap

    1.描述信息 ConfigMap 功能在 Kubernetes1.2 版本中引入,许多应用程序会从配置文件.命令行参数或环境变量中读取配置信息.ConfigMap API 给我们提供了向容器中注入配置 ...

  7. awk 起始位置和长度和 mf 一致

    1位开始 , 925开始 截取24 awk '{OFS="";print(substr($0,925,24),substr($0,1,24),substr($0,436,1),&q ...

  8. 前端学习(二十六)移动端s(笔记)

    ===================================================弹性布局rem布局---------------------------------------- ...

  9. GCC -l选项:手动添加链接库

    链接器把多个二进制的目标文件(object file)链接成一个单独的可执行文件.在链接过程中,它必须把符号(变量名.函数名等一些列标识符)用对应的数据的内存地址(变量地址.函数地址等)替代,以完成程 ...

  10. java模式-----单例模式

    什么是单例设计模式? 单例模式,是一种常用的软件设计模式.在它的核心结构中只包含一个被称为单例的特殊类.通过单例模式可以保证系统中,应用该模式的类一个类只有一个实例.即一个类只有一个对象实例. 类结构 ...