Blog

Articles, guides, and notes on software engineering.

What is Duck Typing? How Dynamic Type Checking Works in Python, Ruby, and Go
Application 2018-05-07

What is Duck Typing? How Dynamic Type Checking Works in Python, Ruby, and Go

Learn what duck typing is, how structural typing enables flexible code, and how Python, Ruby, and Go each implement duck typing—with real code examples for each language.

#Duck Typing

Recent Posts

Polymorphism Explained: How Object-Oriented Code Stays Flexible
Application 2018-05-07

Polymorphism Explained: How Object-Oriented Code Stays Flexible

Understand polymorphism in object-oriented programming—subtype, parametric, and ad-hoc polymorphism—with examples in Go, Java, and Python to show how each language applies it.

#Polymorphism
Learning Software Testing Techniques for the First Time
Testing 2018-05-04

Learning Software Testing Techniques for the First Time

A review of Learning Software Testing Techniques for the First Time. A book for learning fundamental software testing techniques like equivalence partitioning and boundary value analysis. A fitting first read for those who have never written test code.

#Book Review
Road to Vimmer
Tools 2018-04-22

Road to Vimmer

Master vim navigation, editing, and text manipulation commands for efficient terminal-based text editing without GUI shortcuts.

#vim#Editor
Order Notation and How to Determine Algorithm Complexity
Algorithms and Data Structures 2018-04-18

Order Notation and How to Determine Algorithm Complexity

An overview of the basics of calculating algorithm performance using Big O notation and complexity.

#Big O Notation
HTTP and SSL/TLS
Network 2018-04-18

HTTP and SSL/TLS

Understand how HTTPS works: TLS handshake after TCP, confidentiality/integrity/authenticity, the history from SSL vulnerabilities to TLS 1.2/1.3, and why universal HTTPS adoption happened.

#HTTP#HTTPS#SSL#TLS
Stateless and Stateful
Network 2018-04-17

Stateless and Stateful

Learn the difference between stateless and stateful protocols. HTTP, UDP, and IP are stateless; FTP, TCP, and SMTP are stateful. Covers session-based state management implications.

#Stateful#Stateless#Authentication
Setting Up a Laravel Environment with Laravel Homestead
Application 2018-04-11

Setting Up a Laravel Environment with Laravel Homestead

Set up Laravel Homestead development environment using Vagrant and VirtualBox with SSH key configuration.

#Laravel#Vagrant#VirtualBox#composer#homestead
Types of Test Cases and Identification
Testing 2018-04-11

Types of Test Cases and Identification

A concise summary of the basic types of test cases and how to identify them. After organizing the purposes of testing, finding bugs and assuring and improving quality, it introduces types of tests such as unit tests and the perspectives you can use to enumerate test cases.

#Design
Setting Up a Golang Development Environment
Application 2018-04-07

Setting Up a Golang Development Environment

Configure a Go development environment: GOPATH setup, directory structure, package organization, and Docker development.

#Golang
What is Docker? A Beginner's Complete Guide to Containers
Infrastructure 2018-04-01

What is Docker? A Beginner's Complete Guide to Containers

Learn what Docker is and how containers differ from VMs. Covers images, containers, Dockerfile basics, docker-compose, and how Docker fits into modern DevOps workflows.

#Docker#Virtual Environment
Resources I Used for Studying Golang
Application 2018-03-01

Resources I Used for Studying Golang

Discover essential Go learning resources: recommended books, official tutorials, and community guides for all skill levels.

#Golang#Link Collection
Starting with Go Language
Application 2018-03-01

Starting with Go Language

A review of Starting with Go Language. A relatively gentle introduction to Go. Since it walks through the syntax and basic usage in one pass, it suits those new to Go in taking their first step.

#Golang#Book Review
Modern JS Discussion ─ Proxy
Application 2018-02-28

Modern JS Discussion ─ Proxy

Master JavaScript Proxy objects, trap handlers, target wrapping, and value validation in ES2015 development.

#ES5#ES6#JavaScript
Modern JS Talk──async function
Application 2018-01-29

Modern JS Talk──async function

Explore async functions, await expressions, and Promise-based asynchronous processing in modern JavaScript development.

#ES5#ES6#JavaScript
Creating a Custom Router with React and the History API
Application 2018-01-03

Creating a Custom Router with React and the History API

Implement custom React router using History API with pushState and popstate for SPA navigation without libraries.

#ES6#JavaScript#React#History API#Router
Modern JS Talk──Promise
Application 2017-12-29

Modern JS Talk──Promise

Master Promises for asynchronous operations, chaining with .then(), error handling, and avoiding callback hell.

#ES5#ES6#JavaScript
Things I Bought This Year That Were Worth It
Poetry 2017-12-25

Things I Bought This Year That Were Worth It

Review top 2017 purchases including Bluetooth audio gear, Cote&Ciel bags, and gym membership for enhanced personal performance.

#Life#Gadgets
Modern JS Talk: Arrow Functions
Application 2017-12-25

Modern JS Talk: Arrow Functions

Learn arrow function syntax, lexical this binding, and ES2015 function expressions for modern JavaScript development.

#ES5#ES6#JavaScript
Modern JS Talk──Classes
Application 2017-12-25

Modern JS Talk──Classes

Explore ES6 class syntax, constructor definitions, getters/setters, and strict mode behavior in modern JavaScript.

#ES5#ES6#JavaScript