Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The Designer's guide to building software

The Designer's guide to building software

How to work with Developers to build amazing software

E1908e299f9f9fa4938e7e11e2c96f1e?s=128

concept47

March 21, 2012
Tweet

Other Decks in Technology

Transcript

  1. The Designer’s guide to building Software IKE

  2. don’t understand software development A lot of Designers ...

  3. don’t understand software development … even some software developers. A

    lot of Designers ... people  
  4. We’re about to fix all this Don’t feel bad. (famous.

    last. words.)
  5. #whoami

  6. First, some Questions.

  7. What is software? Programs that tell a computer how to

    do something
  8. System software. Programming software. *Application software* Types of software?

  9. Application Software? That sounds a lot like “apps” …

  10. Apps? Desktop Apps. Mobile Apps. *Web Apps* aka “software”

  11. Website vs Web app

  12. Why is Software hard? (This is not an existential question)

  13. “There are known knowns; there are things we know we

    know. We also know there are known unknowns; that is to say we know there are some things we do not know. But there are also unknown unknowns – there are things we do not know we don't know” — *former* United States Secretary of Defense Donald Rumsfeld
  14. Why is Software hard? Unknown Unknowns are a KILLER!

  15. Why is Software hard? Coming up with estimates are hard

    and …
  16. “L’enfer, c’est les autres” Jean  Paul  Sartre  

  17. Just kidding …

  18. “Hell is other people” Jean  Paul  Sartre    

  19. Methods of building software Agile. Waterfall. Big Design. Iterative

  20. What’s the right way?! (This is an existential question)

  21. How I like to do it Design. Discuss. Prototype. Argue.

    Write Tests. Code. Find problems. Regroup. Code more. Manual Testing. Fix bugs. Release. Drink. Profit. Party. Rinse. Repeat.
  22. How to do it wrong? Bad estimates Long times between

    checkins Not involving the developers No collaborative tools Bad. Hard dates.
  23. What the designer should know You don’t need to know

    how to program … but you need to know the medium you’re designing for
  24. What the designer should know Native mobile vs mobile web

    Touch screen vs mouse Page loads vs Ajax Android vs ios vs Windows phone etc
  25. What the designer should know *Don’t* try to keep up

    with less, sass, css, haml css3, html5, jquery, dojo, spine, backbone, Ember.js, jsonp, sugar.js, AIR, WPF …
  26. What the designer should know Front-end Development is *now* very

    specialized. It didn’t used to be, so designers could work on front end code
  27. What the designer should know Focus on acquiring ui/ux knowledge

    … but picking up technical knowledge never hurts. makes it harder to be bullshitted.
  28. My Advice? You’re not Steve Jobs.

  29. My Advice for working with Developers? If you want something.

    Ask nicely. Explain. Get them to help you win.
  30. My Advice? Ask A LOT of questions. People like to

    talk about their work
  31. Albert Einstein I am neither especially clever nor especially gifted.

    I am only very, very curious
  32. My Advice? Never tell a developer *HOW* to do something,

    unless you’re prepared for war.
  33. My Advice? Learn how to use collaborative tools. Skype. Campfire.

    Basecamp.
  34. My Advice? Learn how to write bug reports and use

    JIRA or Lighthouse
  35. My Advice? Learn the importance of testing and regressions.

  36. The Future •  Node.js. Evented programming •  Scaling. Concurrency. Big

    Data. •  html5 •  The Rise of Mobile •  *Responsive design *  h.p://speakerdeck.com/u/malarkey/p/fashionably-­‐flexible-­‐responsive-­‐web-­‐design-­‐full-­‐day-­‐workshop-­‐1  
  37. Questions Now with Answers!

  38. <Applause />

  39. Thanks! Twitter: @concept47 Email: ike@concept47