the great @fsibot caper

39
The Great @fsibot Caper

Upload: mathias-brandewinder

Post on 17-Jul-2015

55 views

Category:

Software


0 download

TRANSCRIPT

Page 1: The Great @fsibot Caper

The Great @fsibot Caper

Page 2: The Great @fsibot Caper

Chapter 1Genesis

Page 3: The Great @fsibot Caper
Page 5: The Great @fsibot Caper
Page 6: The Great @fsibot Caper

Chapter 2Foundations

Page 7: The Great @fsibot Caper

Microsoft (R) F# Interactive version 12.0.30815.0Copyright (c) Microsoft Corporation. All Rights Reserved.

For help type #help;;

> “I’ve still got the greatest enthusiasm in the mission. And I want to help you” |> sprintf “%s”

Page 8: The Great @fsibot Caper

Design

Twitter

Read mentions

Evaluate expression

Compose response

Page 10: The Great @fsibot Caper

Bits & PiecesLinq2TwitterTopShelfAzure VMF# Compiler Services

Page 11: The Great @fsibot Caper

F# Compiler Services•Exposes F# compiler and extensions•Powers many F# open source projects•PowerTools, IDEs/editors, fsReveal, …

Page 13: The Great @fsibot Caper

Chapter 3P0wnage

Page 14: The Great @fsibot Caper

What could possibly go wrong with letting people run arbitrary code on my machine?(After all, it’s only 140 characters…)

Page 15: The Great @fsibot Caper
Page 16: The Great @fsibot Caper

Wednesday, August 27, 2014“The Day of Great P0wnage”

Page 17: The Great @fsibot Caper
Page 18: The Great @fsibot Caper
Page 19: The Great @fsibot Caper
Page 20: The Great @fsibot Caper
Page 21: The Great @fsibot Caper
Page 22: The Great @fsibot Caper
Page 23: The Great @fsibot Caper

The more successful the villain, the more successful the picture.A. Hitchcock

Page 24: The Great @fsibot Caper
Page 25: The Great @fsibot Caper
Page 26: The Great @fsibot Caper
Page 27: The Great @fsibot Caper
Page 28: The Great @fsibot Caper

Chapter 4Containment

Page 29: The Great @fsibot Caper

Design

Twitter

Read mentions

Evaluate expression

Compose response

Page 30: The Great @fsibot Caper

Re-Design

Twitter

Read mentions

Evaluate expression

Compose response

Azure Service Bus

Page 31: The Great @fsibot Caper

Azure Service Bus•Dead simple to use•Solved 80% of the issues•Duplicate Detection

Now 100% More

Enterprise!

Page 33: The Great @fsibot Caper

Chapter 5Security

Page 34: The Great @fsibot Caper

SuspicionSystem.IO

System.Net

System.Threading

Page 35: The Great @fsibot Caper

EpilogueI for one…

Page 36: The Great @fsibot Caper

Lessons learnt•Security is hard•Making your code public spices things up•Lots of power in 140 chars of F#...

•Compiler Service is surprisingly easy•Azure Service Bus / queues are great

Page 37: The Great @fsibot Caper

What next?•Quines?•Charting? Data? [Wolfram Bot]•Sessions?•Hook to StackOverflow?

… let me know, help me out!

Page 38: The Great @fsibot Caper

Credits/huge thanks to…@tomaspetricek@rojepp@panesofglass

Also @bbqfritto @ptrelford @pblasucci @rickasaurus@relentlessdev

Page 39: The Great @fsibot Caper

Ping me…[email protected]@brandewinder

/