Archive 2024
121 articles
About Sets
A summary of the basics of set theory. Starting from the definition of a set as a collection of elements satisfying certain conditions, it covers fundamental concepts such as subsets, unions, and intersections, and their applications to data structures, relational database theory, and logical expressions, framed around building problem-solving skills for software engineers.
Habits for Health
Documenting my habits for health. Partly poetic, with the hope of future reflection and improvement.
Large-Scale Data Management: Best Practices for Enterprise Architecture
A review of Large-Scale Data Management. It points out the limits of managing data centrally and presents thinking for moving to a scalable architecture that keeps up with change. With ideas like avoiding data warehouse silos, it lets you rethink data management from an architectural viewpoint.
Microservices Architecture, 2nd Edition
A review of Building Microservices, 2nd Edition. A book worth reading if you are working on or considering microservices. It thoroughly addresses the architectural qualities (non-functional requirements) distributed systems demand, offering value even beyond a microservices-only view. Chapter 1 is a well-organized concept summary.
Building & Pushing Docker Images with GoReleaser
Automate Docker image builds across multiple platforms using GoReleaser with GitHub Actions for streamlined CI/CD deployment.
From Monolith to Microservices: A Practical Migration Guide to Evolve Monoliths
A review of Monolith to Microservices. A book focused specifically on approaches for migrating from a monolith to microservices. Its longest chapter tackles database decomposition, the biggest hurdle in migration, offering practical guidance for evolving a system step by step.
Bitemporal Modeling: Valid Time and Transaction Time Explained
Bitemporal modeling explained: how a bitemporal data model tracks two timelines, valid time and transaction time, how it differs from non-temporal and uni-temporal models, and the challenges of implementing it in a relational database.
Building Secure and Reliable Systems: Design, Implementation, and Maintenance from Google SRE
A review of Building Secure and Reliable Systems. A book that frames security and reliability not as things simply implemented but as emergent properties arising from deployment and operations. Drawing on Google SRE's insights, it argues for weaving both into design from a project's earliest stages.
Mistakes in Software Architecture: Development and Evaluation of Non-Functional Requirements
A review of a book on mistakes in software architecture. Though old (published in 2010), it discusses architecture topics that still resonate today, in a casual style. Closer to an essay than a technical book, its later chapters (from chapter 6) are where the technical substance lies.
Exploring Permission Management Design
Understand ACL, RBAC, and ABAC permission design methods with functional/data scope, control targets, and operational constraints.
Unit Testing Best Practices: A Practical Guide for Developers
A review of Unit Testing Best Practices. A book that compiles the thinking and approaches needed for high-quality test design. Centered on what good tests should have, such as protection against regressions, resistance to refactoring, and maintainability, it shows with many examples how to design tests with cost-effectiveness in mind.
Trade-offs and Mistakes in Software Design: Making Better Choices in Programming
A review of Software Design Trade-offs and Errors. A book for learning the importance of weighing design trade-offs against each other, along with concrete examples of software design trade-offs. It teaches that considering even the reasons you did not choose an option leads to better choices.
Learning Ruby
Master Ruby fundamentals using official documentation, classic books, object-oriented design patterns and practical implementation practice.
About Ruby Block Syntax
Learn Ruby block syntax with do..end and {} forms, passing blocks to methods, yield statements, and Proc/lambda closure behavior.
About Ruby Modules
Understand Ruby modules for namespacing, mixin multiple inheritance, and providing common methods without class instantiation.
About Ruby's Proc and Lambda
Compare Ruby Proc and Lambda differences in argument handling, return behavior, and jump statement semantics for closures.
About Ruby's Singleton Classes and Singleton Methods
Explore Ruby singleton classes, singleton methods, class methods, and object-specific method definitions for advanced metaprogramming.
About Ruby Symbols
Understand Ruby symbols as memory-efficient, immutable identifiers for hash keys, method names, and enum-like constants.
Mastering TCP/IP: Introduction (6th Edition)
A review of Mastering TCP/IP: Introduction (6th Edition). With easy-to-grasp analogies, it is a standard primer for building network understanding from the basics of TCP/IP. Readable even for those wary of networking, it is a dependable textbook.
The Complete Guide to Health Technology
A review of The Complete Guide to Health Technology. A comprehensive, strongly evidence-conscious book on health. Centering on diet, it frames choices not as simply good or bad but as higher or lower risk. From the view that habits shape health, it also digs into controlling decisions and behavior.