Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
Apps That Talk Back
Rebecca Murphey
April 25, 2014
Technology
2
250
Apps That Talk Back
Front End Ops Conference, San Francisco, 2014
Rebecca Murphey
April 25, 2014
Tweet
Share
More Decks by Rebecca Murphey
See All by Rebecca Murphey
rmurphey
0
170
rmurphey
1
170
rmurphey
2
120
rmurphey
1
190
rmurphey
0
270
rmurphey
7
8.2k
rmurphey
1
310
rmurphey
1
6.2k
rmurphey
1
230
Other Decks in Technology
See All in Technology
110y
3
750
kyonmm
1
2.2k
yukitodate
2
330
cmwatanabeseigo
0
350
fujiihda
8
1.1k
yuhta28
1
220
line_developers
PRO
3
520
am7cinnamon
2
2.7k
vkbaba
0
150
kentaro
1
430
masashible
0
110
kekeke_47
0
340
Featured
See All Featured
swwweet
206
6.8k
phodgson
87
3.9k
bkeepers
52
4.1k
pedronauck
652
110k
jacobian
255
20k
morganepeng
17
1.1k
cassininazir
347
20k
ddemaree
274
31k
geoffreycrofte
18
780
shpigford
165
19k
jonyablonski
14
1.1k
aarron
258
36k
Transcript
Front End Ops Conf 2014 San Francisco • @rmurphey apps
that talk back
None
˒˒˒ ➞ $$$
None
None
None
˒˒˒ ➞ $$$
apps that talk back
keep you from doing a bad thing
None
var spawn = require('child_process').spawn; var command = 'grunt';
var commandOpts = ['check:push']; ! function onExit (code) { if (code !== 0) { throw new Error('Prepush check failed with exit code: ' + code); } process.exit(code); } ! // Run it !! var child = spawn( command, commandOpts, { stdio : 'inherit' } ); child.on('exit', onExit);
BVReporter.assert( this.componentId, 'View ' +
this.name + ' must have componentId' );
None
None
None
tell you when you did a bad thing
None
None
None
BVTracker.error('No productId is defined');
BVTracker.error({ name : errorMessages.IMPLEMENTATION, detail1 :
'No productId is defined', detail2 : component.name });
define({ errors : {
IMPLEMENTATION : 'Implementation Error', API : 'API Error', UNCAUGHT : 'Uncaught Exception', CONFIG : 'Configuration Error', THIRD_PARTY : 'Third Party Service Error', TIMEOUT : 'Request Timeout', UI : 'User Interface Error', FRAMEWORK : 'Framework Error' } });
None
None
None
“scout” file customer requests component(s) core application file data render
of component 1 render of component 2 submission interaction submission resources submission render * not to scale (i hope)
“scout” file customer requests component(s) core application file data render
of component 1 render of component 2 submission interaction submission resources submission render
identify things before they are things
None
None
None
help fix the things
None
None
None
None
priorities
✅ assertions ✅ git hooks (jshint, jscs, unit tests) ✅
error classification & reporting ✅ production monitoring ⬆️ production debugging ⬆️ build optimization via coverage analysis ⬆️ build size monitoring ⬆️ performance instrumentation ❌ error alerting ❌ performance monitoring
@rmurphey • rmurphey.com bazaarvoice.com