Intermediate terms
Git Worktree
2.5
1
Checks out multiple branches into separate working directories from one repository, avoiding stash juggling and duplicate clones.
3d ago
git intermediate
Git Rebase vs Merge
1
Merge preserves branch history with a merge commit — rebase rewrites commits onto the target branch for a linear history.
2mo ago
git intermediate
Generators & yield (PHP 5.5)
PHP 5.5+
Generators (PHP 5.5) use yield to produce values lazily — enabling memory-efficient iteration over large datasets without loading everything into memory.
3mo ago
php intermediate
Goroutine-Style Concurrency
Goroutines (Go) and similar lightweight green threads — coroutines, fibers — enable thousands of concurrent tasks with minimal memory, multiplexed onto OS threads by a runtime scheduler.
3mo ago
concurrency intermediate
Guzzle HTTP Client
PHP 7.2+
Guzzle is PHP's most popular HTTP client library — providing a clean API for making synchronous and asynchronous HTTP requests, handling middleware, retries, authentication, and multipart uploads, with PSR-7 and PSR-18 compliance.
3mo ago
php intermediate
Global Error Handling in JavaScript
ES2017
window.onerror and unhandledrejection catch uncaught errors globally — essential for logging client-side errors back to PHP for monitoring.
3mo ago
javascript intermediate
Gateway Pattern
A class that encapsulates access to an external system or resource — wrapping HTTP APIs, queues, or legacy systems behind a clean interface that the rest of the application uses.
3mo ago
quality intermediate
Git Blame & Archaeology
2
Using git blame, git log -S, and git bisect to trace when code was introduced, who wrote it, and which commit caused a bug — essential for debugging and context.
3mo ago
git intermediate
Git Hooks in PHP Workflow
PHP 5.0+
Using pre-commit hooks to automatically run PHP-CS-Fixer, PHPStan, and security checks before every commit — preventing style violations and bugs from entering the repository.
3mo ago
style intermediate
Git LFS
Replaces large binary files with text pointers in git — keeping repository fast while storing actual binaries on a separate LFS server.
3mo ago
git intermediate
Three different ways to undo in git — revert creates a new undo commit (safe for shared branches), reset moves HEAD (rewrites history, dangerous on shared branches), restore undoes working directory changes.
3mo ago
git intermediate
Git Submodules & Monorepo Alternatives
Git submodules embed one repo inside another — complex to manage. Composer packages, git subtrees, and monorepos are better alternatives for most PHP projects.
3mo ago
git intermediate
Gitflow (feature/develop/release/main branches) vs Trunk-Based Development (short-lived branches merged to main daily) — TBD is preferred for CI/CD, Gitflow for release-based software.
3mo ago
git intermediate
GitHub Actions — Reusable Workflows & Matrices
1
Advanced GitHub Actions patterns — reusable workflow files, matrix strategies for parallel testing, composite actions, and environment protection rules.
3mo ago
git intermediate
Global Variable Abuse
PHP 5.0+
Using global variables or the global keyword to share state between functions — making code unpredictable, untestable, and impossible to reason about.
3mo ago
quality intermediate
GraphQL vs REST vs gRPC
REST for public APIs and resource-oriented design, GraphQL for flexible client-driven queries, gRPC for high-performance internal service communication.
3mo ago
api_design intermediate
Graphs
3
A collection of nodes (vertices) connected by edges — directed or undirected, weighted or unweighted. The most general data structure, modelling networks, dependencies, and relationships.
3mo ago
data_structures intermediate
Generators allow iterating over large datasets lazily using yield, without loading everything into memory at once.
3mo ago
php intermediate
A binary search tool that finds the commit that introduced a bug by marking commits as good or bad — locating the culprit in O(log n) steps.
3mo ago
git intermediate
Applies the changes from a specific commit onto the current branch, creating a new commit with the same changes but a different hash.
3mo ago
git intermediate