90 likes | 186 Views
Code In The Air. Code In The Air. s = gps.getSpeed(); d = gps.getDirection(); send(5sec, s + d );. Phones execute code based on location. Code In The Air. s = gps.getSpeed(); d = gps.getDirection(); send(5sec, s + d);. s = gps.getSpeed(); d = gps.getDirection(); send(30sec , s + d);.
E N D
Code In The Air s = gps.getSpeed(); d = gps.getDirection(); send(5sec, s + d); Phones execute code based on location
Code In The Air s = gps.getSpeed(); d = gps.getDirection(); send(5sec, s + d); s = gps.getSpeed(); d = gps.getDirection(); send(30sec, s + d); s = gps.getSpeed(); d = gps.getDirection(); send(10sec, s + d); s = gps.getSpeed(); d = gps.getDirection(); send(5sec, s + d); s = gps.getSpeed(); d = gps.getDirection(); send(10sec, s + d); s = gps.getSpeed(); d = gps.getDirection(); send(30sec, s + d); s = gps.getSpeed(); d = gps.getDirection(); send(5sec, s + d); s = gps.getSpeed(); d = gps.getDirection(); send(5sec, s + d); Remotely program through a web service
Applications Crowd sourcing
Applications Crowd sourcing Location based phone.setVibrate(); alert(“send taxes”); tweet(“reached office”);
Applications Crowd sourcing Location based “this restaurant sucks” Social/Collaborative
Applications Crowd sourcing Location based Social/Collaborative Developer Platform
Research Challenges • Can we reduce the coding effort by 100x? • Developer writes simple server side code • Algorithms automatically partition code to run on phones l = getLocation(); s = getSpeed(); r = roadSegment(l); sum[r] = sum[r] + s; count[r] = count[r] + 1 avgSpeed[r] = sum[r] / count[r]; l = gps.getLocation(); s = gps.getSpeed(); send(l, s); • How do we scale to thousands of phones? • Security, Privacy and Incentives
Contact • Professors • Hari Balakrishnan (hari@csail.mit.edu) • Sam Madden (madden@csail.mit.edu) • Grad students • Lenin Ravindranath (lenin@csail.mit.edu) • ArvindThiagarajan (arvindt@csail.mit.edu)