Facebook App in Scheme Shibuya.Lisp tt#7 2011/10/22

Higepon Taro Minowa
Higepon Taro MinowaSenior Software Engineer at Twitter
Facebook App
                   in Scheme
                          Higepon
                  shibuya.lisp Tech Talk #7




2011   10   22
Higepon

                 • @higepon
                 • Mona OS
                  • http://www.monaos.org
                 • Mosh Scheme
                  • http://mosh.monaos.org

2011   10   22
Facbook App




2011   10   22
Facbook App




2011   10   22
http://lovamimi .com/

                 • Integrated with Facebook
                 • ja/en
                 • PC/iPhone/Android
                 • Written in Scheme

2011   10   22
Popular secrets

                 •




2011   10   22
Popular secrets
                 •




2011   10   22
Popular secrets

                 •




2011   10   22
Popular secrets
                 •
                     facebook




2011   10   22
Facebook App?


                 • Facebook Graph API
                 • Social Graph Data


2011   10   22
Facebook App?


                 • Facebook Graph API
                 • Social Graph Data


2011   10   22
2011   10   22
2011   10   22
Graph API

                 • Friends
                 • Name, Age, Phone number, Photo, Birthday
                 • Post, Likes, Checkin, Online Presence
                 • Work History, Message
                 • Offline Access, Publish Stream

2011   10   22
Wrote in Scheme

                 •
                     • 729 lines
                     • Mosh has facebook/cgi/template library
                 • 4 hours + coke = First version
                 • MySQL / Apache

2011   10   22
Advantage of
                 Scheme / Lisp


2011   10   22
2011   10   22
S-Exp

                 • Graph API returns JSON
                    • Not human readable!
                    • From JSON to S-Exp
                    • S-Exp is much easier to read and use

2011   10   22
Don’t use S-Exp for

                 • Data Storage
                  • MySQL is much better
                 • Template
                  • Can’t copy and paste
                  • Not everyone can read/write.

2011   10   22
Scheme way

                 • (call-with-cgi ...)
                 • (call-with-connection ...)
                 • i18n
                  • (parameterize ([lang ...])

2011   10   22
Summary

                 • Write your Facebook App in Scheme!
                 • Use Mosh
                  • facebook/cgi/template libraries


2011   10   22
1 of 21

Recommended

Mio - a distributed Skip Graph based orderd KVS by
Mio - a distributed Skip Graph based orderd KVSMio - a distributed Skip Graph based orderd KVS
Mio - a distributed Skip Graph based orderd KVSHigepon Taro Minowa
3.7K views30 slides
Lisp code batton - Shibuya.lisp Tech Talk #5 by
Lisp code batton - Shibuya.lisp Tech Talk #5Lisp code batton - Shibuya.lisp Tech Talk #5
Lisp code batton - Shibuya.lisp Tech Talk #5Higepon Taro Minowa
1.1K views46 slides
Lisp by
LispLisp
Lispsonukumar142
1.5K views57 slides
Redesigning Common Lisp by
Redesigning Common LispRedesigning Common Lisp
Redesigning Common Lispfukamachi
8.9K views86 slides
Introduction To Lisp by
Introduction To LispIntroduction To Lisp
Introduction To Lispkyleburton
6.6K views52 slides
제 5회 Lisp 세미나 - Graphics Programming in Clojure by
제 5회 Lisp 세미나 - Graphics Programming in Clojure제 5회 Lisp 세미나 - Graphics Programming in Clojure
제 5회 Lisp 세미나 - Graphics Programming in ClojureNAVER D2
4.1K views29 slides

More Related Content

Similar to Facebook App in Scheme Shibuya.Lisp tt#7 2011/10/22

20110117 lithium by
20110117 lithium20110117 lithium
20110117 lithiumYusuke Ando
936 views11 slides
Facebook Development for Beginners by
Facebook Development for BeginnersFacebook Development for Beginners
Facebook Development for BeginnersJesse Stay
2.8K views17 slides
EyeEM by
EyeEMEyeEM
EyeEMtrueter
1.6K views29 slides
Facebook Developer Garage Toronto - Syncapse Presentation by
Facebook Developer Garage Toronto - Syncapse PresentationFacebook Developer Garage Toronto - Syncapse Presentation
Facebook Developer Garage Toronto - Syncapse PresentationSyncapse
1.5K views22 slides
«I knew there had to be a better way to build mobile app»​ by
«I knew there had to be a better way to build mobile app»​«I knew there had to be a better way to build mobile app»​
«I knew there had to be a better way to build mobile app»​FDConf
5.4K views50 slides
Making the Mobile Web Native with PhoneGap by
Making the Mobile Web Native with PhoneGapMaking the Mobile Web Native with PhoneGap
Making the Mobile Web Native with PhoneGapRoy Clarkson
1.5K views23 slides

Similar to Facebook App in Scheme Shibuya.Lisp tt#7 2011/10/22(20)

20110117 lithium by Yusuke Ando
20110117 lithium20110117 lithium
20110117 lithium
Yusuke Ando936 views
Facebook Development for Beginners by Jesse Stay
Facebook Development for BeginnersFacebook Development for Beginners
Facebook Development for Beginners
Jesse Stay2.8K views
EyeEM by trueter
EyeEMEyeEM
EyeEM
trueter1.6K views
Facebook Developer Garage Toronto - Syncapse Presentation by Syncapse
Facebook Developer Garage Toronto - Syncapse PresentationFacebook Developer Garage Toronto - Syncapse Presentation
Facebook Developer Garage Toronto - Syncapse Presentation
Syncapse1.5K views
«I knew there had to be a better way to build mobile app»​ by FDConf
«I knew there had to be a better way to build mobile app»​«I knew there had to be a better way to build mobile app»​
«I knew there had to be a better way to build mobile app»​
FDConf5.4K views
Making the Mobile Web Native with PhoneGap by Roy Clarkson
Making the Mobile Web Native with PhoneGapMaking the Mobile Web Native with PhoneGap
Making the Mobile Web Native with PhoneGap
Roy Clarkson1.5K views
Enhancing SharePoint with Responsive Web Design by Eric Overfield
Enhancing SharePoint with Responsive Web DesignEnhancing SharePoint with Responsive Web Design
Enhancing SharePoint with Responsive Web Design
Eric Overfield4.4K views
Wikipedia Mobile App with PhoneGap by Ted Chien
Wikipedia Mobile App with PhoneGapWikipedia Mobile App with PhoneGap
Wikipedia Mobile App with PhoneGap
Ted Chien2.5K views
I knew there had to be a better way to build mobile apps by Alius Petraška
I knew there had to be a better way to build mobile appsI knew there had to be a better way to build mobile apps
I knew there had to be a better way to build mobile apps
Alius Petraška614 views
What's New on the Facebook Platform, February 2012 by Iskandar Najmuddin
What's New on the Facebook Platform, February 2012What's New on the Facebook Platform, February 2012
What's New on the Facebook Platform, February 2012
Iskandar Najmuddin7.1K views
Branding SharePoint for Evolving Internet Devices by Eric Overfield
Branding SharePoint for Evolving Internet DevicesBranding SharePoint for Evolving Internet Devices
Branding SharePoint for Evolving Internet Devices
Eric Overfield842 views
GigMonkey Facebook Dev Garage July09 by Sean O'Sullivan
GigMonkey Facebook Dev Garage July09GigMonkey Facebook Dev Garage July09
GigMonkey Facebook Dev Garage July09
Sean O'Sullivan287 views
Hybrid Mobile application by Sanjay Patel
Hybrid Mobile applicationHybrid Mobile application
Hybrid Mobile application
Sanjay Patel52 views
What's New on the Facebook Platform, January 2012 by Iskandar Najmuddin
What's New on the Facebook Platform, January 2012What's New on the Facebook Platform, January 2012
What's New on the Facebook Platform, January 2012
Iskandar Najmuddin4.9K views
Designing and delivering elearning in a multi-device world by Kineo
Designing and delivering elearning in a multi-device worldDesigning and delivering elearning in a multi-device world
Designing and delivering elearning in a multi-device world
Kineo3.8K views
Web 2.0 Revisited - Final project by Wendy Lile
Web 2.0 Revisited - Final projectWeb 2.0 Revisited - Final project
Web 2.0 Revisited - Final project
Wendy Lile884 views

Recently uploaded

PRODUCT PRESENTATION.pptx by
PRODUCT PRESENTATION.pptxPRODUCT PRESENTATION.pptx
PRODUCT PRESENTATION.pptxangelicacueva6
18 views1 slide
Piloting & Scaling Successfully With Microsoft Viva by
Piloting & Scaling Successfully With Microsoft VivaPiloting & Scaling Successfully With Microsoft Viva
Piloting & Scaling Successfully With Microsoft VivaRichard Harbridge
13 views160 slides
Future of Indian ConsumerTech by
Future of Indian ConsumerTechFuture of Indian ConsumerTech
Future of Indian ConsumerTechKapil Khandelwal (KK)
24 views68 slides
20231123_Camunda Meetup Vienna.pdf by
20231123_Camunda Meetup Vienna.pdf20231123_Camunda Meetup Vienna.pdf
20231123_Camunda Meetup Vienna.pdfPhactum Softwareentwicklung GmbH
45 views73 slides
The Forbidden VPN Secrets.pdf by
The Forbidden VPN Secrets.pdfThe Forbidden VPN Secrets.pdf
The Forbidden VPN Secrets.pdfMariam Shaba
20 views72 slides
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors by
TouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective SensorsTouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective Sensors
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensorssugiuralab
23 views15 slides

Recently uploaded(20)

Piloting & Scaling Successfully With Microsoft Viva by Richard Harbridge
Piloting & Scaling Successfully With Microsoft VivaPiloting & Scaling Successfully With Microsoft Viva
Piloting & Scaling Successfully With Microsoft Viva
The Forbidden VPN Secrets.pdf by Mariam Shaba
The Forbidden VPN Secrets.pdfThe Forbidden VPN Secrets.pdf
The Forbidden VPN Secrets.pdf
Mariam Shaba20 views
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors by sugiuralab
TouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective SensorsTouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective Sensors
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors
sugiuralab23 views
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ... by Jasper Oosterveld
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
ESPC 2023 - Protect and Govern your Sensitive Data with Microsoft Purview in ...
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software317 views
Case Study Copenhagen Energy and Business Central.pdf by Aitana
Case Study Copenhagen Energy and Business Central.pdfCase Study Copenhagen Energy and Business Central.pdf
Case Study Copenhagen Energy and Business Central.pdf
Aitana17 views
2024: A Travel Odyssey The Role of Generative AI in the Tourism Universe by Simone Puorto
2024: A Travel Odyssey The Role of Generative AI in the Tourism Universe2024: A Travel Odyssey The Role of Generative AI in the Tourism Universe
2024: A Travel Odyssey The Role of Generative AI in the Tourism Universe
Simone Puorto13 views
"Running students' code in isolation. The hard way", Yurii Holiuk by Fwdays
"Running students' code in isolation. The hard way", Yurii Holiuk "Running students' code in isolation. The hard way", Yurii Holiuk
"Running students' code in isolation. The hard way", Yurii Holiuk
Fwdays24 views
Five Things You SHOULD Know About Postman by Postman
Five Things You SHOULD Know About PostmanFive Things You SHOULD Know About Postman
Five Things You SHOULD Know About Postman
Postman38 views
PharoJS - Zürich Smalltalk Group Meetup November 2023 by Noury Bouraqadi
PharoJS - Zürich Smalltalk Group Meetup November 2023PharoJS - Zürich Smalltalk Group Meetup November 2023
PharoJS - Zürich Smalltalk Group Meetup November 2023
Noury Bouraqadi139 views

Facebook App in Scheme Shibuya.Lisp tt#7 2011/10/22

  • 1. Facebook App in Scheme Higepon shibuya.lisp Tech Talk #7 2011 10 22
  • 2. Higepon • @higepon • Mona OS • http://www.monaos.org • Mosh Scheme • http://mosh.monaos.org 2011 10 22
  • 5. http://lovamimi .com/ • Integrated with Facebook • ja/en • PC/iPhone/Android • Written in Scheme 2011 10 22
  • 6. Popular secrets • 2011 10 22
  • 7. Popular secrets • 2011 10 22
  • 8. Popular secrets • 2011 10 22
  • 9. Popular secrets • facebook 2011 10 22
  • 10. Facebook App? • Facebook Graph API • Social Graph Data 2011 10 22
  • 11. Facebook App? • Facebook Graph API • Social Graph Data 2011 10 22
  • 12. 2011 10 22
  • 13. 2011 10 22
  • 14. Graph API • Friends • Name, Age, Phone number, Photo, Birthday • Post, Likes, Checkin, Online Presence • Work History, Message • Offline Access, Publish Stream 2011 10 22
  • 15. Wrote in Scheme • • 729 lines • Mosh has facebook/cgi/template library • 4 hours + coke = First version • MySQL / Apache 2011 10 22
  • 16. Advantage of Scheme / Lisp 2011 10 22
  • 17. 2011 10 22
  • 18. S-Exp • Graph API returns JSON • Not human readable! • From JSON to S-Exp • S-Exp is much easier to read and use 2011 10 22
  • 19. Don’t use S-Exp for • Data Storage • MySQL is much better • Template • Can’t copy and paste • Not everyone can read/write. 2011 10 22
  • 20. Scheme way • (call-with-cgi ...) • (call-with-connection ...) • i18n • (parameterize ([lang ...]) 2011 10 22
  • 21. Summary • Write your Facebook App in Scheme! • Use Mosh • facebook/cgi/template libraries 2011 10 22