Download - "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px
![Page 1: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/1.jpg)
![Page 2: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/2.jpg)
![Page 3: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/3.jpg)
Евгений ЧеботарёвChief Product Officer
API для людейКак создать API, которым по-настоящему пользуются
![Page 4: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/4.jpg)
Немного историиО том как создавался 500px
![Page 5: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/5.jpg)
В октябре 2009 году мы запустили 500px.com, в августе 2011 запустили API
![Page 6: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/6.jpg)
![Page 7: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/7.jpg)
![Page 8: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/8.jpg)
![Page 9: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/9.jpg)
API в 500px
0
375
750
1 125
1 500
September 2011 November 2011 January 2012 March 2012 May 2012 July 2012 September 2012 November 2012 January 2013 March 2013 May 2013 July 2013 September 2013
1.3 млрд.
![Page 10: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/10.jpg)
API в 500px
• 1,3 миллиарда API запросов в месяц• 3600+ зарегистрированных разработчиков• 4000+ приложений использующих 500px API• 12 выделенных серверов• Интеграция с Flipboard, Vū, Google Glass, Flavors.me, Samsung TV, и т.д.• developers.500px.com
![Page 11: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/11.jpg)
Зачем нужен API?Реализация ваших идей сторонними силами
![Page 12: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/12.jpg)
Зачем нужен API?
• Возможность разрабатывать свои приложения• Работать с партнёрами• Использовать на хакатонах• Генерировать идеи силами сторонних разработчиков
![Page 13: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/13.jpg)
Подход к созданию APIКак сделать разработку максимально удобной
![Page 14: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/14.jpg)
Подход к созданию API
• Максимально упростить задачу разработчикам• Сделать API максимально “futureproof”, чтобы он оставался релеватным спустя годы
![Page 15: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/15.jpg)
![Page 16: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/16.jpg)
Моделирование за лидеромКак привлечь разработчиков к вашему API
![Page 17: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/17.jpg)
Моделирование за лидером
• Две компании — две типа API• Flickr — устарелый тип API, но направленный на фотографию• Twitter — современный API, но не фото-ориентированный
![Page 18: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/18.jpg)
Моделирование за лидером
• На момент создания 500px API более миллиона разработчиков использовали Twitter API• RESTful• JSON• OAuth• Convention over configuration
![Page 19: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/19.jpg)
“Hit the Ground Running”Зная Twitter API легко начать разрабатывать под 500px API
![Page 20: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/20.jpg)
Моделирование информацииПостоянный анализ требований разработчиков
![Page 21: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/21.jpg)
Моделирование информации
• Анализ данных для понимания потребностей• Разбивка на логические классы
![Page 22: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/22.jpg)
Моделирование информации
• Разбивка запроса фото с комментариями на два отдельных запроса: фото, комментарии• Результат обходится “дешевле”, и пользователи быстрее видят важный им результат (фото)
![Page 23: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/23.jpg)
{ "photo": { "id": 4928401, "user_id": 164677, "name": "Northern Fulmar", "description": "Photographed during a pelagic trip east of Cape Cod., "camera": "Canon EOS-‐1D Mark IV", "for_sale": false, "width": 588, "height": 750, "votes_count": 36, "favorites_count": 18, "comments_count": 36, "highest_rating": 97.1, "highest_rating_date": "2012-‐04-‐16T15:05:56-‐04:00", "image_url": "http://pcdn.500px.net/4928401/16666558d7ba410f50922f86f736888d8cfaf9bb/4.jpg", "images": {"size": 4, "url": "http://pcdn.500px.net/4928401/16666558d7ba410f50922f86f736888d8cfaf9bb/4.jpg"} "store_download": false, "store_print": false, "user": { "id": 164677, "username": "axelhildebrandt", "firstname": "Axel", "lastname": "Hildebrandt", "city": "Bethlehem", "country": "U.S.", "fullname": "Axel Hildebrandt", "userpic_url": "http://acdn.500px.net/164677.jpg", "upgrade_status": 0 } }
To create code snippets, see http://ioni.st/post/980
![Page 24: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/24.jpg)
![Page 25: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/25.jpg)
Версия 1.0Минимальный набор
![Page 26: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/26.jpg)
Версия 1.0
• Read-write• Базовые возможности сайта• Аутентификация (логин)• Постоянное развитие (v 1.0 просуществовал 2 дня)
![Page 27: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/27.jpg)
RTFMДокументация превыше всего
![Page 28: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/28.jpg)
RTFM
• Документация находится на Github• Разработчики могут предлагать правки, изменения и задавать вопросы• Документация постоянно улучшается• 128 коммитов, 11 авторов
![Page 29: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/29.jpg)
Хорошая документацияГарантия того, что разработчики будут довольны
![Page 30: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/30.jpg)
Взгляд с 10,000 метровРешение настоящих проблем с помощью аналитики
![Page 31: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/31.jpg)
Взгляд с 10,000 метров
Проанализировать как пользуются API• Server performance• Оптимизация под массового потребителя• Среднее время запроса 100-120 мс
![Page 32: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/32.jpg)
Взгляд с 10,000 метров
Feedback-driven development• Фото + комментарии• Гео-поиск• Будущие сервисы компании
![Page 33: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/33.jpg)
![Page 34: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/34.jpg)
API 2.0Взгляд в будущее
![Page 35: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/35.jpg)
API 2.0
Утилитарное использование API• Цветовой анализ• Реверсивный геокодинг• Анализ лиц, объектов• Анализ качества фотографии (контраст, яркость, боке, композиция)
![Page 36: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/36.jpg)
API 2.0
Marketplace• От небольших приложений• До коммерческого лицензирования
![Page 37: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/37.jpg)
@tchebotarev#yac2013
![Page 38: "API для людей: как создать API, которым по-настоящему пользуются" — Евгений Чеботарёв, 500px](https://reader031.vdocuments.pub/reader031/viewer/2022013122/55b68899bb61eb80698b4637/html5/thumbnails/38.jpg)