Welcome to My Personal Site 😎

I am a Ph.D. student in the Department of Economics at Chinese University of Hong Kong.

  • I received both my Bachelor’s and Master’s Degree from Central University of Finance and Economics.

C pointer

就好像一个将军可以直接指挥每一个士兵。我们直接去调用内存中的每一个字节。

February 16, 2022 · 1 min · Wei XU

Hack Stata DTA file

dta 文件里面到底什么样子?首先 vscode 里面打开看一下: 之后整理了一下里面可见的文字,大概是下面这种格式: <stata_dta> <header> <release>117</release> <byteorder>LSF</byteorder> <K></K> <N>J</N> <label>1978 Automobile Data</label> <timestamp>13 Apr 2018 17:45</timestamp> </header> <map></map> <variable_types></variable_types> <varnames>make price foreign...</varnames> <sortlist></sortlist> <formats>%8.0gc ...</formats> <value_label_names></value_label_names> <variable_labels><variable_labels> <characteristics><ch>Consumer Reports with permission</ch><ch></ch></characteristics> <data>AMC Concord this should be the data part. Here is lots of contents.</data> <strls></strls> <value_labels><lbl>Domestic Foreign</lbl></value_labels> </stata_dta> 看起来是一直类似 XML 的树状结构,<header> 里面主要是一些 metadata,还有变量名,变量标签,以及变量格式等内容,主要数据则存储在 <data> tag 里。

February 8, 2022 · 1 min · Wei XU

地球的一生

偶然在 YouTube 上看到了一个名为《老高与小茉》的频道,结果一发不可收拾地看上了瘾,疯狂刷了一天。 这个频道主要讲得是关于科幻,天文,宇宙和 IT 等方面的内容。 印象深刻的一集讲了地球的 24 小时,把地球的一生——从诞生到毁灭——比作一天 24 小时。而我们现在正处于地球的中午 12 点,地球最强盛的时候(这样一想真的幸运呀)。

February 8, 2022 · 1 min · Wei XU

王者荣耀背后的计算机原理

昨天玩王者荣耀又被队友气到了,索性直接退了游戏。 Google 了一下,王者荣耀的前端 APP 的开发语言是 c#,游戏引擎是 Unity。c#和 Unity 的关系类似于 Python 和 QGIS,我们可以用 QGIS 中封装好的工具画图计算,也可以自己写 Python 脚本之后交给 QGIS 执行。后端数据库则是用 C++ 写的(据说这是鹅厂的后端传统,都用 C++)。 前端和后端 互联网公司大都分为前端(Frontend)和后端(Backend),前端负责与用户的交互,手机上的各种 APP 都是所谓的前端界面,后端负责服务器和数据库的建构和维护,使用 APP 时用户数据会上传到后端服务器,服务器会相应 APP 请求并返回数据。 具体到王者荣耀这款游戏上,手机上的 APP 即是花里胡哨的前端界面,光有前端是不够的,我们进行游戏时操作英雄的行为数据会返回王者荣耀的服务器,服务器会接收一局游戏内所有十个人的数据并作相应的分析。这种感觉就好像我们并不是在自己的手机上打游戏,而是在腾讯远程的云服务器上打游戏。手机上的 APP 只是一个用来接收和发送信号以及展示前端界面的工具,很奇妙吧!正因为这样,当网络状况不好时,我们在手机上的操作不能及时上传到云服务器,也不能从云服务器上实时获取到游戏进程数据,这就是我们平时所谓的“游戏卡了”。 此外,我们游戏内的玩家信息也存储在了后端数据,比如拥有的英雄呀,皮肤呀,还有各种道具,好友关系等等,其实本质上应该都是远程服务器内的一串串字符。 算法 我们点击排位按钮,进入了游戏队列,这时需要游戏系统给我们匹配九个队友。具体怎么匹配呢?这时需要一个匹配算法。大家应该都知道,每个游戏玩家背后都有一个 elo(wiki 解释:Elo rating system)隐藏分。知乎上有个问题对此有比较好的解释。简而言之,腾讯会根据每个玩家的游戏表现、活跃程度和历史战绩等计算一个 elo 等级,并且根据这个值进行游戏匹配。 ELO机制通过调整双方玩家战斗力值的方差对胜负进行干预,而非调整双方玩家战斗力值的均值。 类(Class) 计算机编程语言中的类是一个宏大的概念,我甚至觉得这个设计理念背后有一丝哲学的意味。类是什么呢,它是一个抽象的概念。人就是一个类(class),我们每个人,比如你我他,是人这个抽象概念的具体实例(instance)。人是一个脑海中的抽象概念,每个活生生的个体则是现实世界中对这个抽象概念的具体实现。大家可以想想“白马非马”这个古老故事,马是一个类,白马则是马的具体实例。 很多语言,例如 Python、Java 中都有类的设计,所以被称作面向对象编程(Object-oriented programming,OOP)的语言。与此相对的是面向过程编程(Procedure Oriented Programming,POP),C 语言即是这种类型的语言,也包括我们经济学研究中用的 Stata(其实严谨来说 Stata 并不是一门编程语言)。 回到王者荣耀游戏中,英雄是一个类,我们操作的具体英雄,比如娜可露露,则是具体实例。对英雄这个类,我们需要设计它的属性,比如血量,外观(这又涉及到了 UI),攻击力,移动速度等等,当然它还有方法(methods),比如英雄技能,它可以移动、攻击等等。对每个英雄,我们可以具体赋予它的属性和英雄技能。此外,游戏中的野怪小兵,我们也可以为它们设计不同的类,比如小兵类,野怪类,也有不同的属性和方法。 两个英雄互相攻击时,涉及到了实例之间的交互。比如一个英雄的攻击导致另一个英雄血量属性的减少等等。 总结 活该王者荣耀这么赚钱,毕竟设计出这么一款游戏的背后是成千上万的心血,应用到了如此多计算机方面的知识。既然如此受欢迎也应该很赚钱。

February 8, 2022 · 1 min · Wei XU

凤凰山

Best4: 第二次去爬凤凰山,本来心心念念,期盼能看到上次的云海,到了山顶却是一片大晴天。不过阳光下的海面已然很好看!

January 30, 2022 · 1 min · Wei XU

九龙水塘至城门水塘

Best 6: 还是要穿短袖呀,不管出发时外面天气看起来怎么样,以防突然变热。小小的水塘还是有种别样的美!

January 16, 2022 · 1 min · Wei XU

记易老师谈话

昨天听了易老师在study group里的一番谈话,受益匪浅,这里来总结一下。 Answer fisrt-order questions. 从过往文献和实证观察的基础上发现好问题。 牛顿提出万有引力,最符合之前观察的理论 三朵乌云 爱因斯坦提出了相对论(theory),能够解释牛顿力学不能解释的现象。但却一直得到实证的检验 这样看,经济学其实继承了物理学的科学研究范式(combination of theory and empirical evidence)。 经济学上的例子,凯恩斯的通论也是一套理论,为了解释为什么会发生大危机。 我们的研究无非两种,一是发掘新理论去解释现实问题,二是用实证观察去检验现有理论是否正确。 Data is crucial and big data is the future. 这是一个信息爆炸的时代。 有句话让我很受触动, 我们学者不像业界的人,手上没有任何筹码,只能以诚服人。 Economic intuition 让经济学基本概念深入骨髓-demand, supply, elasicity… 就像做高考数学题,一眼扫过题目,心中就有了思路。 Writing, writing, and writing!!! Who is your reader? 我个人感觉,这是从发表文章的功利角度来谈的。一篇学术文章往往是曲高和寡,会读你文章的人很可能只有几十个人。想明白你的读者们在思考什么问题。 易老师又讲了两人人物 - 苏轼和韩愈: 韩愈除了千古名篇之外,还写了很多吹捧拍马屁的文章。苏轼呢,一生潇洒豁达,但也多亏了弟弟苏洵为他打理左右。 经济学只有两个方程:choice function and production function。

December 28, 2021 · 1 min · Wei XU

鳗鱼的秘密

你知道鳗鱼怎么繁殖,在哪里繁殖,什么时候繁殖吗? 这几个看似简单的问题却在很长时间内是科学界的一个谜。 前几天看了一篇文章《城读│鳗鱼问题:人类对知识与意义难以遏制的渴求》里面讲到了鳗鱼问题 - 数百年来,一代代科学家花费了大量精力去寻找鳗鱼从哪来,到哪去,它们又是怎么进化交配的。但至今鳗鱼身上仍有很多谜团尚未解开。 文章里面提到了美国海洋生物学家蕾切尔·卡森的一句话,让我印象很深: “遇到一条鳗鱼差不多就像遇到一个去过地球上最美丽、最遥远地方的人……鳗鱼去 过的神秘地方,是我——作为人类——永远无法造访的地方。 是呀,鳗鱼的世界我们没看过,但这不正是生命的意义吗 —— 还有那么多的未知等待着我们?去看没看过的风景,去做没经历过的事情,世界那么大,我想去看看! 每个人,每个动物,每种植物乃至于每个个体眼里的世界都是不一样的,那是属于自己的独一无二的世界,所以每条生命都是独特的,我们不必羡慕别人,你正拥有着这个宇宙里最独一无二的自己呢,这大概也就是宇宙的奇妙之处吧。

December 28, 2021 · 1 min · Wei XU