Your SlideShare is downloading. ×
0
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
It's Not Just About Code
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

It's Not Just About Code

1,433

Published on

We spend so much time focusing on conventional programming. Everyone focuses on standards, code clarity, testing, and what gems to use. Let's chat about what's done before your fingers hit the keys. …

We spend so much time focusing on conventional programming. Everyone focuses on standards, code clarity, testing, and what gems to use. Let's chat about what's done before your fingers hit the keys. Let's talk about brainstorming, requirements, stakeholders, mock-ups, and writing solid user stories and acceptance tests with Cucumber. Every project has a story - how will your next one end?

Published in: Technology
1 Comment
7 Likes
Statistics
Notes
No Downloads
Views
Total Views
1,433
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
67
Comments
1
Likes
7
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • TODO: Tell a better story
    Better transitions
    Show cucumber file structure
    Re-enforce idea of solving problems
    Show examples of AST Tables
    Show tagging example
    Maybe show generation and running of features
    Tell more of a story around solving problems? Joe w/ Factory Girl, Aslak w/ Cuke, DHH w/ Rails, etc etc
  • Transcript

    • 1. It’s not just about code... Dan Pickett
    • 2. It’s about efficacy in solving a problem
    • 3. Don’t Reinvent minutiae
    • 4. Don’t Reinvent minutiae Leverage Frameworks to solve problems
    • 5. Effectively Solve Problems With Frameworks: • Brainstorming • Conceptualization through Sketching and Design Constraints • Writing User Stories and Acceptance Tests with SCRUM and XP • Automated testing with RSpec and Cucumber • Refining processes and working with a team...
    • 6. CODE
    • 7. CODE Ok, well maybe a little code...
    • 8. Agile SCRUM XP
    • 9. Agile SCRUM XP WTF?
    • 10. We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan
    • 11. “ I believe that the hardest part of software projects, the most common source of project failure, is communication with the customers and users of that software ” - Martin Fowler
    • 12. Conceptualization •Identify the problem • Brainstorm on solutions • Sketch Ideas
    • 13. Identify Who Cares
    • 14. New Hampshire Rubyists Want Us to Build Them A Site... Who should we talk to?
    • 15. http://www.flickr.com/photos/spine/263214639/ Listen, then Ask
    • 16. Why?
    • 17. “I want a calendar” • “...Why?” • “So our users can stay up to date” • “What do they want to be up to date about?” • “Our events and other local tech events.” • “What other local events?”
    • 18. Why? Why? Why? Why? Why?
    • 19. Challenge
    • 20. http://threetreesstudios.com/andscifi/tag/star-wars/ Brainstorming
    • 21. Brainstorming Fundamentals • There are no dumb ideas • Don’t criticize other people’s ideas • Build on other people’s ideas • It’s about quantity, not quality • Have a facilitator that enforces rules above
    • 22. Affinity Grouping
    • 23. Mind Maps
    • 24. It’s about brain power...
    • 25. Courtesy: Jason Robb Sketching
    • 26. Failure In Design
    • 27. Design With Constraints
    • 28. More on Sketching...
    • 29. Words Matter... http://www.flickr.com/photos/peterwalshprojects/ Maintain a Glossary
    • 30. Words Matter... http://www.flickr.com/photos/enovember/3471675615/ Tell An Illustrated Story
    • 31. User Stories
    • 32. What’s a user story? • indicates the person who is seeking some type of value from the software • describes functionality that delivers that value • includes acceptance tests that verify the value is realized
    • 33. User Stories As a ... In order to... I want to ... As a... So that ... I want to... As a NH rubyist I want to post a job advertisement So that interested candidates can inquire
    • 34. User Stories Independent Negotiable Valuable to users or customers Estimatable Small Testable
    • 35. Notice... Independent? Valuable? Small? • Editing? • Search? • Deletion? • Archiving? • Permissions?
    • 36. More on User Stories
    • 37. Acceptance Tests
    • 38. Convey Stakeholder Expectations • If I don’t enter a title or description, I should get an error and the job should not be posted • I should get a success message when I’ve entered everything properly • The listing should be publicly viewable upon successful posting • A job should display a title and description • I must be logged in to create a new job
    • 39. User Stories + Acceptance Tests = Cucumber
    • 40. Features features/post_a_job.feature
    • 41. Scenarios
    • 42. Scenarios
    • 43. Scenarios
    • 44. Scenarios
    • 45. You’re the developer... Are we done yet?
    • 46. Wait! Valuable to the user or customer
    • 47. Most Importantly, Assert Value
    • 48. Steps features/step_definitions/user_steps.rb Then statements should have assertions
    • 49. Lessons Learned • AST Tables are no fun • bmabey’s database_cleaner is awesome • avoid sharing instance variables • refactoring steps proves difficult • slow
    • 50. Lessons Learned • AST Tables are no fun • bmabey’s database_cleaner is awesome • avoid sharing instance variables • refactoring steps proves difficult • slow
    • 51. Track
    • 52. Iterate
    • 53. Don’t just be sorry. Think for a second!!!! Who broke the *#!?!#% build? Continuous Integration
    • 54. Don’t work in what you do Work on what you do
    • 55. Learning
    • 56. “ As the number of people on a project increases, however, so does the number of communication paths. It doesn’t increase additively, as the number of people increases, it increases multiplicatively, proportional to the square of the number of people. ” - Steve McConnell
    • 57. Don’t Work With Bozos Love the ones you work with...
    • 58. Love what you do...
    • 59. Love what you do... obsess about how to make it better
    • 60. Thanks!!! Twitter: dpickett Site: www.enlightsolutions.com IRC: #railsbridge on FreeNode

    ×