Mobile Computing Life
Techniques, Bussiness & Market, Development
twitter.com/@godrm
OSXDEV.org facebook.com/godrm
NHN NEXT 김정
About godrm
› Source: NBC News and The Associated Press (http://photoblog.nbcnews.com/)
Mobile Computing
Any-time, Any-where, Any-device
“
”
언제든지 어디서나 어떤것이든

네트워크에 연결되어 사용할 수
있는 컴퓨팅 환경
Business & Market
Mobile Contents, App Market, Business Platform
모바일 트렌드와 iOS
© 2014 Forrester Research, Inc. Reproduction Prohibited 24
#mobilemindshift
4. The audience size in Asia will elevate
the  region’s  role  in  mobile  innovation  .  .  .
Source: Ericsson Mobility report, November 2013
앱 마켓 다운로드와 수익
유료앱 vs 무료앱
ⓒ 2013 MezzoMedia Inc.
PC vs Mobile 이용자 수
3,319만명 3,632만명
In digital era,What does ‘Watching TV’ even mean?
Source:The Wall Street Journal (2013/10/08)
모바일 국내시장
1인당 주기적으로 사용하는 앱 개수
26
20%
10-25
20%
1-9
60% 9
국내 앱 마켓 이슈
✴ 카카오톡 비중이 지나치게 높음
✴ 40대 이상은 OS 마켓을 사용하지 않고 카카오톡 마켓만
✴ 게임 카테고리 편식이 심함
✴ 10,20대는 레이싱, 러닝, 연예 다양한 게임 장르 존재
✴ 40대 이상 퍼즐 게임 집중
✴ 하루 30분 이상 40%, 1시간 이상 21%
✴ 44% 정도 한달에 하나 이상의 게임을 다운로드
✴ 21% 최근 3개월 이내 유료 결제함
모바일 앱 - 성공 사례
Apple iTunes Ecosystem
✴ 콘텐츠 생산 도구
✴ Desktop Publishing
✴ Video/Audio Authorising
✴ Pro Tools
✴ 콘텐츠 소비 도구
✴ iPod
✴ iPhone
✴ iPad
✴ Apple TV
✴ 콘텐츠/광고 유통
✴ Music, Video,
✴ TV show,
✴ App,
✴ Book,
✴ Radio
Technique Trends
Hardware, Software, Tool
43,185	

iOS Developers
10,199	

Android Developers
1,412	

X-platform Developers
AppStore HQ
Number of Developers (북미)
Computing Power
✴ NASA - Apollo Guidance
Computer
✴ Apollo 8 (1968)
✴ 1966 August
✴ 2.048 MHz Discrete IC RTL
✴ 16bit 2048 words RAM
✴ 36,684 words ROM
ARMv8 (AArch64)
Bluetooth LE - Beacon
IoT (Internet of Things)
모바일 트렌드와 iOS
모바일 트렌드와 iOS
LLVM
아이디어의 시작은…
• JVMs do all optimizations online at JIT time:
- Hugely redundant across runs
- Applications launch slowly
- What if we could do heavy lifting at install time?
!
• Problem: Java bytecode is too limiting!
- Memory safety prevents some optzns (eg. bounds checks)
- JVM type system doesn’t lend itself to machine optzns
With some sort of low level virtual machine,
we could optimize better and a JIT compiler
would have to do less work online!
“
”
Introduction
• LLVM
- Low-Level Virtual Machine
• An Infrastructure for Multi-stage Optimization
- by Chris Arthur Lattner @2002
• Design and Implementation of a compiler infrastructure
- support a unique multi-stage optimization system
- support inter-procedural and profile-driven optimizations
• LLVM virtual instruction (IR)
- with high-level type information
• Sponsored by APPLE
The Architecture
Compile
Time
Link
Time
Run-Time
Compiler FE 1
Compiler FE N
.. .o
files
LLVM
LLVM
Linker
IPO / IPA
Native
CodeGen
Libraries
exe
LLVM
LLVM
LLVM
exe &
LLVM
JIT
CPU
Runtime
Optimizer
Offline Reoptimizer
LLVM
LLVM
exe
exe
Profile
& Trace
Info
Profile
Info
Generalize
User-defin
Inheriting
Alignment
Call for help
http://llvm.org/
Call for help!
Python
Common Dynamic Language
Representation + Type Inference
Ruby C, C++, Ada, ...
– OSS community needs to unite work on various scripting languages
– Common module to represent/type infer an arbitrary dynamic language
– Who will provide this? pypy? parrot? llvm itself someday (“hlvm”)?
Perl Javascript ...
llvm-gcc
LLVM
OpenGL
GLSL, ARB VP, ...
What Next?
LTO JIT Install Time
CodegenIPO
Cross Lang
Optzn
Debugger
Support
LLVM use in Open Source OSes
• Minix moved to Clang as default compiler
• FreeBSD is working on ClangBSD
• LLVM is the basis of the Renderscript
compiler in Android
• LLVM a hard dependency for Gallium3D
• Building Debian with Clang
• Unsupported GCC Flags / C Extensions
출처 : http://llvm.org/devmtg/2012-04-12/Slides/Mark_Charlebois.pdf
Use-case #1 - New Compiler
• Cling - CERN
• CtoVerilog - Haifa University
• OpenCL - AMD
• Click - Ericsson
• EDGtoLLVM - ARM
• Jaguar - Cray
• Delphi XE- Embarcadero
Use-case #2 - Optimization
Flash ActionScript (.as3)
➔ ActionScript Bytecode (.abc)
➔ LLVM Bytecode (.bc)
➔.abc ➔ .swf
Use-case #3 - Cross Language
Crack Scripting Language
➔ C/C++/Java-like Scripting Language
➔ Speed of a compiled language,
ease of use of a scripting language
➔ Unladen Sparrow(Python), Rubinius(Ruby), V8(JS)
cf. PNaCl (Portable Native Client)
Use-case #3 - Emscripten
compiles LLVM bytecode into JavaScript
➔ C/C++ to JavaScript
➔ can be run on the web
➔ Python, the Bullet physics engine, eSpeak (TTS)
https://github.com/kripken/emscripten/wiki
Everything  compiles  into  LLVM  bitcode
The  web  is  everywhere,  and  runs  JavaScript
Compiling  LLVM  bitcode  to  JavaScript  lets  us  run
~  everything,  everywhere
asm.js
https://www.youtube.com/watch?v=XsyogXtyU9o
Bots
Xcode 5 and OS X Server
Continuous Integration
• 여러 버전의 OS와 하드웨어 모델별로 테스트	

• 프로젝트의 빌드, 분석, 테스트를 자주	

• 자동으로 빠르게 문제를 파악하고	

• 과도한 작업은 서버로 이관	

• 프로젝트의 빌드/테스트 이력을 보관	

• 개발팀 분산 작업에 도움	

cf. Jenkins, Hudson, CruiseControl
Bot
•Defines what to build
■ Project and SCM information
•When to build it
■ Periodic, on-commit, or manual
•How to build it
■ Shared scheme
■ Static analysis
■ Testing and devices
■ Archives
•Notifications
모바일 트렌드와 iOS
…
모바일 트렌드와 iOS
Technology Cycles
Source: Mary Meeker, Internet Trends D11 Conference 2013
모바일 트렌드와 iOS
Top 10 Tech Project in Kickstarter, 2013
Mobile will be the your life...
Thanks

More Related Content

PDF
Unikernels: when you should and when you shouldn't
PDF
MS Experiences 17 - Xamarin: Future of Mobile Development
PPTX
TiConf Australia 2013
PPTX
SignalR Intro + WPDev integration @ Codetock
PDF
Patrick broman mo sync
DOCX
Five Common Job Change Mistakes
PDF
2N Easy Route
PPT
PresentacióN1
Unikernels: when you should and when you shouldn't
MS Experiences 17 - Xamarin: Future of Mobile Development
TiConf Australia 2013
SignalR Intro + WPDev integration @ Codetock
Patrick broman mo sync
Five Common Job Change Mistakes
2N Easy Route
PresentacióN1

Viewers also liked (13)

PPTX
Daniel Coleman Skau
PPTX
Open text corporation investment pitch
DOC
Lurra Kosmoan
PPT
The Worlds Best Economy
PDF
Midsummer_by_Maria_Berova_rev_4
DOC
Lurreko Azala Eta Bere Materialak
PDF
개발자로 살아가는 길, 그리고 NEXT
DOC
Lurreko Hidrosfera
PDF
차세대컴파일러, VM의미래: 애플 오픈소스 LLVM
PDF
Cairn Porfolio Small 5 12 10
DOC
Airea Eta Atmosfera
PPTX
BDD presentation
PPT
Monopolistic Competition
Daniel Coleman Skau
Open text corporation investment pitch
Lurra Kosmoan
The Worlds Best Economy
Midsummer_by_Maria_Berova_rev_4
Lurreko Azala Eta Bere Materialak
개발자로 살아가는 길, 그리고 NEXT
Lurreko Hidrosfera
차세대컴파일러, VM의미래: 애플 오픈소스 LLVM
Cairn Porfolio Small 5 12 10
Airea Eta Atmosfera
BDD presentation
Monopolistic Competition
Ad

Similar to 모바일 트렌드와 iOS (20)

PDF
The Next Leap in JavaScript Performance
PDF
IBM Bluemix™ Architecture & Deep Dive
 
PPTX
SignalR powered real-time x-plat mobile apps!
PDF
ITCamp 2013 - Petru Jucovschi - Application ecosystems
PDF
Are you ready to be edgy? Bringing applications to the edge of the network
PDF
Cloud Computing as Innovation Hub - Mohammad Fairus Khalid
PDF
ITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep dive
PDF
Stay productive while slicing up the monolith
PPTX
DockerDay2015: Keynote
PPTX
Wading through the mobile WebRTC developer gauntlet (IIT RTC Conference sessi...
PDF
Stay productive while slicing up the monolith
PDF
tranning synopsis(java programming).pdf
PDF
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
PPTX
JavaScript: The Machine Language of the Ambient Computing Era
PDF
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
PPTX
Introduction to SignalR
PPTX
Automate your load testing using Azure DevOps, K6 and Log Analytics
PPTX
Node.js meetup at Palo Alto Networks Tel Aviv
PDF
600.250 UI Cross Platform Development and the Android Security Model
PDF
Cloud to Edge
The Next Leap in JavaScript Performance
IBM Bluemix™ Architecture & Deep Dive
 
SignalR powered real-time x-plat mobile apps!
ITCamp 2013 - Petru Jucovschi - Application ecosystems
Are you ready to be edgy? Bringing applications to the edge of the network
Cloud Computing as Innovation Hub - Mohammad Fairus Khalid
ITCamp 2013 - Raffaele Rialdi - Windows Runtime (WinRT) deep dive
Stay productive while slicing up the monolith
DockerDay2015: Keynote
Wading through the mobile WebRTC developer gauntlet (IIT RTC Conference sessi...
Stay productive while slicing up the monolith
tranning synopsis(java programming).pdf
“Seamless Deployment of Multimedia and Machine Learning Applications at the E...
JavaScript: The Machine Language of the Ambient Computing Era
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
Introduction to SignalR
Automate your load testing using Azure DevOps, K6 and Log Analytics
Node.js meetup at Palo Alto Networks Tel Aviv
600.250 UI Cross Platform Development and the Android Security Model
Cloud to Edge
Ad

More from Jung Kim (13)

PDF
Let'Swift 2019 키노트
PDF
Letswift19-clean-architecture
PDF
Letswift18 워크숍#1 스위프트 클린코드와 코드리뷰
PDF
Letswift18 키노트
PDF
개발자를 위한 넓고 얕은 지식
PDF
스위프트를 여행하는 히치하이커를 위한 스타일 안내
PDF
Let'Swift 17 키노트
PDF
Swift와 Objective-C를 함께 쓰는 방법
PDF
마스터즈 오픈세미나 - 소프트웨어가좋아요
PDF
소프트웨어로 미래를 준비하는 사람들
PDF
Developerway-2016-camp
PDF
Swift internals
PDF
Swift2 smalltalk osxdev
Let'Swift 2019 키노트
Letswift19-clean-architecture
Letswift18 워크숍#1 스위프트 클린코드와 코드리뷰
Letswift18 키노트
개발자를 위한 넓고 얕은 지식
스위프트를 여행하는 히치하이커를 위한 스타일 안내
Let'Swift 17 키노트
Swift와 Objective-C를 함께 쓰는 방법
마스터즈 오픈세미나 - 소프트웨어가좋아요
소프트웨어로 미래를 준비하는 사람들
Developerway-2016-camp
Swift internals
Swift2 smalltalk osxdev

Recently uploaded (20)

PPTX
Module 8- Technological and Communication Skills.pptx
PDF
Exploratory_Data_Analysis_Fundamentals.pdf
PPTX
Micro1New.ppt.pptx the mai themes of micfrobiology
PDF
distributed database system" (DDBS) is often used to refer to both the distri...
PPTX
ai_satellite_crop_management_20250815030350.pptx
PPT
Chapter 1 - Introduction to Manufacturing Technology_2.ppt
PPTX
MAD Unit - 3 User Interface and Data Management (Diploma IT)
PPTX
AUTOMOTIVE ENGINE MANAGEMENT (MECHATRONICS).pptx
PDF
MLpara ingenieira CIVIL, meca Y AMBIENTAL
PPTX
Graph Data Structures with Types, Traversals, Connectivity, and Real-Life App...
PPTX
CN_Unite_1 AI&DS ENGGERING SPPU PUNE UNIVERSITY
PPTX
wireless networks, mobile computing.pptx
PDF
UEFA_Embodied_Carbon_Emissions_Football_Infrastructure.pdf
PDF
August -2025_Top10 Read_Articles_ijait.pdf
DOC
T Pandian CV Madurai pandi kokkaf illaya
PDF
VSL-Strand-Post-tensioning-Systems-Technical-Catalogue_2019-01.pdf
PPTX
tack Data Structure with Array and Linked List Implementation, Push and Pop O...
PDF
First part_B-Image Processing - 1 of 2).pdf
PDF
Unit1 - AIML Chapter 1 concept and ethics
PDF
Computer System Architecture 3rd Edition-M Morris Mano.pdf
Module 8- Technological and Communication Skills.pptx
Exploratory_Data_Analysis_Fundamentals.pdf
Micro1New.ppt.pptx the mai themes of micfrobiology
distributed database system" (DDBS) is often used to refer to both the distri...
ai_satellite_crop_management_20250815030350.pptx
Chapter 1 - Introduction to Manufacturing Technology_2.ppt
MAD Unit - 3 User Interface and Data Management (Diploma IT)
AUTOMOTIVE ENGINE MANAGEMENT (MECHATRONICS).pptx
MLpara ingenieira CIVIL, meca Y AMBIENTAL
Graph Data Structures with Types, Traversals, Connectivity, and Real-Life App...
CN_Unite_1 AI&DS ENGGERING SPPU PUNE UNIVERSITY
wireless networks, mobile computing.pptx
UEFA_Embodied_Carbon_Emissions_Football_Infrastructure.pdf
August -2025_Top10 Read_Articles_ijait.pdf
T Pandian CV Madurai pandi kokkaf illaya
VSL-Strand-Post-tensioning-Systems-Technical-Catalogue_2019-01.pdf
tack Data Structure with Array and Linked List Implementation, Push and Pop O...
First part_B-Image Processing - 1 of 2).pdf
Unit1 - AIML Chapter 1 concept and ethics
Computer System Architecture 3rd Edition-M Morris Mano.pdf

모바일 트렌드와 iOS

  • 1. Mobile Computing Life Techniques, Bussiness & Market, Development twitter.com/@godrm OSXDEV.org facebook.com/godrm NHN NEXT 김정
  • 3. › Source: NBC News and The Associated Press (http://photoblog.nbcnews.com/)
  • 5. “ ” 언제든지 어디서나 어떤것이든 네트워크에 연결되어 사용할 수 있는 컴퓨팅 환경
  • 6. Business & Market Mobile Contents, App Market, Business Platform
  • 8. © 2014 Forrester Research, Inc. Reproduction Prohibited 24 #mobilemindshift 4. The audience size in Asia will elevate the  region’s  role  in  mobile  innovation  .  .  . Source: Ericsson Mobility report, November 2013
  • 11. ⓒ 2013 MezzoMedia Inc. PC vs Mobile 이용자 수 3,319만명 3,632만명
  • 12. In digital era,What does ‘Watching TV’ even mean? Source:The Wall Street Journal (2013/10/08)
  • 14. 1인당 주기적으로 사용하는 앱 개수 26 20% 10-25 20% 1-9 60% 9
  • 15. 국내 앱 마켓 이슈 ✴ 카카오톡 비중이 지나치게 높음 ✴ 40대 이상은 OS 마켓을 사용하지 않고 카카오톡 마켓만 ✴ 게임 카테고리 편식이 심함 ✴ 10,20대는 레이싱, 러닝, 연예 다양한 게임 장르 존재 ✴ 40대 이상 퍼즐 게임 집중 ✴ 하루 30분 이상 40%, 1시간 이상 21% ✴ 44% 정도 한달에 하나 이상의 게임을 다운로드 ✴ 21% 최근 3개월 이내 유료 결제함
  • 16. 모바일 앱 - 성공 사례
  • 17. Apple iTunes Ecosystem ✴ 콘텐츠 생산 도구 ✴ Desktop Publishing ✴ Video/Audio Authorising ✴ Pro Tools ✴ 콘텐츠 소비 도구 ✴ iPod ✴ iPhone ✴ iPad ✴ Apple TV ✴ 콘텐츠/광고 유통 ✴ Music, Video, ✴ TV show, ✴ App, ✴ Book, ✴ Radio
  • 19. 43,185 iOS Developers 10,199 Android Developers 1,412 X-platform Developers AppStore HQ Number of Developers (북미)
  • 20. Computing Power ✴ NASA - Apollo Guidance Computer ✴ Apollo 8 (1968) ✴ 1966 August ✴ 2.048 MHz Discrete IC RTL ✴ 16bit 2048 words RAM ✴ 36,684 words ROM
  • 22. Bluetooth LE - Beacon
  • 23. IoT (Internet of Things)
  • 26. LLVM
  • 27. 아이디어의 시작은… • JVMs do all optimizations online at JIT time: - Hugely redundant across runs - Applications launch slowly - What if we could do heavy lifting at install time? ! • Problem: Java bytecode is too limiting! - Memory safety prevents some optzns (eg. bounds checks) - JVM type system doesn’t lend itself to machine optzns
  • 28. With some sort of low level virtual machine, we could optimize better and a JIT compiler would have to do less work online! “ ”
  • 29. Introduction • LLVM - Low-Level Virtual Machine • An Infrastructure for Multi-stage Optimization - by Chris Arthur Lattner @2002 • Design and Implementation of a compiler infrastructure - support a unique multi-stage optimization system - support inter-procedural and profile-driven optimizations • LLVM virtual instruction (IR) - with high-level type information • Sponsored by APPLE
  • 30. The Architecture Compile Time Link Time Run-Time Compiler FE 1 Compiler FE N .. .o files LLVM LLVM Linker IPO / IPA Native CodeGen Libraries exe LLVM LLVM LLVM exe & LLVM JIT CPU Runtime Optimizer Offline Reoptimizer LLVM LLVM exe exe Profile & Trace Info Profile Info
  • 32. Call for help http://llvm.org/ Call for help! Python Common Dynamic Language Representation + Type Inference Ruby C, C++, Ada, ... – OSS community needs to unite work on various scripting languages – Common module to represent/type infer an arbitrary dynamic language – Who will provide this? pypy? parrot? llvm itself someday (“hlvm”)? Perl Javascript ... llvm-gcc LLVM OpenGL GLSL, ARB VP, ... What Next? LTO JIT Install Time CodegenIPO Cross Lang Optzn Debugger Support
  • 33. LLVM use in Open Source OSes • Minix moved to Clang as default compiler • FreeBSD is working on ClangBSD • LLVM is the basis of the Renderscript compiler in Android • LLVM a hard dependency for Gallium3D • Building Debian with Clang • Unsupported GCC Flags / C Extensions 출처 : http://llvm.org/devmtg/2012-04-12/Slides/Mark_Charlebois.pdf
  • 34. Use-case #1 - New Compiler • Cling - CERN • CtoVerilog - Haifa University • OpenCL - AMD • Click - Ericsson • EDGtoLLVM - ARM • Jaguar - Cray • Delphi XE- Embarcadero
  • 35. Use-case #2 - Optimization Flash ActionScript (.as3) ➔ ActionScript Bytecode (.abc) ➔ LLVM Bytecode (.bc) ➔.abc ➔ .swf
  • 36. Use-case #3 - Cross Language Crack Scripting Language ➔ C/C++/Java-like Scripting Language ➔ Speed of a compiled language, ease of use of a scripting language ➔ Unladen Sparrow(Python), Rubinius(Ruby), V8(JS) cf. PNaCl (Portable Native Client)
  • 37. Use-case #3 - Emscripten compiles LLVM bytecode into JavaScript ➔ C/C++ to JavaScript ➔ can be run on the web ➔ Python, the Bullet physics engine, eSpeak (TTS) https://github.com/kripken/emscripten/wiki Everything  compiles  into  LLVM  bitcode The  web  is  everywhere,  and  runs  JavaScript Compiling  LLVM  bitcode  to  JavaScript  lets  us  run ~  everything,  everywhere
  • 39. Bots
  • 40. Xcode 5 and OS X Server
  • 41. Continuous Integration • 여러 버전의 OS와 하드웨어 모델별로 테스트 • 프로젝트의 빌드, 분석, 테스트를 자주 • 자동으로 빠르게 문제를 파악하고 • 과도한 작업은 서버로 이관 • 프로젝트의 빌드/테스트 이력을 보관 • 개발팀 분산 작업에 도움 cf. Jenkins, Hudson, CruiseControl
  • 42. Bot •Defines what to build ■ Project and SCM information •When to build it ■ Periodic, on-commit, or manual •How to build it ■ Shared scheme ■ Static analysis ■ Testing and devices ■ Archives •Notifications
  • 44.
  • 46. Technology Cycles Source: Mary Meeker, Internet Trends D11 Conference 2013
  • 48. Top 10 Tech Project in Kickstarter, 2013
  • 49. Mobile will be the your life...