SlideShare a Scribd company logo
1 of 159
Download to read offline
Open Mapping on iOS
Justin Miller • MapBox
YaC 2013 • Moscow • October 2013
Overview
Overview
•What is iOS mapping like out of the box?
Overview
•What is iOS mapping like out of the box?
•What is geodata? How can you use it?
Overview
•What is iOS mapping like out of the box?
•What is geodata? How can you use it?
•What software exists for custom mapping?
About Me
About Me
•I live and work in Portland, USA
About Me
•I live and work in Portland, USA
•I’ve been building with Cocoa for ~10 years
About Me
•I live and work in Portland, USA
•I’ve been building with Cocoa for ~10 years
•I lead iOS & OS X engineering at MapBox
About MapBox
About MapBox
•We are pushing the space around open data & open source
for maps
About MapBox
•We are pushing the space around open data & open source
for maps
•Why? I will show you by way of iOS
About MapBox
•We are pushing the space around open data & open source
for maps
•Why? I will show you by way of iOS
•With open tech, we also leave options open
About MapBox
•We are pushing the space around open data & open source
for maps
•Why? I will show you by way of iOS
•With open tech, we also leave options open
•No inherent lock-in
About MapBox
•We are pushing the space around open data & open source
for maps
•Why? I will show you by way of iOS
•With open tech, we also leave options open
•No inherent lock-in
•Mix vendors, software, and data
What Apple GivesYou
What Apple GivesYou
•MapKit.framework
What Apple GivesYou
•MapKit.framework
•Available since iOS 3 (2009)
What Apple GivesYou
•MapKit.framework
•Available since iOS 3 (2009)
•Incrementally improved in each iOS release
What Apple GivesYou
•MapKit.framework
•Available since iOS 3 (2009)
•Incrementally improved in each iOS release
•Apple vends their own maps
What Apple GivesYou
•MapKit.framework
•Available since iOS 3 (2009)
•Incrementally improved in each iOS release
•Apple vends their own maps
•Pre-iOS 6, famously, they vended Google’s
Inherent Limitations
Inherent Limitations
•No custom styling
Inherent Limitations
•No custom styling
•No formal offline capabilities
Inherent Limitations
•No custom styling
•No formal offline capabilities
•Weak interactivity
Inherent Limitations
•No custom styling
•No formal offline capabilities
•Weak interactivity
•Not fine-grained
Inherent Limitations
•No custom styling
•No formal offline capabilities
•Weak interactivity
•Not fine-grained
•Not offline-capable
Inherent Limitations
•No custom styling
•No formal offline capabilities
•Weak interactivity
•Not fine-grained
•Not offline-capable
•Not at the pixel level
What Do We Need?
What Do We Need?
1.Custom maps
What Do We Need?
1.Custom maps
2.Software to integrate them
What Do We Need?
1.Custom maps
2.Software to integrate them
3.Apple’s blessing
What Do We Need?
1.Custom maps
2.Software to integrate them
3.Apple’s blessing
•Alternate frameworks are ok!
What Do We Need?
1.Custom maps
2.Software to integrate them
3.Apple’s blessing
•Alternate frameworks are ok!
•I’ll explain more about this later
Custom Maps
Custom Maps
•MapBox is building a cloud platform on OpenStreetMap
Custom Maps
•MapBox is building a cloud platform on OpenStreetMap
•OSM is like Wikipedia for maps
Custom Maps
•MapBox is building a cloud platform on OpenStreetMap
•OSM is like Wikipedia for maps
•Over one million contributors
Custom Maps
•MapBox is building a cloud platform on OpenStreetMap
•OSM is like Wikipedia for maps
•Over one million contributors
•But the open tools also let you self-host
Custom Maps
•MapBox is building a cloud platform on OpenStreetMap
•OSM is like Wikipedia for maps
•Over one million contributors
•But the open tools also let you self-host
•Start small, grow large
Custom Maps
Custom Maps
•We make (and use) TileMill for styling geodata
Custom Maps
•We make (and use) TileMill for styling geodata
•TileMill works with both:
Custom Maps
•We make (and use) TileMill for styling geodata
•TileMill works with both:
• Large (OSM extracts or full)
Custom Maps
•We make (and use) TileMill for styling geodata
•TileMill works with both:
• Large (OSM extracts or full)
• Small (vacation.geojson)
Can Be Combined!
Can Be Combined!
•Use OSM for the base layer
Can Be Combined!
•Use OSM for the base layer
•Custom (or not) worldwide map
Can Be Combined!
•Use OSM for the base layer
•Custom (or not) worldwide map
•Use alpha-transparent overlays for details
Can Be Combined!
•Use OSM for the base layer
•Custom (or not) worldwide map
•Use alpha-transparent overlays for details
•Brought in locally (bundled) or via the cloud (MapBox or other)
But I’m Not a Map Maker!
But I’m Not a Map Maker!
But I’m Not a Map Maker!
•MapBox provides easy, slider-based styling of
OSM in a web UI
But I’m Not a Map Maker!
•MapBox provides easy, slider-based styling of
OSM in a web UI
•The point of TileMill is to make everyone a map
maker!
But I’m Not a Map Maker!
•MapBox provides easy, slider-based styling of
OSM in a web UI
•The point of TileMill is to make everyone a map
maker!
•Analogy: think about design assets in your
application
Geodata
Geodata
•Many formats:
Geodata
•Many formats:
•GeoJSON, KML, Shapefile,YMapsML, PostGIS & SQLite
databases, even CSV (+ more)
Geodata
•Many formats:
•GeoJSON, KML, Shapefile,YMapsML, PostGIS & SQLite
databases, even CSV (+ more)
•You can layer data together to style a map
TileMill Concepts
Geodata
russia.geojson
Import
#russia layer
Export
Russia map image
Code/Style
#russia { ... }
Geodata
russia.geojson
Import
#russia layer
Export
Russia map image
Code/Style
#russia { ... }
Geodata
russia.geojson
Import
#russia layer
Export
Russia map image
Code/Style
#russia { ... }
Geodata
russia.geojson
Import
#russia layer
Export
Russia map image
Code/Style
#russia { ... }
Geodata Import
Export Code/Style
Geodata Import
Export Code/Style
Geodata Import
Export Code/Style
Geodata Import
Export Code/Style
Geodata Import
Export Code/Style
TileMill is Cross-Platform
TileMill is Cross-Platform
•Supports OS X,Windows, and Linux
TileMill is Cross-Platform
•Supports OS X,Windows, and Linux
•Also can be run as a web service
TileMill is Cross-Platform
•Supports OS X,Windows, and Linux
•Also can be run as a web service
•It’s made of Node.js
TileMill is Cross-Platform
•Supports OS X,Windows, and Linux
•Also can be run as a web service
•It’s made of Node.js
•Entirely open source and free
TileMill is Cross-Platform
•Supports OS X,Windows, and Linux
•Also can be run as a web service
•It’s made of Node.js
•Entirely open source and free
•Help us make it great(er)!
Maps Produce Tiles
Maps Produce Tiles
•2D plane: x & y values
Maps Produce Tiles
•2D plane: x & y values
•Detail zooming: z value
Maps Produce Tiles
•2D plane: x & y values
•Detail zooming: z value
•Whole world in one tile at z1
Maps Produce Tiles
•2D plane: x & y values
•Detail zooming: z value
•Whole world in one tile at z1
•Maybe one city block at z17
Tiles Are Numerous
Tiles Are Numerous
•For zoom level z there are 4z tiles
Tiles Are Numerous
•For zoom level z there are 4z tiles
•Whole world at once: 1 tile (40)
Tiles Are Numerous
•For zoom level z there are 4z tiles
•Whole world at once: 1 tile (40)
•Whole world by blocks: 417 tiles (!)
Tiles Are Numerous
•For zoom level z there are 4z tiles
•Whole world at once: 1 tile (40)
•Whole world by blocks: 417 tiles (!)
•Transport at any reasonable scale becomes a problem
MBTiles
MBTiles
•Take many tiles (z, x, y values + image data)
MBTiles
•Take many tiles (z, x, y values + image data)
•Stuff them into database rows using SQLite
MBTiles
•Take many tiles (z, x, y values + image data)
•Stuff them into database rows using SQLite
•Easily compress, transport, and bundle
or
What Do We Need?
1.Custom maps ✓
2.Software to integrate them ←
3.Apple’s blessing
Software
Software
•Apple’s MapKit allows tile overlays
Software
•Apple’s MapKit allows tile overlays
•Since iOS 4 (MKOverlay protocol)
Software
•Apple’s MapKit allows tile overlays
•Since iOS 4 (MKOverlay protocol)
•-drawMapRect:... (similar to -drawRect:)
Software
•Apple’s MapKit allows tile overlays
•Since iOS 4 (MKOverlay protocol)
•-drawMapRect:... (similar to -drawRect:)
•However, you can’t turn off Apple’s maps*
Software
•Apple’s MapKit allows tile overlays
•Since iOS 4 (MKOverlay protocol)
•-drawMapRect:... (similar to -drawRect:)
•However, you can’t turn off Apple’s maps*
•Loading artifacts under your layer(s)
Software
•Apple’s MapKit allows tile overlays
•Since iOS 4 (MKOverlay protocol)
•-drawMapRect:... (similar to -drawRect:)
•However, you can’t turn off Apple’s maps*
•Loading artifacts under your layer(s)
•Network/rendering overhead
Software
•Apple’s MapKit allows tile overlays
•Since iOS 4 (MKOverlay protocol)
•-drawMapRect:... (similar to -drawRect:)
•However, you can’t turn off Apple’s maps*
•Loading artifacts under your layer(s)
•Network/rendering overhead
•Unpredictable caching & rendering
So We Built...
So We Built...
•MapBox iOS SDK
So We Built...
•MapBox iOS SDK
•Ground-up workalike of MapKit
So We Built...
•MapBox iOS SDK
•Ground-up workalike of MapKit
•Entirely open source & free
So We Built...
•MapBox iOS SDK
•Ground-up workalike of MapKit
•Entirely open source & free
•Fully-featured
Example Usage
Example Usage
•RMMapBoxSource
Example Usage
•RMMapBoxSource
•[[RMMapBoxSource alloc]
initWithMapID:@”justin.russia”]
Example Usage
•RMMapBoxSource
•[[RMMapBoxSource alloc]
initWithMapID:@”justin.russia”]
•RMMBTilesSource
Example Usage
•RMMapBoxSource
•[[RMMapBoxSource alloc]
initWithMapID:@”justin.russia”]
•RMMBTilesSource
•[[RMMapBoxSource alloc]
initWithTileSetResource:@”russia”
ofType:@”mbtiles”]
Interactivity
Interactivity
•Simple key/value query on a CGPoint at the current zoom level
Interactivity
•Simple key/value query on a CGPoint at the current zoom level
•[mapView
formattedOutputOfType:RMInteractiveSourceOutputTypeFull
forPoint:gesturePoint]
Interactivity
•Simple key/value query on a CGPoint at the current zoom level
•[mapView
formattedOutputOfType:RMInteractiveSourceOutputTypeFull
forPoint:gesturePoint]
•Returns HTML that can be used in UIWebView
Attention to Detail
•User location tracking
Attention to Detail
•User location tracking
•Expected behavior & gestures
Attention to Detail
•User location tracking
•Expected behavior & gestures
•Ready for iOS 7!
Attention to Detail
One More Thing...
Yet another Thing? ;-)
What Do We Need?
1.Custom maps ✓
2.Software to integrate them ✓
3.Apple’s blessing ←
iOS 7 MapKit
iOS 7 MapKit
•iOS 7 MapKit lets you bring your own tiles
iOS 7 MapKit
•iOS 7 MapKit lets you bring your own tiles
•Apple’s official blessing of open maps
iOS 7 MapKit
•iOS 7 MapKit lets you bring your own tiles
•Apple’s official blessing of open maps
•And it works on OS X 10.9!
Announcing MBXMapKit
Announcing MBXMapKit
MBXMapKit
MBXMapKit
•Builds on Apple’s MapKit
MBXMapKit
•Builds on Apple’s MapKit
•iOS 7+ and OS X 10.9+
MBXMapKit
•Builds on Apple’s MapKit
•iOS 7+ and OS X 10.9+
•No other dependencies
MBXMapKit
•Builds on Apple’s MapKit
•iOS 7+ and OS X 10.9+
•No other dependencies
Simpler Integration
Simpler Integration
•One class + one line of code!
Simpler Integration
•One class + one line of code!
1. #import <MBXMapKit/MBXMapKit.h>
Simpler Integration
•One class + one line of code!
1. #import <MBXMapKit/MBXMapKit.h>
2. -[MBXMapView initWithFrame:mapID:]
or
-[MBXMapView initWithFrame:MBTilesPath:]
Free & Open Source
Free & Open Source
•MBXMapKit will continue to evolve
Free & Open Source
•MBXMapKit will continue to evolve
•Will parallel development of our SDK
Free & Open Source
•MBXMapKit will continue to evolve
•Will parallel development of our SDK
•This is a great validation by Apple of the value of open
mapping!
Review
Review
•Custom maps from geodata using open source tools
Review
•Custom maps from geodata using open source tools
•Native iOS interaction with open source libraries
Review
•Custom maps from geodata using open source tools
•Native iOS interaction with open source libraries
•Lets you focus on combining great services together
ThankYou!
ThankYou!
•Contact Info
•@incanus77
•justin@mapbox.com
ThankYou!
•Contact Info
•@incanus77
•justin@mapbox.com
•Software
•github.com/mapbox/mapbox-ios-sdk
•github.com/mapbox/mbxmapkit
•tilemill.com
ThankYou!
•Contact Info
•@incanus77
•justin@mapbox.com
•Software
•github.com/mapbox/mapbox-ios-sdk
•github.com/mapbox/mbxmapkit
•tilemill.com
•Slides at tinyurl.com/MapBoxYaC13

More Related Content

Similar to iOS Mapping Customization and Interactivity

Map box styles in GeoServer and OpenLayers
Map box styles in GeoServer and OpenLayersMap box styles in GeoServer and OpenLayers
Map box styles in GeoServer and OpenLayersJody Garnett
 
Building Maps with Leaflet
Building Maps with LeafletBuilding Maps with Leaflet
Building Maps with LeafletJereme Causing
 
PyData Texas 2015 Keynote
PyData Texas 2015 KeynotePyData Texas 2015 Keynote
PyData Texas 2015 KeynotePeter Wang
 
iOS Game Development With UIKit
iOS Game Development With UIKitiOS Game Development With UIKit
iOS Game Development With UIKitMartin Grider
 
Doug McCune - Using Open Source Flex and ActionScript Projects
Doug McCune - Using Open Source Flex and ActionScript ProjectsDoug McCune - Using Open Source Flex and ActionScript Projects
Doug McCune - Using Open Source Flex and ActionScript ProjectsDoug McCune
 
Demolitions and Dali : Web Dev and Data in a Graph Database
Demolitions and Dali : Web Dev and Data in a Graph DatabaseDemolitions and Dali : Web Dev and Data in a Graph Database
Demolitions and Dali : Web Dev and Data in a Graph DatabaseNicholas Doiron
 
Adventures in cross platform ConnectJS / TiConnect 2014
Adventures in cross platform ConnectJS / TiConnect 2014Adventures in cross platform ConnectJS / TiConnect 2014
Adventures in cross platform ConnectJS / TiConnect 2014Jason Kneen
 
An online viewer for Geospatial Vector Data using HTML5 Canvas and JavaScript
An online viewer for Geospatial Vector Data using HTML5 Canvas and JavaScript An online viewer for Geospatial Vector Data using HTML5 Canvas and JavaScript
An online viewer for Geospatial Vector Data using HTML5 Canvas and JavaScript Manikanta Kondeti
 
Saving Money with Open Source GIS
Saving Money with Open Source GISSaving Money with Open Source GIS
Saving Money with Open Source GISbryanluman
 
Be Location Intelligent with MapInfo Pro v2019
Be Location Intelligent with MapInfo Pro v2019Be Location Intelligent with MapInfo Pro v2019
Be Location Intelligent with MapInfo Pro v2019Peter Horsbøll Møller
 
Xcodeを用いた iPhone/iPadアプリ開発
Xcodeを用いた iPhone/iPadアプリ開発Xcodeを用いた iPhone/iPadアプリ開発
Xcodeを用いた iPhone/iPadアプリ開発一樹 濱崎
 
Xcodeを用いたiPhone/iPadアプリ開発
Xcodeを用いたiPhone/iPadアプリ開発Xcodeを用いたiPhone/iPadアプリ開発
Xcodeを用いたiPhone/iPadアプリ開発ashphy
 
GO programming language
GO programming languageGO programming language
GO programming languagetung vu
 
OpenStreetMap integration into Wikimedia projects
OpenStreetMap integration into Wikimedia projectsOpenStreetMap integration into Wikimedia projects
OpenStreetMap integration into Wikimedia projectsavarab
 

Similar to iOS Mapping Customization and Interactivity (20)

Map box styles in GeoServer and OpenLayers
Map box styles in GeoServer and OpenLayersMap box styles in GeoServer and OpenLayers
Map box styles in GeoServer and OpenLayers
 
Building Maps with Leaflet
Building Maps with LeafletBuilding Maps with Leaflet
Building Maps with Leaflet
 
PyData Texas 2015 Keynote
PyData Texas 2015 KeynotePyData Texas 2015 Keynote
PyData Texas 2015 Keynote
 
Patch Maps
Patch MapsPatch Maps
Patch Maps
 
iOS Game Development With UIKit
iOS Game Development With UIKitiOS Game Development With UIKit
iOS Game Development With UIKit
 
Doug McCune - Using Open Source Flex and ActionScript Projects
Doug McCune - Using Open Source Flex and ActionScript ProjectsDoug McCune - Using Open Source Flex and ActionScript Projects
Doug McCune - Using Open Source Flex and ActionScript Projects
 
Demolitions and Dali : Web Dev and Data in a Graph Database
Demolitions and Dali : Web Dev and Data in a Graph DatabaseDemolitions and Dali : Web Dev and Data in a Graph Database
Demolitions and Dali : Web Dev and Data in a Graph Database
 
4 march 2015 digimap urban map data cad
4 march 2015 digimap urban map data cad4 march 2015 digimap urban map data cad
4 march 2015 digimap urban map data cad
 
Adventures in cross platform ConnectJS / TiConnect 2014
Adventures in cross platform ConnectJS / TiConnect 2014Adventures in cross platform ConnectJS / TiConnect 2014
Adventures in cross platform ConnectJS / TiConnect 2014
 
GraphDb in XPages
GraphDb in XPagesGraphDb in XPages
GraphDb in XPages
 
An online viewer for Geospatial Vector Data using HTML5 Canvas and JavaScript
An online viewer for Geospatial Vector Data using HTML5 Canvas and JavaScript An online viewer for Geospatial Vector Data using HTML5 Canvas and JavaScript
An online viewer for Geospatial Vector Data using HTML5 Canvas and JavaScript
 
Saving Money with Open Source GIS
Saving Money with Open Source GISSaving Money with Open Source GIS
Saving Money with Open Source GIS
 
Be Location Intelligent with MapInfo Pro v2019
Be Location Intelligent with MapInfo Pro v2019Be Location Intelligent with MapInfo Pro v2019
Be Location Intelligent with MapInfo Pro v2019
 
Xcodeを用いた iPhone/iPadアプリ開発
Xcodeを用いた iPhone/iPadアプリ開発Xcodeを用いた iPhone/iPadアプリ開発
Xcodeを用いた iPhone/iPadアプリ開発
 
Applebu
ApplebuApplebu
Applebu
 
Applebu
ApplebuApplebu
Applebu
 
Xcodeを用いたiPhone/iPadアプリ開発
Xcodeを用いたiPhone/iPadアプリ開発Xcodeを用いたiPhone/iPadアプリ開発
Xcodeを用いたiPhone/iPadアプリ開発
 
GO programming language
GO programming languageGO programming language
GO programming language
 
OpenStreetMap integration into Wikimedia projects
OpenStreetMap integration into Wikimedia projectsOpenStreetMap integration into Wikimedia projects
OpenStreetMap integration into Wikimedia projects
 
Responsive web-design
Responsive web-designResponsive web-design
Responsive web-design
 

More from Yandex

Предсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of TanksПредсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of TanksYandex
 
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...Yandex
 
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаСтруктурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаYandex
 
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров ЯндексаПредставление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров ЯндексаYandex
 
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...Yandex
 
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...Yandex
 
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...Yandex
 
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...Yandex
 
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...Yandex
 
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...Yandex
 
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...Yandex
 
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...Yandex
 
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеровКак защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеровYandex
 
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...Yandex
 
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...Yandex
 
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...Yandex
 
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...Yandex
 
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...Yandex
 
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...Yandex
 
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...Yandex
 

More from Yandex (20)

Предсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of TanksПредсказание оттока игроков из World of Tanks
Предсказание оттока игроков из World of Tanks
 
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
 
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров ЯндексаСтруктурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
 
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров ЯндексаПредставление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
 
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
 
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
 
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
 
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
 
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
 
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
 
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
 
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
 
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеровКак защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
 
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
 
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
 
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
 
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
 
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
 
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
 
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
 

Recently uploaded

costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 

Recently uploaded (20)

costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 

iOS Mapping Customization and Interactivity