The Curious Engineer

All blogs / Math

namvdo's blog

namvdo.me

numerical methods, scientific computing

MathAlgorithms / data structuresSoftware / engineering practiceJava / JVM

Posts
81 from 14 Feb 2019 to 15 Sep 2026
Posting
now and then (2 in the last year)
Kind
personal blog
Feed
https://namvdo.me/feed/

2026 2

  1. Newton’s method for periodic orbit detection in discrete dynamical systems
  2. (Set-valued) dynamical systems (part 1)

2025 7

  1. Branch prediction: Why CPUs can’t wait?
  2. Content Addressable Storage
  3. What does this mean by memory-safe language?
  4. 10 hours of debugging: x264 not found using pkg-config (FFmpeg, Emscripten and WebAssembly)
  5. From Data to Display: How Computers Present Images
  6. Build a simple real-time collaborative text-editor with CRDT (Conflict-free replicated data types)
  7. Yes, we need some math for coding

2024 4

  1. Improving NCD compute time with Cyclic Redundancy Check (CRC-32)
  2. Implementing wc command – Rust coding challenges
  3. Starting a Rust learning journey with a simple parser
  4. What stuck in my mind after reading The Black Swan (a book)

2023 11

  1. Preemptive vs. Cooperative scheduling
  2. Finding orders using Topological Sort
  3. Understanding two’s complement
  4. Implementing the LRU cache
  5. What is Java CLASSPATH?
  6. Things I’ve learned from Effective Java – Part 1
  7. Dependency Injection: The Basic
  8. Dijkstra’s algorithm to find the shortest path
  9. An Introduction to Term Frequency – Inverse Document Frequency (tf-idf)
  10. Implementing retries with exponential backoff
  11. Executing tasks with the Executor Framework in Java

2022 8

  1. AOC 2022 – Day 5: Supply Stacks
  2. WebRTC – Go beyond the APIs Part 1: Signaling and Connecting
  3. Avoiding NullPointerException in Java
  4. Introduction to Trie Data Structure
  5. Instrumenting Applications with Prometheus
  6. Covariance and Contravariance (Java)
  7. Some notes about TreeSet in Java
  8. Thread confinement in Java

2021 5

  1. Creating callback functions in Java
  2. Why do you need to override equals and hashCode methods in Java?
  3. Delegate pattern with Consumer interface in Java
  4. Frequently used git commands
  5. Understanding Method References in Java

2020 24

  1. A Gentle Guide to Socket in Java
  2. How to configure Tomcat Server to Run Web Application on IntelliJ IDEA
  3. What is tail recursion?
  4. Different ways to Iterate any Map in Java
  5. Call by Name vs. Call by Value in Scala
  6. Quicksort algorithm – Lomuto partition scheme
  7. char *, const char *, const * char, and const char * const in C
  8. An array of pointers and A pointer to an array in C
  9. 905. Sort Array By Parity – In-place Solution | LeetCode Problem
  10. Runnable and Callable in Java
  11. What’s new in Java 15?
  12. A Guide To Functional Interfaces in Java
  13. Iterable and Iterator in Java
  14. Serialization and Deserialization in Java through concrete examples
  15. A Great Introduction to Threads in Java – How to create your own thread
  16. Learn How to Make HTTP Requests With XMLHttpRequest, fetch() and async & await
  17. Inside JVM, JRE, JDK And Their Relationship
  18. Understand Tree Traversal: Pre-order, In-order, and Post-order Traversal
  19. Binary Search Tree (BST) Concrete Implementation In Java
  20. How to Submit A Pull Request to Someone Else’s Repository?
  21. 6 Server-side Programming Languages To Pick Up In The New Decade
  22. Understanding seven non-access modifiers in Java
  23. What the heck is OOP? Let me help you understand it! (with detailed Java code examples)
  24. Reverse Linked List (LeetCode) – Iterative and recursive implementation

2019 20

  1. Top 150 best practice LeetCode’s problems sorted by difficulties
  2. Learn Java from Scratch: Access modifiers in Java
  3. Learn Java from Scratch: Operators in Java
  4. Learn Java from Scratch: Variables and Data Types in Java (Comprehensive Guide)
  5. Learn Java from Scratch: Basic Syntax in Java Programming
  6. Learn Java from Scratch: Java Environment Setup step-by-step
  7. Learn Java from Scratch: Introduction to Java Programming
  8. Boosting your coding skills to the next level with these 8 awesome coding sites
  9. Graph and its representation
  10. Binary Search Explanation and Implementation
  11. Big O Cheat Sheet for Common Data Structures and Algorithms
  12. n-th Fibonacci Number: Recursion vs. Dynamic Programming
  13. Imperative vs. Declarative Programming
  14. Top must-know algorithms and data structures for computer science students
  15. 32-bit vs. 64-bit processor architecture?
  16. Familiar With Arrays? But What About The Linked-List?
  17. Bitwise Manipulation: Logical and Shifting Operations
  18. Numbering System: How to convert hexadecimal, decimal value to binary and vice versa?
  19. Introduction to Bitwise Operation
  20. Learn The Essential Git Commands Part 2