Top Banner
Chris Castiglione @castig | onemonth.com PROGRAMMING FOR NON-PROGRAMMERS
75

Programming For Non-Programmers @ Social Media Week

Sep 08, 2014

Download

Technology

Chris Castiglione is the co-founder of www.onemonth.com

------------------------------------------------------------------------------------------
Programming For Non-Programers: Summary

If you’re running a tech start-up, it’s essential that you familiarize yourself with the fundamentals of web development. Ultimately knowing how to “talk to the talk” will help you communicate better with developers, and overall just look really cool. Come with questions, and a desire to have fun!

In this workshop we’ll tackle some development principles to get you on the right path, understanding the nuances of Front-end vs. Back-end, and why UX is necessary for your project.

http://socialmediaweek.org/blog/event/programming-for-non-programmers/#.UwZX3ltdXRo

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Programming For Non-Programmers @ Social Media Week

Chris Castiglione @castig | onemonth.com

PROGRAMMING FOR NON-PROGRAMMERS

Page 2: Programming For Non-Programmers @ Social Media Week

THE QUESTIONHow do I communicate an idea from my head… to a computer?

Page 3: Programming For Non-Programmers @ Social Media Week

What is Programming? (...and why do I care?)

Page 4: Programming For Non-Programmers @ Social Media Week

PROGRAMMING‣a set of instructions

‣used to solve a problem

Page 5: Programming For Non-Programmers @ Social Media Week

PEANUT BUTTER & JELLY SANDWICH

Page 6: Programming For Non-Programmers @ Social Media Week

PEANUT BUTTER & JELLY SANDWICH‣find two slices of bread

Page 7: Programming For Non-Programmers @ Social Media Week

PEANUT BUTTER & JELLY SANDWICH‣find two slices of bread

‣spread peanut butter on one slice of bread

Page 8: Programming For Non-Programmers @ Social Media Week

‣find two slices of bread

‣spread peanut butter on one slice of bread

‣spread jelly on the other slice of bread

PEANUT BUTTER & JELLY SANDWICH

Page 9: Programming For Non-Programmers @ Social Media Week

‣find two slices of bread

‣spread peanut butter on one slice of bread

‣spread jelly on the other slice of bread

‣put the two slices of bread together

PEANUT BUTTER & JELLY SANDWICH

Page 10: Programming For Non-Programmers @ Social Media Week

PROBLEM SOLVED!

Page 11: Programming For Non-Programmers @ Social Media Week

PROGRAMMING‣a set of instructions

‣used to solve a problem

Page 12: Programming For Non-Programmers @ Social Media Week

WHY ARE WE HERE?‣to learn to think like a developer

Page 13: Programming For Non-Programmers @ Social Media Week

WEB DEV PROCESSUnderstand the Problem

Page 14: Programming For Non-Programmers @ Social Media Week

LET’S TAKE A HIKE!

Page 15: Programming For Non-Programmers @ Social Media Week

LET’S TAKE A HIKE!

Page 16: Programming For Non-Programmers @ Social Media Week

LET’S TAKE A HIKE!‣ 10 hours per day?

‣ 10 days?

‣Great!

Page 17: Programming For Non-Programmers @ Social Media Week

DAY 1

Page 18: Programming For Non-Programmers @ Social Media Week

DAY 1

...2 hours later

Page 19: Programming For Non-Programmers @ Social Media Week

DAY 2

What the hell!? This wasn’t on the map

Page 20: Programming For Non-Programmers @ Social Media Week

DAY 5‣ Holy S!*T we didn’t even leave the Bay Area yet?!??

!

‣ I hate everything

Page 21: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

MINIMAL VIABLE PRODUCT - (MVP) ‣Minimum features needed to test your assumptions

‣Validate your idea

Page 22: Programming For Non-Programmers @ Social Media Week
Page 23: Programming For Non-Programmers @ Social Media Week

‣Dropbox

Page 24: Programming For Non-Programmers @ Social Media Week

‣Pebble

Page 25: Programming For Non-Programmers @ Social Media Week

‣Pebble

Page 26: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

is to build something that nobody wants.

The worst thing

Page 27: Programming For Non-Programmers @ Social Media Week

Web Master

Web Developer Web Designer

Front-end Back-end Visual DesignerUser Experience

User-Interface Information ArchitectureDatabase Expert

Growth HackerSecurity Testing

HTML5 Animation

SEO Expert Usability

Page 28: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

A TYPICAL WEB DEVELOPMENT CYCLE

User-Experience (UX)

Information Architecture (IA)

Visual Design Development

Page 29: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

A TYPICAL WEB DEVELOPMENT CYCLE

User-Experience (UX)

Information Architecture (IA)

Visual Design Development

Page 30: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

USER-EXPERIENCE (UX)‣Who are our users?

‣What are the users goals?

‣What does the program do when there are errors?

‣What are the biggest risks?

Page 31: Programming For Non-Programmers @ Social Media Week
Page 32: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS[ 1. PLAN ] [ 2. DESIGN ] [ 3. DEVELOP ]

CASE STUDY: IDEAS, FEATURES, GOALS

Page 33: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

“I want all of the features!”

Page 34: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

Who is our user?

Page 35: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

CASE STUDY: USER RESEARCH

Page 36: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

CASE STUDY PERSONAS

Mary Dickinson, North Dakota

JohnLong Island, New York

Page 37: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

‣Has 5+ computers in his home but says he would gamble on his iPad or a PC netbook running Firefox primarily. ‣Has an iPhone 4, can’t wait to convince his wife he needs the new one. Doesn’t think he would gamble on the iPhone but could see wanting to check his account.

‣Has a Facebook and Twitter profile but would not want to use it to setup an account. He would like to be able to see who of his Twitter and Facebook friends is playing the game however. ‣Watches video online, sports clips mostly. ‣Pays for Netflix. ‣Does most, if not all, shopping online out of convenience and selection.

PERSONAS: WHAT JOHN CARES ABOUT…

Page 38: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

‣This isn’t sketchy is it? ‣How can I get my friends involved? ‣How often are the races on the weekends? ‣How good quality are the videos? ‣How will the load time be on my iPad? ‣How much do I need to play? ‣How much could I win? ‣Do I need to know about horses to make smart bets?

PERSONAS: WHAT JOHN CARES ABOUT

Page 39: Programming For Non-Programmers @ Social Media Week

Information Architecture

Page 40: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

User-Experience (UX)

Information Architecture (IA)

Visual Design Development

A TYPICAL WEB DEVELOPMENT CYCLE

Page 41: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

A TYPICAL WEB DEVELOPMENT CYCLE

User-Experience (UX)

Information Architecture (IA)

Visual Design Development

Page 42: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

A model or blueprint for the site, resulting in deliverables such as:

‣wireframes

‣flow diagrams

‣sitemap

INFORMATION ARCHITECTURE (IA)

Page 43: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

BRAINSTORMING

Page 44: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

BRAINSTORMING

Page 45: Programming For Non-Programmers @ Social Media Week

TWITTER (PROTOTYPE)

Page 46: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

LOW FIDELITY WIREFRAMES

Page 47: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

HIGH FIDELITYWIREFRAMES

Page 48: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

SMALL SITE

Page 49: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

LARGE SITE

Page 50: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

FUNCTIONAL

Page 51: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

FLOW DIAGRAM

Page 52: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

FLOW DIAGRAM

Page 53: Programming For Non-Programmers @ Social Media Week

Sed posuere consectetur est at lobortis. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Maecenas faucibus mollis interdum.

HEADER 2

PUT STUFF HERE LATER

Page 54: Programming For Non-Programmers @ Social Media Week

Typography has one plain duty before it and that is to convey information in writing. No argument or consideration can absolve typography from this duty. A printed work which cannot be read becomes a product without purpose.

TREAT TEXT AS USER-INTERFACE

CONTENT STRATEGY

Page 55: Programming For Non-Programmers @ Social Media Week

DESIGN. IS ABOUT WORDS.

TREAT TEXT AS USER-INTERFACE

Page 56: Programming For Non-Programmers @ Social Media Week

Visual Design

Page 57: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

A TYPICAL WEB DEVELOPMENT CYCLE

User-Experience (UX)

Information Architecture (IA)

Visual Design Development

Page 58: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

User-Experience (UX)

Information Architecture (IA)

Visual Design

Development

A TYPICAL WEB DEVELOPMENT CYCLE

Page 59: Programming For Non-Programmers @ Social Media Week

VISUAL DESIGNWireframes become design comps

Page 60: Programming For Non-Programmers @ Social Media Week

VISUAL DESIGNEach wireframe template becomes a comp template

Homepage Blog Listen

source: www.risk-show.com

Page 61: Programming For Non-Programmers @ Social Media Week

STYLE GUIDE

Style Tile Final

source: www.risk-show.com

Page 62: Programming For Non-Programmers @ Social Media Week

Development

Page 63: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

A TYPICAL WEB DEVELOPMENT CYCLE

User-Experience (UX)

Information Architecture (IA)

Visual Design Development

Page 64: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

A TYPICAL WEB DEVELOPMENT CYCLE

User-Experience (UX)

Information Architecture (IA)

Visual Design

Development

Page 65: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

DEVELOPMENTComps become graphics & real text

!65

Page 66: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

DEVELOPMENTComps become graphics & real text

mailer.png

general-assembly-logo.png

social-media.png

Real Text: General Assembly offers classes, and events at the intersection of technology, design, and entrepreneurship. Together with our members, thought leaders, and seasoned practitioners, we offer a robust curriculum focused on

!66

Page 67: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

FRONT-END DEVELOPMENT (noun)

Page 68: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

BACK-END DEVELOPMENT (noun)

Page 69: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

DEVELOPMENT

!69

The development process can be broken into two separate responsibilities:

Page 70: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

FRONT-END WEB DEVELOPMENT

1.Client Side

2.How things look to the user

3.Involves: Images, content, structure

4.HTML, CSS, JavaScript

DEVELOPMENT

!70

The development process can be broken into two separate responsibilities:

Page 71: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

FRONT-END WEB DEVELOPMENT

1.Client Side

2.How things look to the user

3.Involves: Images, content, structure

4.HTML, CSS, JavaScript

The development process can be broken into two separate responsibilities:

BACK-END WEB DEVELOPMENT

1.Server Side

2.How things works

3.Involves: “business logic” and data

4.Ruby, PHP, C++, Java, etc

!71

DEVELOPMENT

Page 72: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

±±±

ZAPPOS.COM

FRONT-END

homepage cartregistration

BACK-END

process.php

Page 73: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

‣Product Development ‣User Experience ‣Information Architecture ‣Content Strategy ‣Project Manager ‣Business Analyst !‣Visual Designer !‣Front-end developer ‣Back-end developer ‣Usability ‣Security ‣SEO Expert ‣Analytics Expert ‣Quality Assurance (QA) Tester ‣Server Administrator ‣Growth Hacking

WEB DEVELOPMENT PROCESS

Page 74: Programming For Non-Programmers @ Social Media Week

PROGRAMMING FOR NON-PROGRAMMERS

Page 75: Programming For Non-Programmers @ Social Media Week

Chris Castiglione @castig | onemonth.com

PROGRAMMING FOR NON-PROGRAMMERS