2016 年终总结
这个总结拖了有点久,原本按照惯例应该是圣诞节前后写好的,结果这次拖到了农历新年。
好在今年的除夕来得比往常要早,若是像去年春节延到二月份,这篇总结基本上就不会被写出来了。读了读自己往年的总结,不免读出一些学生时代的书生气息。尽管现在依然是学生身份,但却已天差地别。这篇总结也就不再沿用之前的标题,直接写做 『我的2016 年终总结』吧。
和往年一样,这一年也发生了大小不少事儿。但如果等我我年纪大了,届时回顾自己整段生命历程时,细数生命里有过多少关键节点,那么 2016 年绝对是必不可少的一个关键节点。
2016 读书清单
最近在着手写的文章
微信小程序文档极致总结
谈谈过去三个月在实验楼的实习经历
这篇文章原本写于实习满一个月的时候,本打算作为阶段性总结,但本人实在是比较懒,一拖再拖,到现在实习已经基本结束了,本该属于我的坑也基本填得差不多了,我也可能要正式迈向我的研究生新生活了。就干脆改成整个实习阶段的总结吧。
与以往大二暑假、在德国交换的时自己主动找的几个实习不同,之前的实习都是我主动投递简历、毛遂自荐。而这次在实验楼的实习确实也是一件巧事,原本还在纠结暑假究竟是回家修整准备读研的事宜、还是找份实习打发一下无聊时间。结果正好在我决定回家的前夕,收到了来自实验楼的工作邀请。心想回家闲着也是闲着,自己正好也是实验楼一个(不算称职)的用户,所以在简短的和 BOSS 磊哥聊了一些工作事项后,就接受了在这里实习。
以前大二那份实习的工作内容异常的简单,每天就是面向 C++ 修各种 bug,写一写无聊的测试,实现各种简单到不能再简单的需求,每天下班前交付代码然后领工资,两个月坐下来没有一点感觉,没收获多少新知识,最大的收获可能就是零花钱。而这次的实习差不多重新点燃了我对新技术的几乎快要熄灭的渴望。
先说说工作情况
做毕设的时候,我总以为我接触过的技术是在是够多了,大大小小的各式各样的技术也不过如此,万变不离其宗,所以只要认认真真读一读文档,没有什么不能解决的问题。
然而事情并没有想象的那么简单,踩了不少坑,总结下来就是太年轻。在实验楼实习的三个月里,倒是接触了很多以前并不在意、也没有需求去了解的技术,比如 Linux 运维、比如 Docker 等等,我甚至为此列了一个长长的 TODO-DONE-LIST,并希望我能够在研究生生涯里把这些内容逐一攻破。
第一个月电脑如实的记录了我的工作状态(部分时候断网没有记录):
每天下来过得还算充实,比起整日待在在学校里、面对昏暗的寝室环境浑浑噩噩效率提高了不少。这次的实习干的事情不多,总结下来其实就是四件简单的事情:
- 十七门 C++/JS/Swift 学习课程
- 一个跨平台的桌面客户端
- 一套基于 ELK 的 Nginx 日志系统
- 一个很挫的 kNN+协同过滤 推荐系统
Built a Desktop Client for My Blog给博客做了一个桌面客户端…
Guacamole 源码分析与 VNC 中 RFB 协议的坑
今天折腾了一整天 Guacamole,遇到了臭名昭著的坑,且听我一一道来。
简单来说 Guacamole 提供了浏览器端访问的桌面系统的解决方案。Guacamole 提供的解决方案主要由两部分组成:
- 浏览器端基于 HTML5,Canvas 技术: Guacamole Client 的 Guacamole-Common-JS 组件
- Guacamole Client 的 Guacamole Web 组件,
- Guacamole Server 仍然分为两个部分:
- Guacamole Web 服务容器
guacd守护进程与RDP/VNC/TELNET等其他服务进行通信。
下面这张图很好的解释了 guacamole 的架构,出自官网手册:

《高速上手 C++11/14》正式发布
Docker 极速入门教程02 - 镜像与容器管理
这次我们来深入了解一下镜像和容器的管理,不过作为入门教程,我们只打算谈及一些常用的命令,而不去介绍 Docker 的深入原理,具体内容我们放到另一个系列中去探讨。
Docker 极速入门教程系列 (往期)
镜像管理
镜像是容器的一个只读模板,用于创建容器。当容器运行时,需要指定其镜像,当镜像不存在时,就会从 Docker Registry 自动下载。每次创建新的镜像,都会在原镜像上方增加一层,具体的原理在本教程里面不深入讨论,可以在本文后面的深入阅读中查看相关文章。
每一个镜像对应了一个唯一的 ID,同样的,镜像中的每一层也都具有一个唯一的 ID,因此,当从 Docker Hub 中 pull 镜像时也是分层进行下载的。
在上一篇文章中,我们已经提到了一些基本的镜像管理命令:
- docker search: 搜索Docker Hub镜像
- docker pull: 拉取镜像
- docker images: 查看本地镜像
- docker inspect: 查看镜像详情
- docker rmi: 删除镜像
再来看一些其他的常用命令。

