• Troubleshoot and Improve the Throughput of your NAS

    Sometimes, your file transfer speed to your NAS is quite slow that your important workflow takes more time than usual. How can you figure out whether it is normal, or something is not right? Unfortunately, file transfer speed to NAS, which is populated with spinning hard drives, over your home... [Read More]
  • Rental Properties: Repairs vs. Improvements

    With rental properties, you always prefer to have fix-ups classified as repairs and not as improvements. The reason is that repairs are deductible now, while improvements on rental property are capital items that must be depreciated over a recovery period of 27.5 years for residential rental property. With your residence... [Read More]
  • Development Environment Set Up in Windows

    I have been a long-time Mac user. Mac has been by development environment for pretty much all my professional life. I like its aesetics, its Unix-like environment, its native support for many things that can greatly improve the quality of life (like preview for PDF and raw files, iMessage, and... [Read More]
  • How to Understand Drive's SMART Values

    RAID (redundant array of independent disks) is a data storage method that stores the same information on multiple hard disks to protect against drive failure. NAS drives are typically set up with redundancy, which means that they can tolerate a certain number of drive failures. However, multiple concurrent drive failures... [Read More]
  • NAS: Two Years Later

    At the beginning of 2021, I set up my Synology NAS and wrote about it in this blog. Two years have gone by and I thought I write another update about my experience with NAS. [Read More]
  • A Brief Chat about Tech in Road Cycling

    I love riding a bike since I was a child. But it was not until late 2021 did I pick up my road bike and become serious about road cycling as my main form of exercise. As a competitive sport, road cyclists crave to ride faster and longer. And sport... [Read More]
  • Kotlin Coroutines

    Kotlin provides coroutines as a library kotlinx.coroutines. The core language provides the concept of suspending function, a safer and less error-prone abstraction for asynchronous operations than futures and promises. The rest is provided in the coroutine library. [Read More]