Blog (13)
I'm happy to write about various topics whether it's a technical deep dive or a soft skills piece.
If you like algorithms, check out this repository on Gitlab.
- Lock-Free Data Structures- Learn an easy and practical way to optimize program performance with lock-free data structures in TypeScript. Discover parallel programming techniques using SharedArrayBuffer and Atomics for high-speed applications. lock-free performance optimization concurrency parallel programming SharedArrayBuffer Atomics CAS Compare-And-Swap
- DNS, ASCII & “Fancy Characters” Attacks- Why browsers convert domain names to ASCII (Punycode), what homograph attacks are, and tiny Deno examples to detect suspicious domains. DNSPunycodeIDNAhomograph attackconfusable domainsinternationalized domain namessecurityphishing
- Concurrency and Thread Safety- Explore the principles of concurrency and thread safety in software development. Learn about common challenges, strategies for achieving thread safety, and best practices for concurrent programming. concurrency thread safety multithreadingrace conditions deadlocksthread pools
- Buffer Overflows: Understanding Exploitation and Prevention- Understand buffer overflows in C and JavaScript: exploitation techniques, prevention, and real-world examples like Cloudbleed. buffer overflows stack overflow heap overflow C security ASLR DEP Cloudbleed
- Memory Leaks: The Silent Killer of Applications- Learn about memory leaks in C and JavaScript: causes, detection, and prevention strategies with code examples. memory leaks C programming garbage collection Valgrind AddressSanitizer
- Garbage Collection for Performance-Minde- A practical guide for software engineers on Garbage Collection (GC) performance. Learn advanced, low-level techniques like using ArrayBuffer, SharedArrayBuffer, and zero-copy methods to reduce GC pauses and write high-performance, GC-friendly code in TypeScript. Garbage Collection GC performance memory managementV8 zero-copy memory leaks
- SharedArrayBuffer high-performance parallels- A comprehensive guide to using SharedArrayBuffer in TypeScript for high-performance parallel computing with practical examples and performance optimization techniques. SharedArrayBuffer parallel computingmultithreading atomic operation
- SIMD for High-Performance Computing- Easy-to-follow TypeScript article on SIMD for high-performance computing. Includes code examples and visual diagrams. SIMD performance optimization vectorized operations memory layout parallel processing
- Handling Binary Data with Uint8Array- Beginner-friendly guide to handling binary data with Uint8Array in Deno TypeScript, featuring zero-copy techniques, code examples, and diagrams. Uint8Array binary data zero-copy zero-allocation DataView Buffer performance
- Essential Low-Level Techniques for Systems Programming- Discover essential low-level techniques like lock-free programming, memory mapping (mmap), DMA, cache optimization, and SIMD to build high-performance systems. Boost throughput by 2-10x with visual explanations. low level programming lock-free memory mapping mmap DMA cache optimization SIMD ring buffer zero copy systems programming performance optimization
- Hashing vs. Encryption: A Beginner's Guide- A beginner's guide to hashing vs. encryption with ASCII visualizations and Web Crypto API TypeScript examples. hashing encryption Web Crypto API SHA-256 AES data security
- Understanding Zero Copy Technique- Zero copy is a optimization method that eliminates unnecessary data copying between memory buffers during operations like file reading, network sending, or data processing. zero copy performance optimization data transfer buffers streaming
- Understanding Ring Buffers- In this blog post, I'll break down what a ring buffer is, how it works, and why it's useful—all explained in an easy, beginner-friendly way. By the end, you'll have a clear mental model and code. ring buffer circular buffer data structures queue implementation FIFO buffer