SlideShare a Scribd company logo
1 of 15
Geogad   Your Personal Mobile Tour Guide




         “Cloud” Computing
           Georgi Dagnall, CEO
              Geogad, Inc.
             Santa Clara, CA
          gdagnall@geogad.com
Elevator Pitch

                      Geogad

    organizes and distributes in-depth local and
    historical info

    by latitude and longitude

    for travelers to easily explore their destinations

    using their cell phones and media players

    by leveraging the mobile web and GPS and
    other location finding technology

    and targeting content, services, and advertising
    based on a traveler's location and interests
Mobile And User Customizable
Opinions on the Cloud

From Wikipedia:
Cloud computing is Internet-based computing, whereby shared
resources, software, and information are provided to computers and other
devices on demand...

Internet – Day 1
Cloud computing is a paradigm shift following the shift from mainframe to
client–server in the early 1980s. Details are abstracted from the users,
who no longer have need for expertise in, or control over, the technology
infrastructure "in the cloud" that supports them.

Internet – Day 2
In general, Cloud computing customers do not own the physical
infrastructure, instead avoiding capital expenditure by renting usage from
a third-party provider. They consume resources as a service and pay only
for resources that they use.

http://www.techcrunchit.com/2009/10/01/larry-ellison-still-hates-cloud-computing-nonsense-video/
Designing for the Cloud

What does Geogad do? (What do you want to do?)
Stream video
Convert video/audio
Resize JPEG images
Manage professional and UGC (comments, ratings, sharing, etc.)

                                 Delivered To
                      Web site, downloaded zipped files,
                     Mobile web, Android app, iPhone app

How does Geogad do it? (How do you want to do it?)
Server-side: Java, C++, PHP, Ruby on Rails, etc.
Client-side: HTML, CSS, Ajax, Android/Java, iPhone/Objective C
Databases: MySQL, PostgreSQL, Hadoop, etc.
Ad Servers: Google AdSense, OpenX. etc.

Extras: Drupal, Google Maps, Google App Engine, Wordpress, etc.
Open Source Is Not Free

Economics of Open Source
Free but no support or customization.

MySQL purchased by Sun for $1 billion
          → Sun bought by Oracle for $7.4 billion

ffmpeg


Open source video converter. Command line and many, many libraries to sort
through and build

Kaltura


Open source video converter and distribution platform
Charges for hosting and streaming video from their servers

AdSense vs. OpenX (OpenX Market)


Over $30 million in funding ($10 million in C round in May 2009)
Hosted signups > 10K in first 6 months
Free download of OpenX 2.8 – 3000 users, monthly run rate of more than 10
billion impressions in just six weeks since launch
Video Across Platforms

Ffmpeg – can handle almost anything that you give it. Written in C.

1. Web – Flash flv files
2. Mobile Web – 3gp, low-res, low frame rate MP4
3. Android – Progressive download- MOOV atom at front with MP4BOX
4. iPhone – If streaming live or video greater than 10 minutes long, video
       must be available in different bit rates (96k, 256k, and 800k)
    and segmented in time (10 seconds).*
Ffmpeg command for 96K H.264 Video File
ffmpeg -i <in file> -f mpegts -acodec libmp3lame -ar 48000 -ab 64k -s 320×240 -vcodec libx264 -b
96k -flags +loop -cmp +chroma -partitions +parti4×4+partp8×8+partb8×8 -subq 5 -trellis 1 -refs 1
-coder 0 -me_range 16 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -bt 200k -maxrate 96k -bufsize
96k -rc_eq 'blurCplx^(1-qComp)' -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -level 30 -aspect 320:240 -g
30 -async 2 <output file>

More video formats for more devices on the way.
Consider Brightcove, Kaltura, or other video distribution networks. Not
free, but neither is your time.
* http://www.ioncannon.net/programming/452/iphone-http-streaming-with-ffmpeg-and-an-open-source-segmenter/
OpenX Downloaded

Campaigns and banners created by webmaster but viewable by
advertisers.

Build or buy tools to let advertisers manage their own campaigns.

Build your own automatic payment system for your advertisers.

PHP → Java, Jsp pages
Geogad Across Platforms

Finding tour stops
1. Web - Java/JSP/Ajax
2. Android/iPhone – Java servlets
3. Mobile web - WURFL

Create an API from the start
Tips For Mobile Apps


Reuse servlets between mobile apps
sending string using standardized
data protocols – XML, JSON

Ping server to confirm network
connection – YouTube
Reduce image downloads with
sprites for batch downloads. App
appears to work much faster.
WURFL

WURFL - Wireless Universal Resource File
Huge volunteer-created open source XML-based list of mobile
phones and their capabilities
 <device id="apple_iphone_ver1" user_agent="Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en)
AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A538a Safari/419.3"
fall_back="apple_generic" actual_device_root="true">

 <group id="display">
  <capability name="physical_screen_height" value="74"/>
  <capability name="dual_orientation" value="true"/>
  <capability name="physical_screen_width" value="49"/>
  <capability name="max_image_width" value="320"/>
  <capability name="resolution_height" value="480"/>
  <capability name="resolution_width" value="320"/>
  <capability name="max_image_height" value="360"/>
 </group>

  <group id="sound_format">
   <capability name="aac" value="true"/>
   <capability name="mp3" value="true"/>
  </group>

</device>
WALL To All

WALL - Wireless Abstraction Library
Uses Java tag library to support multiple feature phone browsers
and markup languages, i.e. WML 1.X, CHTML, and XHTML MP


<%@ taglib uri="/WEB-INF/tld/wall.tld" prefix="wall" %><wall:document><wall:xmlpidtd />
  <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><wall:load_capabilities />

  <wall:head>
    <wall:title><%= metatitle %></wall:title>
    <wall:menu_css />
  </wall:head>
  <wall:body>
    <wall:hr />
    <wall:br />
             [JSP and WALL code goes here]
  </wall:body>
</wall:document>
WALL Example

Managing Device Capabilities
<wall:block>
 <% if ((tID > 0) || (ctID > 0)) {%>
 <c:if test="${capabilities.gif}">
    <wall:a href="<%= prevLink %>" title="Previous" >
       <wall:img src="images/leftgreen.gif" alt="Previous" />
    </wall:a>
 </c:if>
 <wall:a href="<%= prevLink %>" title="Previous" >Prev</wall:a>
 <% } else {%>
 <c:if test="${capabilities.gif}">
    <% if (secID == 0) {%>
    <wall:img src="images/leftgray.gif" alt="Previous" />
    <% } else {%>
    <wall:a href="<%= prevLink %>" title="Previous" >
       <wall:img src="images/leftgreen.gif" alt="Previous" />
    </wall:a>
    <% }%>
 </c:if>
 <% if (secID == 0) {%>
 <wall:font color="gray">Prev</wall:font>
 <% } else {%>
 <wall:a href="<%= prevLink %>" title="Previous" >Prev</wall:a>
 <% }%>
 <% }%>
 <wall:b>(<%= (secID + 1) %> of <%= maxsec %>) </wall:b>
WALL Example


 Managing Images and Screen Sizes
<% if (format.indexOf("audio") != -1) {%>
<c:choose>
  <c:when test="${capabilities.resolution_width >= 240}">
     <wall:img src="<%= srcImgFile %>" alt="<%= tsname %>" />
  </c:when>
  <c:otherwise>
     <wall:img src="<%= srcImgFile2 %>" alt="<%= tsname %>" />
  </c:otherwise>
</c:choose>
<% } else {%>
<c:choose>
  <c:when test="${capabilities.resolution_width >= 320}">
     <wall:img src="<%= srcImgFile %>" alt="<%= tsname %>" />
  </c:when>
  <c:otherwise>
     <wall:img src="<%= srcImgFile2 %>" alt="<%= tsname %>" />
  </c:otherwise>
</c:choose>
<% } %>
Geogad   Your Personal Mobile Tour Guide




           Georgi Dagnall, CEO
              Geogad, Inc.
             Santa Clara, CA
          gdagnall@geogad.com

More Related Content

Viewers also liked

Viewers also liked (12)

People Say About Sally, Client References
People Say About Sally, Client ReferencesPeople Say About Sally, Client References
People Say About Sally, Client References
 
Di Bawah Bayang-bayang Krisis: Laporan Tahunan AJI 2015
Di Bawah Bayang-bayang Krisis: Laporan Tahunan AJI 2015Di Bawah Bayang-bayang Krisis: Laporan Tahunan AJI 2015
Di Bawah Bayang-bayang Krisis: Laporan Tahunan AJI 2015
 
Making mflow famous, marrying digital comms and PR, Brew and Seventy Seven PR
Making mflow famous, marrying digital comms and PR, Brew and Seventy Seven PRMaking mflow famous, marrying digital comms and PR, Brew and Seventy Seven PR
Making mflow famous, marrying digital comms and PR, Brew and Seventy Seven PR
 
Los mejores futbolistas europeos
Los mejores futbolistas europeosLos mejores futbolistas europeos
Los mejores futbolistas europeos
 
Linkedinpresentatie Juli 2010
Linkedinpresentatie Juli 2010Linkedinpresentatie Juli 2010
Linkedinpresentatie Juli 2010
 
Gauss jordan elimination through pivoting
Gauss jordan elimination through pivotingGauss jordan elimination through pivoting
Gauss jordan elimination through pivoting
 
Choir and Community Management
Choir and Community ManagementChoir and Community Management
Choir and Community Management
 
Innovation & Massive data
Innovation & Massive dataInnovation & Massive data
Innovation & Massive data
 
Effective Strategies for Searching Oracle UCM
Effective Strategies for Searching Oracle UCMEffective Strategies for Searching Oracle UCM
Effective Strategies for Searching Oracle UCM
 
Matrices
MatricesMatrices
Matrices
 
Personal clouds & mobiles - ambientic - fossa2011
Personal clouds & mobiles - ambientic - fossa2011Personal clouds & mobiles - ambientic - fossa2011
Personal clouds & mobiles - ambientic - fossa2011
 
052011 DEP Water Rate Proposal
052011 DEP Water Rate Proposal052011 DEP Water Rate Proposal
052011 DEP Water Rate Proposal
 

Similar to Cloud Computing in Mobile

Opera and the Open Web platform
Opera and the Open Web platformOpera and the Open Web platform
Opera and the Open Web platformAndreas Bovens
 
Device aware web frameworks for better programming
Device aware web frameworks for better programmingDevice aware web frameworks for better programming
Device aware web frameworks for better programmingSuntae Kim
 
Pinkoi Mobile Web
Pinkoi Mobile WebPinkoi Mobile Web
Pinkoi Mobile Webmikeleeme
 
[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web Design[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
Responsive UX - One size fits all @BigDesign conference #BigD12
Responsive UX - One size fits all   @BigDesign conference #BigD12Responsive UX - One size fits all   @BigDesign conference #BigD12
Responsive UX - One size fits all @BigDesign conference #BigD12touchtitans
 
[rwdsummit2012] Adaptive Images in Responsive Web Design
[rwdsummit2012] Adaptive Images in Responsive Web Design[rwdsummit2012] Adaptive Images in Responsive Web Design
[rwdsummit2012] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
[cssdevconf] Adaptive Images in RWD
[cssdevconf] Adaptive Images in RWD[cssdevconf] Adaptive Images in RWD
[cssdevconf] Adaptive Images in RWDChristopher Schmitt
 
Silicon Valley CloudStack User Group - Designing CloudStack Clouds
Silicon Valley CloudStack User Group - Designing CloudStack CloudsSilicon Valley CloudStack User Group - Designing CloudStack Clouds
Silicon Valley CloudStack User Group - Designing CloudStack CloudsShapeBlue
 
HTML5 vs Native Android: Smart Enterprises for the Future
HTML5 vs Native Android: Smart Enterprises for the FutureHTML5 vs Native Android: Smart Enterprises for the Future
HTML5 vs Native Android: Smart Enterprises for the FutureMotorola Mobility - MOTODEV
 
[html5tx] Adaptive Images in Responsive Web Design
[html5tx] Adaptive Images in Responsive Web Design[html5tx] Adaptive Images in Responsive Web Design
[html5tx] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
Drupalcamp New York 2009
Drupalcamp New York 2009Drupalcamp New York 2009
Drupalcamp New York 2009Tom Deryckere
 
[HEWEBAR 2012] Adaptive Images in Responsive Web Design
[HEWEBAR 2012] Adaptive Images in Responsive Web Design[HEWEBAR 2012] Adaptive Images in Responsive Web Design
[HEWEBAR 2012] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
Building Mobile Websites with Joomla
Building Mobile Websites with JoomlaBuilding Mobile Websites with Joomla
Building Mobile Websites with JoomlaTom Deryckere
 
N01 cloud computing_and_gae
N01 cloud computing_and_gaeN01 cloud computing_and_gae
N01 cloud computing_and_gaeSun-Jin Jang
 
Smart Client Smart Applications_Ciaran Kirk - Intergraph Geospatial World Tou...
Smart Client Smart Applications_Ciaran Kirk - Intergraph Geospatial World Tou...Smart Client Smart Applications_Ciaran Kirk - Intergraph Geospatial World Tou...
Smart Client Smart Applications_Ciaran Kirk - Intergraph Geospatial World Tou...IMGS
 
Siruna session at Drupalcon Paris 2009
Siruna session at Drupalcon Paris 2009Siruna session at Drupalcon Paris 2009
Siruna session at Drupalcon Paris 2009Tom Deryckere
 
IoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT InteroperabilityIoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT InteroperabilitySamsung Open Source Group
 

Similar to Cloud Computing in Mobile (20)

Opera and the Open Web platform
Opera and the Open Web platformOpera and the Open Web platform
Opera and the Open Web platform
 
Device aware web frameworks for better programming
Device aware web frameworks for better programmingDevice aware web frameworks for better programming
Device aware web frameworks for better programming
 
Pinkoi Mobile Web
Pinkoi Mobile WebPinkoi Mobile Web
Pinkoi Mobile Web
 
[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design
 
[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web Design[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web Design
 
Responsive UX - One size fits all @BigDesign conference #BigD12
Responsive UX - One size fits all   @BigDesign conference #BigD12Responsive UX - One size fits all   @BigDesign conference #BigD12
Responsive UX - One size fits all @BigDesign conference #BigD12
 
[rwdsummit2012] Adaptive Images in Responsive Web Design
[rwdsummit2012] Adaptive Images in Responsive Web Design[rwdsummit2012] Adaptive Images in Responsive Web Design
[rwdsummit2012] Adaptive Images in Responsive Web Design
 
Vodafone Widget Camp
Vodafone Widget CampVodafone Widget Camp
Vodafone Widget Camp
 
[cssdevconf] Adaptive Images in RWD
[cssdevconf] Adaptive Images in RWD[cssdevconf] Adaptive Images in RWD
[cssdevconf] Adaptive Images in RWD
 
Silicon Valley CloudStack User Group - Designing CloudStack Clouds
Silicon Valley CloudStack User Group - Designing CloudStack CloudsSilicon Valley CloudStack User Group - Designing CloudStack Clouds
Silicon Valley CloudStack User Group - Designing CloudStack Clouds
 
HTML5 vs Native Android: Smart Enterprises for the Future
HTML5 vs Native Android: Smart Enterprises for the FutureHTML5 vs Native Android: Smart Enterprises for the Future
HTML5 vs Native Android: Smart Enterprises for the Future
 
Android ppt
Android pptAndroid ppt
Android ppt
 
[html5tx] Adaptive Images in Responsive Web Design
[html5tx] Adaptive Images in Responsive Web Design[html5tx] Adaptive Images in Responsive Web Design
[html5tx] Adaptive Images in Responsive Web Design
 
Drupalcamp New York 2009
Drupalcamp New York 2009Drupalcamp New York 2009
Drupalcamp New York 2009
 
[HEWEBAR 2012] Adaptive Images in Responsive Web Design
[HEWEBAR 2012] Adaptive Images in Responsive Web Design[HEWEBAR 2012] Adaptive Images in Responsive Web Design
[HEWEBAR 2012] Adaptive Images in Responsive Web Design
 
Building Mobile Websites with Joomla
Building Mobile Websites with JoomlaBuilding Mobile Websites with Joomla
Building Mobile Websites with Joomla
 
N01 cloud computing_and_gae
N01 cloud computing_and_gaeN01 cloud computing_and_gae
N01 cloud computing_and_gae
 
Smart Client Smart Applications_Ciaran Kirk - Intergraph Geospatial World Tou...
Smart Client Smart Applications_Ciaran Kirk - Intergraph Geospatial World Tou...Smart Client Smart Applications_Ciaran Kirk - Intergraph Geospatial World Tou...
Smart Client Smart Applications_Ciaran Kirk - Intergraph Geospatial World Tou...
 
Siruna session at Drupalcon Paris 2009
Siruna session at Drupalcon Paris 2009Siruna session at Drupalcon Paris 2009
Siruna session at Drupalcon Paris 2009
 
IoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT InteroperabilityIoTivity for Automotive IoT Interoperability
IoTivity for Automotive IoT Interoperability
 

Recently uploaded

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
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
"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
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
"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
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
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
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 

Recently uploaded (20)

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
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
"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
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
"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
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
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)
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 

Cloud Computing in Mobile

  • 1. Geogad Your Personal Mobile Tour Guide “Cloud” Computing Georgi Dagnall, CEO Geogad, Inc. Santa Clara, CA gdagnall@geogad.com
  • 2. Elevator Pitch Geogad  organizes and distributes in-depth local and historical info  by latitude and longitude  for travelers to easily explore their destinations  using their cell phones and media players  by leveraging the mobile web and GPS and other location finding technology  and targeting content, services, and advertising based on a traveler's location and interests
  • 3. Mobile And User Customizable
  • 4. Opinions on the Cloud From Wikipedia: Cloud computing is Internet-based computing, whereby shared resources, software, and information are provided to computers and other devices on demand... Internet – Day 1 Cloud computing is a paradigm shift following the shift from mainframe to client–server in the early 1980s. Details are abstracted from the users, who no longer have need for expertise in, or control over, the technology infrastructure "in the cloud" that supports them. Internet – Day 2 In general, Cloud computing customers do not own the physical infrastructure, instead avoiding capital expenditure by renting usage from a third-party provider. They consume resources as a service and pay only for resources that they use. http://www.techcrunchit.com/2009/10/01/larry-ellison-still-hates-cloud-computing-nonsense-video/
  • 5. Designing for the Cloud What does Geogad do? (What do you want to do?) Stream video Convert video/audio Resize JPEG images Manage professional and UGC (comments, ratings, sharing, etc.) Delivered To Web site, downloaded zipped files, Mobile web, Android app, iPhone app How does Geogad do it? (How do you want to do it?) Server-side: Java, C++, PHP, Ruby on Rails, etc. Client-side: HTML, CSS, Ajax, Android/Java, iPhone/Objective C Databases: MySQL, PostgreSQL, Hadoop, etc. Ad Servers: Google AdSense, OpenX. etc. Extras: Drupal, Google Maps, Google App Engine, Wordpress, etc.
  • 6. Open Source Is Not Free Economics of Open Source Free but no support or customization. MySQL purchased by Sun for $1 billion → Sun bought by Oracle for $7.4 billion ffmpeg  Open source video converter. Command line and many, many libraries to sort through and build Kaltura  Open source video converter and distribution platform Charges for hosting and streaming video from their servers AdSense vs. OpenX (OpenX Market)  Over $30 million in funding ($10 million in C round in May 2009) Hosted signups > 10K in first 6 months Free download of OpenX 2.8 – 3000 users, monthly run rate of more than 10 billion impressions in just six weeks since launch
  • 7. Video Across Platforms Ffmpeg – can handle almost anything that you give it. Written in C. 1. Web – Flash flv files 2. Mobile Web – 3gp, low-res, low frame rate MP4 3. Android – Progressive download- MOOV atom at front with MP4BOX 4. iPhone – If streaming live or video greater than 10 minutes long, video must be available in different bit rates (96k, 256k, and 800k) and segmented in time (10 seconds).* Ffmpeg command for 96K H.264 Video File ffmpeg -i <in file> -f mpegts -acodec libmp3lame -ar 48000 -ab 64k -s 320×240 -vcodec libx264 -b 96k -flags +loop -cmp +chroma -partitions +parti4×4+partp8×8+partb8×8 -subq 5 -trellis 1 -refs 1 -coder 0 -me_range 16 -keyint_min 25 -sc_threshold 40 -i_qfactor 0.71 -bt 200k -maxrate 96k -bufsize 96k -rc_eq 'blurCplx^(1-qComp)' -qcomp 0.6 -qmin 10 -qmax 51 -qdiff 4 -level 30 -aspect 320:240 -g 30 -async 2 <output file> More video formats for more devices on the way. Consider Brightcove, Kaltura, or other video distribution networks. Not free, but neither is your time. * http://www.ioncannon.net/programming/452/iphone-http-streaming-with-ffmpeg-and-an-open-source-segmenter/
  • 8. OpenX Downloaded Campaigns and banners created by webmaster but viewable by advertisers. Build or buy tools to let advertisers manage their own campaigns. Build your own automatic payment system for your advertisers. PHP → Java, Jsp pages
  • 9. Geogad Across Platforms Finding tour stops 1. Web - Java/JSP/Ajax 2. Android/iPhone – Java servlets 3. Mobile web - WURFL Create an API from the start
  • 10. Tips For Mobile Apps Reuse servlets between mobile apps sending string using standardized data protocols – XML, JSON Ping server to confirm network connection – YouTube Reduce image downloads with sprites for batch downloads. App appears to work much faster.
  • 11. WURFL WURFL - Wireless Universal Resource File Huge volunteer-created open source XML-based list of mobile phones and their capabilities <device id="apple_iphone_ver1" user_agent="Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A538a Safari/419.3" fall_back="apple_generic" actual_device_root="true"> <group id="display"> <capability name="physical_screen_height" value="74"/> <capability name="dual_orientation" value="true"/> <capability name="physical_screen_width" value="49"/> <capability name="max_image_width" value="320"/> <capability name="resolution_height" value="480"/> <capability name="resolution_width" value="320"/> <capability name="max_image_height" value="360"/> </group> <group id="sound_format"> <capability name="aac" value="true"/> <capability name="mp3" value="true"/> </group> </device>
  • 12. WALL To All WALL - Wireless Abstraction Library Uses Java tag library to support multiple feature phone browsers and markup languages, i.e. WML 1.X, CHTML, and XHTML MP <%@ taglib uri="/WEB-INF/tld/wall.tld" prefix="wall" %><wall:document><wall:xmlpidtd /> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><wall:load_capabilities /> <wall:head> <wall:title><%= metatitle %></wall:title> <wall:menu_css /> </wall:head> <wall:body> <wall:hr /> <wall:br /> [JSP and WALL code goes here] </wall:body> </wall:document>
  • 13. WALL Example Managing Device Capabilities <wall:block> <% if ((tID > 0) || (ctID > 0)) {%> <c:if test="${capabilities.gif}"> <wall:a href="<%= prevLink %>" title="Previous" > <wall:img src="images/leftgreen.gif" alt="Previous" /> </wall:a> </c:if> <wall:a href="<%= prevLink %>" title="Previous" >Prev</wall:a> <% } else {%> <c:if test="${capabilities.gif}"> <% if (secID == 0) {%> <wall:img src="images/leftgray.gif" alt="Previous" /> <% } else {%> <wall:a href="<%= prevLink %>" title="Previous" > <wall:img src="images/leftgreen.gif" alt="Previous" /> </wall:a> <% }%> </c:if> <% if (secID == 0) {%> <wall:font color="gray">Prev</wall:font> <% } else {%> <wall:a href="<%= prevLink %>" title="Previous" >Prev</wall:a> <% }%> <% }%> <wall:b>(<%= (secID + 1) %> of <%= maxsec %>) </wall:b>
  • 14. WALL Example Managing Images and Screen Sizes <% if (format.indexOf("audio") != -1) {%> <c:choose> <c:when test="${capabilities.resolution_width >= 240}"> <wall:img src="<%= srcImgFile %>" alt="<%= tsname %>" /> </c:when> <c:otherwise> <wall:img src="<%= srcImgFile2 %>" alt="<%= tsname %>" /> </c:otherwise> </c:choose> <% } else {%> <c:choose> <c:when test="${capabilities.resolution_width >= 320}"> <wall:img src="<%= srcImgFile %>" alt="<%= tsname %>" /> </c:when> <c:otherwise> <wall:img src="<%= srcImgFile2 %>" alt="<%= tsname %>" /> </c:otherwise> </c:choose> <% } %>
  • 15. Geogad Your Personal Mobile Tour Guide Georgi Dagnall, CEO Geogad, Inc. Santa Clara, CA gdagnall@geogad.com