development-philosophy

Integrates Agile and DDD principles for manageable, iterative software development.

Updated Apr 11, 2023
One-click install
npx skills add https://github.com/salverius-tech/dotfiles --skill development-philosophy-salverius-tech
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: development-philosophy
Source: https://github.com/salverius-tech/dotfiles/tree/main/home/dot_claude/skills/development-philosophy
Command: npx skills add https://github.com/salverius-tech/dotfiles --skill development-philosophy-salverius-tech

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill guides you to adopt a pragmatic, efficient, and evidence-based approach to software development, preventing over-engineering and ensuring focus on real-world problem-solving.

Core Features & Use Cases

  • Pragmatic Principles: Adheres to core tenets like "Execute immediately," "Fail-Fast Learning," and "Least Astonishment."
  • Action-Oriented Workflow: Emphasizes concise communication, autonomous task completion, and robust error handling.
  • Use Case: When planning a new feature, consult this Skill to ensure you're starting with the simplest viable solution, iterating based on feedback, and avoiding speculative complexity.

Quick Start

Apply the development philosophy to ensure all new code is simple, testable, and solves a real problem.

Frequently Asked Questions about development-philosophy

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I avoid over-engineering when planning new software features?

To avoid over-engineering, adopt a fail-fast development methodology that prioritizes starting with the simplest viable solution to solve real problems. Iterate based on evidence and feedback rather than introducing speculative complexity during architectural planning.

What is fail-fast learning in software development?

Fail-fast learning is an evidence-based development approach that emphasizes executing immediately and iterating through robust error handling. It guides developers to build minimal viable solutions, learn quickly from failures, and adapt based on real-world feedback.

How do I apply pragmatic coding principles during code reviews?

Apply pragmatic coding principles during code reviews by checking for simplicity, testability, and adherence to the Least Astonishment tenet. Ensure the implementation solves a real problem with a minimal viable solution and avoids speculative complexity.

When do I need a pragmatic development philosophy for architectural planning?

You need a pragmatic development philosophy for architectural planning when you want to prioritize simplicity and autonomous execution. It ensures your technical decisions are evidence-based, preventing speculative over-engineering and focusing on real-world problem-solving.

Can I use this development methodology for autonomous task execution?

Yes, this development methodology supports autonomous task execution by emphasizing concise communication and action-oriented workflows. It guides implementation decisions to ensure robust error handling and autonomous completion of software engineering tasks.

What's the best way to start implementing a new feature without speculative complexity?

The best way to implement a new feature without speculative complexity is to start with the simplest viable solution. Apply an experiment-driven workflow that prioritizes immediate execution and evidence-based iteration over speculative design.