Articles

Tags
#Abstraction#Abstraction Layer#Acceptance Testing#Accidental Complexity#Advanced Object-Oriented Programming#Aggregate#Aggregate Root#Aggregation#Agile#Application Logic#Architecture#Asterisk#BDD#Backend#Books#Business#CRUD#Characterization Testing#Class diagram#Classic TDD#Clean Architecture#Code-First#Command Query Separation#Composition#Convergence#Core code#DDD#DTO#Data Model Tree#Database#Delegation#Dependencies#Dependency Injection#Dependency Inversion#Design Patterns#Divergence#Domain Events#Domain-Driven Design#E2E Testing#E2E tests#ES6#Encapsulation#Enterprise software#Essential Complexity#Event-based systems#Events#Express.js#Feature-Driven Development#Frontend Development#Functional Programming#Functional programming#Gatsby#GatsbyJS#GraphQL#High Value Tests#IOC Containers#Infrastructure code#Inheritance#Inside-Out TDD#Integration tests#Intention Revealing Interfaces#Inversion of Control#IoC Containers#JavaScript#Jest#Language#Leaky Abstraction#Many-to-many#Mapper pattern#Mastery#Mental Models#Messaging#Metaphysics#Mocking#Model-View-Presenter#Music#Negative Value#Netlify#Networking#Node.js#Non-functional requirements#OOP#ORM#Object-Oriented Programming#Observer Pattern#One-to-many#Outside-In TDD#Polymorphism#Professionalism#Psychology#RDD#RESTful APIs#React#Repository pattern#Roadmap#SEO#SOLID#Sequelize#Serverless#Software Craftsmanship#Software Design#Software Essentialism#Software quality attributes#Spirituality#Spotify#Starters#Systems Thinking#TDD#Technical practice#Temporal Decoupling#Test Rig#Test-Driven Development#Testing#The 12 Essentials#The Builder Pattern#The Feedback Loop#The Phases of Craftship#Three Ways#Tutorial#TypeORM#TypeScript#Typical Tests#UML#Unit Tests#Use Cases#Use cases#Value#Value Object#ts-auto-mock
32

Showing 32 article(s) about "Software Design"



What Would Albert Camus Think About Software Development?
Thoughts about Absurdism, essence, and software design.
GraphQL Schemas vs. RESTful DTOs
GraphQL schemas serve a similar purpose to RESTful DTOs. One of the main differences is tooling. In this post, I aim to strengthen...
Client-Side Architecture Basics [Guide]
Though the tools we use to build client-side web apps have changed substantially over the years, the fundamental principles behind...
Accidental and Essential Complexity
Determining if the complexity of a problem is related to the nature of the problem or related to the way that we approach solving ...
How to Build a Compiler?
A generalization of compiling code involves understanding the programming language grammar, parsing it, organizing it into a synta...
How I Write Testable Code | Khalil's Simple Methodology
The single biggest thing that improved the quality of my designs was understanding how dependencies influence my ability to write ...
Load more 👇