跳转至

misc

预告 Learn-Project 4.0 版

不知道大家听没听说过 Google Chrome 有个插件,叫做 Learn Project,是一个网络学堂的改良前端。不过,随着网络学堂的不断更(xia)新(gao),它已经不再适用于现在的版本。于是,哈利橙(@Harry-Chen)决定利用寒假时间,在今天(2.17)之前完成 Learn Project 4.0 的开发。为什么叫 4.0 呢,因为哈利橙课程的 GPA 众数是 4.0。这个版本采用先进的 React 框架编写(Vue 塞高),使用了 Material Ui 作为界面框架(这我觉得可以),目前的一个参考图(图源哈利橙):

看那满眼的高分数,希望 Learn Project 4.0 能在 flag 倒下之前完成。

每周分享第 11 期

对不起迟到了(

  1. Google 的 fuzzing 家族又来了个新成员 太喜欢造轮子了 https://github.com/google/clusterfuzz
  2. 有趣的文本生成工具 https://github.com/TheBerkin/rant
  3. 又一个 side channel attack https://www.nccgroup.trust/us/about-us/newsroom-and-events/blog/2019/february/downgrade-attack-on-tls-1.3-and-vulnerabilities-in-major-tls-libraries/
  4. 来自 Prof Fan 的一个 cf dns 权限限制分发的工具 https://github.com/ProfFan/cloudflare-proxy-rs
  5. 部署到了我的博客的小工具 大家体会到了吗 https://instant.page/
  6. 教育性质的 C on web https://vasyop.github.io/miniC-hosting/
  7. 激活清华教育版 win10? --> dig +short TXT win10.harrychen.xyz
  8. windows95 v2.0 发布(误 https://github.com/felixrieseberg/windows95/releases/tag/v2.0.0
  9. 已经部署到 tuna 的 rustup-mirror crate https://github.com/jiegec/rustup-mirror
  10. Forth 也能有 http 服务端框架 http://www.1-9-9-1.com/
  11. bartender 的开源替代 实测可用 https://github.com/Mortennn/Dozer
  12. 给不支持 pac 的客户端在 http proxy 上套一层 https://github.com/williambailey/pacproxy

每周分享第 10 期

新年快乐!

  1. Haskell to WASM compiler https://github.com/tweag/asterius
  2. A ssh tarpit that sends endless banner https://github.com/skeeto/endlessh
  3. Use rust to write UEFI app https://github.com/rust-osdev/uefi-rs
  4. 神奇的小游戏 https://yeahpython.github.io/game/game.html
  5. 又一个后端 rust web 框架 https://github.com/seanmonstar/warp
  6. 挺酷的一个网站 https://github.com/pomber/github-history
  7. ws 调试工具 https://github.com/vi/websocat
  8. React Hooks 进入正式版 https://reactjs.org/blog/2019/02/06/react-v16.8.0.html
  9. 又一个关于硬件的 wiki https://wikidevi.com/wiki/Main_Page
  10. virtio-fs 项目 旨在替代 virtio-9p https://virtio-fs.gitlab.io/
  11. SergioBenitez 镜像了一份去年的 CS140e https://cs140e.sergio.bz/

每周分享第 9 期

  1. IDA Loader plugin for some Nintendo rom https://github.com/w4kfu/IDA_loader
  2. websocket daemon http://websocketd.com/
  3. 实时的游戏开发器 https://script-8.github.io/
  4. 硬核逆向 Leica 相机的固件 https://alexhude.github.io/2019/01/24/hacking-leica-m240.html
  5. 做 CTF 时遇到的整数溢出的 CVE https://www.anquanke.com/post/id/104182
  6. 发现一个 speedtest 的轮子 https://github.com/adolfintel/speedtest
  7. 西数的 RISCV 核实现 https://github.com/westerndigitalcorporation/swerv_eh1
  8. iOS 12.2 会有更多的 PWA 兹瓷 https://twitter.com/mhartington/status/1089292031548145666
  9. 代替死去的 git-up: git config --global alias.up 'pull --rebase --autostash'
  10. 利用已知明文破解旧版加密 zip 的工具 https://github.com/kimci86/bkcrack
  11. 在线看 jwt 内容 https://jwt.io/
  12. JS 的 Lua VM https://github.com/fengari-lua/fengari
  13. 鲁棒但不优雅的前端 KV https://github.com/gruns/ImmortalDB
  14. Emacs Modules doc https://phst.eu/emacs-modules
  15. 用 IPv6 的 Flow Label 实现类似 MPLS 的效果 https://github.com/wenxin-wang/flowlabel-switching
  16. 又一个 JS 实现的表格 https://github.com/myliang/x-spreadsheet 类似以前用过的 handsontable
  17. @shankerwangmiao 推荐的光纤教程 http://www.kepu.net.cn/gb/technology/telecom/fiber/fbr215.html
  18. 用 Rust 写 iOS App https://medium.com/visly/rust-on-ios-39f799b3c1dd
  19. Build Once, Run Anywhere 还行 https://wasmer.io/
  20. 挺科学的 DNS proxy https://github.com/AdguardTeam/dnsproxy

THUWC 2019 小记

前段时间,以工作人员的身份参加了在广州二中举办的 THUWC 2019。作为一只菜鸡 OI 选手,我没想到过我会以另一种身份参与一个我本来没能参与的活动,就好像以暑校辅导员的身份参与清华暑校一样。

提早来到了赛场,布置场地,然后把机考的各个流程都过一遍,记住各个细节,各方面都有条不紊地进行,看着第一场前同学们特别激动地冲入考场,到最后一场同学们考完后的释放,在同学们身上看到了很多不成熟的样子,看到了兴奋想要和同伴分享的喜悦,也看到了不甘的眼泪。

希望各位强大的选手们可以来到九字班、零字班乃至一字班,享受课改的乐趣吧嘿嘿嘿

每周分享第 8 期

这周更加忙了,所以内容不多。

  1. Rust 1.32.0 is out 其中 dbg macro 挺有意思 https://blog.rust-lang.org/2019/01/17/Rust-1.32.0.html
  2. 在线的 hex packet decoder https://hpd.gasmi.net/
  3. Rust Cheatsheet https://www.breakdown-notes.com/make/load/rust_cs_canvas/true
  4. Rust tcp/ip stack https://github.com/m-labs/smoltcp
  5. 逆向 CAJ 的转换器 https://github.com/JeziL/caj2pdf

每周分享第 7 期

这周比较忙,所以内容不多。

  1. 在嵌入式系统里跑 Lisp 可以在串口开个 repl 在线调试 http://www.ulisp.com/show?3J
  2. Pattern matching for C++ https://github.com/solodon4/Mach7
  3. 一个商业版的类似 ASan 的产品 不知道效果如何 https://stensal.com/
  4. 用 Python 写 Cocoa 界面还行 https://dawes.wordpress.com/2017/08/17/python-with-a-cocoa-gui-on-macos/
  5. Rust 实现的权威搜索引擎 https://github.com/toshi-search/Toshi
  6. Rust Embedonomicon 讲述 Rust 在 bare metal 下的一些神奇操作 https://docs.rust-embedded.org/embedonomicon/preface.html
  7. 发现另一个基于 Github 的 Disqus 替代品 https://utteranc.es/
  8. 挺好的一部讲 Rust 生命周期的小书 http://cglab.ca/~abeinges/blah/too-many-lists/book/README.html
  9. 跨平台的 Ctrl-C 处理 for Rust https://github.com/Detegr/rust-ctrlc
  10. 用 Rust 写 stm32 上程序所需要的库 https://github.com/stm32-rs/stm32-rs
  11. go 语言编写的基于 fuse 的加密文件系统 https://github.com/rfjakob/gocryptfs
  12. Rust 的图片解析库 https://github.com/PistonDevelopers/image
  13. 用 BPF 做 API 解析和过滤 https://github.com/cilium/cilium
  14. 学到了 x86 又一个指令集 bmi2 https://github.com/jordanbray/chess
  15. FoundationDB 推出 Record Layer 名字十分贴切 https://github.com/foundationdb/fdb-record-layer/
  16. 一个开源的教室电脑监控系统 https://github.com/veyon/veyon
  17. DNS flag day https://dnsflagday.net/
  18. Rust stable 1.32.0 发布 https://blog.rust-lang.org/2019/01/17/Rust-1.32.0.html dbg 宏好评
  19. 各 MacBook 的 Linux 支持情况一览 https://github.com/Dunedan/mbp-2016-linux

每周分享第 6 期

今天刚迁移了域名到 jiege.ch,原来的 jiegec.me 会自动跳转过来,链接什么的都不用变。

  1. Rust 的 cfg! 宏只是返回 bool 而不会影响内部是否被编译 如果需要 if constexpr 的效果需要用 cfg-if
  2. 基于 HTML5 canvas 的图表库 Chart.js
  3. Endianness MATTERS! -- Harry Chen
  4. 各数据库的带补全的 CLI https://www.dbcli.com/
  5. 边开发边测试 k8s 部署 tilt
  6. Github unlimited free private repos 于是称为了 PRO 用户 https://blog.github.com/2019-01-07-new-year-new-github/
  7. Github 美食博主还行 https://github.com/hendricius/pizza-dough
  8. 一个用于本地化的库 https://github.com/dustin/go-humanize
  9. Vim Verilog 补全 https://github.com/vhda/verilog_systemverilog.vim
  10. homebridge 网页前端 https://github.com/oznu/homebridge-config-ui-x
  11. Zigbee 2 MQTT Bridge 需要额外的设备 https://github.com/Koenkk/zigbee2mqtt
  12. gdb 的网页 gui https://github.com/cs01/gdbgui
  13. Rust 一键 par iter https://github.com/rayon-rs/rayon
  14. 挺好看的 hex viewer https://github.com/sharkdp/hexyl 可以配合 bat 滚屏
  15. gitalk 基于 Github issues 的评论系统 类似 Disqus https://github.com/gitalk/gitalk
  16. 根据蓝牙连接键盘与否改变键盘布局 https://github.com/jwilm/alacritty/wiki/Automatic-MacOS-Keyboard-layout-change-for-Bluetooth
  17. 8.8.8.8 加入 DoT 家庭 https://security.googleblog.com/2019/01/google-public-dns-now-supports-dns-over.html
  18. 恢复损坏的 QRCode 工具箱 https://merricx.github.io/qrazybox/
  19. 通过同时修改两个芯片的 PLL 达成了非标准的 Wi-Fi 通信还行 https://hackaday.com/2019/01/04/underclocking-the-esp8266-leads-to-wifi-weirdness/
  20. inline x86 asm in go https://github.com/mmcloughlin/avo#readme

每周分享第 5 期

2019 年第一篇博文,祝大家新年快乐。最近忙于期末,没怎么搞事情,所以暂时没有关于别的内容的博文。

  1. 发现一个很好看的 http web server index 就是不再更新了 h5ai
  2. 录制 DOM 变化并且重放 rrweb
  3. C++ 中的 Lazy Sequence 实现 lazyCode
  4. 来自 Berrysoft 的 Windows UWP 校园网认证解决方案 TsinghuaNetUWP
  5. 中科大老运维的笔记 ITTS
  6. Go 源码研究电子书 目测还在编写,不过读来挺有收获的 go-under-the-hood
  7. 第一次了解到 ELF Aux Vectors auxv
  8. 发现了 C99 的参数列表里 static 数组大小语法 static array indicies
  9. 发现一个有趣的包装了 socket 的消息库 支持一些消息分发方法 nanomsg
  10. 找到一个可视化 YUV 和视频解码的一些内部信息的工具 YUVView
  11. 通过动态 QRCode 传输数据 txqr qr-transfer
  12. 发现一些很好看的 CSS 动画 10-stunning-css-3d-effect-must-see 其中最神奇也最复杂的是 这个
  13. Android runtime 中动态获取权限的库 Dexter
  14. 来自 Berrysoft 的 Stream operators in C++ CppLinq
  15. Squirrel (Rime for macOS) 在两年以后终于出了 0.10.0 新版本 有了好看的新皮肤
  16. 神奇的 v8 漏洞利用 实在是太复杂了 exploting math expm1 in v8
  17. JWT How-to 发现 Koa 和 Flask 的 session 默认实现也是同样的原理 learn-json-web-tokens
  18. 配置 DNS CAA 的在线工具 限制 CA 签证书的方案 sslmate caa
  19. 又一个 Python 的 Parser 库 配合有趣的 decorator 语法 sly
  20. 自动配置 webpack 的库 Jetpack jetpack
  21. eBPF tutorial learn ebpf tracing
  22. 图片 xkcd-ify 太有趣了 xkcd-style plots
  23. 又一个 Vue 的 rich text 控件 tiptap

每周分享第 4 期

咕了更长的时间。

  1. Header only JIT assembler https://github.com/herumi/xbyak 想找个时间玩玩 JIT
  2. Rust 实现的 Babel 转译 https://github.com/swc-project/swc
  3. 又一个瀑布流实现 https://github.com/e-oj/Magic-Grid
  4. 马上可以体验 HTTP/3 的库 https://github.com/djc/quinn
  5. Logitech Spotlight Presentation 挺好用的 配套软件的安装过程和使用都挺好的
  6. Server side canvas https://github.com/Automattic/node-canvas
  7. 边看 youtube tutorial 边写代码 https://yourepl.tumblr.com/post/180936303347/announcing-yourepl
  8. 又一个 PostgreSQL 网页版客户端 https://github.com/sosedoff/pgweb
  9. 有趣的 CSS Layout 学习方法 http://cssgridgarden.com/#en http://flexboxfroggy.com/
  10. pipenv 也有过 easter egg https://github.com/pypa/pipenv/issues/786 不过影比 antd 这个事情好多了
  11. Web 太强了 啥都能做 https://whatwebcando.today/
  12. 来自娄晨耀的清真 DNS 解决方案 https://github.com/Chenyao2333/freedns-go
  13. 快速的 tldr 实现 https://github.com/dbrgn/tealdeer
  14. MongoDB Data Source for Grafana 可以用 就是 aggregation 不大容易写对 https://github.com/JamesOsgood/mongodb-grafana
  15. Fish 3.0 发布“fish now supports && (like and), || (like or), and ! (like not), for better migration from POSIX-compliant shells (#4620).”

每周分享第 3 期

因为 DDL,咕了一小会。

  1. 被 Windows 保存为 Unicode 文件坑了 BOM 配上 UTF-16 太难受了
  2. Github 最近添加了很多 Issue 方面的更新,如 Pin 和 Delete
  3. Grafana 真的很好看很好用 推荐大家自己配一套监控系统
  4. Microsoft Remote Desktop Beta 新增了 AVC Codec 有意思 不知道啥时候上 HEVC
  5. 发现一个很好玩的用 Rust 写的网页游戏 https://sandspiel.club/#
  6. Python Pattern Matching https://github.com/santinic/pampy
  7. 大新闻:MIPS Open Source 了 https://www.eetimes.com/document.asp?doc_id=1334087
  8. GRPC 调试的 GUI https://github.com/uw-labs/bloomrpc 对标 Postman
  9. 酷炫的屏幕保护 for Mac https://github.com/JohnCoates/Aerial
  10. WPF 开源了 不知道啥时候支持 *nix https://github.com/dotnet/wpf
  11. 分享欢乐 https://github.com/dotnet/wpf
  12. 分享欢乐 x2 https://lore.kernel.org/patchwork/patch/628142/
  13. 谷歌近日到处上线了 Material Design 2.0 感觉风格不大习惯
  14. veonim/veonim 的 Tag 里有 #meme-driven-development 太好笑了
  15. 巨硬开源了自己的 UEFI 和 TianoCore EDK 竞争 https://blogs.windows.com/buildingapps/2018/12/19/%e2%80%afintroducing-project-mu/
  16. Github 的 GDPR 完全体上线 https://blog.github.com/2018-12-19-download-your-data/
  17. ZFSonLinux 要统治 ZFS 世界的节奏 https://lists.freebsd.org/pipermail/freebsd-current/2018-December/072422.html
  18. VBScript 真的是太多漏洞了 满目疮痍 https://googleprojectzero.blogspot.com/2018/12/on-vbscript.html
  19. 原来取名真的这么草率的吗 我也想买一个了 https://www.solidot.org/story?sid=59028

每周分享第 2 期

继续,继续。

  1. 用代码呈现硬件实现对性能的影响,值得一读 链接
  2. 发现了一个蛮少见的编码标准 AVS2,才发现是中国主导的 编码器
  3. linux.org 的 DNS 被篡改了,认准 kernel.org 即可
  4. 一个处理器的电路的在线可视化 ARM1 visualized
  5. WASM 家庭现已加入 Nginx 链接
  6. 用 .bat 编写汇编语言 mnnip/BOOTSTRA
  7. Gitlab 挺香的,兹瓷 git-lfs,还可以自己给自己的项目配一个 ci runner
  8. LaTeX 的 subfigure 之间如果有空行,就真的换了一行,所以同一行的 subfigure 不要换行
  9. Rocket 4.0 出了,看起来不错,要是作者更新一下 CS140e 就好了 链接
  10. 装机必备,查询 Arch Wiki arch-wiki-man
  11. LaTeX 里 \newcommand 时,如果文件名有多个 '.' ,要特殊处理 链接
  12. RunAsDate for *nix wolfcw/libfaketime
  13. 用数据库做数据分析似乎是个不错的选择
  14. Canvas 配合 globalCompositionOperation 能做到不少东西
  15. 才知道有 Time Machine over SMB 这种操作 链接
  16. mDNS repeater 把两个子网的 mDNS 打通 kennylevinsen/mdns-repeater
  17. Office 2019 for Mac 的 December 2018 release 添加了 Dark Mode,并且也支持了 Continuity Camera,直接从手机拍照导入
  18. Gitlab serverless 发布,期待 链接
  19. 用 NAS 作为 Time Machine 备份盘的方法 链接
  20. 研究了一下,Time Machine over SMB 在 macOS 里的表现形式是 apfs 里写了一个 sparse bundle,bundle 里面是 HFS+ 。

每周分享第 1 期

向阮一峰学习,把自己在一周里看到的有趣的事情分享一下。不过形式就比较随意了。

  1. 最近写 MongoDB + NodeJS 学到的新操作:$addToSet $nin $ne Mongoose 的 setDefaultsOnInsert
  2. Promise 真香,真好用
  3. 几天前惠老师还在说 "IE, The best Chrome Downloader Downloader, ever" 今天 EdgeHTML 就宣告死亡了
  4. WPF, Windows Forms 和 WinUI 开源了,mono 这是要凉? 链接
  5. 有人逆向了 FPGA 的 bitstream 格式,希望 FPGA 有朝一日可以进入 开源时代? 链接
  6. 造机的 baseline 就决定是
  7. 根据 AST 炼丹判相似度还行,好奇它跨语言的预测水准 链接
  8. 可视化 h264 nalu 的软件 H264Naked (做的好糙啊,想交 pr)
  9. ffprobe -show_packets 和 ffprobe -show_frame 真好用
  10. 发现一个解决 ArchLinux 滚内核后无法 modprobe 的方案
  11. 010 Editor 和 Hex Fiend 是二进制分析的神器啊... Kaitai 还有待加油
  12. CSS-in-JS for ClojureScript 真香 有空可以试试用 ClojureScript 写前端
  13. Safari Technology Preview 71 加入了 Web Authentication 这是要支持 U2F 的节奏?
  14. Grafana+InfluxDB+Telegraf 真科学,随手写了一些简单的 Telegraf 的 input plugin
  15. 给 010 Editor 写了俩 .bt 文件,见我上一篇博客
  16. 海思 cc 居然支持 ASan : /opt/hisi-linux/x86-arm/arm-hisiv600-linux/arm-hisiv600-linux-gnueabi/lib/a7/libasan.so
  17. 遇到了 设备名有空格导致 telegraf 读取 S.M.A.R.T. 信息失败 的锅,不过似乎没人修
  18. 看到了一个很有意思的 Interview Pass Rate 关于使用的编辑器的调查,很有意思 链接
  19. 发现一个 JSX 的替代品,用了 Template literal syntax,挺好的 链接

也不知道能不能坚持下来,就这样了,发布(逃

Unicode En Dash 小坑

今天有同学问到我这个问题:

$ gcc -o ph ph.c –lpthread

为啥不工作。我怎么看都觉得没啥问题,一开始以为是找不到 pthread,但马上又排除了。想了下会不会是有隐藏的字符,于是让同学 pbpaste | xxd 一下,果然发现这里的 \xe2\x80\x93 ,查了下是 Unicode 里的 En Dash。由于这是从 PDF 里直接拷贝出来的,所以凉了。改成正常的短横杠即可。

配置 fcitx-fbterm 实现在终端下显示和输入中文

参考网站:

Ubuntu 使用 fbterm 无法打开 fb 设备的解决及 fcitx-fbterm 安装 Fcitx - ArchWiki 完美中文 tty, fbterm+yong(小小输入法) 让 linux console 支持中文显示和 fcitx 输入法

考虑到 lemote yeeloong 机器的 cpu 运算性能,跑一个图形界面会非常卡,于是选择直接用 framebuffer。但是,显示中文又成了问题。于是,采用了 fbterm 和 fcitx 配合,加上 gdm 的方法,完成了终端下的中文输入。

首先,安装相关的包:

$ sudo apt install gpm fcitx-fronend-fbterm dbus-x11 fbterm fonts-wqy-zenhei

接着,基于以上参考网站第一个,编写 zhterm 文件:

$ echo zhterm
#!/bin/bash
eval `dbus-launch --auto-syntax`
fcitx >/dev/null 2>&1
fbterm -i fcitx-fbterm
kill $DBUS_SESSION_BUS_PID
fcitx-remote -e
$ chmod +x zhterm
$ zhterm
# Use C-SPC to switch input source

另:找到一个映射 Caps Lock 到 Escape 的方案

$ sudo bash -c "dumpkeys | sed 's/CtrlL_Lock/Escape/' | loadkeys"