Elegant Builds at Scale. Etienne Studer VP of Product Tooling, Gradle Inc.

Size: px
Start display at page:

Download "Elegant Builds at Scale. Etienne Studer VP of Product Tooling, Gradle Inc."

Transcription

1 Elegant Builds at Scale Etienne Studer VP of Product Tooling, Gradle Inc.

2 Hans Etienne Dockter Studer CEO VP of and Product Founder Tooling, of Gradle

3 New company Gradleware Inc. > Gradle, Inc.

4 New Twitter

5 New domain gradle.com

6 New brand BuildHappiness.

7

8

9

10

11

12

13

14

15

16 Downloads 5,400,000 in ,000 in May 2015 >1,000,000/m since October

17

18 Build Infrastructure

19 Type a quote here. Johnny Appleseed

20 XXXL

21 Complexity

22 Inventory Term 15 days 0.5 days 30 Release cycle (days) Two Releases per day

23

24 Performance

25 Goal Minimize the build time while using as little memory as needed.

26 Observation Typically, not much changes in the build between consecutive invocations of the build. When little changes in the build, little work should be done by the build.

27 Approach Performance enhancements are achieved through evolutionary improvements and revolutionary changes.

28 Apply To Fix hotspots Build configuration Cache and reuse Dependency resolution Work in parallel Task Execution Work in background

29 Daemon

30 ~/.gradle/gradle.properties org.gradle.daemon=true GRADLE_OPTS -Dorg.gradle.daemon=true Command Line gradlew tasks --daemon (--no-daemon)

31 Incremental build

32 Do not execute a given task if both its input and its output have not changed since the previous run. Inputs > Task > Outputs Optimize file change detection using file size, modification time, and content hash.

33 Continuous Mode

34 ./gradlew build -t

35 Project Substitution

36 configurations.all { resolutionstrategy.dependencysubstitution { substitute module("org.utils:api") with project(":api") substitute project(":impl") with module("org.utils:impl:1.3") } }

37 Android Studio 2.0

38 Android Studio post GP GP alpha1 Near Future Command Line gradle installdebug, 1 LOC added, Gradle Dexing Install Other Overall Estimate for Cold Swap & Emulator 2 Install

39 Gradle performance 9 Near Future Gradle 2.1 Near Future Gradle 2.9 Command Line gradle assembledebug, 1 LOC changed, Gradle Dexing Install Other Overall Without Improvements 30% slower

40 New Configuration Model

41 Goal Apply the concepts already available in the Execution phase to the Configuration phase. Describe what the model should look like and Gradle will provide the implementation.

42 Managed interface Picture { String getname() void setname(string name) List<String> gettags() }

43 Plugin class PicturesPlugin extends RuleSource void createpicture(picture picture) void configurepicture(picture picture) { picture.name = 'mypic.jpg' picture.tags.addall(['nature', 'night']) } }

44 DSL model { picture(picture) { name = 'mypic.jpg' tags.addall(['night', 'moon']) } }

45 Report

46 Modeling Richer modeling Cleaner modeling Collaborative modeling Comprehensible model

47 Performance

48 Modeling

49 JVM Software Model

50 model { Service components { service(jvmlibraryspec) { sources { java { source.srcdir 'src/service/java' dependencies { library 'org.eclipse.jetty:jetty-servlet: v ' exported(true) library 'org.apache.httpcomponents:httpclient: 4.5.1' } } } api { exports 'org.gradle.example.service' } targetplatform 'java7' targetplatform 'java8' } } }

51 model { components { client(jvmlibraryspec) { sources { java { source.srcdir 'src/client/java' dependencies { project ':service' library 'service' } } } targetplatform 'java6' targetplatform 'java7' targetplatform 'java8' targetplatform java9' } } } Client

52

53 Variant-aware dependency mgmt.

54 Compiler Avoidance

55

56

57 Company Standards

58 High-level DSL

59 products { product( foo) { europe { host = alpha } asia { host = beta } } }

60 Dependency Management

61

62

63 Policies

64 gradle.taskgraph.whenready { allprojects { Project project -> def androidextension = project.extensions.findbyname('android') if (androidextension) { def release = androidextension.buildtypes.find { def buildtype -> buildtype.name == 'release' } if(!release?.runproguard){ def msg = "Build type '$release.name' must run proguard." throw new IllegalStateException(msg) } } } }

65 Custom Gradle Distribution

66 GRADLE_HOME/init.d/*.gradle

67 Wrapping Gradle

68 IDE Integration

69 Extensibility

70 Custom Build Environment

71 Composite Builds

72

73 Coming son

74 Distributed Cache/ Builds

75 Gradle Saas

76

77 Gradle Expertise

78

79 Introductory & Intermediate Introduction to Gradle Gradle for Android Gradle C/C++ Workshop Advanced Gradle Fundamentals Advanced Extending Gradle Mastering Dependencies and Multi-project Builds Standardizing Enterprise Builds Continuous Delivery with Gradle

80

81 Elegant Builds at Scale Etienne Studer VP of Product Tooling, Gradle Inc.

Continuous Delivery with Grade. Hans Dockter CEO Gradle Inc., Founder

Continuous Delivery with Grade. Hans Dockter CEO Gradle Inc., Founder Continuous Delivery with Grade Hans Dockter CEO Gradle Inc., Founder Gradle Twitter: @gradle, @hans_d hans@gradle.com New company Gradleware Inc. -> Gradle, Inc. A new domain gradle.com New Twitter handle

More information

JavaBasel 16. René Gröschke. Gradle 3.0 and beyond. Gradle 3.0 and beyond - #javabasel

JavaBasel 16. René Gröschke. Gradle 3.0 and beyond. Gradle 3.0 and beyond - #javabasel JavaBasel 16 Gradle 3.0 and beyond René Gröschke Gradle 3.0 and beyond - #javabasel WHO AM I speaker { name 'René Gröschke' homebase 'Berlin, Germany' work 'Principal Engineer @ Gradle Inc.' twitter '@breskeby'

More information

Getting Started with Gradle

Getting Started with Gradle Getting Started with Gradle Speaker Sterling Greene ( sterling@gradle.com) Principal Engineer, Gradle Inc Clone the example project Agenda Gradle Project History Gradle Best Practices Gradle Basics Java

More information

Enter the Gradle Hans Dockter CEO, Gradleware Founder Gradle

Enter the Gradle Hans Dockter CEO, Gradleware Founder Gradle Enter the Gradle Hans Dockter CEO, Gradleware Founder Gradle hans.dockter@gradleware.com What you will learn Declarativeness Extensibility Performance Features Build Integration Build Migration Testing

More information

ATC Android Application Development

ATC Android Application Development ATC Android Application Development 1. Android Framework and Android Studio b. Android Platform Architecture i. Linux Kernel ii. Hardware Abstraction Layer(HAL) iii. Android runtime iv. Native C/C++ Libraries

More information

Android Application Development Course Code: AND-401 Version 7 Duration: 05 days

Android Application Development Course Code: AND-401 Version 7 Duration: 05 days Let s Reach For Excellence! TAN DUC INFORMATION TECHNOLOGY SCHOOL JSC Address: 103 Pasteur, Dist.1, HCMC Tel: 08 38245819; 38239761 Email: traincert@tdt-tanduc.com Website: www.tdt-tanduc.com; www.tanducits.com

More information

OSGi Overview OSGi Alliance and IIC Joint Liaison Workshop

OSGi Overview OSGi Alliance and IIC Joint Liaison Workshop OSGi Overview OSGi Alliance and IIC Joint Liaison Workshop VP EMEA OSGi Alliance CEO Makewave 2018-05-24, Helsinki COPYRIGHT 2008-2018 OSGi Alliance. All Rights Reserved What is the OSGi Technology? OSGi

More information

#jenkinsconf. Jenkins user plugin. This time it's. Jenkins User Conference Israel. Shiran JFrog

#jenkinsconf. Jenkins user plugin. This time it's. Jenkins User Conference Israel. Shiran JFrog Jenkins user plugin This time it's Shiran Rubin @ShiranRU JFrog http://jfrog.com July 16, 2014 About me Groovy developer in JFrog. The home of We work with: But support many others. It's time to There's

More information

<Insert Picture Here>

<Insert Picture Here> The Other HPC: Profiling Enterprise-scale Applications Marty Itzkowitz Senior Principal SW Engineer, Oracle marty.itzkowitz@oracle.com Agenda HPC Applications

More information

The Workshop. Slides (you have a copy in the zip) Practical labs Ask questions

The Workshop. Slides (you have a copy in the zip) Practical labs Ask questions Gradle Workshop The Workshop Slides (you have a copy in the zip) Practical labs Ask questions The Labs Pairing is encouraged Solutions are available (but avoid cheating) Take your time and experiment First

More information

C++ Binary Dependency Management with Gradle. Hugh Greene

C++ Binary Dependency Management with Gradle. Hugh Greene C++ Binary Dependency Management with Gradle Hugh Greene Getting consistent versions of things needed to build your software and to use it 2 Why? Saves time Identical binaries confidence

More information

Gradle Leveraging Groovy for Building Java Applications. Hans Dockter Gradle Project Lead

Gradle Leveraging Groovy for Building Java Applications. Hans Dockter Gradle Project Lead Gradle Leveraging Groovy for Building Java Applications Hans Dockter Gradle Project Lead mail@dockter.biz About Me Founder and Project Lead of Gradle Independent Consultant Trainer for Skills Matter (TTD,

More information

Android tips. which simplify your life

Android tips. which simplify your life Android tips which simplify your life Android Studio beta gradle build system maven-based build dependencies build variants code completion, refactoring, templates graphical template editor Gradle apply

More information

Kotlin for Android Developers

Kotlin for Android Developers Kotlin for Android Developers Learn Kotlin the easy way while developing an Android App Antonio Leiva This book is for sale at http://leanpub.com/kotlin-for-android-developers This version was published

More information

Introduction to Visual Basic and Visual C++ Introduction to Java. JDK Editions. Overview. Lesson 13. Overview

Introduction to Visual Basic and Visual C++ Introduction to Java. JDK Editions. Overview. Lesson 13. Overview Introduction to Visual Basic and Visual C++ Introduction to Java Lesson 13 Overview I154-1-A A @ Peter Lo 2010 1 I154-1-A A @ Peter Lo 2010 2 Overview JDK Editions Before you can write and run the simple

More information

Android DP SDK Integration Guide

Android DP SDK Integration Guide Android DP SDK Integration Guide Requirements Minimum Android Version : Android 4.1 'Jelly Bean' (API level 16) instant Run Removal. (Preferences -> Instant Run -> Unlock to Enable Instant Run) Step 1.

More information

Big Bang. Designing a Statically Typed Scripting Language. Pottayil Harisanker Menon, Zachary Palmer, Scott F. Smith, Alexander Rozenshteyn

Big Bang. Designing a Statically Typed Scripting Language. Pottayil Harisanker Menon, Zachary Palmer, Scott F. Smith, Alexander Rozenshteyn Big Bang Designing a Statically Typed Scripting Language Pottayil Harisanker Menon, Zachary Palmer, Scott F. Smith, Alexander Rozenshteyn The Johns Hopkins University June 11, 2012 Scripting Languages!

More information

Introduction to Mobile Development

Introduction to Mobile Development Introduction to Mobile Development Building mobile applications can be as easy as opening up the IDE, throwing something together, doing a quick bit of testing, and submitting to an App Store all done

More information

The dangerous Beauty of Bookmark Lookups

The dangerous Beauty of Bookmark Lookups The dangerous Beauty of Bookmark Lookups Klaus Aschenbrenner Microsoft Certified Master SQL Server 2008 Twitter: @Aschenbrenner About me CEO & Founder SQLpassion International Speaker, Blogger, Author

More information

[Course Overview] After completing this module you are ready to: Develop Desktop applications, Networking & Multi-threaded programs in java.

[Course Overview] After completing this module you are ready to: Develop Desktop applications, Networking & Multi-threaded programs in java. [Course Overview] The Core Java technologies and application programming interfaces (APIs) are the foundation of the Java Platform, Standard Edition (Java SE). They are used in all classes of Java programming,

More information

J2EE Development. Course Detail: Audience. Duration. Course Abstract. Course Objectives. Course Topics. Class Format.

J2EE Development. Course Detail: Audience. Duration. Course Abstract. Course Objectives. Course Topics. Class Format. J2EE Development Detail: Audience www.peaksolutions.com/ittraining Java developers, web page designers and other professionals that will be designing, developing and implementing web applications using

More information

Red Hat Application Migration Toolkit 4.0

Red Hat Application Migration Toolkit 4.0 Red Hat Application Migration Toolkit 4.0 Getting Started Guide Simplify Migration of Java Applications Last Updated: 2018-04-04 Red Hat Application Migration Toolkit 4.0 Getting Started Guide Simplify

More information

Ripple: Reflection Analysis for Android Apps in Incomplete Information Environments

Ripple: Reflection Analysis for Android Apps in Incomplete Information Environments Ripple: Reflection Analysis for Android Apps in Incomplete Information Environments Yifei Zhang, Tian Tan, Yue Li and Jingling Xue Programming Languages and Compilers Group University of New South Wales

More information

Android Overview. Most of the material in this section comes from

Android Overview. Most of the material in this section comes from Android Overview Most of the material in this section comes from http://developer.android.com/guide/ Android Overview A software stack for mobile devices Developed and managed by Open Handset Alliance

More information

Red Hat Application Migration Toolkit 4.2

Red Hat Application Migration Toolkit 4.2 Red Hat Application Migration Toolkit 4.2 Getting Started Guide Learn how to use the Red Hat Application Migration Toolkit to migrate and modernize Java applications and components. Last Updated: 2019-03-26

More information

You can do better with Kotlin. Svetlana Isakova

You can do better with Kotlin. Svetlana Isakova You can do better with Kotlin Svetlana Isakova Kotlin Programming Language - modern - pragmatic - Android-friendly Official on Android Not only Android Pragmatic - tooling - Java interop From has good

More information

Android Application Development

Android Application Development Android Application Development Course Code: AND-401 Version 7 (Nougat) 2016 Android ATC Published by: Android ATC Fourth Printing: December 2016. First Printing: October 2013. ISBN: 978-0-9900143-8-6

More information

CICS Explorer. Matthew Webster IBM Thursday, February 7, IBM Corporation

CICS Explorer. Matthew Webster IBM Thursday, February 7, IBM Corporation CICS Explorer Matthew Webster IBM Thursday, February 7, 2013 12426 http://www.linkedin.com/pub/matthew-webster/31/b09/b16 2013 IBM Corporation CICS Explorer Looking for new ways to accelerate the transfer

More information

Kotlin for Android Developers

Kotlin for Android Developers Kotlin for Android Developers Learn Kotlin the easy way while developing an Android App Antonio Leiva This book is for sale at http://leanpub.com/kotlin-for-android-developers This version was published

More information

Take Your Team Mobile with Xamarin

Take Your Team Mobile with Xamarin Take Your Team Mobile with Xamarin Introduction Enterprises no longer question if they should go mobile, but are figuring out how to implement a successful mobile strategy, and in particular how to go

More information

Deploying MATLAB Applications in Excel, Java, and.net Environments

Deploying MATLAB Applications in Excel, Java, and.net Environments Deploying Applications in Excel, Java, and.net Environments U.M. Sundar Senior Application Engineer Technical computing sundar.umamaheswaran@mathworks.in 2012 The MathWorks, Inc. 1 Agenda Application Development

More information

Android Essentials with Java

Android Essentials with Java Android Essentials with Java Before You Program o Exercise in algorithm generation Getting Started o Using IntelliJ CE Using Variables and Values o Store data in typed variables Static Methods o Write

More information

Vision of J2EE. Why J2EE? Need for. J2EE Suite. J2EE Based Distributed Application Architecture Overview. Umair Javed 1

Vision of J2EE. Why J2EE? Need for. J2EE Suite. J2EE Based Distributed Application Architecture Overview. Umair Javed 1 Umair Javed 2004 J2EE Based Distributed Application Architecture Overview Lecture - 2 Distributed Software Systems Development Why J2EE? Vision of J2EE An open standard Umbrella for anything Java-related

More information

Software Requirements Specification. CS 4350 Project. for. Version 1.0 approved. Prepared by Alvaro Juban Jr. Tejon Ranch Conservency

Software Requirements Specification. CS 4350 Project. for. Version 1.0 approved. Prepared by Alvaro Juban Jr. Tejon Ranch Conservency Software Requirements Specification for CS 4350 Project Version 1.0 approved Prepared by Alvaro Juban Jr. Tejon Ranch Conservency Copyright 1999 by Karl E. Wiegers. Permission is granted to use, modify,

More information

Storm. Distributed and fault-tolerant realtime computation. Nathan Marz Twitter

Storm. Distributed and fault-tolerant realtime computation. Nathan Marz Twitter Storm Distributed and fault-tolerant realtime computation Nathan Marz Twitter Basic info Open sourced September 19th Implementation is 15,000 lines of code Used by over 25 companies >2700 watchers on Github

More information

PayPal Delivers World Class Customer Service, Worldwide

PayPal Delivers World Class Customer Service, Worldwide PayPal Delivers World Class Customer Service, Worldwide Greg Gates, VP of Enterprise Ops Engineering Ramki Rosanuru, Sr. Engineering Manager-COE PayPal PEGA in PayPal Why we choose PEGA? Bridge the gap

More information

Odin. SMB Cloud InsightsTM GLOBAL

Odin. SMB Cloud InsightsTM GLOBAL Odin 2015 SMB Cloud InsightsTM GLOBAL DEFINITIONS SMBs Defined We define SMBs also known as small and medium enterprises (SMEs) as companies with one to 250 employees. SMB categories include micro (1-9

More information

JVA-563. Developing RESTful Services in Java

JVA-563. Developing RESTful Services in Java JVA-563. Developing RESTful Services in Java Version 2.0.1 This course shows experienced Java programmers how to build RESTful web services using the Java API for RESTful Web Services, or JAX-RS. We develop

More information

Open Mobile Platforms. EE 392I, Lecture-6 May 4 th, 2010

Open Mobile Platforms. EE 392I, Lecture-6 May 4 th, 2010 Open Mobile Platforms EE 392I, Lecture-6 May 4 th, 2010 Open Mobile Platforms The Android Initiative T-Mobile s ongoing focus on Android based devices in US and EU markets In Nov 2007, Google announced

More information

Cloud & container monitoring , Lars Michelsen Check_MK Conference #4

Cloud & container monitoring , Lars Michelsen Check_MK Conference #4 Cloud & container monitoring 04.05.2018, Lars Michelsen Some cloud definitions Applications Data Runtime Middleware O/S Virtualization Servers Storage Networking Software-as-a-Service (SaaS) Applications

More information

Breaking Apart the Monolith with Modularity and Microservices CON3127

Breaking Apart the Monolith with Modularity and Microservices CON3127 Breaking Apart the Monolith with Modularity and Microservices CON3127 Neil Griffin Software Architect, Liferay Inc. Specification Lead, JSR 378 Portlet 3.0 Bridge for JavaServer Faces 2.2 Michael Han Vice

More information

Android Application Development using Kotlin

Android Application Development using Kotlin Android Application Development using Kotlin 1. Introduction to Kotlin a. Kotlin History b. Kotlin Advantages c. How Kotlin Program Work? d. Kotlin software Prerequisites i. Installing Java JDK and JRE

More information

1Z Oracle. Java Platform Enterprise Edition 6 Enterprise JavaBeans Developer Certified Expert

1Z Oracle. Java Platform Enterprise Edition 6 Enterprise JavaBeans Developer Certified Expert Oracle 1Z0-895 Java Platform Enterprise Edition 6 Enterprise JavaBeans Developer Certified Expert Download Full Version : http://killexams.com/pass4sure/exam-detail/1z0-895 Answer: F QUESTION: 284 Given:

More information

Android App Development

Android App Development Android App Development Outline Introduction Android Fundamentals Android Studio Tutorials Introduction What is Android? A software platform and operating system for mobile devices Based on the Linux kernel

More information

Implementation of F# language support in JetBrains Rider IDE

Implementation of F# language support in JetBrains Rider IDE SAINT-PETERSBURG STATE UNIVERSITY Software Engineering Evgeniy Auduchinok Implementation of F# language support in JetBrains Rider IDE Graduation Thesis Scientific supervisor: Senior lecturer Iakov Kirilenko

More information

Advanced Dependency Management with Gradle. Benjamin Muschko, Gradle Inc.

Advanced Dependency Management with Gradle. Benjamin Muschko, Gradle Inc. Advanced Dependency Management with Gradle Benjamin Muschko, Gradle Inc. Custom requirements in complex builds Dependency management requires conscious decisions and trade- offs Transitive dependencies

More information

Version 7.6 PREEMPTIVE SOLUTIONS DASHO. User Guide

Version 7.6 PREEMPTIVE SOLUTIONS DASHO. User Guide Version 7.6 PREEMPTIVE SOLUTIONS DASHO User Guide 1998-2015 by PreEmptive Solutions, LLC All rights reserved. Manual Version 7.6 www.preemptive.com TRADEMARKS DashO, Overload-Induction, the PreEmptive

More information

SOFTWARE ARCHITECTURES ARCHITECTURAL STYLES SCALING UP PERFORMANCE

SOFTWARE ARCHITECTURES ARCHITECTURAL STYLES SCALING UP PERFORMANCE SOFTWARE ARCHITECTURES ARCHITECTURAL STYLES SCALING UP PERFORMANCE Tomas Cerny, Software Engineering, FEE, CTU in Prague, 2014 1 ARCHITECTURES SW Architectures usually complex Often we reduce the abstraction

More information

Gradle. The Basics and Beyond

Gradle. The Basics and Beyond Gradle The Basics and Beyond Contact Info Ken Kousen Kousen IT, Inc. ken.kousen@kousenit.com http://www.kousenit.com http://kousenit.wordpress.com (blog) @kenkousen Videos (available on Safari) O'Reilly

More information

CAS 703 Software Design

CAS 703 Software Design Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software Architecture by Tao et al. (Chapters 6 and 7) 1

More information

1.3.4 case and case* macro since 1.2. Listing Conditional Branching, Fast Switch. Listing Contract

1.3.4 case and case* macro since 1.2. Listing Conditional Branching, Fast Switch. Listing Contract 1.3.4 case and case* macro since 1.2 Listing 3. 14. Conditional Branching, Fast Switch (case [expression & clauses]) case is a conditional statement which accepts a list of testing conditions to determine

More information

The Power of Analysis Framework

The Power of Analysis Framework All too often, users must create real-time planning and analysis reports with static and inconsistent sources of information. Data is locked in an Excel spreadsheet or a rigidly customized application

More information

PASS4TEST. IT Certification Guaranteed, The Easy Way! We offer free update service for one year

PASS4TEST. IT Certification Guaranteed, The Easy Way!  We offer free update service for one year PASS4TEST IT Certification Guaranteed, The Easy Way! \ We offer free update service for one year Exam : TB0-124 Title : TIBCO MDM 8 Exam Vendors : Tibco Version : DEMO Get Latest & Valid TB0-124 Exam's

More information

Getting Started with Memcached. Ahmed Soliman

Getting Started with Memcached. Ahmed Soliman Getting Started with Memcached Ahmed Soliman In this package, you will find: A Biography of the author of the book A synopsis of the book s content Information on where to buy this book About the Author

More information

gradle : Building Android Apps Mobel Meetup

gradle : Building Android Apps Mobel Meetup gradle : Building Android Apps Mobel Meetup 2013-10-15 @alexvb http://alex.vanboxel.be/ Biography Working with Java since the dark ages at Progress Software, Alcatel-Lucent, Interested in science and technology

More information

This release of Micro Focus Fortify Software includes the following new functions and features. Micro Focus Fortify Software Security Center

This release of Micro Focus Fortify Software includes the following new functions and features. Micro Focus Fortify Software Security Center Fortify Software What s New in Micro Focus Fortify Software 18.20 November 2018 This release of Micro Focus Fortify Software includes the following new functions and features. Micro Focus Fortify Software

More information

Netezza The Analytics Appliance

Netezza The Analytics Appliance Software 2011 Netezza The Analytics Appliance Michael Eden Information Management Brand Executive Central & Eastern Europe Vilnius 18 October 2011 Information Management 2011IBM Corporation Thought for

More information

Produced by. Mobile Application Development. David Drohan Department of Computing & Mathematics Waterford Institute of Technology

Produced by. Mobile Application Development. David Drohan Department of Computing & Mathematics Waterford Institute of Technology Mobile Application Development Produced by David Drohan (ddrohan@wit.ie) Department of Computing & Mathematics Waterford Institute of Technology http://www.wit.ie Android Google Services" Part 1 Google+

More information

Run-time Program Management. Hwansoo Han

Run-time Program Management. Hwansoo Han Run-time Program Management Hwansoo Han Run-time System Run-time system refers to Set of libraries needed for correct operation of language implementation Some parts obtain all the information from subroutine

More information

IBM CICS Transaction Gateway for Multiplatforms V7.1 delivers access to CICS containers and extended systems monitoring capabilities

IBM CICS Transaction Gateway for Multiplatforms V7.1 delivers access to CICS containers and extended systems monitoring capabilities IBM Europe Announcement ZP07-0457, dated November 6, 2007 IBM CICS Transaction Gateway for Multiplatforms V7.1 delivers access to CICS containers and extended systems monitoring capabilities Description...2

More information

COURSE DETAILS: CORE AND ADVANCE JAVA Core Java

COURSE DETAILS: CORE AND ADVANCE JAVA Core Java COURSE DETAILS: CORE AND ADVANCE JAVA Core Java 1. Object Oriented Concept Object Oriented Programming & its Concepts Classes and Objects Aggregation and Composition Static and Dynamic Binding Abstract

More information

HPE Partner Ready Digital Marketing Program

HPE Partner Ready Digital Marketing Program HPE Partner Ready Digital Marketing Program Accelerating your digital marketing proficiency and execution to drive business growth Collaborate Get started Table of Contents Changing B2B Buyer Behavior

More information

Oracle Identity Manager: Administration and Implementation

Oracle Identity Manager: Administration and Implementation Oracle University Contact Us: 1.800.529.0165 Oracle Identity Manager: Administration and Implementation Duration: 5 Days What you will learn The Oracle Identity Manager: Administration and Implementation

More information

JetBrains TeamCity Comparison

JetBrains TeamCity Comparison JetBrains TeamCity Comparison TeamCity is a continuous integration and continuous delivery server developed by JetBrains. It provides out-of-the-box continuous unit testing, code quality analysis, and

More information

After you create a new project you should be able to access the below windows:

After you create a new project you should be able to access the below windows: Android Studio IDE Overview Objectives: In this tutorial you will learn about the different windows and tools in Android Studio. At the end of this session you will be able to: Use different Android Windows.

More information

uclbrt-api-sdk - Android user manual uclbrt

uclbrt-api-sdk - Android user manual uclbrt uclbrt-api-sdk - Android user manual uclbrt 2016-02-29 一 Introduce to the project To configure AndroidManifest.xml,add permission.

More information

An Introduction to GIS for developers

An Introduction to GIS for developers An Introduction to GIS for developers Part 4: GIS Sharing Canserina Kurnia & Tom Shippee Agenda Web GIS ArcGIS Online Cloud-based ArcGIS Server ArcGIS Server on-premises ArcGIS a complete platform discover,

More information

Why real integration developers ride Camels

Why real integration developers ride Camels Why real integration developers ride Camels Christian Posta Principal Middleware Specialist/Architect Blog: http://blog.christianposta.com Twitter: @christianposta Email: christian@redhat.com Committer

More information

Geo Catching Sprint #3 Kick-off

Geo Catching Sprint #3 Kick-off LP IDSE - GL Geo Catching Sprint #3 Kick-off 03/01/2017 Cécile Camillieri/Clément Duffau 1 GeoCatching sprint #1 Drawing of zones on a map User login and joining of a game Browser-based geolocation of

More information

Android App Development. Muhammad Sharjeel COMSATS Institute of Information Technology, Lahore

Android App Development. Muhammad Sharjeel COMSATS Institute of Information Technology, Lahore Android App Development Muhammad Sharjeel COMSATS Institute of Information Technology, Lahore Mobile devices (e.g., smartphone, tablet PCs, etc.) are increasingly becoming an essential part of human life

More information

Inheritance Considered Harmful

Inheritance Considered Harmful Inheritance Considered Harmful Inheritance and Reentrance Example: StringOutputStream Robust Variants Forwarding Template Methods / Hooks Inner calls 1 Inheritance Interface Inheritance Subtyping Reuse

More information

Groovy & Grails Scripting for Modern Web Applications. Rohit Nayak Talentica Software

Groovy & Grails Scripting for Modern Web Applications. Rohit Nayak Talentica Software Groovy & Grails Scripting for Modern Web Applications Rohit Nayak Talentica Software Agenda Demo: Quick intro to Grails Scripting, Web Applications and Grails/Groovy REST service in Grails Demo Internals

More information

EMPLOYEE LOCATION TRACKING SERVICE

EMPLOYEE LOCATION TRACKING SERVICE WES T ST R EET AWE SOM E STR EET EMPLOYEE LOCATION TRACKING SERVICE Web & Android OVERVIEW GPS fleet tracking services have been on the market for some years now but with the explosion of smartphone usage,

More information

Developing Core Software Technologies for TI s OMAP Platform

Developing Core Software Technologies for TI s OMAP Platform SWPY006 - August 2002 White Paper By Justin Helmig Texas Instruments Senior Technical Staff, Wireless Software Applications Texas Instruments OMAP platform for wireless handsets offers a powerful hardware

More information

EMBEDDED SYSTEMS PROGRAMMING Android NDK

EMBEDDED SYSTEMS PROGRAMMING Android NDK EMBEDDED SYSTEMS PROGRAMMING 2017-18 Android NDK WHAT IS THE NDK? The Android NDK is a set of cross-compilers, scripts and libraries that allows to embed native code into Android applications Native code

More information

DITA PUBLISHING. The true costs of taking your DITA content online. A WebWorks.com White Paper.

DITA PUBLISHING. The true costs of taking your DITA content online. A WebWorks.com White Paper. DITA PUBLISHING The true costs of taking your DITA content online. A WebWorks.com White Paper. Author: Alan J. Porter VP-Operations WebWorks.com a brand of Quadralay Corporation aporter@webworks.com WW_WP0208_DITApub_TCO.

More information

Who Moved My Module? 1

Who Moved My Module? 1 Who Moved My Module? 1 About Me Yoav Landman - JFrog s CTO and Co-Founder - Creator of the Artifactory Project - 13 years experience in commercial enterprise build and development environments 2 Agenda

More information

This tutorial explains how you can use Gradle as a build automation tool for Java as well as Groovy projects.

This tutorial explains how you can use Gradle as a build automation tool for Java as well as Groovy projects. About the Tutorial Gradle is an open source, advanced general purpose build management system. It is built on ANT, Maven, and lvy repositories. It supports Groovy based Domain Specific Language (DSL) over

More information

Android Application Development Course 28 Contact Hours

Android Application Development Course 28 Contact Hours Android Application Development Course 28 Contact Hours Course Overview This course that provides the required knowledge and skills to design and build a complete Androidâ application. It delivers an extensive

More information

Using SAS Enterprise Guide with the WIK

Using SAS Enterprise Guide with the WIK Using SAS Enterprise Guide with the WIK Philip Mason, Wood Street Consultants Ltd, United Kingdom ABSTRACT Enterprise Guide provides an easy to use interface to SAS software for users to create reports

More information

Comparing JavaBeans and OSGi

Comparing JavaBeans and OSGi Comparing JavaBeans and OSGi Towards an Integration of Two Complementary Component Models HUMBERTO CERVANTES JEAN-MARIE FAVRE 09/02 Who I Am Humberto Cervantes 3d year PhD at Adèle team, LSR, Grenoble

More information

Maven Deploy Error Code 405 Method Not Allowe

Maven Deploy Error Code 405 Method Not Allowe Maven Deploy Error Code 405 Method Not Allowed in BRMS 6. Raw. (ERROR) Failed to execute goal Return code is: 405, ReasonPhrase:Method Not Allowed. Steps to replicate: 1. Create Run 'mvn deploy'. Recently

More information

Six Things Groovy Can Do For You

Six Things Groovy Can Do For You Six Things Groovy Can Do For You By Alan Green, Senior Consultant Cirrus Technologies Pty. Ltd. Abstract Groovy is a scripting language for the Java Virtual Machine, due for a 1.0 release in late 2005.

More information

Produced by. Mobile Application Development. David Drohan Department of Computing & Mathematics Waterford Institute of Technology

Produced by. Mobile Application Development. David Drohan Department of Computing & Mathematics Waterford Institute of Technology Mobile Application Development Produced by David Drohan (ddrohan@wit.ie) Department of Computing & Mathematics Waterford Institute of Technology http://www.wit.ie Android Google Services" Part 1 Google+

More information

<Insert Picture Here> WebLogic JMS Messaging Infrastructure WebLogic Server 11gR1 Labs

<Insert Picture Here> WebLogic JMS Messaging Infrastructure WebLogic Server 11gR1 Labs WebLogic JMS Messaging Infrastructure WebLogic Server 11gR1 Labs Messaging Basics Built-in Best-of-Breed Messaging (JMS) Engine Years of hardening. Strong performance.

More information

A Quick Introduction to Struts

A Quick Introduction to Struts A Quick Introduction to Struts Presented By DevelopIntelligence LLC A Quick Introduction to Struts What is Struts? Motivation for Struts Components of Struts Adopting Struts Working with Struts What is

More information

ANZSCO Descriptions The following list contains example descriptions of ICT units and employment duties for each nominated occupation ANZSCO code. And

ANZSCO Descriptions The following list contains example descriptions of ICT units and employment duties for each nominated occupation ANZSCO code. And ANZSCO Descriptions The following list contains example descriptions of ICT units and employment duties for each nominated occupation ANZSCO code. Content 261311 - Analyst Programmer... 2 135111 - Chief

More information

Mobile Application Development Google Maps Android API

Mobile Application Development Google Maps Android API Mobile Application Development Google Maps Android API Waterford Institute of Technology October 17, 2016 John Fitzgerald Waterford Institute of Technology, Mobile Application Development Google Maps Android

More information

AD105 Introduction to Application Development for the IBM Workplace Managed Client

AD105 Introduction to Application Development for the IBM Workplace Managed Client AD105 Introduction to Application Development for the IBM Workplace Managed Client Rama Annavajhala, IBM Workplace Software, IBM Software Group Sesha Baratham, IBM Workplace Software, IBM Software Group

More information

Android meets Docker. Jing Li

Android meets Docker. Jing Li Android meets Docker Jing Li 1 2 > 50 cities in Europe 3 Developer Story 4 Pain in the Admin provision machines ( e.g. mobile CI ) 5 Containerization vs Virtualization 6 Why Docker? Docker Vagrant Resource

More information

Manual Visual Studio 2010 Web Developer Offline Installer

Manual Visual Studio 2010 Web Developer Offline Installer Manual Visual Studio 2010 Web Developer Offline Installer To install, remove, and manage Visual Studio extensions, use Extension Manager. Developer Tools and Languages Visual Studio Visual Studio 2010.

More information

FlexJS. OmPrakash Apache Flex PMC Member Advisory Software Engineer, IBM

FlexJS. OmPrakash Apache Flex PMC Member Advisory Software Engineer, IBM FlexJS OmPrakash Muppirala @bigosmallm bigosmallm@apache.org Apache Flex PMC Member Advisory Software Engineer, IBM Who am I? Advisory Software Engineer at IBM Apache Flex Committer and PMC Member UI Architect

More information

Syllabus- Java + Android. Java Fundamentals

Syllabus- Java + Android. Java Fundamentals Introducing the Java Technology Syllabus- Java + Android Java Fundamentals Key features of the technology and the advantages of using Java Using an Integrated Development Environment (IDE) Introducing

More information

Outline. Introduction to Java. What Is Java? History. Java 2 Platform. Java 2 Platform Standard Edition. Introduction Java 2 Platform

Outline. Introduction to Java. What Is Java? History. Java 2 Platform. Java 2 Platform Standard Edition. Introduction Java 2 Platform Outline Introduction to Java Introduction Java 2 Platform CS 3300 Object-Oriented Concepts Introduction to Java 2 What Is Java? History Characteristics of Java History James Gosling at Sun Microsystems

More information

Android For Programmers: An App-Driven Approach (2nd Edition) (Deitel Developer Series) By Harvey Deitel, Paul Deitel

Android For Programmers: An App-Driven Approach (2nd Edition) (Deitel Developer Series) By Harvey Deitel, Paul Deitel Android For Programmers: An App-Driven Approach (2nd Edition) (Deitel Developer Series) By Harvey Deitel, Paul Deitel Android How to Program, Second Edition provides a clear and entertaining App-driven

More information

MariaDB MaxScale 2.0, basis for a Two-speed IT architecture

MariaDB MaxScale 2.0, basis for a Two-speed IT architecture MariaDB MaxScale 2.0, basis for a Two-speed IT architecture Harry Timm, Business Development Manager harry.timm@mariadb.com Telef: +49-176-2177 0497 MariaDB FASTEST GROWING OPEN SOURCE DATABASE * Innovation

More information

App Development. Mobile Media Innovation Module 6

App Development. Mobile Media Innovation Module 6 App Development Mobile Media Innovation Module 6 Mobile Media Module The Mobile Media Module is designed as a two-week, broad-based study on the mobile landscape that can be applied in many courses. The

More information

Overview p. 1 Server-side Component Architectures p. 3 The Need for a Server-Side Component Architecture p. 4 Server-Side Component Architecture

Overview p. 1 Server-side Component Architectures p. 3 The Need for a Server-Side Component Architecture p. 4 Server-Side Component Architecture Preface p. xix About the Author p. xxii Introduction p. xxiii Overview p. 1 Server-side Component Architectures p. 3 The Need for a Server-Side Component Architecture p. 4 Server-Side Component Architecture

More information

Profiling and Debugging OpenCL Applications with ARM Development Tools. October 2014

Profiling and Debugging OpenCL Applications with ARM Development Tools. October 2014 Profiling and Debugging OpenCL Applications with ARM Development Tools October 2014 1 Agenda 1. Introduction to GPU Compute 2. ARM Development Solutions 3. Mali GPU Architecture 4. Using ARM DS-5 Streamline

More information

The Proxy Pattern. Design Patterns In Java Bob Tarr

The Proxy Pattern. Design Patterns In Java Bob Tarr The Proxy Pattern Intent Provide a surrogate or placeholder for another object to control access to it Also Known As Surrogate Motivation A proxy is a person authorized to act for another person an agent

More information