月度归档:2020年12月

person holding fire cracker shallow focus photography

2021 年新年规划

时光萦然,一年又从匆匆忙忙过去,年初的疫情,让每个人都度日如年。但时光总是在流逝,我们却又无能为力,能做的只不过是看着时间一点点走下去。

又到了一年一度立新的 Flag 的时候了。对比去年立的 Flag,有不少都没有完成。今年痛定思痛,要立一些可以看得到成效的 Flag

接下来是新的一年的规划,和 Flag

职业发展

新的一年里,继续延续 FreeLancer 的工作状态,但应该让自己的工作和生活更加稳定和持续,也需要开始接触一些海外的企业。地理套利,赚取海外的收益。

KeyResult:

2021 年,年度海外收入达到 $1000

此外,还要坚持当前在做的事情

Key Result:

2021 年,要把 Linux 中国的两个改造完成,释放生产力,优化流程。

休闲娱乐

2021 年,生活更加趋于稳定,同时,一些已经规划好的也已经在路上。对于明年的追求的话,应该比较简单。

2021 年,开始还房贷。

恋爱家庭

如果可以,我希望明年我的终身大事可以初步敲定

2021 年,订个婚吧(也可能结婚)!

个人健康

我需要认真减肥

2021 年,必须瘦到 170 斤

此外借助于健身环,希望可以实现每周一次运动吧

自我实现

2021 年,我有更多的时间来创作,做一些自己要做和想做的事情,那么就要有一些压力,引导自己的工作。

2021 年,应当有优质产出 50 篇文章。

此外,做为一个程序员,应当有一些技术上的追求,和去年一样,继续完成去年的目标

2021 年,孵化一个 1W stars 的项目

以及一个独立开发者的目标

2021 年,有一个年收入 5000 元的项目

理财投资

收入难免是一个要讨论的问题,也是一个最实际的问题。去年做了收入预算。但很不幸的是,我并没有达成我的目的,不过,我想了一下,单纯的收入其实并没有意义,应该追求的是收入和结余共同的增长。不然长期来看,还是很一般。

2021 年,收入继续延续去年的目标,目标为 31*1.2 = 37万

2021 年,结余达到 25 万元

为了达到结余目标,我给自己做了个简单的支出预算,希望明年可以好好坚持自己的预算

总结

经过去年的年计划,我发现订立太多的目标,会让我没有办法完成,既然如此,那就不妨精简目标,2021年,让自己的每一个目标都可以完成。

person holding fire cracker shallow focus photography

2020 年年终总结

一年过去,是时候对自己做一个 Review ,来看看自己的过去这一年里,过的怎么样。

今年算是我写年度总结的第三年,前两年的年度总结可以参考下方的链接:

定性总结

学习成长

2020 年在学习一途上,毫无进展,原定的学习内容,几乎没有学习什么,唯一学习的一些,也是一些相对更加生活化的技能(比如上了做饭的大师课,学着做了几道菜)。

恋爱家庭

2020 年的感情之路平稳发展;家庭关系还算和睦,虽然和母亲偶尔有吵架,但总体还算平稳。

职业发展

从工作的角度来说,这一年可以说对于我来说是 Breaking Changes 了。我从腾讯离开,成为 Freelancer ,开始追求一种更加 WLB(work life balance) 的生活。

生活从过去的 995 变成了现在的9127,工作的事情越来越多,但说实话,更开心,因为有更多选择的空间,而不会因为自己拿了薪水,就一定要去做某些事情。

理财投资

2020 年的理财并没有做的太好,年收入和年支出同样很高,甚至超越了一些年轻的家庭。这是我在今年没有做好的。

不过,为了解决这个问题,我做了一组详细的预算,希望明年可以借助于预算,更好的控制自己的财务状态。

不过,有一点值得欣慰的是,今年我的总体收入/支出还是正向的,不至于负债。

休闲放松

2020 年的休闲和放松层面是有不错的突破的(毕竟今年有了随心飞,飞了很多地方)。

2021 年,我应该还会继续旅行,飞翔,走遍中国大地。我目前还想要去,但是没去的地方还有很多,至少目前省会打卡都没有打完,明年先把卡打完吧!

社交人际

今年有了新的朋友,也在新的朋友身上花费了不少的时间和精力,不过发现回顾过去,一些老的朋友交流也越来越少了。这些是我这一年里没有做好的。

自我实现

今年其实算是在自我实现这条路上有很大的突破。9月份的离职,便是勇敢的向自我实现这条路大跨了一步。

在腾讯云的一年里,我发现自己将大量的时间和精力放在工作中,以至于没有时间和精力去自我提升、自我实现,而我留下来,能获得的不过是一个所谓的平台,和工资罢了。但钱对于我来说不是最难获得的(感谢工程师这个身份,让我可以享受到了行业带来的溢价)。因此,我在今年的9 月选择了离开,成为一个 Freelancer,做自己想要做的事情,提升自己的存在价值。

定量总结

今年写了多少文章?

今年在博客上写了一共 157 篇(含本月发布的月度总结、年度总结、年度规划)。

此外,在公众号上还断断续续写了一些(不过好多都被我删除了)。

今年赚了多少钱?

今年,总收入 311K,没有达到去年的希望,所以这个希望延续到明年,希望明年可以实现增长;

今年收入不少,花销也不少,今年花了280K,最后还是只留了 30K,和去年相差无几。

这个事情让我思考,我是存不下来钱,还是不想存钱?回顾这一年,我花了不少钱,有很多是不需要花的。看起来,我更多是自己在主动花钱。这就需要我重新回顾过去这一年,哪些钱是该花的,哪些钱是不该花的。厘清自己的开支,才能在新的一年里,获得更好的财务数据 。

总结

2020 无论喜,无论哀,都依然过去,距离 2021 年,也只有不过 1 个半小时了。年终,也到此了。明年,我们再见。

summary

2020 年 12 月月度总结

2020 年的 12 月,我把过去这一年里没有体会到的,都补上了

TL;DR

12月对我来说,是一个不一样的日子。要做各种总结,要结束一个财年,准备进行下一个财年的规划和计算。要对过去的一年进行 Review,看一看自己哪些没做好,哪些做好了。而且,这个 12 月,我体会到了不一样的 12 月。

月度总结

工作

本月的工作没有什么别的变化。毕竟是工作嘛,难免回归平淡。不过自己还是有点拖延症过头了。还是要想办法与拖延症作斗争。

我拖延症的原因主要是:

  1. 不知道这个事情要花多久,就干脆拖着不去做,但真的去做,可能也还好。

生活

2020 年的 12 月,我的办公室整理好了。不过,在整理办公室的过程中,我也不行的中招了。

搬桌子的时候,把脚砸了一下,一开始以为没啥事,就没去医院,后来,脚上发出臭味,才意识到问题,赶忙前往医院,原来是砸这一下,把脚趾甲内部砸出了伤口,又由于一直拖着没处理,加上脚本身就是真菌、细菌的聚集地,伤口化脓了。只好做了拔甲处理。好在是现在还年轻,身体的恢复速度还不错,拔甲一周后,医生就告知我不再需要前往医院换药了。目前的状态只需要自己在家涂一下碘伏就好。

过去这一两年,因为我的身体不错,所以一直都没有什么感觉,结果来这一下,就让我难受了好几天, 还是应当保留对于健康的敏感度。不应当忽视!

不过,办公室还是很不错呀!

我的办公室

一个办公室该有的都有了,双显示器、屏幕挂灯、摄像头、打印机~

此外,12 月我还体验了一下核酸检测,主要是因为 12 月份因为 openEuler Summit 的原因,去了趟北京,恰逢这几天北京的疫情开始零星爆发,我作为北京返深人员,也被要求去做核酸检测。这一年没做过核酸检测,在最后几天做了个核酸检测,也算是我的 2020 指的纪念的事情了。

Side Project

这个月的 Side Project 有一个,不过和代码无关,是一个内容层面的:

  • 播客入门:应该是中文社区第一套完整的博客制作视频教程。

我用 WordPress 简单的建了一个站点,后续还有一些需要做的视频课程,继续加油做内容吧!

写作

  • 本月的公众号写作还是没开始,主要可能还是 1. 没构建好选题库 2. 没有固定好写作的周期。这些都准备好了就可以开始更新了,不过我想逼自己一下,从明天开始就要好好更新!今天加油囤稿。
  • 本月的博客写作还不错:博客因为没有什么太多的目的,所以可以写的很随性,很开心。

财务状况

财务状况本来这个月是正向流水,奈何南航随心飞 2.0 出来了,本月再次超支。。再加上临近春节,要购买春节机票啥的,就还是花了不少。

娱乐

本月的娱乐没啥,就 12 月初的时候,去了趟北京,帮粒粒过了个生日,感受了一下“海底捞式”生日。其他时候的出行都是工作出行,就不在这里说明了。

其中我最大的感受是,海底捞的服务,很适合目前的大城市这种单身社会,你可以在海底捞感受到朋友般的对待,甚至可能比朋友还要好。

阅读

本月月初的时候,对余罪上了瘾,一口气把余罪给读完了(也造成了一部分工作的拖延),要控制一下自己的上瘾问题。

  • 《杏仁》
  • 《Nutanix 超融合基础架构权威指南》
  • 《无人生还》
  • 《余罪》
  • 《余罪2》
  • 《余罪3》
  • 《余罪4》
  • 《余罪5》
  • 《余罪6》
  • 《余罪7》
  • 《余罪8》
  • 《余罪9》
  • 《余罪10》
  • 《余罪11》
  • 《永不放弃》
  • 《高级零工》:推荐独立开发者、自由职业的人看
  • 《知识付费》
  • 《这才是我要的工作》
  • 《掌控:开启不疲惫、不焦虑的人生》

课程学习

  • 知乎《男性健康必修课:解决你的「男」言之瘾》:倒不是有病,纯粹是觉得自己可以了解一下。看了以后,一部分章节还是很有价值的。
  • 知乎《女性健康私享课:给身体的关爱情话》:理由同上
  • 知乎《只有男科医生知道:解决关于男「性」的全部问题》:理由同上
  • MasterClass《Wolfgang Puck Teaches Cooking》:又一个教做饭的课程

年度计划对标

课程学习

一年学习 54 门课程,本月进度 4 门;全年进度 7/54;

图书阅读

一年读书 54 本,本月进度 19 本;全年进度 43/54

电影观看

一年观看 54 部电影,本月进度0 部;全年进度 9/54

green and black digital device

如何隐藏 oh-my-zsh 的 Last Login?

oh-my-zsh 是我目前配置新的 Mac 必然会装的。不过,oh-my-zsh 一直有一个我不喜欢的就是它会自动一个 Last Login 的 Hello Message。

这个 Hello Message 倒是不占位置,但是我觉得它让我的命令行不那么极简

因此,我希望将这个提醒删除掉。

删除的方法不复杂,只需要在用户的根目录创建一个空白的~/.hushlogin 文件即可

touch ~/.hushlogin
fountain pen on black lined paper

无压写作的艺术

博客写多了,难免会有一些时候遇到一些选题写了一半,临时有事,放下选题,先去干活。但久而久之,就累计了不少选题,一直放在草稿箱中。

长期以来,我的草稿箱中都有不少的文章,今天发现,我的草稿箱中有15篇文章,而其中最为古老的一篇,可以追溯到三年前,2017年。

毫无疑问,三年后,我的心境已与当时大相径庭。当年的心绪波动,如今已毫无感受。这些文章也很难再继续写下去。

既然如此,倒不妨放弃掉这些草稿,放这些草稿一条生路,也放自己一条生路,草稿箱中只留那些我短时间可以写完的文章(我觉得一个月的时间是一个不错的时间限制,毕竟一个月,已经是30天,720 小时,43200分钟)。如果我无法在这个时间段内写完这篇文章,想来当时的 Context 已然消失不见,那就直接删除草稿,把时间留给下一篇文章吧!

几个可以简化 rails 开发命令的函数

在 rails 的 bin 目录下,有一些可执行文件,你在开发过程中使用这些可执行文件来操作,从而使用项目自带的可执行文件

但是默认的 rails 命令使用的是全局的 rails ,如果我希望使用项目中的可执行文件,就需要执行 bin/rails, 略微繁琐,所以有没有一种可以更加简单的方式呢?答案是肯定的。你可以通过在你的命令行中添加一个新的命令来实现这个效果。

具体代码如下:

funciton rx(){
	if test -f "bin/rails"
	then
	  bin/rails $*
	  exit
	else
	  rails $*
	fi
}
funciton yx(){
	if test -f "bin/yarn"
	then
	  bin/yarn $*
	  exit
	else
	  yarn  $*
	fi
}
function bx(){
if test -f "bin/bundle"
	then
	  bin/bundle $*
	  exit
	else
	  bundle  $*
	fi
}

你可以将这段代码粘贴在你的 .bashrc.zshrc  文件中,从而使其在命令行启动时可用。

这段代码很简单, 定义了三个新的函数,后续我们在命令行输入 rxyxbx 的时候,会自动调用当前目录或全局的 railsyarnbundle 目录。这样你可以在任何一个目录下使用 rx 命令来操作。

三个函数的结构都是一样的,首先检测当前目录下的子目录是否存在 rails 可执行文件,如果存在,就调用本地的函数,并将参数传递。如果不存在,就调用全局的函数,将参数传递。

总结

我们可以通过定义简单的一些命令,简化项目的开发。而这样的思路,你可以应用在任何一个项目中,而不仅仅是 rails 项目中。

yellow Volkswagen van on road

2020 年旅行总结

2020 年是特别的一年,这一年我们遭遇了 COVID-19,我们见证了武汉数月的封城,也见证了下半年航司的大促销。这一年是独特的一年,我也想单开一篇,来记录我的 2020 年。

上半年

2020 年的上半年,是肃穆的。

一月初时,我还在鹅厂搬砖,随着团队的安排,从深圳前往广州,参与了广州的「微信公开课」活动。到了一月末,我就在春节回家的高铁上,见证了武汉的封城。

下半年

2020 年的下半年,是愉悦的。

到了 2020 年的下半年,疫情开始逐渐肃清,武汉也开始解封。各航司开始进行疫情之时的自救,各家纷纷推出了自己的随心飞套餐。

恰逢我原计划要在 9 月份离开鹅厂,所以就购买了南航的随心飞(又在随后的双十一过程中,购买了海航的随心飞)。

在九月份离开鹅厂后,就开始了我的随心飞之旅。

  • 9 月份从深圳飞往西安、北京;从深圳飞上海;
  • 10 月份国庆结束还用随心飞从河南飞回了广东;
  • 10 月份从深圳飞海口,来了个当日往返,闪现一波;
  • 11 月份从深圳飞往沈阳,并从沈阳一路向北,途径长春,前往哈尔滨。
  • 12 月份,又再次从深圳飞往北京。

上半年的欠下的旅行,似乎在下半年都一水的飞回来了。

回顾这半年,随心飞我亏本了么?没有,随心飞让我做了很多过去我不敢想,也没有钱去做的事情(比如一周连续飞行)

这半年里,我看过了太多过去我不会看,以后也可能不会再看的东西。过去的生活,很美好。

2021 年

2020 年虽然我去了很多地方,但迫于种种原因,并没有完成我的打卡中国之旅。好在我之前也买了海南航空的随心飞,明年依然可以继续随心飞。而且,最近南方航空的随心飞又出了 2.0,我想我依然会购买吧。

毕竟,中国这么大,我想去看看。

group of fresh graduates students throwing their academic hat in the air

你的大学应该如何生活?

大学是目前这个时代,不少人会走上的一条路。

但,大学对于每一个走这条路的人意义不一而同。有的人目标明确,有的人浑浑噩噩。这条路怎么走,大部分人都说不清。

而说不清的核心因素,是从未想清楚目的地是何处,没有了目的地,也就没有了指引方向的灯塔,不过是随波逐流。

在这种情况下,只能跟着别人走,随大流。

今天我在看别人的博客的时候,发现了上海交通大学的生存指南,写的很现实,也很真实。我觉得有必要推荐给看我博客的大学生、准大学生们。

或许你没有想清楚自己的目的地是何处?或许你还没有理解大学生活中的某一些细节为何是这样。这本电子书结构化的将你在大学会遇见的事情都告诉你,让你通过了解别人的世界,引导自己的学习和生活。

上海交通大学生存指南:https://survivesjtu.gitbook.io/survivesjtumanual/li-zhi-pian/huan-ying-lai-dao-shang-hai-jiao-tong-da-xue

此外,还有一本书要推荐给你,来自黄灯的《我的二本学生》,实际上,如果你是更高的学府,你可能不会面临书中所提的问题,但不意味着你不会遇见类似的问题。我倒是建议,你可以读一读这本书,了解别人的生活现状,以明晰自己的生活定位。

此外,关于学历这个问题,我一直都觉得,学历只是你曾经获得某个技能的标志,但对于你的未来,并非完全由学历定位,而且,在绝大多数的企业中,学历是一个门槛,但这个门槛并非完全无法逾越,有很多的方式可以绕过门槛,从窗户爬进面试现场。所以,与其说「我就是二本学生,我只能这样」,不如想想如何才能做到「我要突破二本给我的限制,让自己变得更好」。

red and white heart illustration

如何实现子域名应用?

多域名应用的心思是从 WordPress.com 的时候起来的,当时一直在想,如何实现这种多域名的应用?

最近看到了一个实现,算是解了心头的疑惑。

如果不涉及 SSL ,子域名应用的实现并不算复杂,可以简单的通过将用户请求进行 rewirte 转发的方式,来实现对请求的转发。

举个例子,比如将 x.example.com 转发到 www.example.com/pages/x 中,这样在应用中就无需单独对于多域名编写代码,只需要从 Path 中提取前缀,并进行数据库查询,将数据结果返回回去就好。

如果涉及到 SSL,子域名应用的实现相对复杂一些,涉及到了 SSL 证书的管理。不过也有实现简单的方式,那就是购买一个泛域名证书,这样 Nginx 会通过泛域名证书提供服务,因此,应用程序在处理上和上面的逻辑一样,只要将请求转发就好了。

如果涉及到子域名绑定,则相对麻烦一些,需要能够编程式的操作 Nginx 的代码文件,不过也还好,你可以在应用的目录下动态的生成 Nginx 的配置文件,并在默认的配置文件中 include 动态生成的目录,从而避免文件生成后的管理成本太高。此外,需要借助 execl ,执行命令对 Nginx 执行检查和重启的操作。

此外,也可以考虑直接使用 default_server ,从而直接将所有未识别的情况转发到某个特定的路径。不过需要在应用中添加请求判断,对于无法绑定的域名,提供一个特定的反馈,引导用户进行绑定。

总结

如果你的应用不涉及到 SSL,也不涉及到域名绑定,则十分简单,直接使用 Nginx 转发请求即可;但如果涉及到了 SSL,则需要考虑泛域名证书,从而降低编程的成本;如果涉及到了域名绑定,则需要为应用程序新增对 Nginx 操作的能力,从而降低应用的管理和研发成本。

继续阅读

如何面对朋友的推荐

昨天和朋友去街上溜达,期间他给我介绍了一个拍夜景模式的 App,叫 「Night Mode」,在他给我拍样片的时候,我就付费把 App 买了下来。

他很惊讶,为什么我会这么快买?,「你是我见过买的最快的」。


为什么会有这个问题?

可能是因为过去的人们都无法相信他,也不会选择相信他。所以就要再三思索才决定是否要购买和选择使用他所推荐的产品。

但对于我而言,我并不会在每一次都这样做。实际上,我的推荐机制的运作是基于对于人的信任而进行的。

举个例子,就这次的场景来说,是一个朋友向我推荐他自己觉得好用的 App。那我思考的是:

  1. 这个人可靠么?答案是肯定的。
  2. 这个人用过的 App 多么?他推荐的好么?答案也是肯定的,他手机里装了几百款 App,同一类型的软件往往会下载多款。
  3. 这个 App 贵么?答案是否定的,这个 App 并不算特别贵,18 元。
  4. 这个 App 的价格,超出我对于这个人的信任了么?答案是否定的。这个价格不会让我损失对他的信任。

既然上面的问题都指向了可以买,那我大可以相信他的选择,直接下单购买。

很简单的几个问题,就把问题的决策做完了。何乐而不为呢?