EMBARCADERO TECHNOLOGIES Devs 2 -palooza Developers and Devices David Intersimone David I Vice President of Developer Relations & Chief Evangelist

Slides:



Advertisements
Similar presentations
12 October 2011 Andrew Brown IMu Technology EMu Global Users Group 12 October 2011 IMu Technology.
Advertisements

Enable Bring Your Own Device with SCCM 2012 David Caddick Solutions Architect, Quest Software WCL315.
V1.01 Embracing the Mobile Frontier and Reaching the Digital Natives Jonathan
Thanks to Microsoft Azure’s Scalability, BA Minds Delivers a Cost-Effective CRM Solution to Small and Medium-Sized Enterprises in Latin America MICROSOFT.
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Honing In on Multiple Targets with a Single Codebase Jeff Tapper Senior Technologist.
Building Mobile Apps in the Cloud – Comparing Approaches.
Student Name: Group.  Developed by Microsoft  Alliance with Nokia in 2011  4 main functions:  Outlook Mobile  Windows Media Player for Windows Mobile.
Case study 2 Android – Mobile OS.
Lightning Talk Fred Rodriguez Nguyen Do CPSC 473 May 6, 2012.
Smart Phone Laboratory ECEN 489 Srinivas Shakkottai.
Windows Reimagine d Windows 8 Data explosion Browser-based apps Natural interaction Ubiquitous connectivity Personal devices in the.
Folio3 IPhone Training Session 1 Presenter: Imam Raza.
TechEd /24/2017 2:42 AM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Seamless Mobility: Michael Wehrs Director of Technology & Standards Mobile Device Division, Microsoft Corp. Wireless Software Innovations Spurring User.
Mobile web Sebastian Lopienski IT Technical Forum 29 June 2012.
ANDROID BY:-AANCHAL MEHTA MNW-880-2K11. Introduction to Android Open software platform for mobile development A complete stack – OS, Middleware, Applications.
Securely Synchronize and Share Enterprise Files across Desktops, Web, and Mobile with EasiShare on the Powerful Microsoft Azure Cloud Platform MICROSOFT.
Mohit Anand, Software Engineer Adobe 1 Selecting GUI Automation Testing Tool for Mobile Domain.
Mobile Applications: Unit - I
Mobile: Today and Beyond Stuart Parmenter, Director of Mobile
 Can access all API’s made available by OS vendor.  SDK’s are platform-specific.  Each mobile OS comes with its own unique tools and GUI toolkit.
© 2012 IBM Corporation IBM Worklight Overview Martin Triska – IBM Worklight specialist (420) July 2012.
INTRODUCING HYBRID APP KAU with MICT PARK IT COMPANIES Supported by KOICA
DreamFactory for Microsoft Azure Is an Open Source REST API Platform That Enables Mobilization of Data in Minutes across Frameworks and Storage Methods.
Mobile Application Solution
Computer System Structures
Microsoft Evangelist Presentation
AuraPortal Cloud Helps Empower Organizations to Organize and Control Their Business Processes via Applications on the Microsoft Azure Cloud Platform MICROSOFT.
Device Maintenance and Management, Parental Control, and Theft Protection for Home Users Made Easy with Remo MORE and Power of Azure MICROSOFT AZURE APP.
Introducing the Windows Mobile development
DocFusion 365 Intelligent Template Designer and Document Generation Engine on Azure Enables Your Team to Increase Productivity MICROSOFT AZURE APP BUILDER.
The Universal Windows Platform
Trial.iO Makes it Easy to Provision Software Trials, Demos and Training Environments in the Azure Cloud in One Click, Without Any IT Involvement MICROSOFT.
A10 Networks vThunder Leverages the Powerful Microsoft Azure Cloud Platform to Offer Advanced Layer 4-7 Networking, Security on a Global Scale MICROSOFT.
Dynamics of Mobile Application Testing
Cherwell Service Management is an IT Service Management Solution that Makes it Easier for Users to Capitalize on Power of Microsoft Azure MICROSOFT AZURE.
Couchbase Server is a NoSQL Database with a SQL-Based Query Language
Wonderware Online Cost-Effective SaaS Solution Powered by the Microsoft Azure Cloud Platform Delivers Industrial Insights to Users and OEMs MICROSOFT AZURE.
Mobile Application Solution
Servoy Delivers-High Productivity Platform to Design, Build and Deliver Business Applications with a Superior Experience on Microsoft Azure Partner Logo.
Cloud DX Connected Health Kits Depend on Azure to Deliver Cloud Storage and Securely Host Data for its Remote Patient Monitoring MICROSOFT AZURE APP BUILDER.
SmartHOTEL Solutions Powered by Microsoft Azure Provide Hoteliers with Comprehensive, One-Stop Automated Management of All Booking Channels MICROSOFT AZURE.
Blinkfire Analytics Uses the Microsoft Azure Cloud Platform’s Power to Recognize and Measure Media Value and Impact for Teams, Leagues, and Brands MICROSOFT.
Microsoft Azure Platform Powers New Elements Constellation Software Suite to Deliver Invaluable Insights From Your Data for Marketing and Sales MICROSOFT.
Yocale, Built on Azure: Convenient Online Booking Keeps Appointment Books Filled and Eliminates Scheduling Hassles for Local Business Owners MICROSOFT.
Running on the Powerful Microsoft Azure Platform,
Designed for Big Data Visual Analytics, Zoomdata Allows Business Users to Quickly Connect, Stream, and Visualize Data in the Microsoft Azure Platform MICROSOFT.
Mobile App Development
Interlake Hybrid Cloud Management Suite
Intelledox Infiniti Helps Organizations Digitally Transform Paper and Manual Business Processes into Intuitive, Guided User Experiences on Azure MICROSOFT.
Be Better: Achieve Customer Service Excellence and Create a Lean RMA and Returns Process with Renewity RMA and the Power of Microsoft Azure MICROSOFT AZURE.
Voice Analytics on Microsoft Azure Allows Various Customers to Get the Most Out of Conversations with Clients Through Efficient Content Analysis MICROSOFT.
I-POWER JAPAN Gives Small Businesses the Ability to Get Their Work Done from Anywhere, Even a Construction Site, by Using Microsoft Azure MICROSOFT AZURE.
Architecting and integrating sensor drivers
DeFacto Planning on the Powerful Microsoft Azure Platform Puts the Power of Intelligent and Timely Planning at Any Business Manager’s Fingertips Partner.
Data Security for Microsoft Azure
MyCloudIT Enables Partners to Drive Their Cloud Profitability Using CSP-Enabled Desktop Hosting Automation with Microsoft Azure and Office 365 MICROSOFT.
Introducing Qwory, a Business-to-Business Search Engine That’s Powered by Microsoft Azure and Detects Vital Contact Information for Businesses MICROSOFT.
MyAppFree, Powered by Microsoft Azure, Lets Global Users Discover and Download Tested and Handpicked Windows Apps and Games for Free MICROSOFT AZURE ISV.
Dell Data Protection | Rapid Recovery: Simple, Quick, Configurable, and Affordable Cloud-Based Backup, Retention, and Archiving Powered by Microsoft Azure.
TruRating: Mass Point-of-Payment Customer Rating System Uses the Power of Microsoft Azure to Store and Analyze Millions of Ratings for Business Owners.
dotmailer: A Marketing Automation Platform with at its Core
AdQ is Azure-Powered Pre-Roll Ad Management Software That Improves Pre-Roll Ad Performance, Increases Profits, and Optimizes User Experience MICROSOFT.
One-Stop Shop Manages All Technical Vendor Data and Documentation and is Globally Deployed Using Microsoft Azure to Support Asset Owners/Operators MICROSOFT.
Appcelerator Arrow: Build APIs in Minutes. Connect to Any Data Source
Media365 Portal by Ctrl365 is Powered by Azure and Enables Easy and Seamless Dissemination of Video for Enhanced B2C and B2B Communication MICROSOFT AZURE.
XtremeData on the Microsoft Azure Cloud Platform:
Quasardb Is a Fast, Reliable, and Highly Scalable Application Database, Built on Microsoft Azure and Designed Not to Buckle Under Demand MICROSOFT AZURE.
BluSync by ParaBlu Offers Secure Enterprise File Collaboration and Synchronization Solution That Uses Azure Blob Storage to Enable Secure Sharing MICROSOFT.
Last.Backend is a Continuous Delivery Platform for Developers and Dev Teams, Allowing Them to Manage and Deploy Applications Easier and Faster MICROSOFT.
Presentation transcript:

EMBARCADERO TECHNOLOGIES Devs 2 -palooza Developers and Devices David Intersimone David I Vice President of Developer Relations & Chief Evangelist

EMBARCADERO TECHNOLOGIES About David I. 44 years since my first program – IBM360/40, Fortran, Prime # Generator First 8 years – real time assembly language programmer 28 years with the developer tools group Responsibilities: – Global Evangelism – Tech Partner Program – MVP Program – Embarcadero Community – Developer Cheerleader

EMBARCADERO TECHNOLOGIES Agenda The Changing Client Landscape Devices, Devices, Devices Tool Choices The 5 Mistakes Developers Make in Moving to Mobile Summary Q&A

EMBARCADERO TECHNOLOGIES THE CHANGING CLIENT LANDSCAPE

EMBARCADERO TECHNOLOGIES 2013: The Client Revolution WindowsMobileMac Todays Unprecedented Multi-Device Landscape 1 Billion65 Million1 Billion+

EMBARCADERO TECHNOLOGIES Client Device Diversity Will Continue to Expand

EMBARCADERO TECHNOLOGIES The Client Revolution An Unprecedented Multi-Device Landscape

EMBARCADERO TECHNOLOGIES Apple (iOS) vs Samsung (Android)

EMBARCADERO TECHNOLOGIES Mobile Platform Market Share

EMBARCADERO TECHNOLOGIES Global mobile and PC tablet shipments

EMBARCADERO TECHNOLOGIES Global smartphone shipments

EMBARCADERO TECHNOLOGIES DEVICES, DEVICES, DEVICES

EMBARCADERO TECHNOLOGIES What next-gen devices/gadgets do you have? Smart phone, Tablet 2-in-1 devices Home Control/Security Automotive Digital Health Wearable Gaming

EMBARCADERO TECHNOLOGIES Billions of Audio/Video Devices Media – audio, video Capture – capturing, stopped Position – unspecified, front, back Flash – auto, off, on Focus – autofocus, continuous autofocus, locked Torch – off, on, auto Video capture quality – photo quality, high, medium, low

EMBARCADERO TECHNOLOGIES Trillions of Sensors – Some Categories Location - GPS, Static, Lookup, Triangulation, Broadcast, Dead Reckoning Environmental - Temperature, Pressure, Humidity, Wind Speed, Wind Direction Motion – Accelerometer (1D,2D,3D), Motion Detector, Gyrometer (1D, 2D, 3D), Speed Orientation – Compass (1D, 2D, 3D), Inclinometer (1D, 2D, 3D), Distance (1D, 2D, 3D) Electrical - Voltage, Current, Capacitance, Resistance, Inductance, Power, Potentiometer Mechanical – Boolean (Switch, Array), Multi-Value Switch, Force, Scale, Pressure, Strain Biometric – Human Presence, Human Proximity, Touch Light – Ambient Light Scanner - RFID, Barcode

EMBARCADERO TECHNOLOGIES Beyond the SmartPhone/Tablet Home Control/Automation – Z-Wave - – Zigbee - – Nest - – Philips Hue -

EMBARCADERO TECHNOLOGIES Digital Health – Parks Associates Q2-2013

EMBARCADERO TECHNOLOGIES Sensor Based Solutions Source: Fullpower Technologies -

EMBARCADERO TECHNOLOGIES TOOL CHOICES

EMBARCADERO TECHNOLOGIES Devices – Choose your Languages & Architectures Languages – Native Code – C++, C, Delphi, Objective-C – Managed Code – Java, C# – Dynamic/Scripting - PHP, JavaScript, Python, Ruby, Lua Architectures – Multi-Device / APIs – Multi-Tier – Service Oriented - HTTP/REST/JSON/XML

EMBARCADERO TECHNOLOGIES Current Tool Choices Apple Google Microsoft Single Device Multi Device Scripted Native Vendor Tools Web Tech Based Tools HTML5 JavaScript

EMBARCADERO TECHNOLOGIES Pros & Cons for Multi-Device Apple Google Microsoft HTML5 JavaScript Single Device Multi Device Scripted True Native Pros Native UX Native performance Secure Cons Multiple code bases Multiple teams Higher dev cost Vendor Tools Web Tech Based Tools

EMBARCADERO TECHNOLOGIES $$$$ C# or C++.NET or MFC C++ or Obj-C OSX SDK Objective-C iOS SDK Java Android SDK multiple languages, multiple codebases Vendor tool approach to multi-device

EMBARCADERO TECHNOLOGIES Pros & Cons for Multi-Device Apple Google Microsoft HTML5 JavaScript Single Device Multi Device Scripted True Native Vendor Tools Web Tech Based Tools Pros One team Lower dev costs Fast time to market Cons Script Performance Non-Native UX Unsecure

EMBARCADERO TECHNOLOGIES $$$ JavaScript or C# Platform SDK Platform SDK Platform SDK Platform SDK Platform SDK Platform SDK one language, multiple codebases Managed/Script Code Mobile Solutions

EMBARCADERO TECHNOLOGIES Native Code HTML5, JavaScript, CSS3 Dalvik (Android/Java) Titanium.Geolocation.distanceFilter =.25; Ti.Geolocation.purpose = "Callbacks Are Your Friend; // make the API call Ti.Geolocation.getCurrentPosition(func tion(e) { // do this stuff when you have a position, OR an error if (e.error) { Ti.API.error('geo - current position' + e.error); return; } // got the location information Ti.App.info('got a location ',JSON.stringify(e)); }); Titanium.Geolocation.distanceFilter =.25; Ti.Geolocation.purpose = "Callbacks Are Your Friend; // make the API call Ti.Geolocation.getCurrentPosition(func tion(e) { // do this stuff when you have a position, OR an error if (e.error) { Ti.API.error('geo - current position' + e.error); return; } // got the location information Ti.App.info('got a location ',JSON.stringify(e)); }); JavaScript ARM Binary Bytecode IL JavaScript Runtime Interpreter Virtual Machine (VM) Runtime NativeScriptedVM

EMBARCADERO TECHNOLOGIES THE 5 MISTAKES DEVELOPERS MAKE IN MOVING TO MOBILE

EMBARCADERO TECHNOLOGIES Trying to fit a desktop experience onto a mobile device Mobile devices lack the facilities of a PC including large display for easy viewing a robust in memory cache for fast data process external keyboard for easy typing Developers try to build overly complex capabilities into mobile devices: cluttering the screen draining device resources impacting the end user experience How to avoid it identify the high value actions within the app that are most likely to be used design only for these requirements ensure users can complete them with minimum taps set a maximum tolerance for the no. of steps a user has to take to complete an action Learn the most common app types and stick to those, until you are really expert Mistake #1

EMBARCADERO TECHNOLOGIES Not making the mobile user experience your top priority With hundreds of thousands of apps your users have lots of choices If your app is not easy to use people will avoid it Users dont not come back after a poor initial user experience How to avoid it Focus on a good user experience design Show users prototypes of the app on actual mobile devices for regular feedback Ensure users can complete tasks with minimum taps Ensure that you have satisfied their main requirements before releasing the app Mistake #2

EMBARCADERO TECHNOLOGIES Mistake # 3 Too much get between your app, the OS and the Hardware Shave every possible millisecond off response time Utilize all relevant capabilities offered by the device A mobile app dev platform that abstracts away device details delivers only the common denominator of functionality across devices How to avoid it Build a True Native App means your app is optimized for a particular OS True Native App is also optimised for the particular hardware Skip wrappers like JVMs that abstract away control of fine grained capabilities Code directly to the device whenever possible

EMBARCADERO TECHNOLOGIES Building separate apps for different platforms Building apps with separate codebases for different platforms can lead to multiple issues Many of your end users own multiple devices Your app may perform differently on each device With separate apps features get released and bugs get fixed at different times Results in out of sync scenario – confusing to users Managing multiple codebases results in extra development work an higher overhead How to avoid it Single codebase that is complied and optimized for different platforms and device form factors You will deliver a more consistent user experience across all devices Realise significant savings with fewer resources required for development, QA and delivery Mistake #4

EMBARCADERO TECHNOLOGIES Mistake # 5 Not doubling down on security Relying on device or network security measures to protect your data can be hazardous Take active measures to protect data that is resident on the device Take active measures to protect data passed in communications and service calls Java, JavaScript and Android are notorious hacker targets How to avoid it For key interactions code directly to the device Include your own security precautions to reduce the risk of third party attacks Encrypt sensitive data stored on the device

EMBARCADERO TECHNOLOGIES RAD STUDIO XE5 Delphi – Win/Mac/iOS/Android C++Builder – Win/Mac (ios,Android Winter 2013)

EMBARCADERO TECHNOLOGIES Multi-Device True Native Apple Google Microsoft HTML5 and JavaScript Single Device Multi Device ScriptedNative Multi-Device True Native Embarcadero Pros Native UX Native performance Secure Pros One team Lower dev costs Fast time to market

EMBARCADERO TECHNOLOGIES $ Future Delphi and C++* FM Framework One team, One codebase * C++ planned for end of 2013 RAD Studio XE5 – multi-device ready

EMBARCADERO TECHNOLOGIES Device 36 RAD Studio XE5- Enterprise Ready FM InterBase or SQLLite FireDAC DataSnap Oracle MSSQL DB2 Sybase & more... Your App Your App REST Server Methods Server Methods FireDAC C++ or Delphi REST

EMBARCADERO TECHNOLOGIES Windows Developer Survey – Dimensional Research Overwhelming majority of Windows developers must add mobile to their existing app development strategy – 85% of respondents receive requests for mobile apps – 99% say existing apps must continue to be supported Android is the most requested platform among Windows developers – 83% of the requests for mobile app have Android support as a requirement HTML5 and JavaScript are not the solution of choice for mobile apps – 85% of respondents say native apps are best for end users – 74% of those who used HTML5 and JavaScript have had challenges Dimensional Research (UK) Q Survey – 1,337 Windows Developers

EMBARCADERO TECHNOLOGIES Summary Most devices (available today) are app ready Service integrations are standardized on REST/JSON You (developers) are the center of this Universe and will be for years to come!

EMBARCADERO TECHNOLOGIES Q&A

EMBARCADERO TECHNOLOGIES Resources Apple Developer - Android Developers - Z-Wave Alliance - Zigbee Alliance - VeraLite - Pebble Watch - Leap Motion - Philips Hue - Nest - FullPower Technologies - Sphero - Parrot AR Drone - Ford Developer Program - GM Developer Program -

EMBARCADERO TECHNOLOGIES THANK blogs.embarcadero.com/davidi/