Where Should the Brain of Your Mobile Application Live?
|
|
- Blaise Francis
- 5 years ago
- Views:
Transcription
1 Where Should the Brain of Your Mobile Application Live? Or, how Gilt architected its ios apps so compiled binaries released years ago can keep up with evolving server data models
2 First, an introduction
3 >9 million active members Ships 22,000 packages/day to over 100 countries Works with >6,000 brands and >4,500 local vendors Once sold a $60,000 round-trip private charter of an entire Virgin America plane in 11 seconds with over 1,100 people signing up for a waitlist in case we ever re-ran the sale!
4
5 Mobile >50% of Gilt s revenue comes through Mobile channels, which includes native apps on ios and Android, and mobile web >10 million app downloads Fastest checkout was 0.2 seconds (a Volkswagen Jetta sold through the iphone app) Most expensive item: $29,603 for the 2014 Acura MDX with an L.A. travel package (via iphone app)
6
7 Evan Maloney Distinguished Engineer Engineer on Mobile team since 2010; responsible for ios core platform Prior to Gilt, created first versions of the Reuters News Pro ios apps Steve Jobs had at least one of my apps installed on his iphone Despite title, my job does not involve wearing a top hat and monacle
8 What we ll discuss
9 I. The Legacy App Version Problem App versions released years ago are still in use, and you want to support those users. But you also need to evolve your server environment. You can t force those users to update, what do you do?
10 II. Strategies for Addressing the Problem (A) Through an Ever-Growing Proliferation of Service Versions Every incompatible service change results in one of the following: Forking the codebase and maintaining legacy versions of the affected services Operating a single service with an increasingly complex nest of client capability checks in the code
11 II. Strategies for Addressing the Problem (B) By Adopting Web-style UI in your application This strategy involves building a native app where some or all of the user interface is presented in web views: The UI is served to the app just like regular web pages, so it is always up-to-date In extreme cases, the entire app is just a native shell around a mobile website
12 III. How We Thought About This at Gilt We realized the root of the problem involved how app developers assigned responsibility between the client and the server: For example, standard app architecture requires both the client and the server to have code that understands the format of the data used between the two But what if it didn t have to be that way? What if the server could tell the client how to extract meaningful information from the data models it serves? Services could evolve without breaking compatibility with existing apps
13 I. The Legacy App Version Problem
14 The only constant is change Gilt s backend web services support sales via desktop web, mobile web, and iphone, ipad & Android apps Software for these channels are all under active development by different teams Over time, various technical and business requirements have resulted in breaking changes needing to be made to the backend services
15 The Root of the Problem The client app and the server must always agree on the structure of the data On the client side, this knowledge has to be compiled in to the application binary Once an app binary has been installed on a device, it can t be modified by the vendor
16 How are others addressing this?
17 Multiple Service Versions Running multiple service versions is a common strategy, but that comes with some costs: The existence of multiple versions increases maintenance costs, and makes it harder to evolve the server stack Sometimes, you need to retire an old service because it costs too much to operate, so needing to maintain a legacy version defeats the purpose
18 Web-Based UI A more extreme solution is to move some or all of your app s UI to web views that frame your mobile website Write-once, run-everywhere has always been the unattainable holy grail of software development, but there s a reason people write native apps just ask Facebook! Can be a useful technique when used judiciously at Gilt, we use it for the privacy policy and terms & conditions copy
19 Mul$ple service versions Adop$ng a web- based UI Pros Don t need to do any work for already- released apps; they ll just con$nue to work Immediate release, no app review Exis$ng versions are updated without requiring a new binary to be downloaded & installed Not much na$ve development, which can be expensive Cons High long- term maintenance costs Ties you to an old so@ware stack; hinders evolu$on of your systems Doesn t address case where a business needs to re$re a service A lowest- common- denominator user experience that doesn t quite feel right on any plamorm Lack of control over memory management & concurrency means that a complex UI with lots of assets won t perform well at scale No direct access to hardware
20 Implications Server- side Client- side Mul+ple service versions Increased complexity and maintenance costs None Client can be freely updated over 3me Adop+ng a web- based UI None A free- ride off your exis3ng mobile website An inferior user experience, client- side performance doesn t scale
21 For some use-cases, these are acceptable trade-offs
22 but they weren t for Gilt.
23 So, how did we address it?
24 How most server-driven apps are built 1. The server maintains knowledge of the data necessary to drive the app 2. The app requests data, and receives a data structure in response 3. Because the app needs to ask questions of the data, developers usually hard-code knowledge of that data structure into the app
25 How server-driven apps could be built 1. The server maintains knowledge of the data necessary to drive the app 2. The app requests data, and receives in response: The data itself Instructions for how to extract relevant values from that data 3. The app will still ask questions of the data to do its work, but it will use server-provided instructions to do so
26 TA-DA! The client no longer needs advance knowledge of the server s data model!
27 We call this model/query decoupling, but it s really just a different way of thinking about where you hard-code knowledge.
28 Model/query decoupling is achieved when: The ability to query a set of data does not require direct knowledge of that data s structure
29 Typical knowledge responsibility breakdown The Client App needs to know: 1. The exact structure of the data The Server needs to know: 1. The exact structure of the data 2. What ques$ons it needs answered from the data 3. How to translate those ques$ons into procedures for extrac$ng answers from the data
30 Breakdown with model/query decoupling The Client App needs to know: 1. What ques$ons it needs answered from the data The Server needs to know: 1. The exact structure of the data 2. The set of ques$ons each app version needs answered from the data 3. How to translate those ques$ons into procedures for extrac$ng answers from the data
31 Breakdown with model/query decoupling The Client App needs to know: 1. What ques$ons it needs answered from the data The Server needs to know: 1. The exact structure of the data 2. The set of ques$ons each app version needs answered from the data 3. How to translate those ques+ons into procedures for extrac+ng answers from the data
32 How do we do this at Gilt? 1. We created an ios framework called the Mockingbird Data Environment that allows us to construct plaintext expressions that can be used to navigate, transform and extract data from arbitrary data models 2. In addition to sending data, our servers send expressions that allow our apps to extract meaningful information from that data 3. When we change our data model, our servers send an updated set of expressions, which legacy versions can then use to extract information from the new data model
33 How do we do this at Gilt? 4. Our app asks our data questions like, What sales are there today? and How many items of this SKU are available? 5. For each such question, a corresponding Mockingbird expression can be created to return an answer in whatever format is expected by the app 6. When the app needs to know, say, What products are in this sale?, it uses the most recent version of the Mockingbird expression associated with that question, and evaluates it, yielding the result in a format the app understands
34 How does it work? Once the app is released, the format of the data that it needs to populate the user interface can no longer be changed However, the underlying server data model can be changed because the app never interacts with it directly The app uses Mockingbird expressions to translate between the server model and the data format expected by the compiled UI Because we can update the expressions, we can change the data model
35 The result Allows for fully native user interface Total flexibility over changing backend whenever you need Legacy app versions will still work Don t need to wait for app review or the user s upgrade cycle Users who can t upgrade to your latest version due to hardware or OS requirements will still be supported
36 The underlying philosophy
37 Let the server dictate the terms of server-y things Let the client dictate the terms of client-y things
38 One more thing
39 You can use the same code Gilt uses to do this, and add it to your own ios apps for free. Gilt has open-sourced the Mockingbird Data Environment: Available under the MIT license, fully documented & ready to use!
40 Where Should the Brain of Your Mobile Application Live? Evan Maloney Distinguished Engineer Gilt Mobile
Virtualization. Q&A with an industry leader. Virtualization is rapidly becoming a fact of life for agency executives,
Virtualization Q&A with an industry leader Virtualization is rapidly becoming a fact of life for agency executives, as the basis for data center consolidation and cloud computing and, increasingly, as
More informationCrash Course in Modernization. A whitepaper from mrc
Crash Course in Modernization A whitepaper from mrc Introduction Modernization is a confusing subject for one main reason: It isn t the same across the board. Different vendors sell different forms of
More informationConsiderations for Mobilizing your Lotus Notes Applications
Considerations for Mobilizing your Lotus Notes Applications John Kingsley Teamstudio Technical Director Why Mobilize? It all started with email. Not any one email in particular, just the fact that you
More informationResponsive Web Design Discover, Consider, Decide
Responsive Web Design Discover, Consider, Decide Responsive Web Design. Discover, Consider, Decide Q. What is Responsive Design? A. Responsive design is a general mindset where you are designing a website,
More informationOracle Applications in a Changing Business World. Legacy Oracle Applications Won't Be Around Forever. Will You?
Oracle Applications in a Changing Business World Legacy Oracle Applications Won't Be Around Forever. Will You? Ross Smith Chief Architect July 7, 2017 2 Oracle Applications in a Changing Business World
More informationYour Data Demands More NETAPP ENABLES YOU TO LEVERAGE YOUR DATA & COMPUTE FROM ANYWHERE
Your Data Demands More NETAPP ENABLES YOU TO LEVERAGE YOUR DATA & COMPUTE FROM ANYWHERE IN ITS EARLY DAYS, NetApp s (www.netapp.com) primary goal was to build a market for network-attached storage and
More informationE-Guide WHAT WINDOWS 10 ADOPTION MEANS FOR IT
E-Guide WHAT WINDOWS 10 ADOPTION MEANS FOR IT E nterprise adoption of Windows 10 isn t likely to follow the same pattern as for Windows 7, and that s a good thing, writes columnist Brian Madden. And even
More informationThink like an Elm developer
Think like an Elm developer Piper Niehaus Denver, CO, USA Backpacker / skier Nonprofit board chair Software Engineer at Pivotal Pivotal Tracker team Elm in Production since 2016 Internal Products and Services
More informationSencha Paris Meetup Switching from Titanium to Sencha Touch: a real life example
Sencha Paris Meetup Switching from Titanium to Sencha Touch: a real life example Laurent Jolia Ferrier 12 June 2014 Foreword: I have always favoured development tools targeting several OSs with "one" code
More informationGOING MOBILE: Setting The Scene for RTOs.
GOING MOBILE: Setting The Scene for RTOs. 29 November, 4:00 pm 4:45 pm, General Session Presented by Lawrence Smith & Chris Adams WHERE: Usage of Mobile Devices Source: State of American Traveler Research
More informationIf you like this guide and you want to support the community, you can sign up as a Founding Member here:
Introduction Hey Sam here. Thanks for getting access to Vid Invision Enterprise. I m super excited that you ve come on board This guide is to help you to understand how to navigate the Vid Invision Enterprise
More informationImplementing Your BYOD Mobility Strategy An IT Checklist and Guide
Implementing Your BYOD Mobility Strategy An IT Checklist and Guide 2012 Enterproid IBYOD: 120221 Content 1. Overview... 1 2. The BYOD Checklist... 1 2.1 Application Choice... 1 2.2 Installation and Configuration...
More informationIMPORTANT WORDS AND WHAT THEY MEAN
MOBILE PHONES WHAT IS DATA Data is Internet. It can let you do lots of different things on your phone or tablet. You can send or receive texts, emails or photos, listen to music, watch TV shows, movies
More informationWhat Mobile Development Model is Right for You?
What Mobile Development Model is Right for You? An analysis of the pros and cons of Responsive Web App, Hybrid App I - Hybrid Web App, Hybrid App II - Hybrid Mixed App and Native App Contents Mobile Development
More informationMastering Mobile Web with 8 Key Rules. Mastering Mobile Web with 8 Key Rules
Mastering Mobile Web with 8 Key Rules 1 Introduction When it comes to mobile web design and testing, mobility plays by a far different set of rules than the desktops of years past. Today we are challenged
More informationBases de Dades: introduction and organization
Andrew D. Bagdanov bagdanov@cvc.uab.es Departamento de Ciencias de la Computación Universidad Autónoma de Barcelona Fall, 2010 Outline 1 2 3 4 5 Contact information Professor Database systems Important
More information2SKILL. Variables Lesson 6. Remembering numbers (and other stuff)...
Remembering numbers (and other stuff)... Let s talk about one of the most important things in any programming language. It s called a variable. Don t let the name scare you. What it does is really simple.
More informationMigration With Duda.
Migration With Duda A Comprehensive Guide to the Opportunities and Considerations that Come with Website Migration for DIY and DIFM Solutions Providers. www.dudamobile.com Table of Contents Introduction
More informationCS354 gdb Tutorial Written by Chris Feilbach
CS354 gdb Tutorial Written by Chris Feilbach Purpose This tutorial aims to show you the basics of using gdb to debug C programs. gdb is the GNU debugger, and is provided on systems that
More informationFree Facetime Video Call Chat Review: What Happens in Apple Stays in Apple
Free Facetime Video Call Chat Review: What Happens in Apple Stays in Apple What do you know about millennials or Generation Y? According to Urban Dictionary, millennials are people born between 1981-1991.
More informationHow To Present Progressive Web Apps To Your Clients
How To Present Progressive Web Apps To Your Clients AND HELP THEM WIN THE MOBILE WEB TABLE OF CONTENTS 01 And Then There Were Three PAGE 03 05 The Major Benefits of PWAs PAGE 07 02 Introducing PWAs PAGE
More information1. I NEED TO HAVE MULTIPLE VERSIONS OF VISUAL STUDIO INSTALLED IF I M MAINTAINING APPLICATIONS THAT RUN ON MORE THAN ONE VERSION OF THE.
CUSTOMER PAIN POINTS 1. I NEED TO HAVE MULTIPLE VERSIONS OF VISUAL STUDIO INSTALLED IF I M MAINTAINING APPLICATIONS THAT RUN ON MORE THAN ONE VERSION OF THE.NET FRAMEORK. THAT S TAKING UP SPACE ON MY HARDDRIVE
More informationMobile & More: Preparing for the Latest Design Trends
February 26, 2015 Mobile & More: Preparing for the Latest Design Trends LATEST TRENDS Responsive Takes Over Material Is the New Flat Hero Images Getting Bigger Interactions Are Micro Video in the Background
More informationTHE ONLINER A VIP FOR MARKETERS. Slovenia
I THE ONLINER A VIP FOR MARKETERS Slovenia I INTERNET USAGE Internet usage is still growing slightly and is now close to the saturation point. Underlying developments such as a higher daily reach are stemming
More informationYou Can t Move Forward Unless You Can Roll Back. By: Michael Black
You Can t Move Forward Unless You Can Roll Back By: Michael Black The VP of Sales walks in and tells you that your largest and oldest client wants to pay for a custom modification. But here s the clincher,
More information(THE) ULTIMATE CONTACT STRATEGY HOW TO USE PHONE AND FOR CONTACT AND CONVERSION SUCCESS SALES OPTIMIZATION STUDY
(THE) ULTIMATE CONTACT STRATEGY HOW TO USE PHONE AND EMAIL FOR CONTACT AND CONVERSION SUCCESS EXECUTIVE SUMMARY This study, derived from the data of nearly 3.5 million leads, breaks new ground, revealing
More informationA computer is an electronic device, operating under the control of instructions stored in its own memory unit.
Computers I 1. Operating Systems In order to grasp the concept of Operating Systems and understand the different types of windows available we first need to cover some basic definitions. 1.1 Computer Concepts
More informationPhotos, Photos. What to do with All Those Photos? Presented by Phil Goff Area 16 Computers and Technology August 17, 2017
Photos, Photos. What to do with All Those Photos? Presented by Phil Goff Area 16 Computers and Technology August 17, 2017 1 Photos Have a Different Value Today With film cameras, pictures were taken and
More informationState of Mobile Commerce. Q
State of Mobile Commerce. Q4 2014. JANUARY 2015 Executive Summary. Mobile commerce adoption is far ahead of expectations. Globally, mobile now accounts for 30% of ecommerce transactions. It is expected
More informationVirtual vs Physical ADC
WHITEPAPER What are the primary differences and the pros and cons of virtual vs physical application delivery controllers? Snapt Technical Team sales@snapt.net pg. 1 Forward-thinking organizations are
More informationHow APEXBlogs was built
How APEXBlogs was built By Dimitri Gielis, APEX Evangelists Copyright 2011 Apex Evangelists apex-evangelists.com How APEXBlogs was built By Dimitri Gielis This article describes how and why APEXBlogs was
More informationViewports. Peter-Paul Koch DevReach, 13 November 2017
Viewports Peter-Paul Koch http://quirksmode.org http://twitter.com/ppk DevReach, 13 November 2017 or: Why responsive design works Peter-Paul Koch http://quirksmode.org http://twitter.com/ppk DevReach,
More informationViewports. Peter-Paul Koch CSS Day, 4 June 2014
Viewports Peter-Paul Koch http://quirksmode.org http://twitter.com/ppk CSS Day, 4 June 2014 or: Why responsive design works Peter-Paul Koch http://quirksmode.org http://twitter.com/ppk CSS Day, 4 June
More informationWhat You Need to Know When Buying a New Computer JackaboutComputers.com
If it s been a while since you bought your last computer, you could probably use a quick refresher on what you need to know to make a good purchase. Computers today are a much larger part of our life than
More informationPUTING SOAP TO REST. Internet APIs. In fact, REST currently represents about 69% of
PUTING SOAP TO REST What Google, Amazon, Yahoo!, Oracle and other tech giants know that You don t: web services are better delivered via REST than SOAP. Here s why. Law enforcement demands access to accurate
More informationDetermining the Best Approach
2 Determining the Best Approach The remaining chapters of this book cover the capabilities of the BlackBerry application platform and then dig into each application development option in detail. Before
More informationEnterprise Architecture Building a Mobile Vision. David Hunt DCH Technology Services Gill Windall University of Greenwich
Enterprise Architecture Building a Mobile Vision David Hunt DCH Technology Services Gill Windall University of Greenwich What is Enterprise Architecture? Definition Enterprise Architecture is the practice
More informationHead-to-head: Which will win for your business?
Head-to-head: Which will win for your business? When it comes to mobile operating systems (OS), chances are you re already pretty familiar with the big two Apple and Android. There s probably a device
More informationSUCCESS STORY THE POLYCLINIC THE POLYCLINIC SPEEDS UP ITS VDI ENVIRONMENT WITH NVIDIA GRID
THE POLYCLINIC SPEEDS UP ITS VDI ENVIRONMENT WITH NVIDIA GRID Updated VDI with NVIDIA GRID wins over staff and increases user density across the organization. was founded in 1917 by a handful of doctors.
More informationKACE GO Mobile App 4.0. Release Notes
KACE GO Mobile App 4.0 Release Notes Table of Contents Quest KACE GO 4.0 Mobile App Release Notes...3 About the KACE GO Mobile App... 3 Capabilities for KACE Systems Management Appliance administrators...
More informationTop 10 Data Center Network Switch Considerations
Top 10 Data Center Network Switch Considerations 1 Price/Performance More for Less How will you choose a network solution for your data center to deliver the right blend of performance and cost efficiency?
More informationBUILDING the VIRtUAL enterprise
BUILDING the VIRTUAL ENTERPRISE A Red Hat WHITEPAPER www.redhat.com As an IT shop or business owner, your ability to meet the fluctuating needs of your business while balancing changing priorities, schedules,
More informationWhen, Where & Why to Use NoSQL?
When, Where & Why to Use NoSQL? 1 Big data is becoming a big challenge for enterprises. Many organizations have built environments for transactional data with Relational Database Management Systems (RDBMS),
More informationAn overview of. Mobile Testing. By André Jacobs. A Jacobs
An overview of Mobile Testing By André Jacobs THE RISE AND RISE OF MOBILE 3 The Apple Story A look at the company that arguably has sparked the explosive growth in smart devices and mobile applications
More informationEmbedded in 2010: An End to the Entropy? Matt Asay COO, Canonical
Embedded in 2010: An End to the Entropy? Matt Asay COO, Canonical 1 ...and where smart meets bankruptcy 2 Remember these? 3 The Past ARMv1 ARMv3 ARMv4 Obsolete: Not powerful enough to run Linux. Some very
More informationgoogle SEO UpdatE the RiSE Of NOt provided and hummingbird october 2013
google SEO Update The Rise of Not Provided and Hummingbird October 2013 Lead contributors David Freeman Head of SEO Havas Media UK david.freeman@havasmedia.com Winston Burton VP, Director of SEO Havas
More informationApple Device Management
A COMPREHENSIVE GUIDE Apple Device Management FOR SMALL AND MEDIUM BUSINESSES With a renewed focus on mobile devices in the work environment, Apple has become the device of choice in small and medium businesses.
More informationAs my memory continues to degrade, I rely on technology to remember things for me. They say, everything has its place and everything in its place.
As my memory continues to degrade, I rely on technology to remember things for me. They say, everything has its place and everything in its place. I use Microsoft s OneNote program to write down everything
More informationOutline Key Management CS 239 Computer Security February 9, 2004
Outline Key Management CS 239 Computer Security February 9, 2004 Properties of keys Key management Key servers Certificates Page 1 Page 2 Introduction Properties of Keys It doesn t matter how strong your
More informationModula-2 Legacy Code: Problems and Solutions. Excelsior, LLC
Modula-2 Legacy Code: Problems and Solutions Excelsior, LLC April 28, 2000 Chapter 1 Introduction Back in 1980s, shortly after Modula-2 was introduced, is was called the programming language of the future.
More informationINTRODUCTION TO CLOUD STORAGE
INTRODUCTION TO CLOUD STORAGE GETTING STARTED PAGE 02 Class Overview What You Will Learn WHAT IS THE CLOUD? PAGE 03 Basic Vocabulary Advantages of the Cloud Disadvantages of the Cloud CLOUD STORAGE SERVICES
More informationReactive Programming with RxJS 5
Extracted from: Reactive Programming with RxJS 5 Untangle Your Asynchronous JavaScript Code This PDF file contains pages extracted from Reactive Programming with RxJS 5, published by the Pragmatic Bookshelf.
More informationBYOD Success Kit. Table of Contents. Current state of BYOD in enterprise Checklist for BYOD Success Helpful Pilot Tips
Table of Contents Current state of BYOD in enterprise Checklist for BYOD Success Helpful Pilot Tips 2 Current State of BYOD in the Enterprise Defining BYOD Bring-Your-Own-Device (BYOD): a business practice
More informationTesting NodeJS, REST APIs and MongoDB with UFT January 19, 2016
Testing NodeJS, REST APIs and MongoDB with UFT January 19, 2016 Brought to you by Hosted By Bernard P. Szymczak Ohio Chapter Leader HP Software Education SIG Leader TQA SIG Leader Today s Speakers Ori
More informationPresented By Jason Pinshower Indian Trails Public Library District
Presented By Jason Pinshower Indian Trails Public Library District jpinshower@indiantrailslibrary.org WHY AM I HERE? Choosing between a PC or a Mac can be a tough decision - especially if you don t know
More informationChoices when it comes to your communications infrastructure A BUYER S GUIDE TO IP-BASED SOLUTIONS
Choices when it comes to your communications infrastructure A BUYER S GUIDE TO IP-BASED SOLUTIONS Introduction A small business has many priorities. With so much on your mind, your phone system might be
More informationCOPYRIGHTED MATERIAL. Getting Started with Google Analytics. P a r t
P a r t I Getting Started with Google Analytics As analytics applications go, Google Analytics is probably the easiest (or at least one of the easiest) available in the market today. But don t let the
More information_APP A_541_10/31/06. Appendix A. Backing Up Your Project Files
1-59863-307-4_APP A_541_10/31/06 Appendix A Backing Up Your Project Files At the end of every recording session, I back up my project files. It doesn t matter whether I m running late or whether I m so
More informationMedia-Ready Network Transcript
Media-Ready Network Transcript Hello and welcome to this Cisco on Cisco Seminar. I m Bob Scarbrough, Cisco IT manager on the Cisco on Cisco team. With me today are Sheila Jordan, Vice President of the
More informationSetting Up Your ios Development Environment. For Mac OS X (Mountain Lion) v1.0. By GoNorthWest. 5 February 2013
Setting Up Your ios Development Environment For Mac OS X (Mountain Lion) v1.0 By GoNorthWest 5 February 2013 Setting up the Apple ios development environment, which consists of Xcode and the ios SDK (Software
More informationData Management CS 4720 Mobile Application Development
Data Management Mobile Application Development Desktop Applications What are some common applications you use day-to-day? Browser (Chrome, Firefox, Safari, etc.) Music Player (Spotify, itunes, etc.) Office
More informationVersioned APIs with Phoenix. Elvio Vicosa
Versioned APIs with Phoenix Elvio Vicosa About the author My name is Elvio Vicosa and I am a software developer based in Berlin, Germany. I've been working with software for over 10 years and throughout
More informationThere And Back Again
There And Back Again Databases At Uber Evan Klitzke October 4, 2016 Outline Background MySQL To Postgres Connection Scalability Write Amplification/Replication Miscellaneous Other Things Databases at Uber
More informationMAKING MONEY ON OPENSTACK. Boris
MAKING MONEY ON OPENSTACK Boris Renski b@renski.com @zer0tweets China and Russia are alike! 2 We love gymnastics! 3 We love chess! 4 and we love money! 5 6 When most people think of OpenSt ack, they imagine
More informationExpert Reference Series of White Papers. Virtualization for Newbies
Expert Reference Series of White Papers Virtualization for Newbies 1-800-COURSES www.globalknowledge.com Virtualization for Newbies Steve Baca VCP, VCI, VCAP, Global Knowledge Instructor Introduction Virtualization
More informationThe C-Suite Guide to Mobile Technologies for mhealth Development. Medical Web ExpertsTM
The C-Suite Guide to Mobile Technologies for mhealth Development Medical Web ExpertsTM January 2017 Executive Summary mhealth technologies are forming a more integral part of many healthcare organizations
More informationMobile Technologies. Types of Apps
Mobile Technologies Types of Apps What is mobile? Devices and their capabilities It s about people Fundamentally, mobile refers to the user, and not the device or the application. Barbara Ballard, Designing
More informationCSE 438: Mobile Application Development Lab 2: Virtual Pet App
CSE 438: Mobile Application Development Lab 2: Virtual Pet App Overview In this lab, you will create an app to take care of your very own virtual pets! The app will only have one screen and simple logic,
More informationTHE IMPACT OF MOBILE DEVICES ON INFORMATION SECURITY:
June 2013 Sponsored by Introduction Mobile devices cause ongoing concern for IT teams responsible for information security. Sensitive corporate information can be easily transported and lost, while the
More informationHow Cisco IT Is Accelerating Adoption of IPv6
Cisco IT Case Study How Cisco IT Is Accelerating Adoption of IPv6 Priority projects are IPv6-based public website and end-to-end reference implementation. Cisco IT Case Study / Borderless Networks / IPv6:
More informationKACE GO Mobile App 3.1. Release Notes
KACE GO Mobile App 3.1 Release Notes Table of Contents Quest KACE GO 3.1 Mobile App Release Notes...3 About the KACE GO Mobile App... 3 Capabilities for KACE Systems Management Appliance (K1000) administrators...
More informationHow Real Time Are Your Analytics?
How Real Time Are Your Analytics? Min Xiao Solutions Architect, VoltDB Table of Contents Your Big Data Analytics.... 1 Turning Analytics into Real Time Decisions....2 Bridging the Gap...3 How VoltDB Helps....4
More informationCONSUMERS USE MESSAGING
Every night, President Obama reads 10 letters that were sent to him by UNDERSTAND HOW ordinary citizens. This is a Presidential tradition going back to Thomas Jefferson. Recently, the White House announced
More informationExtreme Java Productivity with Spring Roo and Spring 3.0
Extreme Java Productivity with Spring Roo and Spring 3.0 Rod Johnson Copyright 2007 SpringSource. Copying, publishing or distributing without express written permission is prohibited. Agenda Motivation
More informationExcerpt from. Internet Basics. Jennie L. Phipps
Excerpt from Internet Basics By Jennie L. Phipps Author Acknowledgment Jennie L. Phipps is an independent writer and editor. She writes frequently about the Internet and topics related to publishing both
More informationUXD. using the elements: structure
using the elements: structure defining structure you are here structure essentially defines how users get to a given screen and where they can go when they re done. structure also defines categories of
More informationIntroduction to Intel Boot Loader Development Kit (Intel BLDK) Intel SSG/SSD/UEFI
Introduction to Intel Boot Loader Development Kit (Intel BLDK) Intel SSG/SSD/UEFI Legal Disclaimer INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED,
More informationSD-WAN. Enabling the Enterprise to Overcome Barriers to Digital Transformation. An IDC InfoBrief Sponsored by Comcast
SD-WAN Enabling the Enterprise to Overcome Barriers to Digital Transformation An IDC InfoBrief Sponsored by Comcast SD-WAN Is Emerging as an Important Driver of Business Results The increasing need for
More informationGrow Assistant Ver 4.X
Grow Assistant Ver 4.X Instruction Manual GeekyGrower Products Updated Nov - 2013 Table of Contents Logging in for the first time. 3 Introduction 3 Initial Setup 4 Plant IDs 4 Strains 4 Getting Started
More informationBreakdown of Some Common Website Components and Their Costs.
Breakdown of Some Common Website Components and Their Costs. Breakdown of Some Common Website Components and Their Costs. The cost of a website can vary dramatically based on the specific components included.
More informationIn-class activities: Sep 25, 2017
In-class activities: Sep 25, 2017 Activities and group work this week function the same way as our previous activity. We recommend that you continue working with the same 3-person group. We suggest that
More informationWe used to talk about whether or not we were in the year of mobile but we are actually in the Age of Mobile.
We used to talk about whether or not we were in the year of mobile but we are actually in the Age of Mobile. where we ve come from... 2000-2012: 12x total internet usage vs mobile data usage Source 2013
More informationDay in the Life of an SAP Consultant using IntelliCorp s LiveCompare Software
Day in the Life of an SAP Consultant using IntelliCorp s LiveCompare Software Introduction Consultants use LiveCompare on a daily basis to help them deliver results to their clients more effectively and
More informationI Shopping on mobile / RU
I Shopping on mobile / RU Exploring how people use their smartphones for shopping activities Q3 2016 I About this study Background: Objective: Mobile apps and sites are a vital channel for advertisers
More informationtrevor.bramwell.net Documentation
trevor.bramwell.net Documentation Release Trevor Bramwell April 20, 2015 Contents 1 About Me 1 2 Posts 3 2.1 Field - extract fields from a file..................................... 3 2.2 Distribute Native
More informationMacMost.com (hosted by Gary Rosenzweig)
Note: This discussion is based on MacOS, 10.14.1 (Mojave). Some illustrations may differ when using other versions of macos or OS X. Illustrations are from screenshots on my imac. In this presentation
More informationManual Iphone 5 Unlocked Usa Buy Uk >>>CLICK HERE<<<
Manual Iphone 5 Unlocked Usa Buy Uk Below is a breakdown of the iphone pricing if you buy from Apple. There are a few other retailers that you can buy a new, unlocked or SIM-free iphone from, including
More informationCS 370 The Pseudocode Programming Process D R. M I C H A E L J. R E A L E F A L L
CS 370 The Pseudocode Programming Process D R. M I C H A E L J. R E A L E F A L L 2 0 1 5 Introduction At this point, you are ready to beginning programming at a lower level How do you actually write your
More informationWe know how much time and energy goes into creating a reliable ADS-B feed and very much appreciate the contributions of all who share with us.
Welcome Thank you for sharing your ADS-B data with Plane Finder. We know how much time and energy goes into creating a reliable ADS-B feed and very much appreciate the contributions of all who share with
More informationThere exists a long-running platform rivalry
2.1 Deciding between platforms: ios or Android There exists a long-running platform rivalry between Android and ios. There is an argument that Apple exerts excessive control over the App Store. There is
More informationThe Emerging Data Lake IT Strategy
The Emerging Data Lake IT Strategy An Evolving Approach for Dealing with Big Data & Changing Environments bit.ly/datalake SPEAKERS: Thomas Kelly, Practice Director Cognizant Technology Solutions Sean Martin,
More informationLaunch Store. University
Launch Store University Store Settings In this lesson, you will learn about: Completing your Store Profile Down for maintenance, physical dimensions and SEO settings Display and image settings Time zone,
More informationAtomic Object Grand Rapids, Michigan, USA.
Atomic Object Grand Rapids, Michigan, USA atomicobject.com @atomicobject I m Carl Erickson, co-founder and President of Atomic Object I thought it might be good to give you a little context about my company
More informationRAIFFEISENBANK BULGARIA
RAIFFEISENBANK BULGARIA IT thought leader chooses EMC XtremIO and VMware for groundbreaking VDI project OVERVIEW ESSENTIALS Industry Financial services Company Size Over 3,000 employees, assets of approximately
More informationApplication parallelization for multi-core Android devices
SOFTWARE & SYSTEMS DESIGN Application parallelization for multi-core Android devices Jos van Eijndhoven Vector Fabrics BV The Netherlands http://www.vectorfabrics.com MULTI-CORE PROCESSORS: HERE TO STAY
More informationI Shopping on mobile / KSA
I Shopping on mobile / KSA Exploring how people use their smartphones for shopping activities Q3 2016 I About this study Background: Objective: Mobile apps and sites are a vital channel for advertisers
More informationCUSTOMER SUCCESS STORY GRIMME GRIMME IMPROVES WORKFLOWS AND REDUCES COSTS BY MORE THAN 40% WITH NVIDIA VIRTUAL GPU
GRIMME IMPROVES WORKFLOWS AND REDUCES COSTS BY MORE THAN 40% WITH NVIDIA VIRTUAL GPU Cost efficiences inspire expanded rollout of virtualized workstations and desktops. ABOUT GRIMME FIVE REASONS FOR NVIDIA
More informationYour . A setup guide. Last updated March 7, Kingsford Avenue, Glasgow G44 3EU
fuzzylime WE KNOW DESIGN WEB DESIGN AND CONTENT MANAGEMENT 19 Kingsford Avenue, Glasgow G44 3EU 0141 416 1040 hello@fuzzylime.co.uk www.fuzzylime.co.uk Your email A setup guide Last updated March 7, 2017
More informationOutline. Operating System Security CS 239 Computer Security February 23, Introduction. Server Machines Vs. General Purpose Machines
Outline Operating System Security CS 239 Computer Security February 23, 2004 Introduction Memory protection Interprocess communications protection File protection Page 1 Page 2 Introduction Why Is OS Security
More informationCase study on PhoneGap / Apache Cordova
Chapter 1 Case study on PhoneGap / Apache Cordova 1.1 Introduction to PhoneGap / Apache Cordova PhoneGap is a free and open source framework that allows you to create mobile applications in a cross platform
More information