How to Print Backtrace for Debugging

作为客户端工程师,当我们监控到线上报警需要追查原因的时候,往往需要回捞用户日志。但很多时候日志打得并不十分全面。例如我们查看日志,发现用户出错的原因是某个函数传入的参数不合法,但由于调用方太多,并不知道是哪里在调用的时候传入了错误的值。如果能像 crash report 那样,打印出当前的函数调用栈就好了!

Call Stack

Backpropagation and Computational Graphs

我在大四的时候上过一门课叫 Computational Intelligence,当时有一次作业就是写一个简单的神经网络。遗憾的是当时并不了解向量化的含义,对反向传播的理解也只局限于每个神经元怎么更新自己的权重。可想而知,当时我写的是一个很不优雅、运行效率很低的程序。现在试着从另一个视角来理解神经网络和反向传播算法。

Neural Networks

How to Show Percentage Diagram on Kibana

我们经常通过 Kibana 来对一些线上监控数据做可视化。通过 Kibana 过滤、制作折线图等等都非常简单。然而有些场景下,我们并不关心数据的绝对值,而更想查看比例,例如某个 API 的失败率等。这个时候我们会希望绘制这样的一个折线图:x axis 为时间,y axis 为该接口的失败率。

Intro to Computer Graphics - Building 3D GitHub Contributions Graph

有这样一款插件,可以把 GitHub 的 contribution graph 用 3D 的形式展现出来,效果非常的炫酷。正好我最近正在看一些图形学的东西,干脆就自己实现一个可以动态旋转的 3D 图像来练练手。

First Aid Basics

我们把每天的绝大多数时间花费在职场中。掌握一些基本的急救常识,在意外发生时可以保护到自己以及我们身边的人。

AHA Heart Saver

Debugging iOS App Crashes with Hopper Disassembler

当线上的 App 发生 crash 的时候,我们总能收集到 crash 报告。很多时候,只看 crash 报告的崩溃堆栈信息就能帮助我们定位到问题了。但要想获得更多的信息,有时候就不得不去反编译我们的程序。

FM Radio Receiver with GNU Radio

GNU Radio 是用于设计、仿真、部署高可用无线电系统的框架。GNU Radio Companion(GRC)提供了一套具有图形界面的、面向 flow graph 的、模块化的信号处理方案,比较简单易用。最终,这个 flow graph 会生成一段 python 代码。

Listening to FM Radio with RTL-SDR

【RTL-SDR 上手】

Intro to LLVM IR

本文介绍 LLVM IR 的基本语法和结构。了解 LLVM IR 语法,对使用 LLVM 编译器也非常有帮助。

生成 IR 代码

Use GitHub Actions to Deploy Hexo Articles

This article is used to test GitHub Actions

背景

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×