回顾与杂谈

2018/04/16 探索

距离上一次更新博客的文章,已经过去了3个月。这篇文章回顾了我过去的工作、学习生活,并从中总结经验,为接下来的生活做好规划。希望你能在阅读过程中找到认为有价值的东西。技术干货可能不多,不过胜在足够真性情。

过去三个月我做了什么

实习生

我在某建设厅的科室实习,主要负责移动端的网站开发,是某项目的主要负责人。主要用到的技术栈是Vue.js前端框架,以及PHP后台Oracle数据库。开发过程中使用的服务器是nginx以及node。我非常喜爱webpack的热加载开发,我在本地改动的每一行代码都会在服务器端实时更新,即刻渲染前端效果,大大提高了开发效率。另一方面,因为Vue.jsOracle的兼容性不是很好,我设计了委托服务器来转发数据库操作,取得一定的效果。

开发过程中我遇到很多问题,最大的难题是Node.js的异步执行,这意味着代码的运行效果与程序员设计的执行时序有偏差,在早期我花费很多时间去尝试、探索,频频碰壁,让人非常烦恼。不过我没有轻言放弃,不断总结、不断改正,现在面对一些异步问题也能很快地解决,或者排查错误原因。

SSPanel

我接受一份技术委托,协助搭建SSPanel以及shadowsocks服务(嘘)。我在github上fork了一份完备的SSPanel代码,并根据客户需求进行定制化。SSPanel是用Python写的网站,其中的设计思路与Vue.js大同小异,都是数据与结构分离的模式。我将源代码阅读完并修改了其中一些代码,添加些小功能。SSPanel的背后是SSR节点,我在部署SSR节点的过程中学会了服务器的基本操作,并通过MySQL数据库将主机与节点进行沟通、联系。

空闲的时候我粗略看了shadowsocks以及shadowsocksR的源代码,看不懂,哈哈。ss与ssr都是很棒的程序,我基本上了解其运行的原理,但是代码的细节有很多地方我还没能看明白,但我能从代码看得出来作者的实力很雄厚。

数据爬虫与情绪值计算

我接受一份课题委托,使用网络爬虫收集超过5000万条数据,对其进行清洗、过滤,然后交给NLP分析得到其分词结果,再对其数据进行情绪值统计得到某个演算结果。因为该课题是金融股票背景,所以我稍微去了解关于金融经济等方面的知识,学会几个简单的概念,没有深入学习。网络爬虫我学习了Scrapy框架,使用多节点分布式爬数据。数据经过jieba分词清洗之后保存在本地,需要考虑的问题是如何计算其情绪值。情绪值在这里是指,计算机通过分析某一个句子或者段落,预测其为积极的、中性的、消极的概率。

在早期,我学习一些基础的机器学习模型,例如SVM支持向量机LR线性分类器以及NB朴素贝叶斯算法,对海量的语句进行分类得出机器模型。但是我在使用这些模型进行计算情绪值的时候,准确率不够高,在60-70%之间。考虑到自己的经验不足,而且在数学方面的基础不够,后来改用snowNLP工具包自动化去计算情绪值。哈哈,是的,我在这里偷懒了。现在回顾来看收获很大,了解到机器学习的基本原理以及常见的数学模型,感谢吴思晗学长的指导。

NOIP算法竞赛指导

周末的时候我去做家教老师,指导NOIP竞赛。NOIP其实是针对初高中的计算机程序设计,跟大学生参加的ACM类似,不过在比赛规则上差异比较大。这段时间我主要教的是图算法以及排序算法,例如Prim与Kruskal算法Tarjan算法Dijkstra算法Huffman树DFS与BFS、多个经典排序算法,还有C语言的基础语法。我在每次上课之前都会提前备好课,对我来说也是重新回顾计算机算法的一次好机会。

我很惊叹的是,这么年纪小小的孩子,已经开始掌握C语言与算法,非常出色、优秀。

勒索软件的分析

我的毕业论文选题是对勒索软件加密模式的分析。我主要做的工作是对Hidden Tear勒索软件的感染实验、恢复受感染的文件以及使用蜜罐技术预测、阻止Hidden Tear的行为。这个选题并不是很难,实现思路都很清晰,我只是对前人的工作进行实例化以及整理总结。我对勒索软件的领域非常感兴趣,但是也因为它非常危险所以每次实验的时候我都胆战心惊,有过两次发生了安全事故,勒索软件逃逸出沙盒环境将我的电脑全部文件都加密了,不过我有离线镜像备份,哈哈。

写论文和答辩的PPT没有花太多时间,遗憾的是我的论文查重结果是10.5%,不在学校的优秀论文范围之内(10%以下)。有些遗憾,不过也没有太失望。因为我知道我的工作相比与别的同学的毕业设计还是有点差距的。

课外生活

我在去年双12的时候买了一台索尼的微单照相机,学习一些简单的拍摄。如果晚上天气晴朗、月明星稀,我就会带上照相机去珠江新城和广州塔那边拍照,3月份去澳门的时候我也带上了照相机去拍摄。不过我的技术实在太糟糕啦,照相机的功能、参数、按钮实在太多太多,错过了很多精彩的时刻没有记录下来。

我发现啊,微单在晚上的时候表现力很强,能够在夜晚拍出很清晰、锐利、高分辨的照片,而且拍摄很考验耐心,在按下快门键之前需要调节很多的参数。这不,再过一两个月就是毕业季了,到时候我又有机会练练手,真好玩儿。

另一方面,我至今依旧保持骑车,这是我最喜爱的运动方式之一。在天气情况允许下,我会骑车来回公司,大约有20公里的路程。不过在最近一次的车检时,修车师傅说我的自行车的前后两个花鼓都生锈损坏了,更换新的花鼓要花好多钱呀,有点舍不得,哈哈。

至于文艺的方面,我开始学习弹钢琴。钢琴老师是一位来自星海音乐学院的、很帅气的小哥。我一直想学习pianoboy(高至豪)先生的《安静的午后》钢琴曲,不过老师说这首歌有一部分非常难,于是他帮我调整了部分音节,与原曲有一点点的差异,不过难度降低很多。我是第一次学习弹钢琴,所以在练习两只手一起弹奏的时候,手指就会不知不觉的打架,花很多时间练习才能弹一点点,真的是委屈老师的耐心了(内心是偷笑的)。

人际交往

周末的时候我会跟朋友出去吃饭、聊天,谈谈相互的近况,分享一些学习生活上的事情。也正是因为这样,吃的太多了导致我现在开始变胖了(变可爱了),肚子稍微的鼓起来,穿紧身的衬衫不好看了(哭)。另外呢,我还跟朋友们去看电影,我喜欢看科幻类型的动作大片,例如《环太平洋2》、《头号玩家》、《黑豹》,大呼过瘾。还有工作上的同事,我与他们都相处融洽,有过两次外出吃饭聚会,相互谈了过去学生时代的趣事,也了解到很多行业动态。

不过我在班级上表现不是很好,我极少在班群里与同班同学互动,仅是转发一些班级消息以及完成班长的职务工作。我总是觉得他们对我并不友好,而且也很少在群里说话,我也就没什么动力去与他们谈话或者是互动。

校园生活

因为我外出实习的原因,过去3个月我基本上脱离了学校。不过我有参加两三场网络安全的竞赛,在竞赛中我主要是解决一些Crypto密码算法的题目,与队友们一起思考一起探索的过程充满乐趣。我没有太看重这些比赛的结果,而更加珍惜这个过程中与伙伴们一起攻克难关的过程。现在的小师弟小师妹们都很出色,在学习计算机的路上远远超越了我,有的时候遇到问题我会虚心跟他们请教,正是这样的交流互动过程学习到很多新的知识。例如PWN,我之前完全没有接触过的领域,现在能够讲出堆栈溢出的原理,哈哈,一丁点儿的进步。

临近毕业了,也有很多奖学金申请的事情。我主动放弃了大四、荣誉毕业生奖学金申请,一方面是觉得自己不够优秀,另一方面是认为自己在过去大三的某些表现恶劣,不足以承担这些荣誉。实话说,我心里面其实也很想去争取这份奖项,但是我觉得我只能在硕士阶段从新开始,于是我满怀信心在3年之后我的照片会出现在西电的优秀毕业生的公告栏里面。

未来的展望

可圈可点。我在这三个月里面没有犯下大错,做了很多工作,一步步、踏踏实实、努力向前走。我自己认为是值得表扬、鼓励的,我很开心我自己的工作开始起色,我在面临困难的时候坚持不懈,我在面临情绪失控的时候能够安抚自己平静下来。你做得很好,很棒儿。

当然也有一些不足。例如在工作过程有时候会懒散,总是想着去开飞机(一个游戏)、在人际交往的过程中激进而敏感、在学习过程中心思轻浮不够深入等等。没关系,慢慢的去改正,毕竟我现在才21岁。我希望我自己能够慢慢的去成长,体验生活带给自己的感受,在磨砺中成长,在挫折中爬升。

我记得我在毕业论文最后的致谢中,写下了几句话结束,在这里我再次写下这几句话结束这篇文章:

学思并重,探索求知。知行合一,守正出奇。

Search

    Table of Contents