关于更换新域名
关于更换新域名
ender.xin 改为 enderr.tech
老域名的由来
那是2017年,当时注册这个 ender.xin 特别随意,只是在购买阿里ECS后,弹出了 .xin 域名购买优惠的窗口,于是就有了这样一个域名。
为什么要换掉老域名
很本质的点就是, .xin 这个后缀并不主流,并且对我来说也并没有任何意义。其次, .xin 是阿里推动并独占的域名后缀,而新域名是在NameSilo注册的,在隐私保护方面相比阿里有显著优势。
新域名的意义
enderr.tech 这个域名是我朋友想到的,其中首先包含我名字 “Ender” ,其次还有 “EndErr” “终结错误” 这一含义,后缀 .tech 也更加 “Geek”。总之,这个域名还算比较有记忆点,我也是很喜欢这个新域名的。
「One more thing...」Apple Vision Pro 发布有感
「One more thing…」Apple Vision Pro 发布有感
前言
6月6日举行的WWDC2023中,苹果公司发布了他们的首款混合现实(MR)设备——Apple Vision Pro(以下简称VP) ,笔者当时正在看线上直播,当"One more thing…"字样在库克背后屏幕出现时,笔者感觉到无比的兴奋。结合目前WWDC与媒体所给出的信息,笔者想谈谈自己对新一代交互平台的思考。
之前的XR设备 VS Apple Vision Pro
XR 的概念可以追溯到十年前,而在苹果推出VP前,笔者对这类设备的短期前景非常不看好。
VR 设备让用户进入一个纯虚拟的数字世界进行交互,但目前的科技无法接管人的所有感觉系统(像电影《头号玩家》),所以用户在使用 VR 设备时,难免会出现身体感觉与视觉感觉不一致的情况,甚至引起晕眩。这样引起的眩晕相比画面刷新率与延迟引起的眩晕更难以解决,短期中期来看可能还走不通。(例如笔者用 VR 设备玩 Minecraft 就晕到难以进行)
而 AR & MR 设备的理念虽然不存在 VR 的问题,但在 VP 之前, AR ...
「一期一会|给北邮同学的技术半月刊」转载
「一期一会|给北邮同学的技术半月刊」转载
我的朋友们和我创办了「一期一会|给北邮同学的技术半月刊」,在这里转载一下。
介绍
「给北邮同学的技术半月刊」是由北邮计算机学院的同学们创办的技术半月刊,旨在为北邮的同学们提供一个技术交流的平台,让大家能够在这里分享自己的技术经验,学习到更多的知识。
我们的半月刊将发布在Github Pages上。您可以通过Watch我们的项目来获取最新的半月刊更新。如果您对我们的半月刊有任何建议或者想法,欢迎在Github上留言或者直接联系我们。
链接
「一期一会」首页: https://weekly.xlens.space
Github Repo: https://github.com/xLensSpace/xlensspace.github.io
微信小程序开发笔记
微信小程序开发笔记
我一直在想,有什么可以做项目的需求。有一天洗澡之前突然想出,可以写一个根据食堂菜单随机抽取某顿饭吃什么的小程序,来解决到了吃饭的时候不知道吃什么的问题。我觉得这应该是个强需求,于是就开始了微信小程序的开发之旅。
什么是微信小程序?
微信小程序的本质是一个网页,但是它的运行环境是微信内置的浏览器,所以它可以使用微信提供的一些API,比如微信登录、微信支付等等。微信小程序使用的语言是微信魔改的HTML(WXML)、魔改的CSS(WXSS)和JavaScript,但在我对相关资料资料的搜索中,我发现微信对魔改内容的介绍与文档并不详细,而且基于传统的HTML、CSS和JavaScript的开发效率并不如使用框架,所以我决定使用React框架来开发微信小程序,这样可以让我更专注于业务逻辑的开发。
工作栈梳理
我小程序前端使用的是基于京东凹凸实验室开发的Taro框架来使用React开发微信小程序,Taro是一个多端统一开发框架,它可以让我们使用React来开发微信小程序、H5页面、React Native App等等。Taro的工作原理是将React代码编译成对应平台的代码,比 ...
多线程与GPU编程
多线程与GPU编程
年轻人的第一次多线程。
这个工程源自我朋友在群中的提问:
抛硬币连续抛出 5 次正面朝上的期望是多少?
我没有啥数学思路,于是就写了个C语言程序去算,结果趋向于6.79726,和一个朋友的C语言程序结果一致,但是和另一个朋友的Python程序结果不一致,他的结果是62。
通过网上所给出的方法与结果(对于 NNN 次连续一面的问题,次数的期望是 2N−22^N - 22N−2 ),不难知道 62 是正确结果,我们遂开始研究。
通过测试,C语言的rand()函数所得到的随机数,奇偶在大数量级是均匀分布的,但连续 N 个奇数或者偶数的概率略低于实际概率。换用 C++ 的 mt19937 随机数算法(梅森旋转),将实验的循环次数提高到一亿次,所得平均值基本可以收敛到小数点后两位,但时间较慢,使用 i9 12900H 计算需要花费2分钟/1亿次。
C++ CPU多线程
于是我去学了C++的多线程。
通过C++的<thread>库,我们可以很容易的进行多线程并行。使用 i9 12900H 进行20线程计算一亿次迭代将只花费 2.5 秒左右。
需要注意的是,修改全 ...
「2048」Realized via HTML + CSS + JavaScript
「2048」Realized via HTML + CSS + JavaScript
https://github.com/EnderMio/2048
Intro
This project is a stage test held by our BluePrint Association to test our JavaScript level.
2048 is a classic game, which contains 4×44 \times 44×4 chess board and lots of numbers.
The codes
What I really want to talk about is the move function, because I wrote the movement of 4 directions into 1 function.
I find the mapping from column and row to number, via function numf, can be changed according to directions.
...
「Mathematics for Computer Science」学习笔记 - 证明
概述
第一部分: 证明
定义 一个 命题 的 数学证明 是从一个 公理 的基础集合推导出这个命题的逻辑推导链。
所以,命题、逻辑推导和公理是证明的定义中三个关键。
第一章: 命题
定义 一个 命题 是一个或是真或是假的陈述。
为了避开英语表述的模糊,数学家设计了一种针对表述逻辑关系的特殊的小巧语言,并且数学家赋予一些他们选中的英文单词(例如 “or”, “for all”)更精确的含义。搞懂这些词的含义是很重要的。
命题复合
如下的每个词都有对应的符号,我将提前把它们列在这里。
英语
表示符号
NOT(P)
¬\neg¬ P (或 Pˉ\bar{P}Pˉ)
P AND Q
P ∧\land∧ Q
P OR Q
P ∨\vee∨ Q
P IMPLIES Q (If P ,then Q)
P →\to→ Q
P IFF Q
P ↔\leftrightarrow↔ Q
NOT, AND, 和 OR
如果 P 表示任意一个命题,那么:
P
NOT(P)
T
F
F
T
如果 P 和 Q 表示任意一个命题,那么:
P
Q
P ...
「Mathematics for Computer Science」学习笔记 - 概述
Mathematics for Computer Science」学习笔记
因为我觉得离散数学在计算机专业的学习中比较重要,也因为这个大一下学期也就是这个学期,我们要开离散数学这门课,所以想通过写这个学习笔记督促自己阅读这本书 Mathematics for Computer Science 。但效果不理想
这本书的学习笔记我将分别写为若干篇博客文章,然后列在这里。
第一部分: 证明
Splay 代码模板
Splay 代码模板
前言
高三时候学的,先把代码摆在这,等有时间再更细的分析这段代码。
代码
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179struct Splay { ...
虚幻5学习笔记
虚幻5学习笔记
配置开发环境
跟着官方的安装流程下载好 Unreal Engine 5 。
开发虚幻5的C++项目需要安装 Visual Studio ,我在电脑上安装的最新版本,可以跟着官方文档进行安装与配置。
值得注意的是,第一次打开虚幻5引擎会自动进行长时间的编译操作。