All posts

  • February 24, 2025
    I believe the future of AIPC and AI Phone won’t just depend on powerful chips. Instead, built-in AI models will be the heart of these devices. These models will act as the “brain,” working together with hardware and operating systems to make one complete system. Competition will shift from hardware specs to how well the AI models perform and improve the user experience.
  • July 13, 2019
    If you're going to obsess over the market, you've got to keep an eye on it. But are you really going to pull out your phone or open a browser tab at work? A self-respecting retail investor uses the command line: low-key, and infinitely customizable. And since I make my living in the .NET ecosystem, my tool of choice is F#.
  • August 25, 2018
    Once you go deep enough into programming, lazy evaluation becomes hard to avoid. We constantly run into situations where, to guard against potential overflows, we have to pick an upper or lower bound up front based on experience — usually by allocating a chunk of memory just in case, which is essentially deliberate waste. A lazy list, or a lazy evaluation strategy more broadly, can save us that overhead in the right situations and dramatically simplify our code. This post walks through how to build lazy lists in JavaScript using two ES6 features: generators and iterators.
  • August 2, 2018
    While digging through some old gear, I unearthed a Raspberry Pi 2 Model B+ I'd picked up a few years back. It was covered in dust, but it still booted up just fine. In the spirit of not letting good hardware go to waste, I decided to put it back to work. This post walks through how I got the Pi up and running without a monitor and without an Ethernet cable — connecting over Wi-Fi via SSH, and over a USB-to-TTL serial cable. I'm writing it down both as a note to my future self and in case it helps anyone else hitting the same setup.

© 2026 • WANGQIAO.ME • ALL RIGHTS RESERVED

Powered by Gatsby