In the last few years, I have written a lot of technical articles (full archives), shown here organized by topic. Note that some of them have been covered as well in various presentations.
Exhibiting articulate communication:
- Improve Clarity by Eliminating Vague Pronouns
- How to Elevate the Confidence Level
- The Pyramid of Articulate Communication
- The Four Fish: Story and Visual
Perfecting engineering process:
- The Importance of Defining Development Milestones
- Anatomy of a Bug Report
- Continuous Tests of Downstream Projects
- Docker-based Continuous Integration
- A Maturity Model for Build Automation
- Fast-Forward Git Merge
Making an impact:
Optimizing raster images:
- Portrait Mode and JPEG Compression
- Squeezing JPEG Images with Guetzli
- Shrinking PNG Images with Quantization
- Using Zopfli to Optimize PNG Images
- Using MozJPEG via Docker
Optimizing web page rendering:
- Tricks for GPU Composited CSS
- Optimizing CSS3 for GPU Compositing
- Frame Rate HUD on Chrome for Android
- Continuous Painting Mode in Chrome
All about web browsers:
All about JavaScript engines:
- ChakraCore on Linux
- ChakraCore on macOS
- JavaScript and V8 TurboFan
- Automatic Inlining in JavaScript Engines
- JavaScript Performance Analysis: Sampling, Tracing, and Timing
- Lazy Parsing in JavaScript Engines
- Nitro, JavaScriptCore, and JIT
Commonly confusing JavaScript API:
Functional programming with JavaScript:
- Searching and Sorting Without Loops
- Sorting Networks using Higher-Order Functions of JavaScript Array
- Searching using Array.prototype.reduce
- Searching with Array.prototype.some
- Prime Numbers, Factorial, and Fibonacci Series with JavaScript Array
- Sequences using JavaScript Array
Preventing confusion over API naming
- API Names and Begging the Negatives
- API Names and Static Polymorphism
- API Shame: Non-descriptive Property Names
- Hall of API Shame: Boolean Trap
Optimizing JavaScript with unorthodox performance tricks:
Cover Flow with kinetic scrolling in JavaScript:
- Part 1: Panning
- Part 2: Flick List
- Part 3: Snap-to-grid List
- Part 4: Horizontal Parallax Effect
- Part 5: Cover Flow in 3-D
Math expression evaluator in JavaScript: