The Curious Engineer

All blogs / Java / JVM

Haoyi's Programming Blog

lihaoyi.com

Java / JVMDev tools / editors / IDEsSoftware / engineering practice

Posts
61 from 7 Jan 2016 to 29 Aug 2026
Posting
now and then (2 in the last year)
Kind
personal blog
Feed
http://www.lihaoyi.com/feed.xml

2026 1

  1. Joining AMI to work on World Models

2025 1

  1. Golden Literal Testing in uTest 0.9.0

2024 2

  1. 12 years of the com.lihaoyi Scala Platform
  2. ScalaSql: a New SQL Database Query Library for the com-lihaoyi Scala Ecosystem

2023 2

  1. So, What's So Special About The Mill Scala Build Tool?
  2. com.lihaoyi Scala: Executable Pseudocode that's Easy, Boring, and Fast

2021 4

  1. How I Self-Published My First Technical Book
  2. Reflecting on Four Years at Databricks
  3. Introducing the com-lihaoyi Github Organization
  4. From First Principles: Why Scala?

2020 2

  1. Message-based Parallelism with Actors
  2. The Death of Hype: What's Next for Scala

2019 13

  1. Standardizing IO Interfaces for Scala Libraries
  2. Beyond Liskov: Type Safe Equality in Scala
  3. How an Optimizing Compiler Works
  4. Working with Databases using Scala and Quill
  5. Scraping Websites using Scala and Jsoup
  6. Simple Web and Api Servers with Scala
  7. Build your own Programming Language with Scala
  8. Easy Parallel Programming with Scala Futures
  9. How to create Build Pipelines in Scala
  10. How to work with JSON in Scala
  11. How to work with HTTP JSON APIs in Scala
  12. How to work with Subprocesses in Scala
  13. How to work with Files in Scala

2018 8

  1. Compact, Streaming Pretty-Printing of Hierarchical Data
  2. Automatic Binary Serialization in uPickle 0.7
  3. Fastparse 2: Even Faster Scala Parser Combinators
  4. Zero-Overhead Tree Processing with the Visitor Pattern
  5. How To Drive Change as a Software Engineer
  6. uJson: fast, flexible and intuitive JSON for Scala
  7. Mill: Better Scala Builds
  8. Build Tools as Pure Functional Programs

2017 10

  1. So, what's wrong with SBT?
  2. FastParse 1.0: Past, Present & Future
  3. uTest: the Essential Test Framework for Scala
  4. How to conduct a good Programming Interview
  5. Scala Vector operations aren't "Effectively Constant" time
  6. Principles of Automated Testing
  7. Scala Scripting: Getting to 1.0
  8. Warts of the Scala Programming Language
  9. Re-imagining the Online Code Explorer
  10. What's Functional Programming All About?

2016 18

  1. Implicit Design Patterns in Scala
  2. Old Design Patterns in Scala
  3. Benchmarking Scala Collections
  4. Easy Parsing with Parser Combinators
  5. From first principles: Why I bet on Scala.js
  6. Scala Scripting and the 15 Minute Blog Engine
  7. Build your own Command Line with ANSI escape codes
  8. Strategic Scala Style: Designing Datatypes
  9. Micro-optimizing your Scala code
  10. Strategic Scala Style: Practical Type Safety
  11. Planning Bus Trips with Python & Singapore's Smart Nation APIs
  12. Diving Into Other People's Code
  13. What's in a Build Tool?
  14. Strategic Scala Style: Conciseness & Names
  15. Strategic Scala Style: Principle of Least Power
  16. Talks I've Given
  17. Code Reviewing My Earliest Surviving Program
  18. Hello World Blog