The document discusses setting up a new React Native project using Vue Native. It goes through installing the necessary CLI tools like React Native CLI, Expo CLI and Vue Native CLI. It then creates a new project called "helloWorld" and chooses a blank template. It hits some errors with network requests failing but then is able to successfully install dependencies and launch the app.
This document provides an overview of how to deliver Python applications with Docker. It introduces Docker concepts like images, containers, layers and data volumes. It then demonstrates dockerizing a sample Django application, including creating a Dockerfile with instructions to install dependencies, copy code and prepare the app. Production deployment notes are also provided, discussing options for Docker registry, orchestration and good practices.
"I have a framework idea" - Repeat less, share more.Fabio Milano
macOS, tvOS, iOS, watchOS, Extensions. In such a dense ecosystem, creating a framework enables us to easily share code between components of our universal applications and with the open-source community.
In this talk, we will learn about processes and tools that help create, 'ship' and maintain a multi platform framework. Throughout all steps, we will see how to use CocoaPods and Carthage, integrate CI tools to keep our code robust, see best practices for authoring frameworks. We'll show how frameworks could change our way of designing an application infrastructure and how you can contribute to the open-source community by turning your idea into a framework.
Debugging IE Performance Issues with xperf, ETW and NavigationTimingNicholas Jansma
This document discusses using ETW/xperf and Navigation Timing to analyze website performance. It covers:
1) ETW/xperf - tools for capturing system-level event traces on Windows, which can show browser performance events.
2) Navigation Timing API - a W3C spec that provides page load timing metrics via JavaScript for real-world performance monitoring.
3) How to use these tools to analyze page load times, resource usage, and CPU hot spots, both for debugging issues and monitoring performance over time.
This document discusses setting up continuous integration and continuous deployment for a mobile application project using the Ship.io CI tool. It describes:
1) Preparing the iOS project workspace for CI.
2) Setting up the Ship.io tool and granting it access to the project repo.
3) Configuring automated builds in Ship.io, including adding code signing certificates to deploy builds for beta testing.
Calabash is an open source tool for automating tests on iOS and Android apps. It consists of a Ruby client library and an Objective-C server framework. Cucumber feature files describe test cases in a business-readable language. Steps in these files map to custom Ruby code that uses the Calabash API to interact with apps. Calabash provides a uniform way to test apps across platforms and enables expressive testing of user interactions like gestures.
It's quite common now for code to be generated by some command - with help of Artisan or not. In this presentation I have an overview of existing solutions on the market.
UI Testing, Performance Testing, Load Testing. I test meno utilizzati nel mondo dello sviluppo.
Strumenti ed esempi per lo sviluppo.
Codice disponibile qui: https://github.com/andreatosato/DOH2019
iOS Parallel Automation - Viktar Karanevich - Mobile Test Automation Meetup (...Badoo
iOS Automation rapidly changed due to the evolution of Apple automation frameworks and Calabash community support. One year ago, we parallelised our iOS testing with multiple desktops - a large improvement in performance. Here is an account of the subsequent changes, including the removal of multiple desktops and the adoption of Apple's new XCTest framework.
The automation community (Appium, Calabash etc.) were faced with a new challenge: how could we create iOS Automation Infrastructure with the new XCTest Framework?
I adopted Facebook solution (FBSimCtl and WebAgentDriver) into the multi-simulators approach. In this talk, I will discuss the full evolution path to Hybrid Approach based on multi-simulators and XCTest framework, using Facebook open-source tools.
This document provides an overview of Selenium and how to set it up for Android application testing. Selenium is an open source tool for automating web application testing across browsers. It has evolved from supporting only Firefox to also supporting Chrome, IE, and mobile browsers via the WebDriver API. The document outlines how to install the Android SDK, set up an emulator, install the Android driver, and write Python scripts to remotely control an Android emulator using Selenium. It also briefly discusses limitations and provides links for additional resources on Android and Selenium automation.
1. The document discusses using Buck as a build system for an app with multiple developers working on different components across several apps that need to share code.
2. Buck provides advantages over other solutions like Xcode by automatically managing shared modules, caching builds for faster rebuilds, and only rebuilding components that were changed in a pull request.
3. The company iFood migrated from Xcode to Buck and saw build times drop from over 30 minutes to under 10 minutes for pull requests by leveraging Buck's caching and ability to only test the affected parts of the code graph.
Appcelerator Titanium is a cross-platform development environment where you can build iOS, Android, BlackBerry and Hybrid/HTML5 apps. This talk will discuss how it works, how to get started, code samples and pros/cons from experience.
Laravel is a great framework to use for web applications but what if you need to do more? What if you need to process data that would take longer than an HTTP request would allow?
Come learn how to harness the power of the console in your Laravel applications to do various tasks such as caching data from 3rd party APIs, expire old content from S3 or other data store, and batch process huge data sets without users having to wait for results. You can even automate tasks such as backing up your remote databases before you run migrations with artisan commands.
We'll cover creating basic artisan console commands, adding options and passing input, setting up cron jobs and scheduling our console commands to run at specific times, and how you can utilize 3rd party APIs to create fun automated message processing for social media networks.
Step by step guide to build ionic hybrid app using cordova androidswagat parida
This document provides a step-by-step guide to building a basic hybrid mobile app using Ionic, Cordova, and Android. It first covers setting up the development environment by installing Node.js, Ionic, and Cordova. It then guides the user to create a blank Ionic app, generate the Android code, and import the project into Android Studio. Finally, it demonstrates creating a sample Ionic list view with the necessary code snippets.
The tools and practices refined over the last decade by web developers have not crossed over easily into the mobile community. Mobile devs have been without tools like continuous integration and automated testing, which enable delivery of high-quality apps more rapidly. A key piece of the solution for mobile is Appium, an open-source, cross-platform, language-agnostic mobile automation framework you can use to write automated UI tests for Android and iOS apps (native, hybrid, web), to be run on emulators or devices.
In this talk we will explore the philosophy that underlies the work behind Appium, including the open-source nature of Appium’s diverse, active and friendly community. Then, after a brief explanation of the technology that powers Appium, we’ll move into the technical portion of the talk, where attendees will see easy it is to write Appium scripts using the WebDriver protocol in their favorite language, and integrate Appium tests into a CI system using Selenium Grid or Sauce Labs.
Finally, we’ll look at some concrete examples of how Appium has been used in a large project with 20 Android Apps at Swiss Post to dramatically improve mobile QA. Ultimately, the talk provides an argument for moving from manual QA to automated testing, an understanding of the mobile automation landscape, and a solid introduction to Appium, which leading projects and companies around the world have chosen as their mobile automation framework of choice.
Eric Van Johnson gave a lightning talk about the composer package manager. Composer allows developers to declare dependencies for libraries and packages, and composer will automatically install and manage those dependencies and their sub-dependencies. The composer.json file is used to specify dependencies, and composer resolves and downloads everything needed from Packagist. Composer also generates an autoloader that makes libraries easily accessible without needing to require files manually.
Il existe de plus en plus de composants et librairies de qualité pour iOS, mais les récupérer, les configurer et les mettre à jour prend un temps fou.
Thomas Dupont (Co-organisateur des CocoaHeads Rennes) nous as présenté CocoaPods: un outils de gestion de dépendance qui va vous simplifier la vie !
Dockercon - Building a Chef cookbook testing pipeline with Drone.IO and Dockerpczarkowski
This document discusses using Drone.IO and GitHub for automated testing of Chef cookbooks. Drone.IO is a continuous integration/delivery tool that watches GitHub repositories for code changes and then builds Docker images to run tests defined in a .drone.yml file. The document provides information on installing and configuring Drone, how it works, and recommends using a tool called Meez to generate testable Chef cookbook structures. It emphasizes that Chef cookbooks should be treated as code by using source control and testing tools like those discussed.
Dependent things dependency management for apple sw - slideshareCavelle Benjamin
This document summarizes options for dependency management in iOS development projects. It discusses Cocoapods, Carthage, and Swift Package Manager, outlining the basic steps to set up each and comparing their key features. Cocoapods is the most full-featured but written in Ruby. Carthage is simpler but requires more manual setup. Swift Package Manager is built into Swift but still maturing. The document provides an overview to help developers choose the right approach for their needs and project requirements.
The document provides an overview of upcoming releases and developments for the Titanium mobile development platform by Appcelerator. Some key points:
- Titanium 3.3 will address over 800 issues and include performance improvements and new features like custom TSS queries in Alloy.
- Titanium Next (version 4.0) will include a new compiler called Hyperloop that significantly improves performance and reduces app size. Hyperloop compiles JavaScript to native code.
- Hyperloop is already being used internally and will power Titanium Next, allowing mixed development modes. It includes metadata on platform APIs and generates code for iOS, Android and Windows.
- Future releases will focus on continued Hyperloop development, expanding supported
All frameworks seem to have their own micro framework: Zend framework has Expressive, Laravel has Lumen. But what does Symfony have? Silex? MicroKernelTrait? Hah! The stuff's as boring as a pacifist pistol. But don't worry, for I have a plan as cunning as a fox who's just been appointed Professor of Cunning at Oxford University.
There are ad-infinitive cross-browser test tools to check your web application for cross-browser similarity. Here is the rundown of top Cross Browser Testing instruments shortlisted by our specialists.
This document summarizes Juan Gomez's presentation on using scripting languages to build Android apps without Java. It discusses the Scripting Layer for Android (SL4A) which allows scripts to access Android APIs. Examples are provided of using Python, JavaScript and Ruby for tasks like taking pictures, accessing WiFi and GPS data, and sending SMS. Advanced topics covered include using web views, background services, and packaging scripts as APK files for distribution.
10 Laravel packages everyone should knowPovilas Korop
This document lists and summarizes 10 Laravel packages that developers should know. It describes Carbon, a PHP date and time API extension, Illuminate/html for forms, Laravel generators for speeding up development, Doctrine/DBAL for database operations, Intervention/image for image handling, and others for user agent parsing, PDF generation, slug creation, improving IDE autocompletion, and debugging tools. Each package is briefly described and examples of usage are provided.
Aguinaldo Boquimpani - Marketers - Interactive TV AdvertisingAguinaldo Boquimpani
This document discusses interactive media and interactive TV advertising. It begins with an overview of how TV and the internet differ as platforms, with TV being lean-back and group-oriented while the internet is lean-forward and solo. It then discusses the adoption of digital TV in Brazil and Latin America. It introduces Ginga, the Brazilian digital TV interactivity standard. The rest of the document focuses on interactive TV advertising, including current offerings, examples, and the benefits it provides over traditional TV advertising. It discusses concepts like entry points, destinations, and capabilities within interactive TV advertising.
The document discusses improving view controller code by making states explicit. It provides an example of a recording button where the state of recording is initially coupled to the button's selected state. The document then shows how defining recording, playing, etc. as explicit states and adding methods to transition between them can improve clarity and maintainability by decoupling these states. It suggests implementing states as enums and blocks rather than methods to avoid duplication and allow animating transitions.
This document outlines the guidelines and procedures for a child sponsorship program. The key points are:
1. The program aims to provide education, healthcare, values formation and parental involvement to poor and marginalized children ages 6-21 through individual sponsorships.
2. Sponsored children are pre-qualified and must meet criteria like family income below a threshold and parents agreeing to participate.
3. The sponsorship provides for a child's education costs, health needs, and involvement in spiritual/character development activities along with their family. Regular monitoring of performance and compliance is required.
Categories allow extending classes without subclassing by adding methods to existing classes. They are useful for spreading implementation across multiple files when working with others, fixing bugs in classes when you don't have access to the source code, and working with Cocoa class clusters that are difficult to subclass. However, categories can cause conflicts if two categories implement the same method, so they should be used carefully.
iOS Parallel Automation - Viktar Karanevich - Mobile Test Automation Meetup (...Badoo
iOS Automation rapidly changed due to the evolution of Apple automation frameworks and Calabash community support. One year ago, we parallelised our iOS testing with multiple desktops - a large improvement in performance. Here is an account of the subsequent changes, including the removal of multiple desktops and the adoption of Apple's new XCTest framework.
The automation community (Appium, Calabash etc.) were faced with a new challenge: how could we create iOS Automation Infrastructure with the new XCTest Framework?
I adopted Facebook solution (FBSimCtl and WebAgentDriver) into the multi-simulators approach. In this talk, I will discuss the full evolution path to Hybrid Approach based on multi-simulators and XCTest framework, using Facebook open-source tools.
This document provides an overview of Selenium and how to set it up for Android application testing. Selenium is an open source tool for automating web application testing across browsers. It has evolved from supporting only Firefox to also supporting Chrome, IE, and mobile browsers via the WebDriver API. The document outlines how to install the Android SDK, set up an emulator, install the Android driver, and write Python scripts to remotely control an Android emulator using Selenium. It also briefly discusses limitations and provides links for additional resources on Android and Selenium automation.
1. The document discusses using Buck as a build system for an app with multiple developers working on different components across several apps that need to share code.
2. Buck provides advantages over other solutions like Xcode by automatically managing shared modules, caching builds for faster rebuilds, and only rebuilding components that were changed in a pull request.
3. The company iFood migrated from Xcode to Buck and saw build times drop from over 30 minutes to under 10 minutes for pull requests by leveraging Buck's caching and ability to only test the affected parts of the code graph.
Appcelerator Titanium is a cross-platform development environment where you can build iOS, Android, BlackBerry and Hybrid/HTML5 apps. This talk will discuss how it works, how to get started, code samples and pros/cons from experience.
Laravel is a great framework to use for web applications but what if you need to do more? What if you need to process data that would take longer than an HTTP request would allow?
Come learn how to harness the power of the console in your Laravel applications to do various tasks such as caching data from 3rd party APIs, expire old content from S3 or other data store, and batch process huge data sets without users having to wait for results. You can even automate tasks such as backing up your remote databases before you run migrations with artisan commands.
We'll cover creating basic artisan console commands, adding options and passing input, setting up cron jobs and scheduling our console commands to run at specific times, and how you can utilize 3rd party APIs to create fun automated message processing for social media networks.
Step by step guide to build ionic hybrid app using cordova androidswagat parida
This document provides a step-by-step guide to building a basic hybrid mobile app using Ionic, Cordova, and Android. It first covers setting up the development environment by installing Node.js, Ionic, and Cordova. It then guides the user to create a blank Ionic app, generate the Android code, and import the project into Android Studio. Finally, it demonstrates creating a sample Ionic list view with the necessary code snippets.
The tools and practices refined over the last decade by web developers have not crossed over easily into the mobile community. Mobile devs have been without tools like continuous integration and automated testing, which enable delivery of high-quality apps more rapidly. A key piece of the solution for mobile is Appium, an open-source, cross-platform, language-agnostic mobile automation framework you can use to write automated UI tests for Android and iOS apps (native, hybrid, web), to be run on emulators or devices.
In this talk we will explore the philosophy that underlies the work behind Appium, including the open-source nature of Appium’s diverse, active and friendly community. Then, after a brief explanation of the technology that powers Appium, we’ll move into the technical portion of the talk, where attendees will see easy it is to write Appium scripts using the WebDriver protocol in their favorite language, and integrate Appium tests into a CI system using Selenium Grid or Sauce Labs.
Finally, we’ll look at some concrete examples of how Appium has been used in a large project with 20 Android Apps at Swiss Post to dramatically improve mobile QA. Ultimately, the talk provides an argument for moving from manual QA to automated testing, an understanding of the mobile automation landscape, and a solid introduction to Appium, which leading projects and companies around the world have chosen as their mobile automation framework of choice.
Eric Van Johnson gave a lightning talk about the composer package manager. Composer allows developers to declare dependencies for libraries and packages, and composer will automatically install and manage those dependencies and their sub-dependencies. The composer.json file is used to specify dependencies, and composer resolves and downloads everything needed from Packagist. Composer also generates an autoloader that makes libraries easily accessible without needing to require files manually.
Il existe de plus en plus de composants et librairies de qualité pour iOS, mais les récupérer, les configurer et les mettre à jour prend un temps fou.
Thomas Dupont (Co-organisateur des CocoaHeads Rennes) nous as présenté CocoaPods: un outils de gestion de dépendance qui va vous simplifier la vie !
Dockercon - Building a Chef cookbook testing pipeline with Drone.IO and Dockerpczarkowski
This document discusses using Drone.IO and GitHub for automated testing of Chef cookbooks. Drone.IO is a continuous integration/delivery tool that watches GitHub repositories for code changes and then builds Docker images to run tests defined in a .drone.yml file. The document provides information on installing and configuring Drone, how it works, and recommends using a tool called Meez to generate testable Chef cookbook structures. It emphasizes that Chef cookbooks should be treated as code by using source control and testing tools like those discussed.
Dependent things dependency management for apple sw - slideshareCavelle Benjamin
This document summarizes options for dependency management in iOS development projects. It discusses Cocoapods, Carthage, and Swift Package Manager, outlining the basic steps to set up each and comparing their key features. Cocoapods is the most full-featured but written in Ruby. Carthage is simpler but requires more manual setup. Swift Package Manager is built into Swift but still maturing. The document provides an overview to help developers choose the right approach for their needs and project requirements.
The document provides an overview of upcoming releases and developments for the Titanium mobile development platform by Appcelerator. Some key points:
- Titanium 3.3 will address over 800 issues and include performance improvements and new features like custom TSS queries in Alloy.
- Titanium Next (version 4.0) will include a new compiler called Hyperloop that significantly improves performance and reduces app size. Hyperloop compiles JavaScript to native code.
- Hyperloop is already being used internally and will power Titanium Next, allowing mixed development modes. It includes metadata on platform APIs and generates code for iOS, Android and Windows.
- Future releases will focus on continued Hyperloop development, expanding supported
All frameworks seem to have their own micro framework: Zend framework has Expressive, Laravel has Lumen. But what does Symfony have? Silex? MicroKernelTrait? Hah! The stuff's as boring as a pacifist pistol. But don't worry, for I have a plan as cunning as a fox who's just been appointed Professor of Cunning at Oxford University.
There are ad-infinitive cross-browser test tools to check your web application for cross-browser similarity. Here is the rundown of top Cross Browser Testing instruments shortlisted by our specialists.
This document summarizes Juan Gomez's presentation on using scripting languages to build Android apps without Java. It discusses the Scripting Layer for Android (SL4A) which allows scripts to access Android APIs. Examples are provided of using Python, JavaScript and Ruby for tasks like taking pictures, accessing WiFi and GPS data, and sending SMS. Advanced topics covered include using web views, background services, and packaging scripts as APK files for distribution.
10 Laravel packages everyone should knowPovilas Korop
This document lists and summarizes 10 Laravel packages that developers should know. It describes Carbon, a PHP date and time API extension, Illuminate/html for forms, Laravel generators for speeding up development, Doctrine/DBAL for database operations, Intervention/image for image handling, and others for user agent parsing, PDF generation, slug creation, improving IDE autocompletion, and debugging tools. Each package is briefly described and examples of usage are provided.
Aguinaldo Boquimpani - Marketers - Interactive TV AdvertisingAguinaldo Boquimpani
This document discusses interactive media and interactive TV advertising. It begins with an overview of how TV and the internet differ as platforms, with TV being lean-back and group-oriented while the internet is lean-forward and solo. It then discusses the adoption of digital TV in Brazil and Latin America. It introduces Ginga, the Brazilian digital TV interactivity standard. The rest of the document focuses on interactive TV advertising, including current offerings, examples, and the benefits it provides over traditional TV advertising. It discusses concepts like entry points, destinations, and capabilities within interactive TV advertising.
The document discusses improving view controller code by making states explicit. It provides an example of a recording button where the state of recording is initially coupled to the button's selected state. The document then shows how defining recording, playing, etc. as explicit states and adding methods to transition between them can improve clarity and maintainability by decoupling these states. It suggests implementing states as enums and blocks rather than methods to avoid duplication and allow animating transitions.
This document outlines the guidelines and procedures for a child sponsorship program. The key points are:
1. The program aims to provide education, healthcare, values formation and parental involvement to poor and marginalized children ages 6-21 through individual sponsorships.
2. Sponsored children are pre-qualified and must meet criteria like family income below a threshold and parents agreeing to participate.
3. The sponsorship provides for a child's education costs, health needs, and involvement in spiritual/character development activities along with their family. Regular monitoring of performance and compliance is required.
Categories allow extending classes without subclassing by adding methods to existing classes. They are useful for spreading implementation across multiple files when working with others, fixing bugs in classes when you don't have access to the source code, and working with Cocoa class clusters that are difficult to subclass. However, categories can cause conflicts if two categories implement the same method, so they should be used carefully.
Reactive Cocoa is an Objective-C framework that treats streams of values as signals that can be combined, transformed, and manipulated. It is based on the concept of functional reactive programming and provides signals to represent user interface elements and other values that change over time. This allows UI updates and other behaviors to be modeled as signals that can be combined declaratively.
The document discusses two-stage object allocation and template methods in object-oriented programming. Two-stage allocation involves allocating memory for an object and then initializing it, allowing subclasses to override initialization. Template methods define an algorithm's steps but allow subclasses to customize behavior. They may not need to do anything but are expected to be overridden. The document cautions that when overriding methods like viewWillAppear, the superclass implementation via super should be called last.
The document discusses several compiler optimizations in Xcode such as "Relax IEEE Compliance", "Vectorize Loops", "Link-Time Optimization", and "Unroll Loops" that can optimize code. It explains that the talk would provide a detailed C/Assembly-level explanation of how the compiler takes advantage of ARM and Intel processor features using these optimizations. Of particular interest for applications with many for-loops like games and scientific programs. It also briefly mentions the restrict keyword and that structs of arrays are better than arrays of structs from an optimization standpoint.
The document describes an app called MSP Bravo that allows developers, designers, and organizers to find teammates, rate hackathons, recruit volunteers, and get feedback from users to improve the app. The app helps connect people looking for teammates with others and gives organizers a way to find volunteers. It also allows users to review hackathons to help others decide which events to participate in. Contact information is provided for the app creators at MSP Bravo.
The document discusses how to use SQLite databases in a Universal Windows Platform (UWP) application. It includes instructions to install SQLite extensions from NuGet and create, read, update and delete database records using CRUD operations. It provides code examples to create a database, insert, retrieve, update and delete student records from the database and bind the data to a list view.
This document discusses connecting an iOS app to a REST API. It covers using a networking library like AFNetworking to make requests, parsing JSON responses, storing data locally using Core Data, and libraries like RestKit that integrate these steps by mapping JSON to Core Data entities and handling background threading. Authentication using OAuth is also briefly mentioned.
This document provides guidance on communication, public speaking, and giving talks. It discusses the meaning and purpose of communication as an exchange to bring people together. For public speaking, it notes that good speakers are made, not born, and outlines elements for effective speaking like using your own style and not reading your entire talk. It also distinguishes between fear and F.E.A.R. (Faith, Enthusiasm, Anticipation, Respect). The document gives tips for planning a talk such as studying an outline, seeking input, and understanding your audience. It provides guidance for preparing a talk through praying, internalizing the outline, prioritizing examples, and writing an introduction and conclusion.
The document discusses integrating Microsoft Azure with Windows Store app development. It outlines creating a storage account and mobile service on Azure and configuring them. It then details adding the Azure integration to a Windows Store app by including app keys in app.xaml, binding data from Azure tables to a listview in the app, and adding buttons to perform actions like deleting or updating data in the mobile service. Resources for learning more are provided at the end.
PhoneGap (aka Cordova) is a cross-platform framework for developing mobile apps using standard web development tools like HTML, CSS, and JavaScript. Join Troy Miles to learn how to create mobile apps with PhoneGap by building a simple but full-featured app during this hands-on class. Troy explores PhoneGap’s important capabilities, including GPS, camera, and audio recordings. Because JavaScript has a reputation as a somewhat difficult language, Troy teaches techniques for keeping your code robust and clean. To give your app the appropriate look and feel for the device on which it is running, the class will use the open source Chocolate Chip UI framework for testing. Troy shares ways to debug the code by running it as a web app, using browser development tools, or as a phone app, using the Chrome browser’s remote debugging features. Leave with the basics you need to start building your own cross-platform mobile apps.
- Nic Jansma is a developer who previously worked at Microsoft and recently founded Wolverine Digital to develop high-performance websites and apps.
- He used Appcelerator Titanium to build cross-platform mobile apps, including a LEGO Minifigure catalog app, allowing him to write code once and deploy to both iOS and Android.
- While Titanium allowed cross-platform development, Nic still encountered platform-specific issues and the need to occasionally write platform-specific code, but found Titanium a good choice overall for his needs.
Cross-Platform Mobile Development in Visual Studiobryan costanich
This document discusses cross-platform mobile development using Xamarin and Visual Studio. Key points include:
- Using C# and .NET with Xamarin allows building iOS, Android, and Windows Phone apps with one shared codebase while still getting native performance and user experience.
- The code compiles to native for each platform, rather than being interpreted, and full access to platform SDKs is provided. Shared code, data layers, and platform abstractions allow code reuse.
- Visual Studio solutions can contain projects for shared code, platform-specific code for each mobile OS, and tests. Linking or portable class libraries are recommended for sharing code.
- Considerations include designing native U
Tutorial: Develop Mobile Applications with AngularJSPhilipp Burgmer
This document provides an overview of developing mobile applications using AngularJS and Cordova. It discusses the setup, architecture, and tools needed including Node.js, Cordova, Ionic and AngularJS. It also covers creating a basic app, the project structure, available APIs, performance optimization techniques, and using hooks and build systems like FABS.
Firefox OS is an open source operating system built using HTML5 that aims to fulfill the promises made by HTML5 as a platform. It gives developers full access to device hardware through Web APIs while allowing app distribution through the web. The OS is already available on low-cost devices in certain markets. It uses the Gecko rendering engine and a simple architecture based on Linux and Android. This allows it to provide predictable HTML5 support and security for web apps. Developers can build apps using standard web technologies and distribute them via the Firefox OS marketplace or by installing them directly from the web.
Open Source Development
Building your own Custom Firefox (or LibreOffice/OpenOffice)
from the Nightly or Developer Source Code
GIT / Mercurial (code sharing / version control)
What's new in HTML5 and JavaScript 2015
ECMAScript 2015 (ES6)
const, class, let, for of, function*, import
The Cordova framework
Recurrent app architecture
Cordova CLI
Debugging Cordova applications
My development environment
This presentation has been developed in the context of the Mobile Applications Development course, DISIM, University of L'Aquila (Italy), Spring 2016.
http://www.ivanomalavolta.com
[Srijan Wednesday Webinar] Mastering Mobile Test Automation with AppiumSrijan Technologies
Speaker: Justin Ison
Check out the complete session slides here: http://www.srijan.net/webinar/mobile-...
This session dives into the history of Appium, and it's pros and cons. The speaker also looks at how to write a good test setup and collect meaningful data points. We look at quick demos and comparisons of how Appium significantly reduces test times.
And you definitely should hang around till the Q&A session, where participants pitch in with their issues and queries. The speaker answers all the questions, sharing additional information and tips on Appium.
Apache Cordova is an open-source framework that allows developers to use standard web technologies like HTML, CSS, and JavaScript to build applications that can be deployed across various mobile and desktop platforms. It works by packaging the application's code and assets into a wrapper application that loads the content into a webview. Plugins can be added to access device capabilities. The Cordova CLI provides commands for creating, building, and running Cordova projects across platforms in a consistent way. Frameworks like Angular and UI frameworks like Ionic can be used to organize larger Cordova applications.
This manual is “How to Build” manual for OpenCV with OpenCL for Android.
If you want to “Use OpenCL on OpenCV” ONLY,
Please see
http://github.com/noritsuna/OpenCVwithOpenCL4AndroidNDKSample
The Cordova framework
Recurrent app architecture
Cordova CLI
Debugging Cordova applications
My development environment
Cordova APIs
This presentation has been developed in the context of the Mobile Applications Development course, DISIM, University of L'Aquila (Italy), Spring 2014.
http://www.ivanomalavolta.com
Run Your Java Code on Cloud Foundry - Andy Piper (Pivotal)jaxLondonConference
Presented at JAX London 2013
Public, private, and hybrid; software, platform, and infrastructure. This talk will discuss the current state of the Platform-as-a-Service space, and why the keys to success lie in enabling developer productivity, and providing openness and choice. We'll do this by considering the success of Open Source in general, look at the Cloud Foundry project, and find out why Cloud Foundry-based PaaSes are the best places to host your applications written in Java and other JVM-based languages.
This document discusses Cloud Foundry, an open platform as a service (PaaS). It begins with introductions of the author Andy Piper and his role as a Cloud Foundry developer advocate. It then discusses why an open cloud platform is important, defining Cloud Foundry and its key characteristics like being open source and deployable on various clouds. It covers Java support on Cloud Foundry including buildpacks and how various Java applications and frameworks are detected and run. It emphasizes the flexibility and portability Cloud Foundry provides for Java applications.
The Cordova framework
Recurrent app architecture
Cordova CLI
Debugging Cordova applications
My development environment
This presentation has been developed in the context of the Mobile Applications Development course, DISIM, University of L'Aquila (Italy), Spring 2015.
http://www.ivanomalavolta.com
This document discusses using various technologies on Google App Engine including JIQL, GaeVFS, RESTlets, scheduled tasks, JRuby on Rails, task queues, XMPP, and Clojure. JIQL emulates a relational database on App Engine's Bigtable datastore. GaeVFS provides a virtual filesystem on Bigtable. RESTlets make RESTful web services easy to implement in Java on App Engine. Scheduled tasks allow for background processing via cron jobs. JRuby on Rails provides a way to run Ruby on Rails applications on App Engine. Task queues allow for asynchronous background processing. XMPP enables instant messaging and peer-to-peer applications. Clojure can also be used
This document discusses continuous integration from unit tests to hardware. It describes how continuous integration helps ensure quality by automatically building and testing software anytime code changes are committed. The speaker's company Forget Box uses Jenkins for continuous integration to build and test their iOS app daily. Plugins and scripts can be used in Jenkins to run unit tests, compute code coverage, package apps, and deploy to test devices. Continuous integration helps developers catch bugs early and "never break the build again."
The document summarizes key aspects of building Firefox OS to address issues with the mobile web. Firefox OS is Mozilla's attempt to make the web a first-class citizen on phones and tablets by starting with the web stack rather than trying to add the web to an existing OS. It has launched in several countries and aims to be an affordable alternative to feature phones and closed platforms. The architecture is based on Linux, Gecko, and web technologies. It provides predictable HTML5 support and addresses performance, fragmentation, security and hardware access through its design and web APIs.
Android workshop to prepare for 48hacks (http://www.ntuventures.com/events/48hacks/index.html), organized by NTU Venture.
Covers basic Android application programming, and connectivity to Arduino board via Bluetooth.
This document provides information about Codename One, a mobile application development framework that allows writing code once and deploying to multiple platforms. It discusses Codename One's mission to unify mobile development, how it works using build servers and lightweight components, and how to install and use it with NetBeans or Eclipse. Key aspects covered include themes, styles, components, layouts, and the GUI builder tool.
Cordova is a framework for building mobile apps using HTML, CSS and JavaScript. It allows developers to use web technologies to build apps that can be deployed across different mobile platforms. The Cordova CLI is used to create, build and manage Cordova projects. It allows adding platforms, plugins and building apps for specific platforms. Cordova plugins allow accessing native device functionality from web views by developing custom JavaScript APIs and native code for each platform. Debugging can be done in desktop browsers, emulators, connected devices or using remote debugging tools.
2. • 4 years ago: the single developer.
• The status quo for iOS Development is
changing rapidly.
• Many of these changes are a result of the
ecosystem surrounding the iOS platform.
4. CocoaPods
• CocoaPod is a dependency manager similar
to Ruby gems.
• This is the biggest change to my workflow
as an iOS Developer.
• http://cocoapods.org
5. In a text editor, make a Podfile:
platform :ios
pod 'AFNetworking', '1.0'
pod 'JSONKit', '~> 1.4'
On the command line:
> pod install
Also useful:
> pod search <name>
6. You can make you own Podspec like this:
Pod::Spec.new do |s|
s.name = "Cocoa-Touch-Barcodes"
s.version = "0.0.1"
s.summary = "Fork of Jeff Lamarche's original barcode generator
library at http://code.google.com/p/cocoabarcodes/"
s.homepage = "http://code.google.com/p/cocoabarcodes/"
s.license = { :type => 'New BSD', :text => "" }
s.author = { "Jeff LaMarche" => "[email protected]" }
s.source = { :git => "
https://github.com/netshade/Cocoa-Touch-Barcodes.git", :commit =>
"d0aabd00efa" }
s.platform = :ios
s.source_files = ''
s.public_header_files = '*.h'
end
end
end
end
end
end
end
end
end
end
end
end
13. It is Possible to Autocomplete in Other
Text Editors
• Vim has ClangComplete
• Emacs has YASnippet and autocomplete
• Sublime Text has SublimeClang
16. Stuff That Has Been
Around for a while
• JavaScript frameworks (PhoneGap, Titanium,
...)
• Game frameworks: (Unity, Corona...)
17. Not a comprehensive list
RubyMotion has some attention because it
allows access to UIKit.
18. Not a comprehensive list
Xamarin (formerly MonoTouch, which
*has* been around for awhile) announced
2.0, which can write iOS apps in C# using
Visual Studio.
19. Objective C will be Apple’s mainstay
language for long time to come.
20. But other tools are available and have
even been maturing for a long time.
21. One reason is that Apple used to reject
alternative programming languages.
That fear is almost completely gone.
That fear is almost completely gone.
That fear is almost completely gone.
22. NOTE: At this meetup, we have never
had a presentation on developing in a
language other than Objective C.
30. Not a comprehensive list
TestFlight (https://testflightapp.com) /
HockeyApp (http://hockeyapp.net)
31. Not a comprehensive list
Hosted CI: https://hosted-ci.com
32. Not a comprehensive list
Localization (http://applingua.com)
33. Not a comprehensive list
Crash Reports (http://try.crashlytics.com)
34. Not a comprehensive list
Device Testing
(http://www.keynotedeviceanywhere.com
)
35. Not a comprehensive list
If you have a problem, some one has a
service to solve it.
36. One of the biggest changes is that the
ecosystem surrounding app development
is growing at a rapid rate.
37. People who recognize these changes, and
that things are changing, will be able to
develop quality apps more quickly by
making use of these tools.
39. The moral of the story: the days of a
single developer making a successful app
are probably much harder, but following
the ecosystem will probably to give you
the best advantage.