Skip to main content

Methodology: Development Workflow & Creative Process

1. Introduction​

This document outlines the structured yet flexible methodology for managing and executing extra projects within our development team. Our goal is to foster creativity, encourage autonomy, and maintain efficiency while ensuring high-quality outcomes.


2. Philosophy & Core Principles​

  • Vision over Specs: We define broad objectives instead of detailed feature lists.
  • Creativity First: Developers are encouraged to experiment and iterate.
  • Documentation as a Guide, Not a Rulebook: Lightweight, living documentation supports but does not constrain progress.
  • Fail Fast, Learn Faster: Early failures help refine direction and improve final outcomes.
  • Autonomy & Responsibility: Developers take ownership of projects, from ideation to implementation.

3. Project Workflow​

3.1 Ideation & Vision Definition​

  • All projects begin with a Vision Document:
    • Problem statement
    • High-level goals
    • Constraints (if any)
    • Success criteria
  • Developers propose solutions and approaches before locking in specific features.

3.2 Documentation & Idea Tracking​

  • GitHub Wiki as the Primary Idea Repository:
    • A dedicated section for each project or feature idea.
    • Clear structure with categories: "Concepts," "In Progress," "Archived."
    • A standardized template for new ideas (see below).
  • RFCs (Request for Comments): Before development begins, developers create short proposals outlining their approach for peer review.
  • Scratchpad Repo: A space for experimental ideas and prototype development.

3.2.1 Wiki Structure​

  • Homepage: Overview of the idea tracking system and links to categories.

  • Categories:

    • Concepts: New ideas awaiting discussion or approval.
    • In Progress: Active projects being developed.
    • Archived: Completed or abandoned ideas for reference.
  • Template for New Ideas:

    # Project Name
    **Status:** [Concept / In Progress / Archived]

    **Overview:** A brief summary of the idea.

    **Goals:** What the project aims to achieve.

    **Challenges & Constraints:** Any technical or business limitations.

    **Proposed Solution:** High-level plan for implementation.

    **Next Steps:** Immediate actions required.

3.3 Iteration & Feedback​

  • Prototypes are developed rapidly for review.
  • Regular demo sessions to present progress and receive feedback.
  • Iteration is encouraged; projects may pivot based on insights gained.

4. GitHub Repo Management​

4.1 Branching Strategy​

  • Main Branch (Stable) β†’ Dev Branch (Staging/QA) β†’ Feature Branches (Work-in-Progress)
  • Experiments may live in separate branches or repos if needed.

4.2 Project Tracking​

  • Use GitHub Projects, Issues, or Kanban boards to track progress.
  • Assign ownership to each feature or experiment.

4.3 Code Reviews & Merging​

  • Peer reviews before merging to Dev Branch.
  • Small, frequent commits to maintain workflow visibility.

5. Deployment Paths​

5.1 Trial Environments​

  • Sandbox deployments for testing (Vercel, Netlify, cloud instances).
  • Automated CI/CD pipelines ensure easy and fast deployments.
  • Feature flags allow controlled testing without affecting the main product.

5.2 Release & Iteration​

  • Projects are evaluated post-trial for continuation or termination.
  • If successful, features are refined and integrated into the main product.

6. Conclusion​

This manual serves as a guiding framework for how our team operates on extra projects. While structured, it remains adaptable, ensuring we evolve our practices as we grow and learn. The core goal is to foster a development environment where engineers feel like artistsβ€”free to create, iterate, and push boundaries while maintaining efficiency and high standards.