2018 年终总结

转眼间8102年已经离我而去了,在这一年发生了太多事情。不论是关乎国家的大新闻,还是和我相关的一些事情都发生了好多好多,真切的让人感觉到又老了一岁。

先说工作相关的吧:今年先后加入过两家公司,一家是AI相关的公司、一家是区块链相关的公司,然后都离开了。离开的原因大致相同,都是客户端裁员,整个移动端都被裁掉了(客户端还是比较悲伤的)。对于小公司来说,移动客户端的代价还是太大,而且都牵扯不到核心。对于AI和区块链公司来说,移动端总是锦上添花,而且都是没有那么多用户的方向,所以对于用户接口这块,发展都不是太好。

当然,工作的过程还是挺好的,了解到很多之前没有了解过的东西,学到了很多。我目前对自己的定义还是大前端工程师,或许之后会向后端过渡,毕竟还是全栈适合我。新的一年需要增加iOS、前端以及大前端跨平台的能力。个人还是看好Flutter,毕竟Google一直是编程界的潮流引导者、开拓者。

在物质方面,到是实现了之前的好几个愿望,苹果全家桶、Mac上的应用、服务器等等。下面是一些列表:

  • MacBook Pro 2018 32GB
  • iPad Pro 2018
  • iWatch
  • HUAWEI Mate 20 Pro
  • 摩托车 (收的同事的二手的)
  • 网络设备机柜 (放一些路由器、打印机、硬盘盒等等)
  • Mac/iOS 应用等等

当然,一年之内买这么多东西,对我这个刚入行的菜鸟来说还是压力山大,负债疯狂增加。资产负债表中的负债对比去年直接翻倍。明年应该不会再买什么东西了,更多的需要在软实力方面进行增强。明年就是还债的一年了。

虽然买了好多设备,我之前的愿望也实现了很多,但都是一些物质上的东西。我更期盼的学习方面的进步则是非常缓慢。自考没过几门、自己的独立项目也没有做,英语、数学的学习也比较停滞,技术方面决定性的能力没有增加。只能说过去的一年在软实力的增强上没有达到预期。

2019 年对我来说注定是还债的一年,不论是经济上欠的债,还是学习上欠的债。之前的确有点得意忘形,或许对成长还是必要的,但是仍然带给我一些负面的阻碍。人类很容易在持续不断的增长中迷失自我,失去判断能力。我觉得不只是稀缺会形成管窥,过快的增长也会造成管窥,影响判断力。不论是对集体还是个人,稳定的判断力是正确前进的必须的条件。

我一直在和我的懒惰、自卑等等负面情绪做斗争,也在不断地犯错,不断地在自我与世界的抉择中做选择:抛弃与掠夺,我在通过不断地伤害着身边的人前进。我与大佬的区别就是,无法带给别人幸福,这是决定性的差距。但是我一直不知道如何弥补这些。得到和失去,会一直陪伴人类,但如何去认知,每个人都是不同的。每个人对同样的事情,认知中的得失都不相同,这就是人类的多样性。负面认知模型一直萦绕在我的身旁,我已经无法明确判断开心和正常心情了,整体认知偏向负面。修身、修心是我明年需要重点去做的事情,认知自我、了解本我、触碰超我。

8102 年,是时代的奇点、历史的进程,也是属于我的,值得铭记的人生。在这一年我24岁,本命年。再见 2018 ……

1/3 的轮回

时间是以缓慢加速的形式陪伴我们的,人们总会感觉时间越来越快。

按照身份证上的11月14日来说,我已经24岁了。按照72岁的平均人生来说,我也已经度过了三分之一。我需要记录一下我的人生,不然以后也许都无法记忆这段时间发生了什么。因为我已经忘记了太多太多东西了。

整体来说,我可以把目前的人生分为三个阶段:上学时期、打工时期、搬砖时期。

上学时期

我在学校的时期比大多数人都短,因为我是高中肄业。

幼儿园是在村里的老师自己家开的,我初中之后又遇到了她,她那时候已经是初中老师了。幼儿园的记忆很模糊了,学习的过程已经忘记了,只记得玩滑梯什么的,还有拍毕业照什么的,虽然现在好像已经找不到了。

小学也是村里的小学,居然比幼儿园还离得我家更近。小学的记忆比较模糊,现在还记得上数学课用计算器、打扫操场的时候扫叶子等等。小学对我印象最深的就是三年级的时候第一次上电脑课,我感受计算机的魅力,这对我以后的道路影响深刻。在那时候,我应该已经确定了,未来肯定是计算机相关的工作,只是后面非常波折。小学对我最不好的影响就是对英语的态度,西北农村都不注重英语,我自己和整个班级,乃至整个学校都不注重。这对我影响非常大,态度会影响很多东西,现在虽然想要学习英语,但还是力不从心,一直处在一个尴尬的程度。

初中是镇上的学校,不过好歹也离得比较近。目前影响比较深的就是早上5:30去烧炉子,因为学校每天晚上都不管的,所以每天早上会有一个人负责这块。学校是没有空调的,都是用的炉子,小学时一般会需要家长帮忙做,上了初中就是自己去完成了。初中的玩法就多了起来,课间一般会在操场玩,放学之后则是网吧。时代造就不同的青春,现在的孩子去网吧的应该比较少了,多半是手机。

高中则非常远了,骑自行车需要半小时左右。镇上最好的高中没有考上,去了稍微差一点的。毕竟那时候没有怎么努力,而且不是很懂学习的价值,毕竟学习或许只是为了考试。比较印象深刻的就是晚上下了晚自习之后,几个人一起骑自行车回家。高中晚自习到10点才能结束,但路上车还是很多,所以我们就约一起回去。

从初中开始就有的迷茫,等到了高中终于爆发了。多种因素导致的迷茫,让我选择了离开学校。每个选择终究有好有坏,对我来说到并不是多么难受。不过学历的问题和英语一样,直到现在仍然困扰着我。

打工时期

打工时期的记忆还好,不过一般来说没有什么值得说的。

刚离开学校之后,什么都不会,就先去什么酒店当保安。在发了工资之后,买了我的第一个手机,是一个翻盖手机,现在也不知道去哪里了。

之后就去了广州,虽然呆了大半年,但是我仍然记不起广州是什么样子的。在那边是在工厂打工,休息了就去附近的网吧玩,并不会去城里什么的。在那个时候我是玩的DNF并不知道LOL什么的。在那里我买到了第一个Android手机,第一次知道了刷机,这或许也是缘分吧。(在多年后,我成为了一个Android程序员。)

在广州干了一段时间后就回家了,唯一在广州带来的东西就是一台电脑主机。然后就在家里呆了一段时间,玩一些GalGame什么的。之后则在小镇的网吧当了一段时间的网管,那会还是非常喜欢玩游戏的,各种玩游戏。回家之后第一次认识到了LOL,然后也开始玩,不过直到现在依然玩的很烂。在网吧做网管的时候就各种玩,又一次在U盘里装了BT5(现在则是Kali),然后发动了ARP攻击,结果全网吧都掉线了,233。

干了一段时间之后,正好市里面有个电子厂招工,只需要初中学历。所以我就过去了,之后成为了一名机器操作员。那个工厂主要是做芯片的封装,一般光刻或者蚀刻之后就是晶圆片,上面有正方形或者长方形的芯片。需要先进行切割,之后粘在铜做的框架之上,然后用金丝将芯片上的触点和框架的触角连接起来,然后用黑色的塑料什么将芯片覆盖,就形成了一般主板上的黑色塑料包装的芯片。在那我了解了黑色芯片里面居然只有小小的一点点,什么DIP封装什么的。在工厂工作期间对我影响最大的则是阿里云,那时候一直喜欢电脑和了解一些Linux的东西,所以花了半个月工资,开了我的第一台云服务器,就是阿里云。毕竟那时候好像不会翻墙,阿里云的广告也打的比较好,而且国内只有阿里云在做云服务器,所以我就买了阿里云。一直到现在还在用,算是忠实用户了吧。使用服务器之后学会了一些Linux的操作和搭建博客什么的,算是入门了一些计算机方面的知识。

之后就是离开工厂了,虽然工厂上班也还好,工资也还不错。不过,在那里面我压力比较大,而且感觉没有前途,所以我就离开了。之后我想到去西安打工,就骑着我买的美利达从甘肃天水到了陕西西安。现在想想那个旅程即疯狂又难忘,虽然计划是在路上有机会就住店休息一晚的,结果在路上好几次想停都没有停下来。结果就连续骑了20多个小时,一口气骑到了西安。从天水到宝鸡的路程全是山路,非常危险,幸好在傍晚到达宝鸡了。之后从宝鸡到西安一路平地,不过当时我没有带灯。晚上有些国道真的是伸手不见五指,我根本看不到我的手和我的前轮,以及我前方的路。我只能看着行道树在天空谈谈的影子,然后往前骑。恐惧是有的,悲伤也是有的,偶尔想到摔倒之后或许就离开这个世界了。不过幸好我还是怕死的,一路小心翼翼,没出什么问题。在西安找工作的时候就有点悲伤了,虽然是西北地区最大的城市,但是我所能找到的工作比我在天水的还少。而且因为去网吧上网结果自行车被偷走了,然后我就灰溜溜的回家了。

回家之后,我就随便找了个安装工的工作。类似电工,做一些室内灯的安装。我发现初中学的电学排上用场了,感觉不错。一边工作一边迷茫,不是很喜欢这种工作。然后一边学习网易云课堂上的视频,网易云当时出的计算机体系课程对我帮助非常大,现在也有时候会需要看看。然后非常渴望入行,成为程序员,改变世界。

然后我就发现可以通过培训入行,毕竟自学是比较麻烦,而且不太好和家里人说,不出去工作的话不太好。所以我就去培训,然后说出来之后包就业,这样家里人就同意我去了。当时需要学费,我就找亲戚借,当时想的是借不到的话就算借高利贷也得去。幸运的是届到了~

搬砖时期

我是在西安培训的安卓,因为离家比较近,而且由于是第一次开班,所以比较便宜。在培训班最大的收获还是让我再一次熟悉了学习,比较之前一直在打工,从来没有专门去学习过。同学们都是非常努力地在学习,相比上学来说,混的比较少。毕业之后就去了北京,毕竟当时的愿望是改变世界。

第一次找工作则是比较麻烦的,毕竟什么都不懂,当时我连社保是什么也不知道。不过幸运的是,我找到了工作。然后就是疯狂的工作,毕竟没有进行过实战,虽然有信心完成大部分功能,但毕竟没有工作经验。在那我遇到了第一个编程界的导师,现在也偶尔会有联系。不过毕竟是创业公司,而且又做的音乐相关的,发展不太乐观。而且直到现在,音乐软件行业也很难壮大。工作一段时间之后,就被百度音乐收购了。因为我那段时间的成长,幸运地通过了一些考验,成为了太合音乐的一员。

太合音乐则是我成长最大的一个公司,当时的团队则是我目前遇到的建制最完整,综合战斗力最强的一个团队。在那边,我学到了真正的互联网公司的流程和制度,以及一些大型互联网公司才有的知识。我则是负责了《百度音乐人》Android客户端的开发,让我的技术更进了一步。不过毕竟音乐大环境不好,大家对音乐的付费也不是很多,之后就暂时搁置了,我们也都各自出来找工作了。出来之后有回去百度的,也有去新一线TMD的,我则是因为学历问题比较尴尬,则把目标锁定在了新领域的初创公司。

周同科技是我从太合出来之后去的公司,它主要是做AI视频相关。当时进入之后,新的团队刚刚成立,主要是做C端的短视频应用,通过这个我也学到了视频相关的一些东西。在这个公司主要感觉是年轻、活力,公司大多90后,也有几个80后。公司在AI视频处理发展不错,但主要业务还是B端,C端因为抖音、快手已经占据大部分市场。之后公司发展全部转向B端,C端业务裁撤,我也就离开了。这也是我所待的最短的时间最短的一个公司,大概三个多月,刚刚转正。

博晨技术则是我现在待的公司,是一家区块链公司。区块链一直很火,也一直很扭曲。虽然比不上AI能彻底变革人类社会,但对大家的影响也是比较大。主要还是共识,针对人类价值的共识。公司也一直被币圈的大新闻所波及,一直非常动荡。不过,对我来说到无所谓。穷人是没有资格踏入币圈的(笑)。

目前我刚刚从纯Android转为移动端开发,感觉还是压力比较大。不过我个人的目标是先成为大前端工程师,之后成为全栈工程师,这是预想的道路。慢慢前行~

展望未来

之前曾经决定好的事情,有些已经实现了,有些则还没有。不过,就目前的结果来说,好像还不太坏。踏入编程界三年,算是有点入门了,同样也有点迷茫。世界总是在变化,想要站在浪潮之巅,需要付出极大的代价和努力,也要放弃一些东西,对我来说,哪个位置才是我觉得不错的平衡点呢?

前方的道路,至少有一段是明确的,先成为大前端工程师,之后再考虑其他的。虽然我作为程序员还算凑合,能完成必要的工作。但这还不够,我所缺少的算法和基础的东西,一直萦绕在我的身旁,是我必须要学会的东西。同样,英语和数学这些通用知识,也是我必须掌握的。

我的学习,一直在继续,语(编程,和计算机沟通)、 数(数学,算法相关,逻辑相关)、 外(英语,编程之外的一些东西),仍然是我需要继续学习的东西。·继续前进,在步向死亡的单行道上……

 

青年节

今天是五四青年节。1919年的今天,北京的青年走在大街上进行反帝反封建的爱国运动,即“五四运动”。

当年的青年在痛苦中依然明确自己的方向,如今的青年却大多已在娱乐中迷失自己。集体精神早已消散,个体精神早已扭曲。

我今年也已24,今天应该是我作为青年的最后一天了。回首过往,虽然感觉仍还年轻,如同小孩一般。然而,按年龄来算,1/3的人生已然消逝。虽不论成败,但对未来却仍感无力。

前两天,去参加北京的漫展:看着00后年轻、活泼的样子,瞬间感觉自己已然是中年大叔。

最近两月,在我无脑冲撞的人生中,偷得稍许空闲。虽然代价巨大,但同样收获巨大。人在每个阶段都要重新认识自己和周围的世界,所谓成长。在不断提升自我价值的过程中,同样也会有很多问题变得越来越重要,也越来越无法解答。同样也会获得更多的事务,但同样也需要丢弃更多的事务。一路走来,丢掉的记忆已经数不胜数,丢掉的物品也同样。蓦然回首,却只能看到自己丢掉的东西,却无法看到自己获得的东西,而且身边也不存在任何事物。

走过的路渐渐消失,唯有前进方向上的一点亮光仍在,那是黑暗中的篝火的光芒。环顾四周,一片漆黑。无法移开目光,不断前行,向着那指引方向的光芒。

无论少年、青年、中年、老年,无法改变的是“活着”,无法停止自己的脚步,不然就无法区分“死亡”。

中年以至,却仍无法得道。朝闻道,已无能,夕死可矣?闻道有先后,术业有专攻。常人多如此,中闻道,又何妨?

我的大学

辍学经历

在很久很久之前,我在上了高中一年之后。由于成绩较差,以及当时心态爆炸。之后又由于很多原因,就离开了高中。后续过了段时间,虽然被家里人安排去初三继续复读,但始终郁郁不得志。

最后经过深思熟虑之后,决定辍学去打工。

之后陆续颠沛流离,基本上大多数稍微简单的工作我都做过,比如:保安、网管、普通工厂、电子厂以及装修工人,有段时间还靠游戏打金赚钱,用来保证自己不被饿死。如同“人间失格”一般,我变成了一个只会“活着”的机器。当然,虽然看似这段经历很惨,但是我并没有针对辍学这件事特别后悔过。唯一最后悔的事情,就是没有早点学习编程。

从小学三年级第一次见到电脑被震撼到以来,我一直被吸引着,那是无与伦比的吸引力,甚至超越了中二和现实的引力。不论是最早的打游戏,后来玩服务器,然后现在一直以来的编程,都是如此。

后来,当我厌倦了随波逐流之后,我终于开始了思考。我要做什么?我要成为什么?我所期望的未来是什么样子的?答案不言而喻。

之后,我报了培训班,学习Android,之后开始北漂,一直到现在。

自学考试

虽然,工作了两年多之后,我的技术还可以,完成工作完全没问题。但是,在找工作的时候,却还是很难进去中、大型公司。虽然可以选择小公司,而且普通情况小公司工资反而会更高一点。但是,对于我自身来说,技术和职业发展更重要一点。

之后查询了一些信息,最后决定了走自考这条路。虽然成人教育、远程教育等都可以获得相等的国家承认的学历,但是我除了学历之外,还想通过自考学习和巩固一下自己的科班的基础知识,能学到一些东西是很棒的。

报考大学

自己报考大学和专业的话,肯定是选择计算机相关的专业。虽然很想报考“计算机科学与技术”或者“软件工程”这种专业,但很遗憾的是自考没有相关的专业。最后我就报考了:

  • 计算机及应用(专科)
  • 计算机网络(本科)

未来计划

计划3-5年完成学业,拿到专科和本科毕业证。如果可以的话,后续有机会的话,会考虑上一个全日制的研究生。

出师不利

理想很美好,现实较残酷。虽然我编程能力还可以,但是毕竟已经离开学校好久,对于这种长期类型的学习不太熟悉,而且自己正好有很多事情需要去抉择,导致了挂科。首次报名3月,首次考试7月。首次考试报考科目7门,通过1门,挂科6门。挂科的科目中,有些是去了没考过的,大多是没有去参加的。去参加并没有认真学习过的考试,就算应为临时抱佛脚通过了,对我来说并没有很大的价值。

大学生活

最后,只属于我一个人的大学生活开始了~

2018年的第一场雪,在此许下誓言

今天,北京下了第一场雪,也是很多天没见到雨雪之后的第一次。我也在家呆了有一段时间了,从上个工作离开之后,到现在差不多快半个月了。

算起来,我在程序员的岗位也工作了两年多了。目前也算是在程序员的职位上算是站稳了一点,至少不担心找不到工作了。不过在目前更新飞快的编程的世界里待着,想一直呆着的话,也是无与伦比的压力环绕在身旁,至少比我以前的所有的工作都让人感觉很有压力。

不知为何,我好像无法很顺利的慢慢前进。期待的线性成长曲线总是被我自己所打破,总是会在一段时间后陷入低谷。陷入低谷之后便愈加的令人可怜,好像渐渐丧失作为正常人类所具有的能力,渐渐的很多东西都不会也不能去做了。

算起来,我也做过很多工作了:从最早的小城镇,到现在的北京;从网管、保安,之后的工厂、电子厂工人,到现在的互联网公司的码农;从下班之后想干嘛干嘛,到现在的必须学习更多;从工资不到千元,到现在的破万。我不断的得到更多,也在不断的失去更多。很多东西都在不断的变化,唯一不变的是在这变化前后的过程,抛弃和得到的过程,堕落和失格的过程。我也不知道该去享受呢,还是该去痛苦,唯一知道的是,如果无法离开这个过程,我就会一直待在黑暗之中。但是,离开之后又要何去何从,要抛弃什么,又要努力去争取什么?

在前方的道路上不断探索认知的巨大的高峰,不断地在我的眼前出现。压迫感和无力感越来越强,自我的身体和精神上的力量在不断加大的世界中变得越来越小。光是想要睁眼看清前方的目标,就需要付出巨大的代价。与此同时,由于我获得的东西越来越多,身体的负重越来越大,很多东西无法舍弃,我现在举步维艰。我清晰的了解到:我在燃烧,在渐渐的老去,在不断的向死亡逼近~

但是,我却无法后退和停止前进,因为世界在不断的消失,我只能走向我所能看到的安全的地方。因为在这前进的过程中,有属于我的幸福~

在此,抉择出未来,并为之奋斗。

  • 自考考试
  • English
  • Android Development
  • Full Stack
  • Rewriter

代码整洁之道 – 程序员的职业素养(片段摘抄)

代码整洁之道 – 程序员的职业素养

最好的软件开发人员都知道一个秘密: 美的东西比丑的东西创造起来更廉价, 也更快捷. 构建、维护一个美的系统所花费的时间、金钱都要少于丑的系统.
美的系统是灵活、易于理解的, 构建、维护它们就是一种快乐.

优秀的程序员都因为爱好, 孜孜不倦的写了好多根本没可能去实际执行, 为人类创造价值的程序.

专业主义

“专业主义” 有很深的含义, 它不但象征着荣誉与骄傲, 而且明确意味着责任与义务. 这两者密切相关, 因为从你无法负责的事情上不可能获得荣誉与骄傲.

专业主义的精髓就在于将公司利益视同个人利益. 专业主义就意味着担当责任.

开发的软件有 bug 会损害软件的功能. 因此, 要做得专业, 就不能就下 bug.
当然, 软件开发太复杂了, 怎么可能会没 bug 呢? 的确, 但最重要的是, 要对自己的不完美负责. 代码中难免会出现 bug, 但这并不意味着你不用对它们负责; 没人能写出完美的软件, 但这并不表示你不用对不完美负责.

所谓专业人士, 就是能对自己犯下的错误负责的人, 哪怕那些错误实际上在所难免. 职业经验多了之后, 失误率应该快速减少, 甚至渐进于零. 失误率永远不可能等于零, 但你有责任让它无限接近零.

成熟的专业开发人员知道, 聪明人不会为了发布新功能而破坏结构. 结构良好的代码灵活. 以牺牲结构为代价, 得不偿失, 将来必追悔莫及.

如果你希望自己的软件灵活可变, 那就应该时常修改它

你应该每周工作60小时. 前40小时是给雇主的, 后20小时是给自己的. 在这剩余的20小时里, 你应该看书、练习、学习, 或者做其他能提升职业能力的事情.

业精于勤. 真正的专业人士往往勤学苦干, 以求得自身技能的纯熟精炼. 只完成日常工作是不足以称为练习的, 那只能算是种执行性质的操作, 而不是练习. 练习, 指的是在日常工作之余专门练习技能, 以期自我提升.

学习的第二个最佳方法是与他人合作. 专业软件开发人员往往会更加努力地尝试与他人一起编程、一起练习、一起设计、一起计划, 这样他们可以从彼此身上学到很多东西, 而且能在更短的时间内更高质量地完成更多工作.

让新人融入团队的最好办法是和他们坐到一起, 向他们传授工作要诀. 专业人士会视辅导新人为己任, 他们不会放任未经辅导的新手肆意妄为.

每位专业软件人员都有义务了解自己开发的解决方案对应的领域. 开始一个新领域的项目时, 应当读一两本该邻域相关的书, 要就该领域的基础架构与基本知识做客户和用户访谈, 还应当花时间和业内专家交流, 了解他们的原则与价值观念.

雇主的问题就是你的问题. 你必须弄明白这些问题, 并寻求最佳的解决方案. 每次开发系统, 都应站在雇主的角度来思考, 确保开发的功能能真正能满足雇主的需要.

专业人士知道自己自负, 不会故作谦逊. 他们熟知自己的工作, 并引以为荣; 他们对自己的能力充满自信, 并因此用于承担由吧务的风险. 专业人士不是胆小鬼.

需要尽可能做到的事情

  • 让 QA 找不出任何问题
  • 要确信代码正常运行
  • 自动化 QA
  • 不会为了发布新功能破坏结构
  • 每次读代码, 都别忘了进行点滴的改善

说”不”

专业人士敢于说明真相而不屈从于权势。专业人士有勇气对他们的经理说“不”。

你怎么能对自己的老板说”不“呢?毕竟,他们可是你的老板啊!难道不该照你老板说的去做吗?

不应该照做。只要你是一名专业人士,那就不应该照做。

奴隶没有权利说”不“。劳工或许也对说”不“有所顾忌。但是专业人士应该懂得说”不“。事实上,优秀的经理人对于敢于说”不“的人,总是求贤若渴。因为只有敢于说”不“,才能真正做成一些事情。

你的经理要求你在明天之前完成登录页面,这就是他在追求和捍卫的一个目标,那就是尽他的工作职责。如果你明知第二天之前不可能完成登录页面,嘴上却说”好的,我会试试的“,那么便是你失职了。这时候,尽职的唯一选择是说”不,这不可能“。

最要说”不“的是那些高风险的关键时刻。越是关键时刻,”不“字就越具价值。

这一点应该不证自明。当公司存亡成败皆系于此时,你必须尽己所能,把最好的信息传递给你的经理。这往往意味着要说”不“。

我们都听说过具备”团队精神“是多么重要。具备团队精神,意味着恪尽职守,意味着当其他队员遭遇困境时你要出手相助。有团队精神的人会频繁与大家交流,会关心队友,会竭力做到尽职尽责。

专业人士常常会成为英雄人物,但这样的荣誉并非是他们所刻意追求的。他们之所以成为英雄人物,是因为他们出色地完成了任务,不但按时,而且符合预算。

说”是“

做出承诺,包含三个步骤。

  • 口头上说自己将会去做
  • 心里认真对待做出的承诺
  • 真正付诸行动

但是,我们是不是常常碰到这种情况,其他人(当然不会是我们自己!)在作出承诺时,其实并没有包含这三个步骤?

很少有人会认真对待自己说的话,并且说到做到。有些人在说话时是认真的,但他从来不会说到做到。而更多的人在做出承诺后,几乎从不会认真去履行诺言。

你只能承诺自己能完全掌握的事。比如,如果你的目标是完成一个还依赖与另一团队的模块,那么你无法承诺自己能够完成这个模块,还能实现该模块与其他团队所负责模块的无缝集成。但你能承诺自己会采取一些具体的行动来达到最终目标。

即使目标无法完成,你仍能全力前进,离目标更近些。而弄清楚目标能否达成这件事,便是你可以采取的努力行动之一。

这样的事情时有发生。有些事情先前你可能没预料到,这很现实。但是如果你仍然希望自己能够不负众望,那就赶紧去调整别人对你的预期,越快越好!

如果你无法兑现承诺,那么最重要的就是尽早向你的承诺对象发出预警,越快越好,越早越好。

你越早向各利益相关方发出预警信号,整个团队就越有可能抓住机会,中止并重新评估当前的活动,并决定是否采取些措施或做出些改变(比如调整优先级等)。这么一来,你仍有可能达成之前的承诺,或者,用另一个承诺来代替先前的承诺。

在此,有一点相当重要:如果你不尽早告诉他人可能的问题,就错失了让他们帮助你达成目标、兑现承诺的机会。

今天的程序员肯定得去面对诸如估算、确定最后期限以及面对面交流等沟通活动。做出承诺或许听来令人有些害怕,但他能帮助程序员解决在沟通中可能发生的不少问题。如果你能够一直信守承诺,大家会以为你“是一名严谨的开发人员”。在我们这行中,这也是最有价值的评价。

如果进度比预期的要慢一些,你可能会冒险放弃原则。如果不写测试,你或许可以更快完成任务。如果不做重构,不运行整套回归测试,或许也可以更快完成任务。

此时,如果是专业开发人员,就不会放弃底线。首先,这种假设本身就是错误的。即使不写测试,不做重构,省掉完整的回归测试,你也无法更快完成 任务。多年经验告诉我们,打破这些纪律和原则,必然会拖慢进度。

其次,身为专业开发人员,你有责任根据标准规范自身工作。代码必须经过测试,代码必须要有对应的测试代码。要确保代码清晰整洁,而且必须确保没有影响到系统的其他部分。

作为专业开发人员,你已经承诺会遵守和捍卫这些标准。你做出的其他所有承诺,都应该和这份承诺保持一致。

专业人士不需要对所有请求都回答“是”。不过,他们应该努力寻找创新的方法,尽可能做到有求必应。当专业人士给出肯定回答时,他们会使用正式的承诺,以确保各方面明白无误的理解承诺的内容。

编码

能够感知到错误非常重要。说明你已经能够非常迅速的获得反馈,能够更为快速地从错误中学习。要熟练掌握每项技艺,关键是要具备“信心”和“出错感知“能力。

编码是一项颇具挑战也十分累人的智力活动。相比其他类型的活动,编码更加要求聚精会神。因为在编码时你必须平衡互相牵制的多种因素:

  • 首先,代码必须能够正常工作
  • 代码必须能够帮你解决客户提出的问题
  • 代码必须要能和现有系统结合的天衣无缝
  • 其他程序员必须能读懂你的代码

而且,编码时无可避免地会受到各种干扰。当你无法全神贯注地编码时,所写代码就有可能出错。

如果感到疲劳或者心烦意乱,千万不要编码。强而为之,最终只能回头返工。相反,要找到一种方法来消除干扰,让心绪平静下来。

软件开发是一场马拉松,而不是短跑冲刺。你无法全程一直以最快的速度赢得比赛,只有通过保持体力和维持稳定节奏来取胜。无论是赛前或者赛中,马拉松选手都会调整好自己的状态。专业程序员也会同样仔细地保存好自己的精力和创造力。

流态区

关于高效率状态,大家已经写了很多,这种状态通常称为”流态“。在这种状态下,程序员会感到效率极高;在这种状态下,会感到“绝无错误”。因此他们 一直苦苦追求进入这种状态,并经常以能在那种状态下维持多久来衡量自我价值。

一些曾经进入这种状态但最终摆脱出来的人给出了一点忠告:“避免进入流态区”。这种意识状态并非真的高效,也绝非毫无错误。这其实是一种”浅层冥想“状态,在这种状态中,为了追求所谓的速度,理性思考的能力会下降。

在流态区,你可能能够敲出更多的代码。你会收获一种愉悦感或者征服感。问题在于,在流态区状态下,你其实放弃了顾及全局,因此,你可能会做一些后来不得不推倒重来的决策。在流态区写代码可能会快些,但是后面你将不得不更多地回头审视这些代码。

帮助

编程并非易事。越年轻的程序员对此可能越没有什么感觉。但是随着经验增长,必须小心谨慎地将系统分解为易于理解的小单元,同时使这些单元直接的关系越少越好,这并非易事。

编程很难,事实上,仅凭一己之力无法写出优秀的代码。即使你的技能格外高超,也肯定能从另外一名程序员的思考与想法中中获益。

因此,互相帮助也是每个程序员的职责所在。将自己封闭在格子间或者办公室里与世隔绝,有悖于专业的职业精神。你的工作不可能重要到你不能花一丁点时间来帮助别人。事实上,作为专业人士,要以随时能够帮助别人为荣。

沟通

专业开发人员既要做好开发,也要做好沟通。“输入糟糕,输出也会糟糕”对程序与同样通用,所以职业程序员会重视与团队及业务部门的沟通,确保这种沟通的准确、流畅。

开发方与业务方之间最常见的沟通是关于需求的。业务方描述他们认为自己需要的东西,程序员按照自己理解的业务方表达的需求来开发。至少从理论上来说,应该是这样。但在现实里,关于需求的沟通是及其困难的,其中会表现出各种问题。

做业务的人和写程序的人都容易陷入一个陷阱,即过早进行精细化。业务方还没有启动项目,就要精确知道最后能得到什么;开发方还没有评估整个项目,就希望精确知道要交付什么。双方都贪求不现实的精确性,而且经常愿意花大价钱来追求这种精确。

在工作中,有一种现象叫做观察者效应,或者不确定原则。每次你向业务方展示一项功能,他们就获得了比之前更多的信息,这些新信息反过来又会影响他们对整个程序的看法。

最终结果就是,需求完成的越精细,就越容易被忽视,系统因此也谈不上完工。

首先,即使拥有全面准确的信息,评估也通常会存在巨大的变数。其次,因为不确定原则的存在,不可能通过反复推敲实现早起的精确性。需求是一定会变化的,所以追求那种精确性是徒劳的。

避免过早精细化的方法是尽可能的推迟精细化。专业人员直到到手的开发的前一刻才会把需求具体化。但是,这可能造成另一个问题:迟来的模糊性。

业务方常常会提出不同意见。这时候他们会发现,相比去解决分歧,更好的办法是换一种说法,所以会寻找各方都同意的关于需求的表述,而不是去解决争端。

需求文档的每一点模糊之处,都对应着业务方的一点分歧。当然,模糊不只来自于分歧或争论。有时候,业务方会想当然地认为看文档的人懂得自己的意思。

验收的目的是沟通、澄清、精确化。开发方、业务方、测试方对验收测试达成共识,大家都能够明白系统的行为将会是怎样。各方都应当记录这种准确的共识。在专业开发人员看来,与业务方、测试方协同工作,确保大家都明白要做什么,是自己的责任。

验收测试都应当自动进行。在软件开发的周期中,确实有时候需要手动测试,但是验收测试不应当手工进行,原因很简单:要考虑成本。

专业人员会避免手动测试。相比手动测试,自动化测试的成本非常低,让人手工执行测试脚本不划算。专业开发人员认为,实现验收测试的自动化是自己的责任。

请务必确保在持续集成系统中,单元测试和验收测试每天都能运行好几次。整套持续集成系统应该由源代码管理系统来触发。只要有人提交了代码,持续集成系统就会开始构建,并运行所有的测试,测试结果会用电子邮件发给团队的所有人。

保持持续集成系统的时刻运行是非常重要的。持续集成不应该失败,如果失败了,团队里的所有人都应该停下手里的活,看看如何让测试通过。在持续集成系统里,失败的集成应该视为紧急情况,也就是“立刻终止”型事件。

测试

尽管公司可能设有独立的 QA 小组专门测试软件,但是开发小组仍然要把“QA 应该找不到任何错误”作为努力的目标。

当然,这个目标定得有点高。毕竟,如果有一群聪明人联合起来绞尽脑汁找出产品中所有的瑕疵和不足,他们肯定是能够找出一些问题的。对 QA 找到的每一个问题,开发团队都应该高度重视、认真对待。应该反思为什么会出现这种错误,并采取措施避免今后重犯。

会议

会议的成本非常高。如果你去算算会议的成本,你会很吃惊。

关于会议,有两条真理:

  • 会议是必须的
  • 会议浪费了大量时间

受到邀请的会议没有必要全部参加。参加的会议太多,其实只能证明你不够专业。你应该理智的使用时间,所以必须谨慎选择,应当参加哪些会议,礼貌拒绝哪些会议。

邀请你参加会议的人并不负责管理你的时间,为时间负责的只有你。所以,如果你收到会议邀请,务必确保出席会议可以给自己目前的工作带来切实且显著的成效,否则不必参与。

还有些时候,有职权的人(比如其他项目的高级工程师或者主管)命令你必须参加某些会议。这时候应当问问自己,他们的职权是否比自己的工作计划更重要。同样,自己团队的同事和领导也可以帮忙决策。

领导的最重要责任之一,就是帮你从某些会议脱身。好的领导一定会主动维护你拒绝出席的决定,因为他和你一样关心你的时间。

如果会议让人厌烦,就离席。仔细管理自己的时间是你的责任。如果你发现参加某个会议是在浪费时间,就应当想个礼貌的办法退出来。

重要的是,你应当明白,继续待在会议室里是浪费时间;继续参加对你没有太多意义的会议,是不专业的行为。

优先级

专业人员评估每个任务的优先级,排除个人的喜好和需要,按照真实的紧急任务来执行任务。

专业开发人员会用心管理自己的时间和注意力。他们知道优先级错乱的诱惑,他们也珍视自己的声誉,所以会抵制优先级错乱。他们永远有多种选择,永远敞开心扉听取其他解决方案,他们从来不会执拗于某个无法放弃的解决方案。他们也时刻警惕着正在暴露的泥潭,一旦看清楚,就会避开。最糟糕的事情,莫过于看到一群开发人员在徒劳地拼力工作,结果却陷入越来越深的泥潭。

预估

预估是软件开发人员面对的最简单,也是最可怕的活动之一了,预估影响到的商业价值巨大,关乎声誉,也给我们带来了很多的苦恼和挫折。预估是业务人员和开发人员之间最主要的障碍,横亘在双方之间的种种不信任,几乎由它引发。

什么是预估

问题在于,不同的人对预估有不同的看法。业务方觉得预估就是承诺。开发方认为预估是猜测,两者相差迥异。

专业开发人员不随便承诺,除非他们确切知道可以完成。道理就是这么简单。如果你被要求承诺做自己不确定的事情,那么就应当坚决拒绝。如果要求你承诺在某天完成,但是需要每天加班,周末加班,取消休假,那么最后的决定取决于你;不过,不要违背自己的意愿去勉强。

承诺是关于确定性的。其他人会把你的承诺当真,据此拟定计划。如果不能兑现承诺,他们的损失,以及你的声誉受到的影响,都是巨大的。不能兑现的承诺也是一种欺骗,只不过比明目张胆的欺骗好一点。

预估是一种猜测。它不包含任何承诺的色彩。他们不需要做任何约定。预估错误无关声誉。我们之所以要预估,是因为不知道到底要花多少时间。

不幸的是,大多数软件开发人员都很不擅长预估。这不是因为他们没有掌握关于预估的诀窍——根本没有这样的诀窍。预估的偏差总是很大,原因在于我们并不理解预估的实质。预估不是个定数,预估的结果是一种概率分布。

专业开发人员能够区分预估和承诺。只有在确切知道可以完成的前提下,他们才会给出承诺。此外,他们也会小心避免给出暗示性的承诺。他们会尽可能地说明预估的概率分布,这样主管就可以做出合适的计划。

压力

即使有压力,专业开发人员也会冷静果断。尽管压力不断增大,他仍然会坚守所受的训练和纪律,他知道这些是他赖以战胜最后期限和承诺所带来压力的最好方法。

在压力下保持冷静是最好的方式,便是会规避导致压力的处境。规避的方式也许无法完全减除压力,但是可以大大降低压力并缩短高压力期的时间。

业务人员可能在没有事先咨询我们的情况下就向客户做出了承诺。发生这种事情,出于责任感我们必须主动帮助业务方找到方法来兑现这些承诺,但是一定不能接受这些承诺。

专业人士总会千方百计地帮助业务方找到达成目标的方法,但并不一定要接受业务方代为做出的承诺。最终,如果我们没有兑现业务方所作出的承诺,那么该由当时做出承诺的人来承担责任。

如果因为没能兑现承诺而导致业务失败了,你也将无法按时拿到薪水,这种情况下可能能感受不到压力。但是,如果此前你已经表现得十分专业,那么至少在找新工作时可以昂首挺胸问心无愧。

快速前进确保最后期限的方法,便是保持整洁。专业人士不会为了快点前进而乱来。他们明白“快而脏”是自相矛盾的说法。脏乱只会导致缓慢!

协作

大多数软件都是由团队开发出来的。当团队成员能够十分专业地互相协作时,整个团队是最为高效的。单打独斗与游离与团队之外都是不专业的表现。

专业程序员的首要职责是满足雇主的需求。这意味着你要和你的经理们、业务分析师们、测试工程师们和其他团队成员很好地协作,深刻理解业务目标。这并不是说你必须要成为业务方面的专家,而是说你需要理解手头上正在编写的代码的业务价值是什么,了解雇你的企业将如何从你的工作中获得回报。

专业程序员最糟糕的表现是两耳不闻窗外事,只顾一头将自己埋在技术堆里,甚至连公司业务火烧眉毛行将奔溃了也不闻不问。你的工作职责就是要让业务免于陷入困顿,让公司可以长久发展下去。

因此,专业程序员会花时间去理解业务。他们会和用户讨论他们正在使用的软件,会和销售人员与市场人员讨论所遭遇的问题,会和经理们沟通,明确团队的短期目标和长期目标。

简而言之,他们会将注意力放在与业务同舟共济上。

程序员与程序员

程序员直接通常很难密切合作,这就会带来一些不小的问题。

代码个体所有

不正常的团队最糟糕的症状是,每个程序员在自己的代码周边筑起一道高墙,拒绝让其他程序员接触到这些代码。我曾在需要地方看到过,不少程序员甚至不愿让其他程序员看见他们的代码。这是引发灾难的“最有效秘诀”。

协作性的代码所有权

将代码所有权的各种隔断全部打破、由整个团队共同拥有全部代码的做法,相较于此则要好得多。

团队中每位成员都能签出任何模块的代码,做出任何他们认为合适的修改。专业人士期望拥有代码的是整个团队,而非个人。

专业开发人员是不会阻止别人修改代码的。他们不会再代码上构造所有权的潘篱,而是尽可能多地互相合作。他们通过合作来达到学习的目的。

结对

“结对编程”是解决问题最有效的方法。专业人士会结对工作。

专业人士结对工作,还因为这是分享知识的最好途径。专业人士不会仅凭一己之力从零开始创建知识,而是通过互相结对来学习系统的不同部分和业务。他们明白,尽管每位团队人员都有自己的位置,但是在紧要关头,每位团队成员也要能够接替其他人的位置。

专业人士之所以结对,是因为结对是复查代码最好的方式。系统中不应该包含未经其他程序员复查过得代码。代码复查的方法很多,但大多数方法效率都极其低下。最有效率且最有效果的代码复查方法,就是以互相协作的方式完成代码编写。

团队与项目

形成团队是需要时间的。团队成员需要首先建立关系。他们需要学习如何相互协作,需要了解彼此的批号、强项、弱项,最终,才能凝聚成团队。

有凝聚力的团队确实有些神奇之处。他们能一起创造奇迹。他们互为知己,能够替对方着想,互相支持,激励对方拿出自己最好的表现。他们攻无不克。

成员克服个体差异,默契配合,彼此信任, 形成真正有凝聚力的团队,是需要一些时间的,可能需要6个月,甚至1年。但是,凝聚力一旦真正形成,就会产生一种神奇的魔力。团队的成员会一起做计划,一起解决问题,一起面对问题,一起搞定一切。

团队已经有了凝聚力,但却因为项目结束了就解散这样的团队,则是极其荒谬的。最好的做法是不拆散团队,让他们继续合作,只要不断地把新项目分派给他们就行。

专业的开发组织会把项目分配给已形成凝聚力的团队,而不会围绕着项目来组建团队。一个有凝聚力的团队能够同时承接多个项目,根据成员各自的意愿、技能和能力来分配工作,会顺利完成项目。

团队比项目更难构建。因此,组件稳健的团队,让团队在一个又一个项目中整体移动共同工作是较好的做法。并且,团队也可以同时承接多个项目。在组建团队时,要给于团队充足的时间,让他们形成凝聚力,一直共同工作,成为不断交付项目的巨大引擎。

Rewrite 天王寺瑚太朗 墓志铭

在很久以前, 有那样一位青年
他是一个善良的人, 像所有同龄人一样承受着无比的焦虑

他曾是一名军人
他曾懊悔的扣下扳机, 却从未向权威屈膝
他杀人如麻
沉重的罪孽使他无颜以对世人

我尊重他的理想并追随他的足迹
然而有一件事你理应知晓
如今, 这颗伤痕累累行星已然消耗殆尽
人们失去了对生存的渴望, 陷入了绝望的深渊

这世间仍存在着一缕希望的光芒
不是别人, 那便是他
我们曾是他的拥护者
延续他的梦想, 将那被专政所垄断的科学技术由网络公诸于世

每一个人都可以阅读
任何组织与机构都无法阻止
大多读者将之视为荒谬无稽之谈
学术权威机构对它不屑一顾
但是我们相信, 唯有这些真相能够拯救这个世界
人类所能得到的, 与工业革命相比肩的最后火种
存在于我们的灵魂之中

广阔无际的生命的海洋
小鬼, 龙, 野兽, 天使与精灵, 都沉睡在那无边的黑暗之中
我们定会将一切征服一切
神话时代终将会到来
或许这是一种亵渎
即便如此我等亦将被这颗行星所宽恕
如同宽恕诋毁母亲的孩子那般

然而事实绝非如此
这是一条洒满光明之路, 唯一的, 通向美好未来的希望之路
请谨记
这条路是由那位无名军人所开辟
愿这段故事被人们世代传颂, 跨越千年
愿天主的恩宠, 与吾等同在–

2015年终总结与2016年终展望

转眼间, 一年的时光又过去了. 在这最后一刻, 稍微总结一下吧!

2015年做到的事情

  • 在2015年的展望中, 我说好了要努力, 虽然不够努力, 但还是勉强的成为了一名程序员.
  • 在2015年, 我来到了北京, 这是真正意义上的出来闯荡了…
  • 熟悉了一点Android的开发

在过去的一年中, 从天水到西安然后到北京, 从无知到了解然后到可以做一点事情, 工资从之前的一两千到现在的七八千. 好像在飞一样, 但是, 在这急速的背后是巨大的空虚与压力. 我在这压力中努力 坚持. 唯有不断的给自己安慰, 然后向前爬行!

当然, 也有没做到的事情: 英语还是一如既往的糟糕, 态度也没有比以前好多少, 时间的价值也没有提高, 自己还是没有喜欢上自己.

2016年要做的事情

2016年马上要到来了, 其实数字什么的,意义并不大. 但是, 时间却对每个人都很重要.

2016年是我和未来的自己交流的一年, 我会与未来的我交流学习打赌互相帮助.

  • 这个博客将只写一些生活方面的 , 所有的技术类的都会转移到github pages上面(虽然我很少写技术博客, 但是明年我会努力的
  • 心中有一个时间管理的想法, 我会努力的做出来, 至少自己能够使用. (当然, 需要的技术栈是全端, 绝对的独立开发
  • 学一个服务器方向的语言(计划是python, 能做的事情很多, 也比较好掌控, 而且是另一种风格的
  • 稍微学点英语( 今年大多数时候都没去学英语, 毕竟刚入行, 各方面的压力比较大, 等明年稳定之后, 就是需要去提高了, 英语是我过去唯一的伤痛
  • 加入一个业余或者兼职的团队, 跟随大牛学习
  • 多和家人沟通
  • 争取买个MacBook(大牛们好多都是这样, 毕竟win不爽, linux相对来说不够方便, 而且也懒得折腾
  • 还上所有欠的债( 毕竟之前没有任何积累, 直接凭空打入编程界, 所有的资源都是借来的, 所以导致现在签了一屁股债, 有时候真的亚历山大
  • 最后, 如果可以的话, 找个女朋友(这个真的是非常困难, 感觉比学英语还困难啊

时光的墓志铭

  • 偶尔的刺激是可以去追求的,  但是你首先要懂, 这个东西为什么这么刺激
  • 同事真的很难成为朋友, 除非公司氛围真的非常适合友情
  • 人际交往真的非常难, 没必要刻意去追求, 顺其自然
  • 有时候, 一年只需要交一个朋友就足够了
  • 当你在大牛的圈子外的时候, 不要放弃, 或许有个机会就能使你进入, 就算是无法交流也没有关系, 至少有机会
  • 不要放弃任何一个虐待自己的机会, 你会感觉挺爽的, 但是, 记得不要让自己受伤
  • 节约资源, 不论是现在的, 还是未来的, 因为资源意味着需要努力去获取, 要付出代价(甚至有些无法再生

记一次非常逗比的错误, 以及惊险刺激的排错

在某一次重启之后, 我输入了正确的密码也无法登陆我的Ubuntu了,不论是账号登陆,还是游客登陆, 全部不起作用。

我非常惊恐, 因为电脑里面还有我刚写的代码, 以及辛辛苦苦配置的环境。难道就这么毁于一旦了?

思考

有几个可能:被黑了(我随便下的一些程序代码,以及我的服务器好久不用了, 但我还是连上去了), Ubuntu又挂了(我用的14.04 STL的Ubuntu Kylin), 键盘字符集输入错误?

排错

刚开始, 我是搜索的Ubuntu忘记密码怎么办?Ubuntu如何进入单用户模式?

blog.sina.com.cn/s/blog_a2d4803001013vqo.html 百度第一的链接, 你根本不知道他在说什么, 因为现在的Ubuntu 已经不是过去的Ubuntu了,GRUB也换了

很多链接都是直接抄别人的, 图片和文字完全对不上, 搬运信息的更本不知道操作性,就随便复制粘贴, 然后当做一篇文章, 更本没想过看的人该如何操作。

我目前的解决方法也找到了, 实验了很多。我也就直接说正确方法了。

  • 一般需要进入GRUB界面, 我是用Shift进入的
  • 然后在启动项上面按E,进入编辑(好多文章写的是在recovery上面,但是我实际是怎么样都可以的,如果不行的话,可以再考虑进recovery
  • 然后找到 linux /boot/*****  ** ** ro *** 一般是这样的(当时操作截图也没有
  • 将ro 改为 rw 然后 在最后面加上 single #注意:我加上之后进去是一个光标一直在闪,或许是我的错误比较特殊,然后 我又测试了在后面加上 init=/bin/bash 之后才进入shell的
  • 之后就是passwd了 , 或许会有read-only错误,可以试试( mount -rw -o remount /
  • 但是我的错误是 Authentication token manipulation error. password unchange
  • 然后, 就是我逗比的时刻了, 我查了好久, 最后发现, shadow文件被我和 shadowsock配置文件一起删掉了  rm -rf shadow*        QAQ
  • 不过幸好, /etc/passwd 文件没有删, 然后我查了一下, 用 pwconv 重新生成了 shadow
  • 然后, 重新启动, 一切正常 QAQ

工作一月纪事

好吧, 工作已经开始了一个月了, 前两天刚拿到整月的薪水. 感觉还不错!

从6月份决定的借钱&贷款去培训, 到努力的找工作, 然后到第一个需求的实现, 最后是偶尔一段时间的轻松.  从天水到西安再到北京, 经历了好多, 见过了好多, 努力了好多. 最后获得的是薪水翻倍的增长, 以及对未来生活的信心和希望.

时间, 是我们每个人最宝贵的财富, 和出生和成长不同, 他不会因为这些因素而影响. 你的就是你的, 区别是你怎么去使用. 我觉得现在就好, 努力的赚钱, 然后去做想要做到的事情, 所谓的拼搏不就是这样吗? 所谓的人生也不过如此吧!

安全感会影响人生活的状态, 我现在也是这样, 有比较稳定的工作, 有比较稳定的还过得去的收入, 有比较稳定的个人时间以爱好.  同样的也会有缺点, 他会让你无法稳定的去做一件事, 会让你无法稳定的去使用自己的时间, 因为, 这种稳定性只是相对的: 没有稳定的房子, 没有稳定的家庭, 没有稳定的能够无惧的用来赚钱的能力, 甚至连稍微稳定的家族和女朋友都没有, 相对的世界与正常的世界, 同样都是自己的世界. 而你自己需要在两个世界的夹缝中为两个世界而努力, 一个是自己看到的幸福的世界, 另一个是自己看到的不幸福的世界.

世界的恶意是存在的, 而且很大部分世界的恶意, 其实是别人对你的恶意. 当你选择帮助别人的时候,  当你不选择帮助别人的时候, 只要你与人打交道, 这种环境都会靠近你.

美好的生活是快乐的, 同时也是痛苦的. 因为你不知道它什么时候会离你而去. 因为不曾拥有过, 数据不足, 而无法做出比较准确的判断. 恐惧判断, 是每个人都有的, 只是每个人的看法不同, 而且对出错之后的处理能力不同, 所以, 每个人决定的轻重也是不同的. 而我喜欢判断, 喜欢分析, 同样的我也恐惧失败.

从以前的无所谓, 到对世界感兴趣, 对人类感兴趣, 这种体验, 我也说不出来是什么! 所以我最近经常上知乎, twitter, G+, v2ex 我希望能够找到, 我到底喜欢什么样的人? 到底该向什么样的人们学习, 努力成为什么样的人?

北京

刚到北京的时候, 对这儿期望很大的, 但是当我了解之后, 然后再结合人来想的话: 或许每个地方, 其实都差不多, 都有自己独特的魅力所在.

北京有CBD, 高楼大厦, 也有乡间小路, 地摊, 垃圾. 世界是相同的, 只是人们选择在哪儿生存而已. 因为人, 所以城.

北京也有很多很赞的地方, 当然, 基本上是与人相关的. 我去过香山, 索道很赞, 去过故宫, 感受到了时代, 去过水立方, 感受到了城里人的生活. 都很不错, 这是在老家的小城市里所体验不到的. 大城市的味道.

同样的, 只有在大城市的能玩的游戏Ingress, 我真是非常喜欢. 我因为它去过颐和园, 去过清华北大, 和那边的博士/学生, 一起吃饭, 感受他们的生活, 以及他们的努力和能力, 认识很多工作, 结婚之后仍然在玩Ingress的朋友. 为了玩游戏, 翻墙. 为了玩游戏, 坐飞机去曾经没去过的地方, 参加战争. 为了玩游戏, 出国参加战争. Google在游戏方面, 基于lbs的游戏, 走在了世界前面, 我很期待, 未来的vr和lbs的混合, 真正的游戏人生.

同样的, 在北京, 我感受到了什么叫差距. 在我们那 500 可以租一套农村的房子. 在西安, 可以租一间卧室带独立卫生间和厨房, 在北京700元,只能住地下室. 而我现在就在地下室住, 气味有点土味, 偶尔有蟑螂出来散步, 卫生间20多人用一个, 洗澡的也一样, 而且都要交钱.地铁坐一次就能在家乡吃一碗饭, 每天做地铁都够午饭钱了. 而且, 同样的牛肉面, 在北京都是翻了三倍.

最后, 美好的生活仍然在前方, 你需要更加的努力前行.