Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
UXINDIA17 - Let's Code to prototype
Search
uxindia
November 20, 2017
Design
68
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
210
Creating a Culture of User Research
uxindia
0
170
Enough with the evangelism, let’s make a deal!
uxindia
0
68
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
110
Design Meta Systems
uxindia
0
120
Building Design System for Managing Design Consistency and High-Functioning Team
uxindia
0
380
Data Driven UX Research: Workshop on how to get the best out of Ethnography, Surveys and Online Behavioral Data.
uxindia
0
100
Adekunle_Oduye_30_Min_E.pdf
uxindia
0
93
Other Decks in Design
See All in Design
Figma MCPを活用するためのデザインハンドブック
vivion
8
19k
少人数チームで_使われるプロダクトにたどり着くための_デザインハーネス.pdf
nishame
1
1.2k
エンジニアがAI活用してスライドデザインできる世界が来たよ!
kaikou
1
350
デザインツールを開く前に その画面は誰に何と言わせたい?受託UIデザイナーが顧客解像度を高める 「打ち合わせの場での確かめ方」
garyuten
1
140
20260215独立行政法人科学技術振興機構(JST) 社会技術研究開発センター(RISTEX)ケアが根づく社会システム _公開シンポジウム
a2k
1
230
なぜ、インサイトを貯めるのか?
tajima_kaho
3
2.5k
つくり方を変えていく | change-how-we-build
mottox2
2
1.4k
保育現場にAIを 〜人と技術に橋を架けるデザインで考えてきたこと〜 uiuxcamp2026-hoiku-ai-design
hiro93n
1
340
絵や写真から学ぶ、要素がもたらす副作用
kspace
0
440
デザインの文脈を理解する:エンジニアがデザインカンファレンスに参加して得た学びと気づき
hypebeans
0
250
空間アプリ開発のフィードバックをCodexにするための抽象的なデザインツールの模索
karad
0
160
「ツール」から「パートナー」へ。AI伴走時代のUXデザインとは?~操作を減らし、成果を最大にするための設計~
ncdc
1
710
Featured
See All Featured
The Cult of Friendly URLs
andyhume
79
7k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
280
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.7k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Designing Experiences People Love
moore
143
24k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.5k
Heart Work Chapter 1 - Part 1
lfama
PRO
8
36k
The Limits of Empathy - UXLibs8
cassininazir
1
570
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
980
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