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
uxindia
November 20, 2017
Design
75
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
170
Enough with the evangelism, let’s make a deal!
uxindia
0
69
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
390
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
97
Other Decks in Design
See All in Design
Kouseki | CREATIVE CLASS成果物
yuri9911
0
230
Frontier
rwang05
0
220
個人理念(自分の言葉)の言語化ワークショップ
kakukoki
1
310
広い関与の可能性に どう向き合うのか? 私たちは。|Timee MarketingDesign 2026-06-18
bebe
0
1.1k
なぜ、インサイトを貯めるのか?
tajima_kaho
3
2.8k
AVI 2026 Keynote "Vision-Driven Design"
ishii_mit
0
170
速く作れるかではなく、速く学べるか ― 学習ループを回すパイロットの途中報告
nagata03
0
680
怖くないアクセシビリティ -カウンターカルチャーとしてのアッカン東京-
securecat
1
270
UI生成の鍵は要件整理 -デザインプロセスのエッセンスを プロンプト作成に取り入れよう-
abokadotyann
4
1.1k
工房としてのAI ── デザイナー、作家、ビルダー
hiranotomoki
0
470
decksh object reference
ajstarks
2
1.8k
ボタンUIの冪等性の話をしたらVimmerに刺さっちゃった
ottatto
3
1.9k
Featured
See All Featured
Paper Plane (Part 1)
katiecoart
PRO
2
11k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
340
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
Are puppies a ranking factor?
jonoalderson
2
3.9k
Code Reviewing Like a Champion
maltzj
528
40k
Navigating Weather and Climate Data
rabernat
0
530
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
A better future with KSS
kneath
240
18k
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