2012년 1월13일 알펜시아 리조트에서 열렸던 HCI2012 행사의 일환이었던 "모바일 웹 UI/UX 현재와 미래" 패널 토의에서 제가 기조 발제로 발표했던 자료입니다.
W3C에서 표준화 진행중인 HTML5와 Web API를 중심으로 새로운 UI/UX의 가능성들과 모바일 UI/UX에 대한 가능성들을 살펴보았습니다.
2012년 1월13일 알펜시아 리조트에서 열렸던 HCI2012 행사의 일환이었던 "모바일 웹 UI/UX 현재와 미래" 패널 토의에서 제가 기조 발제로 발표했던 자료입니다.
W3C에서 표준화 진행중인 HTML5와 Web API를 중심으로 새로운 UI/UX의 가능성들과 모바일 UI/UX에 대한 가능성들을 살펴보았습니다.
Sundance DM8168 Capture Box provide a fully integrated Dual Channel SuperHD (up to 8000x8000) Image/Video Capture solution that can be enhanced with the use of the built-in 1GHz TMS320C674x Floating Point DSP and the 1.2GHz ARM-8 CPU and supplied in a either commercial or industrial enclosures. The heart of the DM8168 is the TMS320DM8168 DaVinci SoC and also offers 3D Graphics Accelerated 1080p HDMI output.
Large data sets comprising multiple correlating attributes may include phenomena hard to identify and understand using traditional data analysis and visualization methods. HeatMiner is a new visual data mining technology which visualizes the data as three-dimensional heatmaps. Even complex patterns missed by other methods are easy to recognize from 3D-heatmaps with a single glance. Go and try HeatMiner with your own data at the Cloud’N’Sci.fi Algorithms-as-a-Service marketplace!
Image to Text Converter PPT. PPT contains step by step algorithms/methods to which we can convert images in to text , specially contains algorithms for images which contains human handwritting, can convert writting in to text, img to text.
2005년 구글맵으로 부터 시작된 웹 기반 지도 API 서비스는 웹 2.0의 데이터 플랫폼 서비스의 주요 사례로 떠올랐다. 그 이후 야후!, 마이크로소프트 등에서 지도 플랫폼 서비스와 API 제공이 잇달았으며, 국내에서도 다음이 최초로 항공 사진(스카이뷰)과 거리 사진(로드뷰)을 제공하고 네이버도 참여함으로서 로컬 기반 서비스의 폭발적 성장의 견인차 역할을 하였다. 노키아의 Here 및 오픈스트릿맵 등 제 3의 사업자 및 협업 기반 플랫폼이 성장하였으며, Open Layer 라이브러리 및 Open GIS 등 다양한 공개 소프트웨어 들도 함께 성장하였다.
특히, 스마트폰의 보급과 아울러 모바일용 지도 SDK를 적극 보급 및 지원하는 추세로 기존의 Ajax 기반의 이미지 기반 웹 지도 표현 기술은 WebGL 혹은 Canvas를 통해 3차원 기술을 도입하면서 웹 호환성 및 성능을 동시에 높히고 있다. 구글 스케치업을 통해 시작된 공간 3차원 서비스는 약간 주춤하지만 45도 이미지너리 및 DEM 기반 데이터는 계속 추가되고 있다.
최근에는 구글맵 엔진 서비스와 같은 전문 사용자의 참여를 이끌어 내어 클라우드 소싱 형태의 지도 데이터 생성 커뮤니티를 통해 저개발 국가 및 북한과 같은 미공개 지도 데이터 생산을 만들고 있다.
2011년부터 구글 부터 지도 API 서비스 유료화를 단행하여 보안 강화 및 품질 및 성능 향상을 통해 제 3자 재판매를 통한 사업을 진행하고 있다. 또한, 최근 많은 기업들이 글로벌 홈페이지에 자사의 위치나 고객센터를 이용자들이 찾는데 활용하고 있으며, 이를 활용해 물류•관제•입지분석•위험관리•마케팅 등에 활용하고 있다.
현재 글로벌 지도 API 플랫폼은 단순히 베이스맵을 지원하는데 그치지 않고 공간 정보를 시각화 및 표현하는데 필요한 다양한 기능을 제공하면서, 정보 전달 역할을 강화하고 있다. 또한, Mapbox 등 지도 타일의 다양한 스타일과 테마 기능을 통해 좀 더 미려한 지도를 제공하기도 한다.
향후 글로벌 지도 API 플랫폼은 단보다 고도화된 시스템을 활용해 데이터 분석 및 2차원 시각화 그리고 3차원 공간 정보 활용으로 진화하고 있다.
AManaging Kong API Gateway with TerraformByungjin Park
2018년 10월 23일 진행된 하시코프 한국 사용자 모임 두 번째 밋업 발표 자료 입니다.
# Terraform으로 Kong API Gateway 관리하기
박병진, Site Reliability Engineer @ Kasa
Abstract:
Kong은 Nginx와 Lua를 기반으로 하는 오픈소스 API Gateway입니다. 본 세션에서는 API Gateway가 무엇인지, Kong을 선택한 이유와 사용 방법, Terraform을 이용하여 Kong을 관리한 경험을 공유합니다.
Chaos Engineering을 위한 최신 도구 업데이트 - 윤석찬 (AWS 테크에반젤리스트)Channy Yun
- 발표 영상: https://www.youtube.com/watch?v=mLWD4KCQuT4
카오스 엔지니어링(Chaos Engineering)을 테스트해 볼 수 있는 각종 도구에 대해 최신 업데이트를 해드립니다. 로컬 장애 주입용 도구 부터, AWS System Manager기반 Runcommand 도구, AWS Lambda 도구, 그리고 ToxiProxy, ChaosToolkit 같은 오픈 소스 기반 도구와 간단한 데모를 함께 보여드립니다.
How to Measure DevRel's Perfomances: From Community to Business - Channy Yun ...Channy Yun
Developer relations are an impactable to generate business values in many software companies who hope to gain mindshare of developers in various approaches from contributing open sources to gaining meaningful sales leads. In this session, you’ll learn about how to measure the perfomrmance of developer relations for building community, increasing impacts and generating leads for sales.
https://tokyo-2018.devrel.net/speakers/yun/
카오스 엔지니어링(Chaos Engineering)이란 프로덕션 서비스의 각종 장애 조건을 견딜 수 있는 시스템의 신뢰성을 확보하기 위해 분산 시스템을 실험 하고 배우는 분야입니다. 즉, 개발자들이 현실 세계에서 발견되는 시스템 장애를 미리 탐지하여 복원성 높은 아키텍처를 구성하는 방법을 공유합니다.클라우드 컴퓨팅의 발전과 데브옵스 방법론을 기반으로 자동화를 통해 좀 더 쉽게 개발자들이 직접 분산 시스템을 통제된 환경에서 실험을 하는 동안 나오는 결과를 관찰함으로써 현실에서 실제 행동 방법을 배울 수 있습니다. 본 세션에서는 카오스 엔지니어링의 기본 개념과 함께 Kubernetes용 Chaos Tool인 KubeMonkey를 통해 무작위로 클러스터의 포드를 삭제하여 장애 복구 서비스 아키텍처를 검증하는 방법을 설명합니다.
클라우드 컴퓨팅과 Daum의 사례- 윤석찬 (KREN 연구 협력 포럼, 2013) Channy Yun
출처: http://www.koren.or.kr/board/board.php?task=view&db=data2&no=44
<개발자에서>
최근에 클라우드 기술이 부각되면서 다음에서도 발빠르게 사내 프라이빗 클라우드 서비스를 준비중이다. 가장 먼저 한 일은 사내 개발자들이 언제든지 자신의 가상머신(VM)을 할당 받아 테스트해 볼 수 있는 사내 클라우드 플랫폼 구축이었다.
2011년 초 오픈소스인 클라우드스택을 최적화해 구축했으며, 개발자들은 공용 테스트 서버나 서비스 서버에서 못하던 자신만의 최신 기술 습득이나 테스트를 아무 구애 받지 않고 자기 서버에서 해 볼 수 있게 됐다. 이 플랫폼은 앞으로 클라우드 파운더리 기반의 사내 PaaS과 하둡 테스트베드로도 활용하고 있으며, 실제 다음 서비스에서 클라우드 컴퓨팅 기술을 활용하는 기초가 되고 있다.
- http://www.bloter.net/archives/107844
DockerCon 2014에서 Adrian Cockcroft가 발표한 The state of the art in Microservice 중 해외 사례 발췌본
https://blog.docker.com/2014/12/dockercon-europe-keynote-state-of-the-art-in-microservices-by-adrian-cockcroft-battery-ventures/
15. JVM Platform Web site
Java API Interface Open API
Java Software Data
Application
Developer Participators User, Small Biz.
API Lock-in Key Factor Data Lock-in
16.
17.
18.
19.
20. Progra OS Internet Web Cloud
m Social
Social
Mobile
Dot-Com Web 2.0
Graph Social
Bubble Graph
Open Source Open Web
GNU, Linux, Apache Google, Amazon, Ebay
Social
facebook, Twitter
Cloud
AWS, Hadoop
Closed Mobile
Windows, Java iOS, Android
21. 폐쇄된 API를 가진 개방된 API를 가진
버추얼 머신 Platform 웹 서비스
독자적/폐쇄형 API 개방형/표준형
학습 비용 등 빠르고 쉽게 개발 및
진입이 어려움
Costs 서비스 가능
기능 위주 Lock-in 데이터 위주
각 플랫폼 기반 웹 서비스 기반
개발자
Developers 개발자
.Net Google
Java
Examples Amazon
22.
23. – 누구나 쉽게 개발에 참여할 수 있는 다양한 개발 소스 제공
– 데이터를 다룰 수 있는 각종 오픈 소스 및 라이브러리의 무료 제공
– 참여 문화 구조의 원동력
24. – 서비스와 데이터를 다룰 수 있는 각종 데이터 포맷
– 개발 플랫폼과 독립적인 정보 및 애플리케이션 구성
25. – 특정 개발 환경에 종속적이지 않는 인터페이스 제공
– 손쉬운 접근 및 매쉬업을 통한 창의적 앱 개발 가능성
26. Agenda
오픈 API란?
오픈 API 성공 사례
오픈 API 구현 방법
오픈 API 홍보 및 개발자 지원
Daum 오픈 API
Primer & Daum
•26
27. Open API?
enable
Open API is a word used to describe sets of technologies that
websites to interact with each other by using REST,
SOAP, JavaScript and other web technologies. While its
possibilities aren't limited to web-based applications, it's becoming an increasing trend in so-called Web
2.0 applications. The term API stands for Application Programming Interface.
http://en.wikipedia.org/wiki/Open_API
32. 왜 오픈 API를? 창업자 관점
다양한 비즈니스 개발 타진
– 자원이 부족한 스타트업의 경우, 서드파티 및 파트너와
의 협업을 위해 가능성 탐지
서비스 주변 개발자 생태계 확보
– 외부 개발자들이 언제든지 API를 통해 매쉬업 개발, 버
그 리포팅, 아이디어 제공
투자자에게 플랫폼으로 어필
– 작지만 죽지 않을(?) 파트너쉽 및 개발자 생태계 구성
은 투자할 이유가 됨!
40. 스타트업 성공 사례
• iOS에서만 앱 제공 • 서비스 시작부터 API 제공
• 1초에 15장, 하루 130 만장 등록 • 200여개의 미투앱스
• 2,500여개의 외부앱 • 20여개의 소셜플러그인 제휴
• 250여개의 github 레포지터리 • 월 2억건의 쿼리 (2011.4)
41. Fred Wilson’s
10 Golden Principles of
Successful Web Apps
5. Make it Programmable
http://thinkvitamin.com/web-apps/fred-wilsons-10-golden-principles-of-successful-web-apps/
42. 왜 오픈 API를? 개발자 관점
프로그래밍은 결국 API 디자인
– 좋은 코드는 Module화 되어 있고, 각 모듈은 API로 구
성되어 있다.
좋은 API는 높은 재사용성 제공
– API 사용자가 생기면 변경하기가 어려우며, 처음 부터
설계에 노력을 들이게 된다.
외부 개발자와의 협업이 가능
– 스타트업에서 개발자는 외롭다. 하지만 API를 오픈하
면 밖에도 내 편을 만들 수 있다.
43. 어떻게 만들어야 하나?
직관적이고 배우기 쉽게
– 문서 없이도 형식만 보고도 이해할 수 있어야 한다.
설계는 완벽하게
– 한번 만든 API는 하위 호환성 때문에 쉽게 바꾸기 어렵다.
보안은 최소화
– 너무 많은 제한을 두면 개발자로 부터 반감을 얻을 수 있다.
벤치마크
– 좋은 API를 따라한다. Copy & Paste가 답!
44.
45. API 서비스 프로토콜
프로토콜 종류
http://www.nordsc.com/ext/classification_of_http_based_apis.html
자원 자원 자원 자원
종류 설명 형식 사례
인식 접근 처리 링크
WS-* SOA 기반 웹 WSDL을 통한 표현 Google
서비스 Adsense
API
RPC 자원에 파라 GET /service?1 Amazon
미터로 접근 SimpleDB
API
API 객체 방법으 PUT /order/1 Twitter
로 접근 API
REST 하이퍼링크 <link type=“atom” Atom
로 접근 Publishing
Protocol
REST는 서비스 개발 및 활용 비용 ↓
46. API Best Practices
1. 객체 표현
POST /photos/create
POST /photos/show/foobar
POST /photos/update/foobar
POST /photos/delete/foobar
2. 호환성
http://apis.daum.net/maps/v1/js
http://apis.daum.net/maps/v2/js
3. 에러처리
<apierror>
<code>404</code>
<message>App 인증 실패</message>
<dcode>22</dcode>
<dmessage>등록되지 않은 apikey 입니다.</dmessage>
</apierror>
•46
47. 4. 다양한 포맷 (JSON, XML, RSS)
{ 'person' :
{ 'name': '...', 'age' : 22, 'dogs' : [...] }
}
자바스크립트 개발자를 위한 Callback 함수 지원 필수
5. 보안 강화
– APIKey와 트래픽 제어가 필수는 아니다!
– 사용자 데이터는 oAuth 이용
– 암호화 제공은 선택 사항
49. API 개발 프레임웍
웬만한 MVC 프레임웍은 지원!
– RESTful 지원 프레임웍
• http://en.wikipedia.org/wiki/Representational_State_Transfer#Fra
mework_implementations
– Django with Pistons
• Django-Tastypie https://github.com/toastdriven/django-tastypie
– Ruby on Rails
Node.js
– 이벤트 기반 웹 서비스에 유리
50. API 서드 파티 지원
★ 오픈 API 퍼블리싱에 도움을 줌!
http://apievangelist.com/serviceproviders/