Articles tagged with code
Engineering Practice Layering
Application Layering - Separation of Concerns Architecture Principle
Engineering Practice Naming Conventions
Naming Convention Nuggets of Knowledge and Best Practices
Sensei Alex "fakes it until he makes it" in our Test-driven Development (TDD) dojo
Exploring the advantages of Test-driven Development and the concept of self-healing code
Refactoring saves time and increases quality
Design is not a static construct, it evolves by refactoring as we keep changing the code
Client-side expressiveness and security
The importance of properly securing client-side applications has never been more urgent!
TDD for Non-Techies
TDD explained to non programmers by using the example of writing a short story
Extreme Programming (XP) provides options
What does 'extreme' in Extreme Programming stand for? It stands for extreme interruptability and extreme steerability
Start together work together finish together
Speed up the delivery process by avoiding queuing and needless looping
Introducing the Automation Working Group
Any system operation we can perform manually can be fully automated by writing scripts
Only changeable design is good design
Why is changeable design desirable and what's preventing us from achieving it
Quick peek into regular expressions
Regular expressions are fundamental to programming
Synchronized 'if' statements considered harmful
Duplicated imperative conditional logic leads to proliferation of bugs
Extreme Programming 25 Years Later
Extreme programming keeps going strong 25 years after its launch
Code-as-text
Programming computers by feeding them plain text is very slow and needs to be sped up.
Don’t let your code talk to strangers
Closer look into the principle of least knowledge
Collective code ownership
Teams share collective responsibility and therefore collectively own the code
Benefits of boundaries
Simple isn't easy, but it is the only way to build anti-fragile systems
Why extract methods when modifying legacy code?
Legacy code is hard to test, so extract methods by writing micro tests
Benefits of frequent deployments
The longer the wait to deploy, the bigger the risk of things going south
Hypothesis-Driven Development
Developing a feature without formulating a hypothesis is like shooting in the dark
The cost of avoiding change
Change is stressful and risky, but avoing it is even riskier
How does it feel to write software when doing TDD?
Any discipline requires serious investment in time
Feature-flag Driven Development (FFDD)
Replace physical modularity with logical modularity