Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
UXINDIA17 - Let's Code to prototype
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
uxindia
November 20, 2017
Design
76
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
UXINDIA17 - Let's Code to prototype
Let's Code to prototype
uxindia
November 20, 2017
More Decks by uxindia
See All by uxindia
Designing for social change and awareness narratives with smell
uxindia
1
220
Creating a Culture of User Research
uxindia
0
180
Enough with the evangelism, let’s make a deal!
uxindia
0
70
Never sweat about pixels again – Design System at Scale by Qubole
uxindia
0
130
Dead-end in Immersive Technology (AR /VR and MR) lead UX?
uxindia
0
120
Design Meta Systems
uxindia
0
120
Building Design System for Managing Design Consistency and High-Functioning Team
uxindia
0
400
Data Driven UX Research: Workshop on how to get the best out of Ethnography, Surveys and Online Behavioral Data.
uxindia
0
110
Adekunle_Oduye_30_Min_E.pdf
uxindia
0
98
Other Decks in Design
See All in Design
コールセンターのオペレーターに6時間だけなってみた
h0sa
0
150
分裂するデザイン、取り残される空間—インクルーシブデザインスタジオが建築をやる理由
culumu
0
160
20260802東京都市大学オープンキャンパス授業
a2k
0
110
Kouseki | CREATIVE CLASS成果物
yuri9911
0
250
Basket_of_love.pdf
terencebasart
0
360
染み出し好きの、 染み出しコントロール論
mukai_takeru
0
500
泥臭く語るUIデザイン会|ホワイトボードチャレンジ【RAMEN TECH 2026】
garyuten
1
180
デザなに#1「問いのデザイン」の紹介LT
garyuten
0
150
もっともらしさ生成器と暮らす – AI懐疑派の試行錯誤
sekiguchiy
0
200
少人数チームで_使われるプロダクトにたどり着くための_デザインハーネス.pdf
nishame
1
1.6k
Typographie et intégration web
goetter
0
170
Spectrum Tokyo Meetup #26「できることが増えた時、デザイナーは何に時間を使うべきか」
muture
PRO
0
330
Featured
See All Featured
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
520
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
930
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.9k
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
Building AI with AI
inesmontani
PRO
1
1.3k
Are puppies a ranking factor?
jonoalderson
2
4.1k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
3.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Amusing Abliteration
ianozsvald
1
350
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
500
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8.1k
Transcript
None
HTTPS://GITHUB.COM/PIXELINGENE/ UXINDIA2017-REACT-PROTOTYPING VSCODE•WEBSTORM•NODE.JS•COMMAND LINE
PROTOTYPING LANDSCAPE
PROTOTYPING WITH CODE… CODE
UX CODE
UX ❤ CODE
LET’S CODE TO PROTOTYPE PAVAN PODILA SAPIENT @pavanpodila
None
None
SIMPLE DIGITAL ANALOG
JAVASCRIPT REACT <CODE/> <CODE/> <CODE/> <CODE/> {CODE} <CODE/> <CODE/> <CODE/>
<CODE/>
JAVASCRIPT A Quick Tour
MODULES CLASSES FUNCTIONS LOOPS CONDITIONALS VARIABLES THE LAYERS OF PROGRAMMING
SYNTAX
MODULES CLASSES FUNCTIONS LOOPS CONDITIONALS VARIABLES VARIABLES let a =
`This is a ${fruit}`; const count = 100; let conference = { name: 'UX India', year: 2017, venue: 'Bengaluru' }; let birds = [ 'sparrow', 'eagle', 'peacock', 'hummingbird' ]; let shoppingList = [ { name: 'Cheese', count: 1 }, { name: 'Milk', count: 1 }, { name: 'Cucumber', count: 2 }, ];
MODULES CLASSES FUNCTIONS LOOPS CONDITIONALS VARIABLES CONDITIONALS const color =
a === 'apple' ? 'red' : 'green'; if (a === 'apple') { // ok its an apple } else { // some other fruit }
MODULES CLASSES FUNCTIONS LOOPS CONDITIONALS VARIABLES LOOPS for (let x
= 0; x < 10; x++) { console.log('I will not write on the wall again.'); } let morning = true; while (morning) { // show the sun }
MODULES CLASSES FUNCTIONS LOOPS CONDITIONALS VARIABLES FUNCTIONS function makePizza() {
const config = { flavor: 'Hearty Veggies', base: 'Deep Dish', size: 12, sauce: 'normal', wellDone: true }; applyConfig(config); notifyDone('Pizza Ready!'); } function applyConfig(config) { // Use the config and prepare the pizza } function notifyDone(msg) { console.log(msg); }
MODULES CLASSES FUNCTIONS LOOPS CONDITIONALS VARIABLES FUNCTIONS function make5Rectangles() {
return [0, 1, 2, 3, 4].map(y => { return ( <Rect x={0} y={100 + y * 10} /> ); }) } const onOkButtonClick = () => { console.log('Ok great!'); };
MODULES CLASSES FUNCTIONS LOOPS CONDITIONALS VARIABLES CLASSES class ColorBar extends
React.Component { static defaultProps = { color: 'red' }; state = { currentValue: 'blue' }; constructor(props) { super(props) } render() { } componentDidMount() { } }
MODULES CLASSES FUNCTIONS LOOPS CONDITIONALS VARIABLES MODULES export default constants
= { apiURL: 'http://localhost:3000', token: '1fafsr23fasdf' }; export function log(){} import constants, {log} from './constants'; log(constants) constants.js service.js
THE LAYERS OF PROGRAMMING SYNTAX MODULES CLASSES FUNCTIONS LOOPS CONDITIONALS
VARIABLES
{ CODE }
REACT UI Prototyping
<XML /> JAVASCRIPT CSS
REACT
COMPONENTS ALL THE WAY
COMPONENTS ALL THE WAY
COMPONENTS ALL THE WAY DOCUMENT ARTBOARD GROUP RECTANGLE LINE CIRCLE
ARTBOARD ARTBOARD GROUP RECTANGLE
00 05 10 15 20 25 30 35 40 45
50 55 12 1 2 3 4 5 6 7 8 9 10 11 Let's Code to Prototype Oct 20 Friday COMPONENTS ALL THE WAY
00 05 10 15 20 25 30 35 40 45
50 55 12 1 2 3 4 5 6 7 8 9 10 11 Let's Code to Prototype Oct 20 Friday COMPONENTS ALL THE WAY
00 05 10 15 20 25 30 35 40 45
50 55 12 1 2 3 4 5 6 7 8 9 10 11 Let's Code to Prototype Oct 20 Friday COMPONENTS ALL THE WAY
A COMPONENT RECEIVES INPUT PRODUCES OUTPUT HAS STATE
2 TYPES OF COMPONENTS CONTAINER PRESENTATION DATA DATA PROP PROP
PROP
COMPONENT LIFECYCLE will-mount will-unmount did-update will-update will-receive-props RENDER did-mount Mounting
Updating Unmounting
REACT
{ CODE } { CODE } { CODE } {
CODE } { CODE } { CODE } { CODE } { CODE } { CODE }
LET’S CODE TO PROTOTYPE ACCOMPLISHMENT UNLOCKED @pavanpodila PAVAN PODILA ★
Picked up JavaScript ★ Learnt the React UI framework ★ Did Component-oriented Development ★ SVG ★ Built many Watch Faces