Case study on PhoneGap / Apache Cordova

Size: px
Start display at page:

Download "Case study on PhoneGap / Apache Cordova"

Transcription

1 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 way by using web technology such as HTML, CSS and JavaScript. PhoneGap makes it possible to access native functionality from within your web application and wraps it within a real native application that you can release in the application stores. With PhoneGap you can access functionality like the camera, the storage system of the device, notifications and many more from within the browser. You might think that some of these things are already possible from within the browser by using the W3C Device API standard. This is true, but these standards were not available yet when PhoneGap was started (2008) and not all the browsers implement the standard at the same time which makes it hard to develop in a cross-platform way. PhoneGap solves this problem by using the existing implementation from the browser or by implementing the standard itself. The ultimate goal of PhoneGap is to cease to exist. PhoneGap was originally created by a Canadian company called Nitobi. In 2011 it got acquired by Adobe and the source code was donated to Apache where it got the name Cordova. The two still live next to each other and they still use the same code base, but Adobe uses PhoneGap as the commercial name for it. 1.2 Creating PhoneGap The development of PhoneGap started in the end of 2008 by some developers at Nitobi. They were developing web applications for clients and noticed that it was hard to develop native smartphone applications for the new operating systems that were popping up. Android had 1

2 CHAPTER 1. CASE STUDY ON PHONEGAP / APACHE CORDOVA 2 released it s first phone a year earlier and the iphone was about two years old. Next to these two platforms a lot of other platforms existed like Windows Mobile, Nokia and Bada. All these platforms have different programming languages or at least different API s, different user interface behavior and some of them have buttons while others don t. Next to the platforms differences there are also differences in the device s performance, screen sizes and resolutions. It s very hard to tackle all these problems in native code since you end up with having a lot of different code bases that your developers have to maintain. If you upgrade your application you have to change it for all these platforms separately. It s especially a problem for smaller companies who would need experts at several languages and platforms. At Nitobi they noticed that all these platforms and devices had one thing in common: a browser. So why not use this browser to create your applications and access the native functionality through this browser? There goal became to create a framework that could make native functions available from within the browser and to have only one code base written in web technology that you could use on every platform. They wanted to create the Adobe AIR for mobile applications, which didn t exist yet at that time. In the IT world it is not only about the development of these products and tools but also about the business model behind it. How are you going to make money with it? At Nitobi they decided to make PhoneGap open source so buying a license on the platform didn t need to be a restriction to start using the platform. They planned to get their money out of training and PhoneGap related things. The development of PhoneGap and its architecture was always closely linked to the business development of the product. You can see three phases in this architecture and business development. During the first phase they were testing things out, trying to create a stable prototype and get feedback on it. In the second phase PhoneGap started to get known in the community and was used a lot for development of applications. In the third and last phase they got acquired by Adobe and had a big boom in users and software quality. The three phases are described in the sections below Phase 1 ( ) Problem definition As said before Nitobi wanted to create a framework that would allow web applications to access native functionality, create native applications out of these web applications and thereby allow cross-platform development.

3 CHAPTER 1. CASE STUDY ON PHONEGAP / APACHE CORDOVA 3 Requirements There most important requirement was that this framework should be cross-platform and allow cross-platform development of applications. This was the problem that they wanted to solve. Next to that it should be possible to access native functionality from within a webkit view, which is actually just a browser class that each platform offers in their API. This is an important requirement since this influences the success of the platform. If you could only use functionality that is already present in the browser itself, why would you use PhoneGap? They chose to support only webkit views because these had the best rendering and most browsers already supported webkit. Their last important requirement was that developers of PhoneGap applications should not need to use native code to create the PhoneGap application. Everything should be possible by using web technology. Quality attributes and tactics These three requirements indicated that portability should be their first quality attribute to focus on. Portability is a variant of modifiability and means that the platform that you develop your solution for is subject to change. This was indeed the case since they wanted their solution to work on ios, Android, Bada and many more. They used several tactics to make sure this quality attribute was met. They used layers to hide information so the upper layer should not be aware of which platform is used in a lower layer. They created an interface that the application developers could use on all platforms and they restricted the communication paths. It is not possible to access the native functionality without going through the PhoneGap layers. Architecture In their architecture we can identify four different layers, as you can see on figure 1.1. The operating system layer. This is the lowest layer of the PhoneGap framework. If you would develop a native application this would be the layer you would work on. It contains the API provided by the manufacturer of the OS. The PhoneGap native layer. To allow the browser to access the native functionality, PhoneGap had to create a bridge between Javascript and the native code, which is partially done in this layer. This layer

4 CHAPTER 1. CASE STUDY ON PHONEGAP / APACHE CORDOVA 4 Figure 1.1: First phase architecture of PhoneGap also contains the webkit view that will run the web application that the developer created. The PhoneGap Javascript layer. This Javascript layer includes parts of the bridge to the native code. It also contains the API that developers will use in their Javascript if they create the PhoneGap application. In case a function from this API was already implemented by the browser view, this layer redirects to this implementation, otherwise it calls one of the native functions in the layer below. The app layer. This upper layer contains the application that an application developer would make. It contains the CSS, HTML and the Javascript that includes the logic. The only layer that is visible for an application developer is the app layer and the interface towards the PhoneGap Javascript layers. All the other layers are hidden for an application developer. This is an implementation of the tactic Hide information. As you can see in figure 1.1 there are different columns in the lowest three layers of this architecture. This is because in these three layers the code is platform specific. The Javascript code for Android for example has a different implementation for certain functions than the

5 CHAPTER 1. CASE STUDY ON PHONEGAP / APACHE CORDOVA 5 JavaScript code for ios. This is because the bridge from Javascript to the native code and the other way around is based on a hack in the browser and this hack is different on each platform. One of the requirements for this phase was that the framework should be crossplatform, which is not totally the case but for a developer it is possible to create applications in a cross-platform way. Business development During this first phase the business development was limited to making the product known to application developers and receiving feedback to test how big the need was. At the beginning of the development of PhoneGap they had some problems with Apple. Although PhoneGap allowed developers to create good quality ios applications, these applications were rejected by the Apple App Store team simply because they were build with PhoneGap and thus they were no native application. The people at Nitobi put a lot of effort in this problem and luckily they were able to convince the people at Apple that they should allow these applications to be released as long as they met the Apple User Interface guidelines. If they shoudn t have been able to solve this problem, it could have killed their whole business. If you claim to be a framework that you can use for cross-platform development, but you can t create applications for one of the largest platforms, your product is worthless. This is a good example of a crucial product factor. Even though PhoneGap was not that big, Nitobi already started with providing some Phone- Gap trainings. Partially to receive feedback about the product but also to make sure that people knew how to use it and created applications with it. It is important that you pamper your early adopters and that you help them as much as you can to create excellent applications with your product. The early adopters are the people that will help you to promote your product with other people and thereby help you to grow quickly. PhoneGap was present at several conferences to make sure developers knew that it was existing. They also participated in some pitch contests and they always had a very good response. They even won the public prize at one of these contests. It really showed that there product was fulfilling an actual need and that they should continue with the development. During this first phase PhoneGap was already available on a lot of platforms including Android, ios, Blackberry and Windows Mobile. This was important since it proved that they were aiming to cover as much platforms as possible. If after one year they had only covered two platforms, people might question there cross-platform abilities which is the main USP (unique selling point) of PhoneGap.

6 CHAPTER 1. CASE STUDY ON PHONEGAP / APACHE CORDOVA Phase 2 ( ) Problem definition During the first phase Nitobi did a lot of work to get PhoneGap known in the developers community. And it worked. A lot of developers started to work with PhoneGap. Since it was only a beta release these developers often found problems that they wanted to solve. This didn t seem to be a problem since the code was open source. Unfortunately, the adaptations to the code made it sometimes impossible to merge this separate and adapted branch with the main branch. After a while there were different versions of the source code circulating. This caused another problem. It was possible that you were working with a specific version and you d discovered a bug. The same bug was fixed in another branch but you couldn t use the fix since your code was different. At that moment you had two options: try to find a fix yourself or port to the different version of PhoneGap. This was not what the people at Nitobi had in mind. They wanted it to be possible to just merge back your code without generating conflicts. If they wanted their product to grow and have a solid contributors base they had to do something about this situation. Requirements It should be possible for developers to add their own extensions to the platform without affecting the PhoneGap platform itself. If this is possible each developer can add the functionality that he wants and share this code with other people that might want the same. Once these extensions are available it should be easy to add them to your application and to upgrade it to a newer version. It should be possible to update a certain part of the internal code of PhoneGap without affecting other code that has nothing to do with it. Quality attributes and tactics PhoneGap needed to include modifiability into their architecture in order to meet these requirements. If they changed their architecture at that moment in a more modifiable one it would be easier to do changes and let other people contribute. To obtain a higher level of modifiability they changed the existing architecture into a more plugin-based architecture. These plugins include the extra functionality an application developer would want to add to some of its applications. They divided the internal architecture in separate components that could be changed without affecting the other ones. For the plugins they used binding at runtime to make it as modifiable as possible.

7 CHAPTER 1. CASE STUDY ON PHONEGAP / APACHE CORDOVA 7 Figure 1.2: First phase architecture of PhoneGap s internal structure Architecture PhoneGap had to change the PhoneGap native and the PhoneGap Javascript layer in order to make the architecture more plugin-based. Especially in the Javascript layer the code was often a mess and there were no strict components as you can see in figure 1.2. They changed this and made separate components with different functionality and responsibilities such as camera, notification and media. On the other hand they made it possible to include the external plugins such as a Facebook or PayPal plugin. This is visualized in figure 1.3. In the general architecture the plugins were added to the PhoneGap Javascript layer as well as to the PhoneGap native layer, as you can see on figure 1.4. This is because a plugin always consists of a native part that executes native code and a Javascript part that provides the interface towards the application and the link to the native code to be executed. This also means that a plugin is not cross-platform and that both parts have to be developed for each platform. Business development During this second phase the first version of PhoneGap was released which included the pluginbased architecture. From now on PhoneGap was out of beta. This of course influenced the amount of downloads which reached over downloads in total with a big increase after the release of PhoneGap 1.0.

8 CHAPTER 1. CASE STUDY ON PHONEGAP / APACHE CORDOVA 8 Figure 1.3: Second phase architecture of PhoneGap s internal structure Figure 1.4: Second phase architecture of PhoneGap

9 CHAPTER 1. CASE STUDY ON PHONEGAP / APACHE CORDOVA 9 Nitobi still organized training for developers but next to that they also organized the first PhoneGap Day. On this day PhoneGap developers could meet the application developers and they gave several sessions about using PhoneGap and how it works. PhoneGap was included in Dreamweaver which made it much easier to develop PhoneGap applications. This also showed that Adobe believed in PhoneGap and that they thought that the community would keep growing Phase 3 ( ) The third phase is dominated by the acquisition of Nitobi (and thus PhoneGap) by Adobe. This didn t only influence the business side of the project, but the architecture as well. Although the actual acquisition happened in October 2011, the negotiations were started before this date and changes were already manifesting them from the beginning of Problem definition PhoneGap kept growing as the 1.X releases offered more and more functionality. This meant that more and more developers were thinking about creating applications with PhoneGap. These could be highly experienced developers who quickly found their way in the PhoneGap community. But there were lots of other developers too, who couldn t find the information they were looking for in the mess of PhoneGap documentation. At the beginning of the third phase, there was not that much documentation. There was a Google group which contained questions and (sometimes) answers on these questions, a wiki page with (often outdated) information and a very minimal page of API documentation (also often outdated). If you wanted to know how a function worked, the best way to look was in the PhoneGap code itself. Documentation was not their first priority and you could clearly see this. This documentation was nevertheless very important, since some API s were not consistent between the different OS platforms. As you could see on figure 1.4, there is no unified API layer towards the application developer, but each platform has its own API. This introduced inconsistencies between the platforms, for example because some platform requested an extra parameter when calling a certain function. Since the documentation was not up to date, it was sometimes very hard to find out which parameter you actually had to add. Because of these problems, developers often had to add extra if conditions to check for the platform in order to keep their code cross-platform. Their last major problem in this phase was the complicated build process, which already started when creating a new project. It was very important that you did this in the right way, which was often not the most obvious one. If you didn t create the project in the right

10 CHAPTER 1. CASE STUDY ON PHONEGAP / APACHE CORDOVA 10 way, you couldn t build your project correctly and you had to create a new one in the right way. The build process itself was not that easy too and was different for each platform. These three problems led to people stopping to use PhoneGap for their development. Besides that, chances existed that their reputation would be affected by these problems, since bad comments travel faster than good ones. They had to tackle this immediately, but therefore they needed extra people who wanted to do this. At first some members of the community started on improving the documentation, but with the acquisition by Adobe they received enough resources to overcome these problems. Requirements In order to fix these problems they had to make the workflow of creating, developing and building a PhoneGap application much easier. They had to lower the learning curve so newbies to PhoneGap could easily get started with it and easily find the right information. Therefore they had to improve the documentation, include tutorials, structure the wiki and integrate with different tools that could make the development of applications easier (for example compatible GUI frameworks). Of course they had to make sure that the API was consistent between the different platforms. Quality attributes and tactics These different requirements indicated that usability was their most important quality attribute for this phase. Usability is only partially related to the architecture. A lot of the usability resides in other things such as documentation, information or workflow. To improve the build process and to create the consistent API, they had to do changes to the architecture. Architecture Before PhoneGap entered this third phase of their architecture, the PhoneGap code looked like figure 1.3. They had internal modules and external plugins. This meant that it was not possible to exclude the camera functionality from your project if you didn t use it. But it also implied that internal components were called in a different way than the plugins, which was sometimes confusing for developers. Therefore the PhoneGap team decided that they would make a plugin out of every functionality that can stand on it s own such as the camera or the accelerometer. There still is a small PhoneGap code base which makes sure that all the plugins can communicate with the developer s application and that crosses the bridge to the native code. You can see the new structure in figure 1.6.

11 CHAPTER 1. CASE STUDY ON PHONEGAP / APACHE CORDOVA 11 Figure 1.5: Third phase architecture of PhoneGap Figure 1.6: Third phase architecture of PhoneGap s internal structure

12 CHAPTER 1. CASE STUDY ON PHONEGAP / APACHE CORDOVA 12 Their architecture changed as well. In the architecture shown in figure 1.4 you still see the different platform specific API s in the PhoneGap Javascript layer. During this third phase the PhoneGap team added a component that includes the API towards the developer and that is not platform specific, as you can see in figure 1.5. The PhoneGap team did a good job at improving the build process. This is not really a part of the architecture, but they had to do some small architectural changes in order to make this possible. They now offer an automated cloud service that packages your HTML, Javascript and CSS code into a native PhoneGap application for all the different platforms. Unfortunately you can only use this service if you use the plugins supported by PhoneGap build and it can not be used when you have your own native parts. Business development As mentioned at the start of this section, the third phase was highly dominated by the acquisition of Nitobi by Adobe. This acquisition was a big step for Nitobi since they are no longer an independent company, but should follow Adobe s wishes now. This is not totally true for the PhoneGap project since the source code was donated to the Apache Cordova project. This allows Cordova to move in another direction of PhoneGap if this should be necessary. In the meantime, Adobe PhoneGap 2.0 was released, which included the new architecture with the unified Javascript layer. With this second release they reached over downloads a month. They also changed the release cycle to a fixed date each month and 10 releases over the year (there is one release missing around New year and one during the summer since a lot of developers are on holiday in these periods). Now it is very clear for developers of applications that they will have to update their applications each month to the newest PhoneGap version. In 2012, there was not only a PhoneGap day in the USA, but also in Europe. This shows the interest of Adobe PhoneGap in the European region. 1.3 Remarks Now that we took a look at the evolution of the PhoneGap architecture, there are some remarks I would like to add Avoid frequent changes of the architecture Of course it is possible that your architecture is subject to change over the years. This doesn t have to be a problem if this is needed to make your product better. But it is important that

13 CHAPTER 1. CASE STUDY ON PHONEGAP / APACHE CORDOVA 13 you limit the amount of changes that affect the developers work, such as API changes. If a developer has to change its code often because your product changed something to the API or to something else, it can be frustrating. PhoneGap changed several times in a way that developers had to refactor their code. The first change was during phase two when they merged the different PhoneGap files in one file to include in your project. This introduced several SVN conflicts, which are always frustrating. When they changed their plugin structure, every plugin had to be rewritten in order to cope with the new plugin API. Sometimes it was not possible to use a plugin since it still used the old plugin API and you already used the new one. The different API changes in general often introduced bugs that were hard to find since Javascript will not give an error when an argument or function is not found. It also worsened the documentation problem since some API s changed so often that is was hard to keep track in the documentation. The last major refactor was when PhoneGap was donated to the Apache Cordova project and the name space was changed from PhoneGap to Cordova Find partners that support you For a product like PhoneGap, it is very important that you find big partners that support you and that help you to integrate their products or services within yours. People from RIM (Blackberry), Google, Intel and IBM are contributing to the Cordova project in order to improve the PhoneGap applications developed for their platforms. PhoneGap also gets help from people at Facebook to improve the quality of the Facebook plugin. The most important partner of PhoneGap is of course Adobe itself, which was already a partner from the beginning There is no silver bullet PhoneGap or Apache Cordova is not a silver bullet every developer should use to create mobile applications. The advantages of using PhoneGap are that you can create an application in no time, you don t need to learn a native language but you can use web languages and you can use PhoneGap build to automatically build an application for all platforms. On the other side Javascript is hard to debug on mobile applications, the performance is not native since you pass an extra layer and you don t have a real native experience (although you can do a really good job at simulating it). For every application you would like to create you should really think about what is important for that application and your company. Is the native experience and the performance more important that a minimal cost? Then go for a native application.

HTML5 for mobile development.

HTML5 for mobile development. HTML5 for mobile development Txus Ordorika @txusinho @ludei HTML5 for development (I) HTML5 to be the silver bullet of development Low entrance - barrier Runs over VM (write once, run everywhere) ECMA-262

More information

Personal Health Assistant: Final Report Prepared by K. Morillo, J. Redway, and I. Smyrnow Version Date April 29, 2010 Personal Health Assistant

Personal Health Assistant: Final Report Prepared by K. Morillo, J. Redway, and I. Smyrnow Version Date April 29, 2010 Personal Health Assistant Personal Health Assistant Ishmael Smyrnow Kevin Morillo James Redway CSE 293 Final Report Table of Contents 0... 3 1...General Overview... 3 1.1 Introduction... 3 1.2 Goal...3 1.3 Overview... 3 2... Server

More information

Recipes. Marketing For Bloggers. List Building, Traffic, Money & More. A Free Guide by The Social Ms Page! 1 of! 24

Recipes.  Marketing For Bloggers. List Building, Traffic, Money & More. A Free Guide by The Social Ms Page! 1 of! 24 16 Recipes Email Marketing For Bloggers List Building, Traffic, Money & More A Free Guide by The Social Ms Page 1 of 24 Brought to you by: Jonathan Gebauer, Susanna Gebauer INTRODUCTION Email Marketing

More information

How I added almost 1,000 subscribers with a giveaway. Ellen Finkelstein

How I added almost 1,000 subscribers with a giveaway. Ellen Finkelstein How I added almost 1,000 subscribers with a giveaway Ellen Finkelstein www.changetheworldmarketing.com Here s what we ll cover My results The BIG problem with giveaways that you need to overcome The software

More information

Beginners Guide to. Sencha Touch. Joshua Morony

Beginners Guide to. Sencha Touch. Joshua Morony Beginners Guide to Sencha Touch Joshua Morony Contents Contents 1 Preface.......................... 4 1 Why Sencha Touch? 8 2 Know Your Options 21 3 How Sencha Touch Actually Works 22 4 Setting up Your

More information

Considerations for Mobilizing your Lotus Notes Applications

Considerations 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 information

The 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 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 information

Enterprise 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 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 information

WebSphere Puts Business In Motion. Put People In Motion With Mobile Apps

WebSphere Puts Business In Motion. Put People In Motion With Mobile Apps WebSphere Puts Business In Motion Put People In Motion With Mobile Apps Use Mobile Apps To Create New Revenue Opportunities A clothing store increases sales through personalized offers Customers can scan

More information

California Polytechnic University San Luis Obispo. CSC Senior Project. Formal Report. Ciceroni ios App

California Polytechnic University San Luis Obispo. CSC Senior Project. Formal Report. Ciceroni ios App California Polytechnic University San Luis Obispo CSC Senior Project Formal Report Ciceroni ios App Abstract The Ciceroni app for ios is a crowdsourcing tour app that allows users to create and share tours

More information

Think like an Elm developer

Think 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 information

Atomic Object Grand Rapids, Michigan, USA.

Atomic 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 information

Learning to Provide Modern Solutions

Learning to Provide Modern Solutions 1 Learning to Provide Modern Solutions Over the course of this book, you will learn to enhance your existing applications to modernize the output of the system. To do this, we ll take advantage of the

More information

Mobile & More: Preparing for the Latest Design Trends

Mobile & 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 information

Review of Mobile Web Application Frameworks

Review of Mobile Web Application Frameworks Review of Mobile Web Application Frameworks Article Number: 909 Rating: Unrated Last Updated: Mon, May 9, 2011 at 10:57 AM If you are serious about getting your website or web application mobile-friendly,

More information

Mastering Mobile Web with 8 Key Rules. Mastering Mobile Web with 8 Key Rules

Mastering 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 information

Exploring Cross-platform Tools For Mobile Development: Lessons Learned. mlearning: Tips and Techniques for Development and Implementation

Exploring Cross-platform Tools For Mobile Development: Lessons Learned. mlearning: Tips and Techniques for Development and Implementation mlearning: Tips and Techniques for Development and Implementation November 14 & 15, 2013 201 Exploring Cross-platform Tools For Mobile Development: Lessons Learned Perry Bennett Exploring Cross-platform

More information

Photos, 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 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 information

By Stephen Cavell, Kerry Ellwanger, and Jack Livingston

By Stephen Cavell, Kerry Ellwanger, and Jack Livingston By Stephen Cavell, Kerry Ellwanger, and Jack Livingston History PhoneGap created in 2009 by startup Nitobi. Open source way to access the native environment through an embedded WebView in a native app.

More information

Assignment 8 rekindl Local Community (1:30PM) Meet The Team. Ryan C. Amanda L. Sara V. James C.

Assignment 8 rekindl Local Community (1:30PM) Meet The Team. Ryan C. Amanda L. Sara V. James C. Hi-Fi Prototype Assignment 8 rekindl Local Community (1:30PM) Meet The Team Ryan C. Amanda L. Sara V. James C. Introduction Mission Statement: Reignite faded friendships. Problem Overview: Busy schedules

More information

Mobile Technologies. Types of Apps

Mobile 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 information

Present and Future of the RhoMobile platform. Migrating legacy applications, Node.js on mobile devices right now and more

Present and Future of the RhoMobile platform. Migrating legacy applications, Node.js on mobile devices right now and more Present and Future of the RhoMobile platform Migrating legacy applications, Node.js on mobile devices right now and more Key facts about RhoMobile and Tau 2008 2011 2014 2015 2016 RhoMobile founded RhoMobile

More information

Determining the Best Approach

Determining 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 information

Mobile Development June 2015, TEIATH, Greece

Mobile Development June 2015, TEIATH, Greece Mobile Development June 2015, TEIATH, Greece Presentation Overview 1. Introduction 2. Mobile Application Development 3. Cordova / Phonegap 4. Development Framework 5. Examples 1. INTRODUCTION Introduction

More information

Chapter 2 Web Development Overview

Chapter 2 Web Development Overview Chapter 2 Web Development Overview Presented by Thomas Powell Slides adopted from HTML & XHTML: The Complete Reference, 4th Edition 2003 Thomas A. Powell Five Pillars of Sites Web sites have five aspects

More information

AirBespoke Inventory Tracking System

AirBespoke Inventory Tracking System Colorado School of Mines Field Session AirBespoke Inventory Tracking System Client: Kylen McClintock Written by: Peter Palumbo, Kyle Thistlewood, Nhan Tran, Minh Vu June 22, 2016 Contents 1 Introduction

More information

Choosing the web s future. Peter-Paul Koch Van Lanschot, 9 February 2017

Choosing the web s future. Peter-Paul Koch   Van Lanschot, 9 February 2017 Choosing the web s future Peter-Paul Koch http://quirksmode.org http://twitter.com/ppk Van Lanschot, 9 February 2017 Four problems 1. Web developers want to emulate native apps, which I think is not possible

More information

Sencha 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 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 information

Mobile Programming. Two Scenarios Web sites, like Tuubi where you read/write/download/ upload material

Mobile Programming. Two Scenarios Web sites, like Tuubi where you read/write/download/ upload material Mobile Programming 1 Two Scenarios Web sites, like Tuubi where you read/write/download/ upload material Web Services/Sites, like Foursquare where location, device camera, etc and local processing make

More information

Clickbank Domination Presents. A case study by Devin Zander. A look into how absolutely easy internet marketing is. Money Mindset Page 1

Clickbank Domination Presents. A case study by Devin Zander. A look into how absolutely easy internet marketing is. Money Mindset Page 1 Presents A case study by Devin Zander A look into how absolutely easy internet marketing is. Money Mindset Page 1 Hey guys! Quick into I m Devin Zander and today I ve got something everybody loves! Me

More information

Software Architecture Documentation for the JRC MYGEOSS app for Invasive Species project

Software Architecture Documentation for the JRC MYGEOSS app for Invasive Species project Software Architecture Documentation for the JRC MYGEOSS app for Invasive Species project 2015.3724 Table of Contents 1 Architecture View... 2 2 Application... 3 2.1 Technologies Used... 3 2.1.1 Apache

More information

Building mobile app using Cordova and AngularJS, common practices. Goran Kopevski

Building mobile app using Cordova and AngularJS, common practices. Goran Kopevski Building mobile app using Cordova and AngularJS, common practices Goran Kopevski Agenda What is cordova? How to choose proper JS framework Building mobile app using Cordova and AngularJS Common fails,

More information

There are two main workflows for working with Cordova projects, Web focused and Platform focused.

There are two main workflows for working with Cordova projects, Web focused and Platform focused. Cordova Page 1 Getting Started Monday, 24 March 2014 7:35 PM Cordova as a.net Dev What is Cordova - Cordova is the Apache Open Source platform that was the result of the PhoneGap creators (Nitobi/Adobe)

More information

Luckily, our enterprise had most of the back-end (services, middleware, business logic) already.

Luckily, our enterprise had most of the back-end (services, middleware, business logic) already. 2 3 4 The point here is that for real business applications, there is a connected back-end for services. The mobile part of the app is just a presentation layer that is unique for the mobile environment.

More information

Polyratings Website Update

Polyratings Website Update Polyratings Website Update Senior Project Spring 2016 Cody Sears Connor Krier Anil Thattayathu Outline Overview 2 Project Beginnings 2 Key Maintenance Issues 2 Project Decision 2 Research 4 Customer Survey

More information

PhoneGap. Andrew Lunny, Adobe. Monday, 23 July, 12

PhoneGap. Andrew Lunny, Adobe. Monday, 23 July, 12 PhoneGap Andrew Lunny, Adobe Me @alunny Computer Scientist PhoneGap Build Nitobi Software Adobe Systems Author Me @alunny Computer Scientist PhoneGap Build Nitobi Software Apache Cordova Adobe Systems

More information

The SmartWithFood app, for food to suit your needs

The SmartWithFood app, for food to suit your needs The SmartWithFood app, for food to suit your needs The project Are you a vegetarian or vegan? Are you looking for gluten-free or lactose-free products? Or do you just want to quickly and easily find the

More information

THINGS YOU NEED TO KNOW ABOUT USER DOCUMENTATION DOCUMENTATION BEST PRACTICES

THINGS YOU NEED TO KNOW ABOUT USER DOCUMENTATION DOCUMENTATION BEST PRACTICES 5 THINGS YOU NEED TO KNOW ABOUT USER DOCUMENTATION DOCUMENTATION BEST PRACTICES THIS E-BOOK IS DIVIDED INTO 5 PARTS: 1. WHY YOU NEED TO KNOW YOUR READER 2. A USER MANUAL OR A USER GUIDE WHAT S THE DIFFERENCE?

More information

Web Hosting. Important features to consider

Web Hosting. Important features to consider Web Hosting Important features to consider Amount of Storage When choosing your web hosting, one of your primary concerns will obviously be How much data can I store? For most small and medium web sites,

More information

Team : Let s Do This CS147 Assignment 7 (Low-fi Prototype) Report

Team : Let s Do This CS147 Assignment 7 (Low-fi Prototype) Report Team : Let s Do This CS147 Assignment 7 (Low-fi Prototype) Report 1. Title, each team member s name & role Title: Let s Do This Roles: Divya - Developer. Eric - Developer, manager. Sami - User testing,

More information

How HomeAway uses Node.js to Rev Operations to Scale and Tame Acquisition Woes

How HomeAway uses Node.js to Rev Operations to Scale and Tame Acquisition Woes How HomeAway uses Node.js to Rev Operations to Scale and Tame Acquisition Woes HomeAway acquired several smaller vacation rental companies and was itself acquired by Expedia. Through it all, were the common,

More information

National Health Service

National Health Service National Health Service How one of the world s largest health care providers chose Ionic to boost worker productivity and agility ionicframework.com/resources/case-studies Customer Spotlight national health

More information

B r o w s e r s u p p o r t

B r o w s e r s u p p o r t A Browser Support Since writing this book, much has changed in the browser market. The Chromium project, which the Chrome browser is based on, stopped using WebKit and created their own fork, called Blink.

More information

Disclaimer: This e-book doesn t tend to express hatred against any smartphone company or operating system. We believe that every company holds a

Disclaimer: This e-book doesn t tend to express hatred against any smartphone company or operating system. We believe that every company holds a Disclaimer: This e-book doesn t tend to express hatred against any smartphone company or operating system. We believe that every company holds a crucial position in the market. The content in the post

More information

Strong signs your website needs a professional redesign

Strong signs your website needs a professional redesign Strong signs your website needs a professional redesign Think - when was the last time that your business website was updated? Better yet, when was the last time you looked at your website? When the Internet

More information

COMPUTING FUNDAMENTALS I

COMPUTING FUNDAMENTALS I FALL 2017 / COMPUTER SCIENCE 105 COMPUTING FUNDAMENTALS I DAY 2 27 SEPTEMBER 2017 COURSE ADMIN COURSE ADMIN NOTECARDS - ATTENDANCE & FEEDBACK Name Student ID One of: What did you learn or find most interesting?

More information

How APEXBlogs was built

How 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 information

How a Global Insurance Provider in Japan uses BlackBerry UEM to Secure, Protect and Connect its Mobile Workforce

How a Global Insurance Provider in Japan uses BlackBerry UEM to Secure, Protect and Connect its Mobile Workforce How a Global Insurance Provider in Japan uses BlackBerry UEM to Secure, Protect and Connect its Mobile Workforce At a Glance Aegon Sony Life Insurance Company (ASLIC), a joint venture between Sony Life

More information

17655: Discussion: The New z/os Interface for the Touch Generation

17655: Discussion: The New z/os Interface for the Touch Generation 17655: Discussion: The New z/os Interface for the Touch Generation Thursday, August 13, 2015: 12:30 PM-1:30 PM Europe 2 (Walt Disney World Dolphin ) Speaker: Geoff Smith(IBM Corporation) 1 Trademarks The

More information

Multi-platform Mobile App. Development with Apache Cordova

Multi-platform Mobile App. Development with Apache Cordova Multi-platform Mobile App. Development with Apache Cordova MTAT.03.262 2017 Fall Jakob Mass jakob.mass@ut.ee 27.10.2017 MTAT.03.262 Introduction Fragmented market Developers have limited resources Platform

More information

What is Standard APEX? TOOLBOX FLAT DESIGN CARTOON PEOPLE

What is Standard APEX? TOOLBOX FLAT DESIGN CARTOON PEOPLE What is Standard APEX? TOOLBOX FLAT DESIGN CARTOON PEOPLE About me Freelancer since 2010 Consulting and development Oracle databases APEX BI Blog: APEX-AT-WORK Twitter: @tobias_arnhold - Oracle ACE Associate

More information

Introduction to Internet Applications

Introduction to Internet Applications to Internet Applications Internet Applications, ID1354 1 / 36 Contents 2 / 36 Section 3 / 36 Local Application We are familiar with an architecture where the entire application resides on the same computer.

More information

Usability Testing Review

Usability Testing Review Usability Testing Summary Usability Testing Review Alexis Anand, Katrina Ezis, Ma Shixuan, Cynthia Zhang CSE 440 Section AD All of our usability tests were conducted with students from Computer Science

More information

Is this a known issue? Seems to affect only recurring events. I have some of them and all are shifted. Non-recurring events show properly.

Is this a known issue? Seems to affect only recurring events. I have some of them and all are shifted. Non-recurring events show properly. Wrong time on recurring google calendar events Posted by AraldoL - 2014/01/11 06:21 Hello, using the latest stable Rainlendar Pro 2.12 I had some issues: After every installation on my two computers it

More information

THOMAS LATOZA SWE 621 FALL 2018 DESIGN ECOSYSTEMS

THOMAS LATOZA SWE 621 FALL 2018 DESIGN ECOSYSTEMS THOMAS LATOZA SWE 621 FALL 2018 DESIGN ECOSYSTEMS LOGISTICS HW5 due today Project presentation on 12/6 Review for final on 12/6 2 EXAMPLE: NPM https://twitter.com/garybernhardt/status/1067111872225136640

More information

What Mobile Development Model is Right for You?

What 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 information

uplift - Interactive Prototype #2

uplift - Interactive Prototype #2 uplift - Interactive Prototype #2 Daniel Kitt (Project Manager) Alisa Yamanaka (Documentation) Haochen Wei (Usability) Yuna Shim (Design) Jared Jones (Development) 1. Problem description People are generally

More information

Photoshop World 2018

Photoshop World 2018 Photoshop World 2018 Lightroom and the Cloud: The Lightroom CC Workflow with Rob Sylvan Lightroom CC gives you access to your growing photo library across all your devices, so you can keep creating no

More information

Responsive Web Design Discover, Consider, Decide

Responsive 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 information

Chapter 1 Introduction

Chapter 1 Introduction Chapter 1 Introduction Why I Am Writing This: Why I am I writing a set of tutorials on compilers and how to build them? Well, the idea goes back several years ago when Rapid-Q, one of the best free BASIC

More information

Choices 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 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 information

New Perspectives On HTML, CSS, And Dynamic HTML Ebooks Free

New Perspectives On HTML, CSS, And Dynamic HTML Ebooks Free New Perspectives On HTML, CSS, And Dynamic HTML Ebooks Free Part of the New Perspectives Series, this thorough, engaging includes everything readers need to learn to create simple to complex Web sites

More information

Media-Ready Network Transcript

Media-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 information

CS Equalizing Society - Assignment 8. Interactive Hi-fi Prototype

CS Equalizing Society - Assignment 8. Interactive Hi-fi Prototype CS 147 - Equalizing Society - Assignment 8 Interactive Hi-fi Prototype Crystal Escolero - Design and Product Management Jessica Guo - Development and User Testing Trevor Rex - Development and User Testing

More information

App Development. Quick Guides for Masterminds. J.D Gauchat Cover Illustration by Patrice Garden

App Development. Quick Guides for Masterminds. J.D Gauchat   Cover Illustration by Patrice Garden App Development Quick Guides for Masterminds J.D Gauchat www.jdgauchat.com Cover Illustration by Patrice Garden www.smartcreativz.com Quick Guides for Masterminds Copyright 2018 by John D Gauchat All Rights

More information

CSS JavaScript General Implementation Preloading Preloading in the Design Thinking Process Preloading in the Summary View Android UI Design Design

CSS JavaScript General Implementation Preloading Preloading in the Design Thinking Process Preloading in the Summary View Android UI Design Design Table of Contents Introduction Purpose Scope Overview Design Thinking Process Description Empathy Define Ideate Prototype Test Design Thinking Requirement Analysis Empathy Define Ideate Prototype Test

More information

Introduction to List Building. Introduction to List Building

Introduction to  List Building. Introduction to  List Building Introduction to Email List Building Introduction to Email List Building 1 Table of Contents Introduction... 3 What is email list building?... 5 Permission-based email marketing vs. spam...6 How to build

More information

Memorandum Participants Method

Memorandum Participants Method Memorandum To: Elizabeth Pass, Associate Professor, School of Writing, Rhetoric and Technical Communication From: Andrew Carnes, WRTC 456 Section 1[ADC] Date: February 2, 2016 Re: Project 1 Competitor

More information

Secrets of Profitable Freelance Writing

Secrets of Profitable Freelance Writing Secrets of Profitable Freelance Writing Proven Strategies for Finding High Paying Writing Jobs Online Nathan Segal Cover by Nathan Segal Editing Precision Proofreading Nathan Segal 2014 Secrets of Profitable

More information

How Rust views tradeoffs. Steve Klabnik

How Rust views tradeoffs. Steve Klabnik How Rust views tradeoffs Steve Klabnik 03.04.2019 What is a tradeoff? Bending the Curve Overview Design is about values Case Studies BDFL vs Design By Committee Stability Without Stagnation Acceptable

More information

The RASTA Framework. Joel Becker October 3, 2001

The RASTA Framework. Joel Becker October 3, 2001 The RASTA Framework Joel Becker October 3, 2001 Abstract RASTA is an framework for describing tasks on a computer system. It is well known that casual and non-expert users prefer to be guided through tasks

More information

Day 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 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 information

Life, the Universe, and CSS Tests XML Prague 2018

Life, the Universe, and CSS Tests XML Prague 2018 It turns out that the answer to the ultimate question of life, the Universe, and CSS Tests isn t a number. It is, in fact, multiple numbers. It is the answers to: How many test results are correct? How

More information

Website Optimizer. Before we start building a website, it s good practice to think about the purpose, your target

Website Optimizer. Before we start building a website, it s good practice to think about the purpose, your target Website Optimizer Before we start building a website, it s good practice to think about the purpose, your target audience, what you want to have on the website, and your expectations. For this purpose

More information

$540+ GST Paid Annually. Professional Website Hosting Service HOSTING:: WHAT YOU GET WORDPRESS:: THEME + PLUG-IN UPDATES

$540+ GST Paid Annually. Professional Website Hosting Service HOSTING:: WHAT YOU GET WORDPRESS:: THEME + PLUG-IN UPDATES Professional Website Hosting Service HOSTING:: WHAT YOU GET Where you host your website is an extremely important decision to make, if you choose simply on price, you may be making a huge mistake. We encourage

More information

Flow. Streamlining your creative process so you can pursue your passions. Hi-Fidelity Prototype Report

Flow. Streamlining your creative process so you can pursue your passions. Hi-Fidelity Prototype Report Flow Streamlining your creative process so you can pursue your passions. Problem and Solution Overview: Hi-Fidelity Prototype Report Genie Hyatt: Team Leader and Documentation Trijeet Mukhopadhyay: Designer

More information

Heuristic Evaluation of igetyou

Heuristic Evaluation of igetyou Heuristic Evaluation of igetyou 1. Problem i get you is a social platform for people to share their own, or read and respond to others stories, with the goal of creating more understanding about living

More information

Tools for Mobile Web Eclipse Day Paul Beusterien Symbian Foundation August 26, 2010

Tools for Mobile Web Eclipse Day Paul Beusterien Symbian Foundation August 26, 2010 Tools for Mobile Web Eclipse Day 2010 Paul Beusterien Symbian Foundation August 26, 2010 Tools for Mobile Web Agenda Why TMW? What does TMW do? How is TMW made? Demo Future Directions Copyright 2010 Symbian

More information

CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application

CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application BACKBONE.JS Sencha Touch CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application A RapidValue Solutions Whitepaper Author: Pooja Prasad, Technical Lead, RapidValue Solutions Contents Executive

More information

Lehigh Walking Wizard Final Report Steven Costa & Zhi Huang

Lehigh Walking Wizard Final Report Steven Costa & Zhi Huang Lehigh Walking Wizard Final Report Steven Costa & Zhi Huang Table of Contents I. Executive Summary II. Introduction & Motivation a. What is the Problem? b. Why is it interesting/important? c. How do you

More information

m-powered : A practical application of the iseries Developer Roadmap

m-powered : A practical application of the iseries Developer Roadmap m-powered : A practical application of the iseries Developer Roadmap How mrc modernized and reinvented its mrc-productivity Series as the fully portable, Java-based m-power and how you can do it for your

More information

Main challenges for a SAS programmer stepping in SAS developer s shoes

Main challenges for a SAS programmer stepping in SAS developer s shoes Paper AD15 Main challenges for a SAS programmer stepping in SAS developer s shoes Sebastien Jolivet, Novartis Pharma AG, Basel, Switzerland ABSTRACT Whether you work for a large pharma or a local CRO,

More information

Changing The User Agent String In Safari User Guide For Web Developers

Changing The User Agent String In Safari User Guide For Web Developers Changing The User Agent String In Safari User Guide For Web Developers If you wish to simulate another type of browser by changing the User Agent or UA String in the Safari web browser for Windows or Mac

More information

What Is React Native?

What Is React Native? CHAPTER 1 What Is React Native? React Native is a JavaScript framework for writing real, natively rendering mobile applications for ios and Android. It s based on React, Facebook s JavaScript library for

More information

Certified Cordova Developer VS-1124

Certified Cordova Developer VS-1124 VS-1124 Certified Cordova Developer Certification Code VS-1124 Vskills certification for Cordova Developer assesses the candidate as per the company s need for developing mobile applications which work

More information

The official TYPO3 partner program

The official TYPO3 partner program The official TYPO3 partner program Table of contents Partner Program... 4 Separate Yourself From The Competition... 4 Be Successful - Together... 4 Unique Benefits... 6 Partner Ranking In A Nutshell...

More information

Portfolio. Mihai Marin

Portfolio. Mihai Marin Portfolio Mihai Marin Case Study No. 1 AXA Insurance - Travel Insurance: Redesign Quote & Buy Journey The Brief As a result of the Travel Quote & Buy journey not being fully mobile optimised, it was becoming

More information

Due on: May 12, Team Members: Arpan Bhattacharya. Collin Breslin. Thkeya Smith. INFO (Spring 2013): Human-Computer Interaction

Due on: May 12, Team Members: Arpan Bhattacharya. Collin Breslin. Thkeya Smith. INFO (Spring 2013): Human-Computer Interaction Week 6 Assignment: Heuristic Evaluation of Due on: May 12 2013 Team Members: Arpan Bhattacharya Collin Breslin Thkeya Smith INFO 608-902 (Spring 2013): Human-Computer Interaction Group 1 HE Process Overview

More information

Designing for the Mobile Web Lesson 4: Native Apps

Designing for the Mobile Web Lesson 4: Native Apps Designing for the Mobile Web Lesson 4: Native Apps Michael Slater, CEO Andrew DesChenes, Dir. Services course-support@webvanta.com 888.670.6793 www.webvanta.com Welcome! Four sessions 1: The Mobile Landscape

More information

Do you really mean business in LBS?

Do you really mean business in LBS? Do you really mean business in LBS? Galileo Application Days - Brussels, 3 March 2010 Laurent De Hauwere, Managing Partner PTOLEMUS is named after Ptolemy, the geographer who created the first map of the

More information

User Guide. Android x86 Modified System. Sponsor: Huan Ren. Compiled by: Zachary Bair, Taronish Daruwalla, Joshua Duong, and Anthony Nguyen

User Guide. Android x86 Modified System. Sponsor: Huan Ren. Compiled by: Zachary Bair, Taronish Daruwalla, Joshua Duong, and Anthony Nguyen User Guide Android x86 Modified System Sponsor: Huan Ren Compiled by: Zachary Bair, Taronish Daruwalla, Joshua Duong, and Anthony Nguyen Table of Contents 1. What is Android x86? 2. How to get Android

More information

1: Introduction to Object (1)

1: Introduction to Object (1) 1: Introduction to Object (1) 김동원 2003.01.20 Overview (1) The progress of abstraction Smalltalk Class & Object Interface The hidden implementation Reusing the implementation Inheritance: Reusing the interface

More information

The goal of this book is to teach you how to use Adobe Integrated

The goal of this book is to teach you how to use Adobe Integrated Clearing the AIR The goal of this book is to teach you how to use Adobe Integrated Runtime (AIR) to create desktop applications. You can use JavaScript or ActionScript to develop AIR applications, and

More information

The plural of Chromium is Chromia. Peter-Paul Koch Mobilism, 27 March 2015

The plural of Chromium is Chromia. Peter-Paul Koch   Mobilism, 27 March 2015 The plural of Chromium is Chromia Peter-Paul Koch http://quirksmode.org http://twitter.com/ppk Mobilism, 27 March 2015 First of all Chrome on ios is not Chrome Chrome on ios Apple doesn t allow the installation

More information

What is version control? (discuss) Who has used version control? Favorite VCS? Uses of version control (read)

What is version control? (discuss) Who has used version control? Favorite VCS? Uses of version control (read) 1 For the remainder of the class today, I want to introduce you to a topic we will spend one or two more classes discussing and that is source code control or version control. What is version control?

More information

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.

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. 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 information

WHAT IS WEBKIT? COPYRIGHTED MATERIAL SMASHING WEBKIT CHAPTER 1

WHAT IS WEBKIT? COPYRIGHTED MATERIAL SMASHING WEBKIT CHAPTER 1 1 WHAT IS WEBKIT? WEBKIT IS AN open-source rendering engine designed to display web pages. It powers Google Chrome and Safari as well as a variety of mobile devices such as iphone, ipad, and Android phones

More information

Programming: Computer Programming For Beginners: Learn The Basics Of Java, SQL & C Edition (Coding, C Programming, Java Programming, SQL

Programming: Computer Programming For Beginners: Learn The Basics Of Java, SQL & C Edition (Coding, C Programming, Java Programming, SQL Programming: Computer Programming For Beginners: Learn The Basics Of Java, SQL & C++ - 3. Edition (Coding, C Programming, Java Programming, SQL Programming, JavaScript, Python, PHP) PDF PLEASE NOTE: You

More information

Over the next several hundred pages, you can find out about the applications

Over the next several hundred pages, you can find out about the applications In This Chapter Chapter 1 Overview from 10,000 Feet Deciding which of the three editions of Office 2008 for Mac to buy Installing Office 2008 Getting set up using the Setup Assistant Removing Office 2008

More information

Salesforce.com Winter 18 Release

Salesforce.com Winter 18 Release Salesforce.com Winter 18 Release October 2017 Copyright 2017 Veeva Systems Inc., all rights reserved veeva.com 1 Table of Contents SFDC Release Schedule and Deck Intentions Summary of Enhancements and

More information