http://rdegges.com
Randall Degges
CTO Telephony Research
@rdegges
Slide 2
Slide 2 text
No content
Slide 3
Slide 3 text
No content
Slide 4
Slide 4 text
1. a command line app
for the web
(see also: library)
Slide 5
Slide 5 text
print 'Yo'
curl http://yo.com
Slide 6
Slide 6 text
Like a web page...
Slide 7
Slide 7 text
... but easier.
Slide 8
Slide 8 text
Find a
problem
Slide 9
Slide 9 text
APIs are for
Slide 10
Slide 10 text
Caller ID
(CNAM)
1-(818) 217-9229
Randall Degges
Slide 11
Slide 11 text
Big Companies
Monopolize
Infrastructure
Slide 12
Slide 12 text
Telco negotiations
Data access
cost $xxx, xxx
requires special hardware and software
Slide 13
Slide 13 text
No content
Slide 14
Slide 14 text
Old Standards
Have been around since early 1900s.
15 character ASCII string.
Vary from country to country.
Aren't available in US mobile networks.
Are complex....
Slide 15
Slide 15 text
CNAM is complex.
(925) 333-3333
(925) 222-2222
(925) 111-1111
Slide 16
Slide 16 text
Small Community
Slide 17
Slide 17 text
What Doesn't Suck about CNAM?
CNAM
sucks!
Slide 18
Slide 18 text
Build a
Slide 19
Slide 19 text
No content
Slide 20
Slide 20 text
No content
Slide 21
Slide 21 text
What is
A simple API for
programmers that
want Caller ID --
without the bullshit.
Free CNAM queries (60 per hour)
No account necessary
Slide 27
Slide 27 text
(funny story)
Slide 28
Slide 28 text
How Open CNAM Really Works
Slide 29
Slide 29 text
Version 1 (beta)
Slide 30
Slide 30 text
Why?
&
Slide 31
Slide 31 text
● Django is well supported.
● Tastypie did almost all the API work (initially).
● PostgreSQL is reliable and simple.
● Celery is configurable and fast.
● Heroku is awesome.
The Good
Slide 32
Slide 32 text
● Django + PostgreSQL are kinda slow.
● Tastypie required lots of customization
(throttle, API key authentication,
serialization).
● Celery has a lot of configuration options, and
I kept messing them up.
The Bad
Slide 33
Slide 33 text
● One big Django application with
lots of lines of code.
● Tricky to deploy.
Poor Architecture