Restāre
迟来的阶段性总结,也包含一些毕业后到现在半年时间里的一点点感受。 正如三年前在 Epilogue/Prologue 提到的,那个时候选择继续上学是一个动态的选择。正好卡在保研线边缘,但如果能够在腾讯转正也会选择直接工作,退一步那就是考虑继续上学。继续在学校有一个好处是能够有时间精力去继续看区块链的东西。实习那三个月里发现,在公司里的工作室基本上是没有时间去关注的,而到周六周日只想休息,很少能有余力继续关注币圈。而如果继续上学去一个对时间的管理没有那么严苛,又和区块链相关的实验室,就能比较好地兼顾两边。目前来看的话,这个选择也没有很大的差错。 回想了一下,这三年相比于本科的四年更空洞了一些。很大程度上是因为硕士的这段时间更偏向于工作一些,在第一年完成课程后就一直重复过着每一周:完成所谓的科研任务,然后在其中某一天汇报。也就只有在暑假的时候,出一趟远门往西边跑才会觉得日子长了很多。而第一年的研究生课程也很难找出有用的,无非就是把本科的课程提升一点又重新上,以及多了一些除了耗费精力之外没有什么意义的小组作业。唯一有用的就是张老师的高级密码学,让我能够水一水论文里不那么严谨但是也煞有...
濑户内海|高松
很早就莫名地想去濑户内海,或许是因为本科的时候无意间刷到过被称为最后的猫岛的男木岛的缘由,也或许是因为看过的那部和濑户内海几乎没有关系的电影《濑户内海》。细说回来也不是第一次到濑户内海,三月底乘坐了从北九州到大阪的「名门大洋号」就是从濑户内海直穿而过,而随后巡礼的神户也在海边上。但是脑子里却没有到过濑户内海的感觉,反而更像往日开车经过某个地方后,被地图软件标记为「去过」一样。既然这样,那就“顺路”去看一看吧。 乌冬面之国 四国岛是日本四岛之一,由于人口和地形多方面的因素导致它没有被新干线连通。所以在不乘坐巴士或者能包车的情况下,只能通过新干线到达冈山后换乘 JR 到达。JR 和新干线的关系类似于国内的火车和高铁。对于已经许久没有坐过高铁的我来说,这样的换乘通常需要先出站再入站。带着这样思维的我在同站换乘时看到改札口的一个闸机时就犯了难,因为在刷二维码后没法正常出去。好在在车站工作人员的帮助下,才搞明白是要先刷二维码再刷西瓜卡,这样实际上就是把出战然后进站的过程结合在了一起。依然还能记得在刷西瓜卡成功进站后,工作人员竖起大拇指还用一种关切小朋友的目光看着我,好像在夸着「偉大偉...
微雪墨水屏简单开发记录
毕业的事情忙完了开始搭建自己的信息收集渠道,然后电脑桌边上需要一个常量显示即时信息,但是又不需要亮着的玩意儿,那么就只能是墨水屏了。 这篇博文选用的是微雪的 7.5inch HD e-Paper V2 + ESP32 带 WIFI 的开发板来实现信息的渲染,微雪官方提供了对应的 Arduino 开发库和示例程序。 最开始在某宝看到这个套装还以为 ESP32 提供的 ESP32 WIFI 渲染程序是有一个接口的,可以在装载启动后直接提供一个内网的服务用来发送图片上去渲染。也就是官网的 WIFI 例程:https://www.waveshare.net/wiki/E-Paper_ESP32_Driver_Board。 在拿到板子后刷进去才发现,这个例程确实提供了一个网页用来上传图片并且进行采样生成 LCD 图片,但是它没有一个具体的接口,而且一张图片上传渲染完成之后就会关闭服务,所以需要达到自己想要的效果也就只能自己写程序了。示例程序可以用来测试一下板子正不正常,第四步里一种尺寸的板子有不同的型号,也需要正确选择才能正常渲染。 渲染接口ESP32 的示例程序里有一个名为 esp...
秩父市圣地巡礼|未闻花名
那朵花,一定还在某处继续绽放着。 如果不是因为在 16 岁的那个夏天点开《未闻花名》这部动漫,或许一辈子也不会知道秩父这座小城,也不会在八年后的初夏来到这里。在那个年纪初看动漫时并没有得到很大的触动,随着年龄的增长反而开始缅怀这样的青春和友情了。在去到秩父市之前已经在日本玩了一周,从福冈一路北上刚到东京。东京也有很多经典动漫的取景地,但是太多太杂,并且在东京又开始感受岛熟悉的大城市的感觉和“班味”,所以并没有在东京逛太多地方。而秩父这样的地方很能满足我对小城市在心理上的偏爱,所以在东京的三天时间单独留了一天来逛一下这座小城。 很有意思的是《未闻花名》最开始就有在动漫里提到秩父,也就是封面图的秩父牛奶,但是刷过很多次也没有留意过地名。 从东京去秩父最方便的就是搭乘电车,在池袋站出发搭乘西武铁路可以经过一次换乘后到秩父,电车的时刻信息可以在雅虎的【换乘案内】应用上查到(iOS 需要日区账号下载,新干线、JR 的交通信息也可以在上面查询)。圣地巡礼也少不了一个地图,最方便的自然就是巡礼地图 anitabi.cn 了,可以查到大部分动漫的取景地信息。 在巡礼之前查询到的信息都...
Solidity 编程优化策略
深入学习一点 Solidity 的优化方法,不然很多时候书到用时方恨少,主要内容来源于 The Optimization Iceberg 还没完全写完,有空了再补充(挖坑) 数据存放原理在 EVM 中,存放数据的位置有 stack、calldata、memory、storage、code 和 log stack:即运行时栈,用于保存 EVM 指令的输入和输出数据。stack 的最大深度为 1024,在运行的时候只能访问栈顶的 16 个元素[1],每个元素的长度为 256 bits; calldata[3]:函数调用的输入,对应的是交易的 data 域。在正确调用合约时,calldata 的前 8 个字节用于指定函数,后跟的数据用于存放调用参数; memory:临时的数据存放区域,在函数运行期间存放数据,在函数结束运行后销毁。在运行前 memory 是空的,每一次需要使用 memory 时会进行扩容,如果访问 memory 的数据超出页面大小,它会自动增大 32 字节,扩容需要耗费 gas[2]; storage:用于对数据进行持久化的存储,它以数据槽(slot)为单位进行数...
Golang 插件技术
应用程序中的插件功能可以通过 4 个基本概念来描述[1]: Discovery(发现):用于正在运行的程序找出它可以使用哪些插件的机制,需要给应用程序指定查看什么位置(工作路径)以及需要查找什么; Registration(注册):用于插件告知应用程序 - I’m here, ready to do work 的一种机制,将插件载入到应用程序中; Hooks(挂载点):插件可以将自身”附加”到应用程序的位置,表明它可以获取信息并参与流的范围,挂载点的确切性很大程度上取决于应用程序的设计。这个过程时插件注册自己的功能到应用程序,再由应用程序调用插件的方法(应用程序 -> 插件); Extension API(扩展 API):应用程序需要公开插件可以使用的 API,用于授予它们对应用程序的访问、调用权限。这个过程是应用程序提供一些方法给插件,插件再运行时进行调用(插件 -> 应用程序); Golang 中的插件可以根据实现方式划分为三种:编译时插件、运行时插件、远程调用插件 远程调用插件通常通过 IPC、RPC 或 TCP 通信的方式来实现,插件作为一个独立的进程...
部分签名交易
部分签名交易(Partially Signed Bitcoin Transaction, PSBT)是在 (BIP-174)[https://github.com/bitcoin/bips/blob/master/bip-0174.mediawiki] 中提出的一种交易格式,它使得用户可以对交易中的一部分输入进行签名,最后和其他用户的输入一起组成新的交易。这种交易格式的应用在于: 离线钱包签名:观察签名进行交易的构造,随后由冷钱包完成签名,最后再广播到节点上,从而保证冷钱包的安全性; 多方交易:多个签名者之间传输交易,最后组成新的交易; NFT 市场:现有的铭文协议中,通常使用 PSBT 来构建买卖双方的交易,由 Dex 完成组装后完成双方的交易; PSBT 规范PSBT 的格式由一系列的键值对映射组成,键值对由 0x00 作为终止符,其二进制下的å格式如下[1]: 1<psbt> := <magic> <global-map> <input-map>* <output-map>* 依次对应每个值,有: 1234&...
P2P 网络自引导技术
毕业设计相关的内容查了一些论文,好像也没有什么太多的发展,基本上都是2009年左右的内容了,算是稍微整理一下。 自主引导问题:端到端网络(Peer-to-Peer, P2P)网络通常需要一个或一组引导(Bootstrap)节点。在 P2P 网络中,引导也是唯一一个中心化的任务,新节点需要依赖引导节点的帮助来发现其他的节点并建立连接。现有的 P2P 系统会在软件内置一个引导节点列表,新节点在启动时通过这个引导节点列表依次去请求加入网络。那么,是否存在一种技术,使得运行同一个 P2P 服务的节点可以直接发现其他同类节点,而不需要引导的帮助。 随机地址探测一种暴力的地址探测方法[1],即在固定端口下随机抽取 IP 地址进行探测,运行了同样 P2P 应用的主机会进行响应 但是这样的方法只能适用于规模较大的 P2P 网络,例如 BitTorrent 基于 IPv6 的随机地址探测IPv6 简介IPv6 地址[3][7]的长度为 128 bits,在实际使用的时候写为 16 进制的字符串,每 32 bits 作为一个分组,以冒号作为分隔符 即每个 IPv6 的地址的通用格式为 x:x:x...
甘孜州五日游记
锲子 这篇游记本来是没有打算写的,过去两周后的现在还是觉得比较值得回味,所以就简单地记录一下。 原本预想的是把五一的假期挪到五月底跟着研三的师兄们出去玩,结果去新疆的师兄们行程太长,其他的师兄也没动静,就变成了笔者自己规划的一趟反穿川西小环线。 在临出发之前问了一下在华科的学长有没有想法,所以这一趟行程就是两人一车。 笔者前面几次环线的规划都只是用高德地图画一下路书,然后查查途径点的店,做个收藏点就完了 这一次尝试着用 notion 来规划,发现它的整合功能还是强大很多,也算是趁着这个机会入门 分享一下行程规划的工具: Google XML 路线绘制与导出:My Maps - Google Map 高度图生成:导入 XML 路径文件到 Google Earth 后可以生成高度信息(这个便于看一路上的海拔信息,特别是在川西这种海拔落差比较大的地方很实用) 路书绘制:高德地图 整体行程信息汇总:Notion 天气、云图观测:Windy 通常的小环线攻略是三天的行程:成都-小金/丹巴、小金-塔公-新都桥、新都桥-折多山-泸定-成都 考虑到是头一次走这个路线,就把行程反了过来...









