Writings

I always consider writing a way to breath. I mostly write about what I am learning. Sometimes I write about other things.


Use iTerm2 and zsh

Author: WhexySHI

Developers should chase beauty and efficiency! Use a fantastic and productive terminal is better for developing great apps.

In this tutorial, you will learn to:

  • install iTerm2 and a little config
  • install zsh
  • install oh-my-zsh
  • powerline10k theme
  • many zsh plugins

使用 Latex Workshop 自带的 Latexindent 做论文源码格式化

冷知识:著名 VSCode 插件 Latex Workshop 出自我校教授之手。


Variance in Rust

I’m watching Jon Gjengset’s live coding stream. And the topic is “Subtyping and Variance”. This is my note.


macOS 的终极键盘改键方案

得益于 Karabiner 这款强大的应用,在 macOS 上进行键盘映射是非常方便的。我既想要丰富的键盘自定义快捷键,又想让它们不与编辑器、IDE 的快捷键冲突。在摸索了一段时间之后,这是我最舒服的改键方案。


理解 Rust 泛型特征 (Generic Trait)

在 Rust 中,特征(trait)也可以是泛型。引入泛型特征,一是希望特征不受具体类别的限制,二是希望特征具有更广泛的约束性。如果你不明白就点进来看吧。


Learning Rust: The First Day

“Everyone can learn a language during their breakfast.” I forgot who said that. Anyway, the language itself is not so hard. I simply put down some notes about the shiny things in the tutorial. You should not treat the page as a guidance to Rust. However, you can treat this as a check page after finishing learning Rust for the first time, to check if you understand all of this better than me 🙂.


我的第一个万行项目

今儿要扯的,是OOAD 课程的项目——SUSTeam。我们五人写了 4 个月,最后搞出了万行码量、相对完整的游戏平台。老师看了直呼内行直接给了满分。后端语言 Kotlin,框架是Vert.X。前端语言 TypeScript,框架是 Vue 和 Electron。提供 Java SDK,以及一个样例小游戏。

面向用户,SUSTeam 提供一个网页前端,主要用于浏览与购买。一个客户端,在网页基础上增加了本地游戏库、下载和更新的功能。面向开发者,SUSTeam 提供一个管理平台,以及接入平台服务的 SDK。


Inline Assembly Language in C

Writing assembly code is hard and boring! However, if you want to set regisiters, read memories, sometimes you must do the “dirty work”.

Luckily we have GCC’s help. GCC provides a keyword asm, which allows you to embed assembler instructions within C code. C language definitely saves our life.


React 学习笔记

阅读 React文档 后的笔记


为 Apple Watch 写一个校巴时刻表工具

一转眼,SwiftUI 已经推出一年了。随着这个框架的流行,苹果软件开发的门槛也进一步降低,低到我也能踮踮脚够进去了。这个暑假,由于疫情的原因,原定去新加坡国立大学的暑期交流取消了。于是,计划已久的 SwiftUI 探寻就提前开始了。


数据库原理期末项目:模仿12306的全国火车票务管理系统

大学生活过去一半,课程Project一点没少。上个月我和队友H一起攻坚克难,做出了一个像模像样的火车订票系统。这个系统拥有查票、中转、订票、余票查询、线路管理等等功能。乍一看是普普通通的数据库大作业。不过在奇怪的地方,颇有些亮点。


Sakai 和本地文件夹同步

支持 WebDAV 的网络服务不多,「坚果云」是我最喜欢的一个。不过,学校老师经常用来发布课件和作业的 Sakai 系统竟也支持使用 WebDAV 协议。通过配置本地的 WebDAV 服务,就能轻松下载课程资源,省时省力。


不要瞎买键盘!批判消费主义键盘风

键盘这玩意,的确是有门道的。但是对于我等这些连计算机行业门道都没摸清楚的人来说,傻乎乎跟风追求某种所谓“键盘”的感觉是没有必要的。同样,倘若连大鼓和军鼓的声音都无法区分,却畅谈某某耳机“低音准高音稳中音甜”,只会让人好一顿嘲笑。


用两个晚上做超简易OpenJudge

在水 DSAA 群的时候,经常遇到有做不出题目的同学求样例。我校的 DSAA 题目都是曾经参加算法竞赛的同学设计的,或多或少带有一些算法竞赛上的血腥味。


给路由器配一个自动登录南科大校园网的脚本

我校的校园网还就是与众不同,post提交的数据包不是轻易就能弄明白的……内含 bash 正则表达式