siwu's blog

    Simplify your life with OpenClaw - 1

    I initially thought OpenClaw was just another toy, but after using it for a while, I realized how powerful it is. It reminds me of Tesla's FSD—something you don't trust at first, but once you try it, you'll never go back.

    Integrating Rust Libraries in Android

    This article introduces how to integrate a Rust library into an Android project.

    Raft Implementation Notes (6.824 2021 Spring)

    Completed my new year's resolution: Implement raft & raft based distributed kv store.

    Building CRUD with Rust

    This is the first article in the Rust series. While Rust is known for its high performance, for simple CRUD we usually prefer Spring Boot or Go. But it's not impossible with Rust either. Code available at: https://github.com/gaxxx/rust-crud

    Setup Go for Android

    Build Android App in Android Studio with Go(1.4.1) support.

    Lapis on OpenWrt

    Heard that my former company's product was exhibited at CES. Happy that the remaining team members are doing great. This also reminds me of a framework (lapis) I worked with back then.

    Scraping JavaScript-Based Dynamic Pages

    Recently worked on a project that required scraping dynamic web page content. Accumulated some experience, here's a brief summary of web scraping techniques.

    Web Application Architectures (ROR)

    Recently completed a course on Web Application Architectures. I originally planned to borrow some architectural ideas and build a simple CMS application with Go, but after finishing the course, I found that ROR development efficiency is quite good and it auto-generates a lot of code.

    Introduction to Docker

    Docker is a PAAS platform service software written in Go. It controls LXC services to provide hundreds or thousands of LXC containers on a single host, far more efficient than SAAS.

    Nginx Variable Lifetime

    In nginx, variables come in multiple forms. Generally within the same location, variables are consistent. However, when transferring from one location to another, variables may change - some will be modified, others will end their lifetime. Considering the combinations of location jump types and variable types, variable lifetimes become quite complex and interesting...