6. spreadsheet are code

129
Spreadsheets for developers Felienne Hermans

Upload: in4400

Post on 01-Dec-2014

155 views

Category:

Education


2 download

DESCRIPTION

Week 1 - Lecture hour 2

TRANSCRIPT

Page 1: 6. spreadsheet are code

Spreadsheets for developers

Felienne Hermans

Page 2: 6. spreadsheet are code
Page 3: 6. spreadsheet are code
Page 4: 6. spreadsheet are code

Spreadsheets are code

Page 5: 6. spreadsheet are code

1) Used for similar problems

Page 6: 6. spreadsheet are code
Page 7: 6. spreadsheet are code

But why in a spreadsheet?

Page 8: 6. spreadsheet are code
Page 9: 6. spreadsheet are code

2) Formulas are Turing complete

Page 10: 6. spreadsheet are code
Page 11: 6. spreadsheet are code
Page 12: 6. spreadsheet are code
Page 13: 6. spreadsheet are code
Page 14: 6. spreadsheet are code
Page 15: 6. spreadsheet are code

In summary: both the activities,

complexity and problems are the same

Page 16: 6. spreadsheet are code

Spreadsheets are code

In summary: both the activities,

complexity and problems are the same

Page 17: 6. spreadsheet are code

And not just a programming

language!

Page 18: 6. spreadsheet are code

Stukje Bret Victor hier

Page 19: 6. spreadsheet are code
Page 20: 6. spreadsheet are code
Page 21: 6. spreadsheet are code

Selection

Sort

Page 22: 6. spreadsheet are code
Page 23: 6. spreadsheet are code
Page 24: 6. spreadsheet are code
Page 25: 6. spreadsheet are code
Page 26: 6. spreadsheet are code
Page 27: 6. spreadsheet are code
Page 28: 6. spreadsheet are code
Page 29: 6. spreadsheet are code
Page 30: 6. spreadsheet are code
Page 31: 6. spreadsheet are code
Page 32: 6. spreadsheet are code
Page 33: 6. spreadsheet are code
Page 34: 6. spreadsheet are code
Page 35: 6. spreadsheet are code
Page 36: 6. spreadsheet are code
Page 37: 6. spreadsheet are code
Page 38: 6. spreadsheet are code
Page 39: 6. spreadsheet are code
Page 40: 6. spreadsheet are code
Page 41: 6. spreadsheet are code
Page 42: 6. spreadsheet are code
Page 43: 6. spreadsheet are code
Page 44: 6. spreadsheet are code
Page 45: 6. spreadsheet are code
Page 46: 6. spreadsheet are code
Page 47: 6. spreadsheet are code
Page 48: 6. spreadsheet are code
Page 49: 6. spreadsheet are code
Page 50: 6. spreadsheet are code

Level 2: nicer and a bit

scarier

Page 51: 6. spreadsheet are code
Page 52: 6. spreadsheet are code
Page 53: 6. spreadsheet are code
Page 54: 6. spreadsheet are code
Page 55: 6. spreadsheet are code
Page 56: 6. spreadsheet are code
Page 57: 6. spreadsheet are code
Page 58: 6. spreadsheet are code
Page 59: 6. spreadsheet are code
Page 60: 6. spreadsheet are code
Page 61: 6. spreadsheet are code
Page 62: 6. spreadsheet are code
Page 63: 6. spreadsheet are code
Page 64: 6. spreadsheet are code
Page 65: 6. spreadsheet are code
Page 66: 6. spreadsheet are code
Page 67: 6. spreadsheet are code
Page 68: 6. spreadsheet are code
Page 69: 6. spreadsheet are code
Page 70: 6. spreadsheet are code
Page 71: 6. spreadsheet are code
Page 72: 6. spreadsheet are code
Page 73: 6. spreadsheet are code
Page 74: 6. spreadsheet are code
Page 75: 6. spreadsheet are code
Page 76: 6. spreadsheet are code
Page 77: 6. spreadsheet are code
Page 78: 6. spreadsheet are code
Page 79: 6. spreadsheet are code
Page 80: 6. spreadsheet are code
Page 81: 6. spreadsheet are code
Page 82: 6. spreadsheet are code
Page 83: 6. spreadsheet are code
Page 84: 6. spreadsheet are code
Page 85: 6. spreadsheet are code
Page 86: 6. spreadsheet are code
Page 87: 6. spreadsheet are code
Page 88: 6. spreadsheet are code
Page 89: 6. spreadsheet are code
Page 90: 6. spreadsheet are code
Page 91: 6. spreadsheet are code
Page 92: 6. spreadsheet are code
Page 93: 6. spreadsheet are code
Page 94: 6. spreadsheet are code
Page 95: 6. spreadsheet are code
Page 96: 6. spreadsheet are code
Page 97: 6. spreadsheet are code
Page 98: 6. spreadsheet are code
Page 99: 6. spreadsheet are code
Page 100: 6. spreadsheet are code
Page 101: 6. spreadsheet are code
Page 102: 6. spreadsheet are code
Page 103: 6. spreadsheet are code
Page 104: 6. spreadsheet are code

With i = swap it is almost the same

Page 105: 6. spreadsheet are code

So if spreadsheets are code, can we

apply software engineering methods?

Page 106: 6. spreadsheet are code
Page 107: 6. spreadsheet are code
Page 108: 6. spreadsheet are code

So, we built BumbleBee:

a refactoring tool for spreadsheets

Page 109: 6. spreadsheet are code

So, we built BumbleBee:

a refactoring tool for spreadsheets

Page 110: 6. spreadsheet are code
Page 111: 6. spreadsheet are code
Page 112: 6. spreadsheet are code
Page 113: 6. spreadsheet are code
Page 114: 6. spreadsheet are code
Page 115: 6. spreadsheet are code
Page 116: 6. spreadsheet are code

The transformations are entirely

programmable, with a small language

Page 117: 6. spreadsheet are code

And of course, if you say refactoring,

you say …

Page 118: 6. spreadsheet are code

And of course, if you say refactoring,

you say testing

Page 119: 6. spreadsheet are code

Spreadsheets tests are hiding in plain

sight

Page 120: 6. spreadsheet are code
Page 121: 6. spreadsheet are code

These test formulas can be exploited

Page 122: 6. spreadsheet are code

Our tool Expector can find test formulas

Page 123: 6. spreadsheet are code
Page 124: 6. spreadsheet are code
Page 125: 6. spreadsheet are code
Page 126: 6. spreadsheet are code
Page 127: 6. spreadsheet are code
Page 128: 6. spreadsheet are code

Expector helps users to understand

robustness of their spreadsheets

Page 129: 6. spreadsheet are code