Brainstorming
Brainstorming
- General
- Software development is a creative activity, and is not easy (SC)
- Its science and art
- Balance Forces
- Pursue Elegance and Beauty
- Creating Passion (CPU)
- Curiosity, Learning, Playing - brain drugs
- I Rule, Kick Ass
- You (or target developers)
- Learning as a habit (PP)
- Communication Ability (PP, Agile)
- Want to improve
- Accountability, Take Responsibility
- Honesty, Transparency
- take Risks, Courage (CPU, XP)
- Enabling (CPU)
- NO Guilt, Fear, I suck
- Be proud of what you achieved (FC,PP,XP)
- Provide Options, No Excuses (PP)
- Be professional
- Commit to Change, Improvement
- Ask for Help
- Always try your best
- Work
- Love what you're doing
- Your work should be valueable, deliver business value
- Focus on the most important
- Mind and Brain in sync (CPU), State of Mind (MFAS)
- Flow (CPU)
- Whom do you improve for?
- Don't multitask (Lean)
- Have FUN (CPU)
- redefine problems, simplify (PG)
- Question Assumptions, Measure
- No Overtime (XP)
- No broken windows (PP)
- Build Quality in (Lean,PP)
- No final decisions (PP), defer (irreversible) decisions to the last responsible moment (Agile)
- Prototype
- the domain is most important (Agile)
- Iterate, Feedback
- don't work by coincidence (PP)
- Estimation
- Understand your users, domain
- Pair to learn, transfer knowledge, reflect and review
- Pay attention to what you're doing while you're doing it (MFAS)
- Think! about your work (PP)
- concrete, specific, challenging goals (FLOW, SCO)
- applied use of stuff, goals reached
- People / Community
- Kindred Spirits (SC: A2J), Social Networks
- Share (Team, User Groups, Presentations, Conferences, Open Source)
- Mentoring and Coaching, Mastery
- don't do it alone (PI, procrastination)
- Team
- Leave no one behind
- Work together, help out
- Self Management
- Cataclyst for Change (PP)
- Assume positive intent
- No blame but solutions
- Make improvement a team issue, improve as a team
- Small (around 8), Energetic
- Gather current status - interviews, surveys (SCO)
- Learning
- Everydays Practice, Contiuous Improvement
- Create short Feedback cycles
- Small Steps (FC
- Celebrate Success (FC
- Fail Fast (PP), Learn From Failure, Criticism
- Initial Momentum
- Balance between Challenge and Ability (CPU)
- Brain Crap Filter (CPU)
- Don't start at the beginning (CPU) but with real world stuff that matters (PG) vs. breakable toys (SC:A2J)
- Be positive about success and failures
- Reflect critically on what you learn (PP)
- Learn from the best: read and reflect on code, articles, books by masters
- one size does not fit all (BP:Dan North)
- Record what you learn (SC:A2J), Write Annotations (small essays on craft elements) while/after working (MFAS)
- work on software by others (Maintenance, OpenSource) and learn from that (good + bad)
- Empower people to learn instead of teaching (SC:A2J)
- Create a library (PP,SC,SCO)
- Learning opportunity in the middle of the week (Slack + apply the new stuff) (SC)
- Central repository (SCO)
- Books + reviews
- Tooles and shared Code repository (like sf.net)
- Teasers (one page flyers) (SCO)
- XXX of the week (code smell, pattern, refactoring) (SCO)
- Testing on the toilet, water dispenser (GG)
- (de)motivational Posters (jexp)
- lightning talks, presentations
- coders dojo, code kata, practice (PP)
- on team mentoring, xxx mercenaries, traveling journeymen
- Environment
- Slack (Lean,SC,GG) 10-20% of slack time
- Positive Environment
- Enable Thinking
- Controlled Disturbance
- Have context available (PG, Agile), Big Picture (PP)
- colocated information (SCO)
- blue hour (jexp)
- vary locations
- open spaces, workshops
- bogetta (X10)
- todo from dave west paper
- Change of Attitute / Make your message have an impact
- learn your lessons from family therapy
- establish routines
- what would you have done to you ...
- its amount communication and working together
- how do I profit from these changes
- Tipping Point Takeaways (TP)
- People (Connectors, Salesmen, Mavens)
- Stickiness of message
- Power of Context ()
- Learn from Invention (MOF)
- Factors for success
- Adaption problems
- Tools
- Know your tools (PP), editor, IDE, CI, Testing, Metrics, Source Control, Libraries
- Write your own (PG)
- Help to overcome challenge (CPU)
- Textual languages, DSLs
- use the best tools available (ToolsMatter(tm)
- Way to go
- Long Road (SC:A2J)
- Where am I now (CPU)
- Keep involved and engaged (CPU)
- Story writers approach "hero's journey (MonoMyth" (CPU) (http://en.wikipedia.org/wiki/Monomyth)
- PULL instead of push
- Insist on developers with the targeted abilities and skills (craftspeople) (SC)
- Qualify by demonstrating your skills
- Coding
- create habitable code
- Style of Programming (Beck: IP) communication, simplicity, flexibility (see Elements of Style: Alexander)
- Programming is like writing (IP,PG,Knuth)
- DRY (PP)
- Easy to reuse (PP)
- Low Coupling, High Cohesion
- Tracer Bullets (PP), Spikes
- defensive programming (PP), assertions, contracts, exceptions for exceptional
- Abstraction in Code, Details in Metadata
- concurrent programming
- separation of concerns
- Test - Code - Refactor
- Have Code that plays by the rules even if they are not enforced
- If you see something good, leave it alone (Linda Rising)
- recognize, reward participation
- reward personal improvement like you would created business value
Success??
- Measure - from continous buiild, from personal experiences and recommendation
- how did the "reputation" change
- visualize
- 360 deg reviews (peer reviews)
Problems
- Learned conservativism (at large companies) ? (PG)
Events
- craftsmanship day
- like mini conference
- conferences
- geek cruise
Legend
- CPU: Creating Passionate Users
- PG: Paul Graham
- SC:A2J : Software Craftsmanship: From Apprentice to Journeyman
- Lean: Lean Software Development
- PP: Pragmatic Programmer
- XP: Extreme Programming
- IP: Implementation Patterns
- JOS: Joel on Software
- FC: Fearless Change
- MFAS: Master of Fine Arts in Software: Dick Gabriel
- SC: Software Craftsmanship: Pete McBreen?
- MOF: Myths of innovation
- TP: Tipping Point
- SC: Software Craftsmanship
- CC: Code Craft
- SCO: Software Craftsmanship in Organisations (Dillman)
Created by: MichaelHunger last modification: Saturday 04 of October, 2008 [01:03:43 UTC] by MichaelHunger






