二十多岁即将结束的感想
已经狂飙了好几年,没有时间和心态用文字记录心情,但若想变回创作者,就必须使用文字写下所感所想,以此篇文章热身,让自己回到创作者的姿态。
2024年终于是我20多岁的最后一年,明年的3月5日正式步入30岁,再也不能以年轻人自居了。
转瞬即逝,一眨眼就变成了两个孩子的爸爸,甚至还做了几年老板,而外公和奶奶已经过世。如果回到20岁告诉自己在30岁前将要扮演哪些角色,20岁的自己肯定不会相信。
已经狂飙了好几年,没有时间和心态用文字记录心情,但若想变回创作者,就必须使用文字写下所感所想,以此篇文章热身,让自己回到创作者的姿态。
2024年终于是我20多岁的最后一年,明年的3月5日正式步入30岁,再也不能以年轻人自居了。
转瞬即逝,一眨眼就变成了两个孩子的爸爸,甚至还做了几年老板,而外公和奶奶已经过世。如果回到20岁告诉自己在30岁前将要扮演哪些角色,20岁的自己肯定不会相信。
这类故事鲜有人能体验到,今年5月就想写篇博客描绘下天池在最初的一个月的大起大落,但每个月发生的新故事又应接不暇,遂写篇年度总结记录防止遗忘。
随着移动互联网的发展,授权协议从 OAuth 1.0 过渡到了 OAuth 2.0,新版授权协议的草案早在 2011 年就已公布,现在已经广泛应用于移动客户端的登录和网站、客户端的第三方授权。相比于会话(session),OAuth 2.0 不关注用户状态,主要用于无状态的 API 和非浏览器的移动客户端。
本文通过实例介绍如何使用 Egg.js 框架和相关插件 egg-oauth2-server,快速开发 OAuth 2.0 协议的授权服务。
最近一周,在开发 Appetizer 的后端新业务的过程中,需要提供几个开放 API 供自己团队的客户端调用,未来也许会让第三方团队进行调用。Appetizer 后端的 API 层我取名叫 eevee,口袋妖怪里的伊布的英文名,承载了整个账号系统、账号业务页面以及一些账号和图片服务的 API,使用 Express 4.0 和 MongoDB 实现的业务逻辑不是特别复杂的后端应用,主要的接入应用是能够记录 session 的客户端浏览器。
感官上的时间流逝速度同新事物的接触成反比,回顾一下2016,做的事情不多也不少。
首先翻看一下2016年初立的一些flag:
今年的八月十号到十三号,在回家前跟学校团一行十几人去了趟韩国首尔3天,作为交大软件学院的学生,和成均馆大学进行了院际交流活动。

这是我第一次踏足朝鲜半岛,因为是官方活动,行程只在首尔和首尔南边不远的水原活动,没能随意走动到韩国欠发达的地区旅行,只好在这个二战后依靠美利坚建立的国家最繁华的城市圈,窥视韩国的现状和韩国人的特点。

全球一共有多少款Android设备呢?根据Google注册在案的数据,截止2016年8月5日,总计有12518款不同的Android设备型号,这里还没包括几年前中国山寨厂商Android设备。Android设备型号总量这个数字,每天都在增长。
接触过Android开发的人也许遇到,或者想到过,拿到一台Android设备,如何能够得到它在市场售卖时候的设备型号名称。
打开Android系统的“设置”->“关于手机”,可以看到设备的基础信息,其中有型号一栏。对于一部分手机,型号名和市场名是一致或者接近的,但有相当一部分设备的型号名和市场叫法没有关联很小,甚至任何关系。例如华为Mate7在系统中的型号名是 HUAWEI MT7-CL00 ,一般人很难联想到Mate7;三星同一款市场叫法的手机,在不同国家发行其模型名不一样,Galaxy Note4在中国发行的版本的型号名是 SM-N9108V ,笔者在第一次拿到这款设备的时候,如果不看包装盒,几乎无法从系统中获取到该手机的市面叫法。
笔者最近在开发Appetizer.io时遇到一个需求,需要根据adb能获取到的Android设备数据,得到设备的样例图片和市场名。这种类似的需求场景,在Android相关的开发中有可能碰到,笔者在此分享一下实现该需求的思路与方法。