AI Won’t Kill Juniors. It Will Expose Seniors.
AI won't eliminate junior developers but will challenge senior engineers who haven't evolved beyond just writing code to focus on higher-level design and communication.
AI won't eliminate junior developers but will challenge senior engineers who haven't evolved beyond just writing code to focus on higher-level design and communication.
Explores AI as a new computing paradigm (Software 2.0), where automation shifts from specifiable tasks to verifiable ones, explaining its impact on job markets and AI progress.
A blog post arguing that computer programming is fundamentally about making a series of nested decisions, from high-level goals to low-level syntax.
Explores when to use Data-Oriented Programming in Java, comparing it to functional and object-oriented paradigms.
Explores immutability and transparency in data modeling using Java records, part of a series on Data-Oriented Programming v1.1.
Explores the historical origins of Object-Oriented Programming, tracing its roots from Sketchpad and Simula to Alan Kay's definition.
Explores whether deep learning creates a new kind of program, using the philosophy of operationalism to compare it with traditional programming.
Compares the 'Ask for Forgiveness' (EAFP) and 'Look Before You Leap' (LBYL) coding philosophies, using Python file reading as an example.
A simplified explanation of Object-Oriented Programming (OOP) concepts like classes, objects, abstraction, encapsulation, inheritance, and polymorphism using real-world analogies.
A programmer reflects on a decade of experience, sharing highly opinionated insights on object-oriented programming and software design paradigms.
Explores how multiple dispatch in Julia enables mathematically correct code, using complex number division as a key example.
Compares the Julia do-block and Python with statement, explaining their different purposes in resource management and function passing.
A review of Robert C. Martin's 'Clean Architecture' book, covering its core principles, structure, and insights on software design.
Analyzes the debate between using single vs. multiple return statements in methods, focusing on readability and modern coding practices.
Discusses the drawbacks of using too many programming languages in a project, arguing for a balanced approach to benefit operations and maintainability.
A developer creates a Python library to mimic JavaScript's flexible object syntax, allowing dot notation and dynamic property access.