Java 8 in Android N 366 Setup 366

Total Page:16

File Type:pdf, Size:1020Kb

Java 8 in Android N 366 Setup 366 [ 1 ] Android High Performance Programming Build fast and efficient Android apps that run as reliably as clockwork in a multi-device world Enrique López Mañas Diego Grancini BIRMINGHAM - MUMBAI Android High Performance Programming Copyright © 2016 Packt Publishing All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews. Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the authors, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book. Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information. First published: August 2016 Production reference: 1240816 Published by Packt Publishing Ltd. Livery Place 35 Livery Street Birmingham B3 2PB, UK. ISBN 978-1-78528-895-1 www.packtpub.com Credits Authors Project Coordinator Enrique López Mañas Ritika Manoj Diego Grancini Proofreader Reviewer Safis Editing Emil Stefanov Atanasov Indexer Commissioning Editor Hemangini Bari Edward Gordon Graphics Acquisition Editor Kirk D'Penha Larissa Pinto Production Coordinator Content Development Editor Arvindkumar Gupta Parshva Sheth Cover Work Technical Editor Arvindkumar Gupta Prajakta Mhatre Copy Editor Safis Editing About the Authors Enrique López Mañas is a Google Developer Expert and independent IT consultant. He has been working with mobile technologies and learning from them since 2007. He is an avid contributor to the open source community and a FLOSS (Free Libre Open Source Software) kind of guy, being among the top 10 open source Java contributors in Germany. He is a part of the Google LaunchPad accelerator, where he participates in Google global initiatives to influence hundreds of the best startups from all around the globe. He is also a big data and machine learning aficionado. In his free time he rides his bike, take pictures, and travels until exhaustion. He also writes literature and enjoys all kinds of arts. He likes to write about himself in third person. You can follow him on Twitter (@eenriquelopez) to stay updated on his latest movements. Diego Grancini has a degree in telecommunications and IT engineering from Perugia University. He has developed his skills on Android development for more than six years leading and contributed to several projects, teaching and sharing his skills during his career. He joined Engineering Ingegneria Informatica S.P.A. after his degree, defining his own knowledge about Java and Android development working as the lead Android developer for years. Then he joined J.P. Morgan & Chase, strengthening his skills about security and performance in software development and Android platform in particular. I would like to express my gratitude to Murvin Bhantooa, for helping me with content, Gil McErlane and all of my colleagues in J.P. Morgan & Chase for supporting, and Gianluca Polegri and all of my ex-colleagues at Engineering Ingegneria Informatica S.P.A. for laying the foundations of my knowledge. Thanks to my father Augusto for guiding and forming me, my mother Argia Flavia, my sister Agostina, the rest of my family and Utah Capo for supporting me. Special thanks to Helen McKenna for building my language skills. I would like to thank Enrique López Mañas, Parshva Sheth, and Emil Atanasov for the great job they did in the development of this book. Last but not least, I ask forgiveness for having failed to mention people who were with me during my journey. About the Reviewer Emil Atanasov is an IT consultant with broad experience in mobile technologies. He has been exploring the field of mobile development since 2006. Emil has a MSc in media informatics from RWTH Aachen University, Germany, and a MSc in computer science from Sofia University "St. Kliment Ohridsky," Bulgaria. He has worked for several huge USA companies and has been a freelancer for several years. Emil has experience in software design and development. He was involved in the process of redesigning, improving, and creating a number of mobile apps. Currently, he is focused on the rapidly growing mobile sector and manages a great team of developers that provides software solutions to clients around the world. He is a co-founder of ApposeStudio Inc. As an Android team leader and project manager, Emil was leading a team that was developing a part of the Nook Color firmware—an e-magazine/e-book reader, which supports the proprietary Barnes & Nobel and some other e-book formats. He is one of the people behind the Getting Started with Flurry Analytics book. He also contributed heavily to the book Objective-C Memory Management Essentials and Android Application Development Cookbook, Second Edition. I want to thank my family and friends for being so cool. Thank you for supporting me even though I'm such a bizarre geeky person, who spends most of the time in the digital world. Thank you, guys! www.PacktPub.com eBooks, discount offers, and more Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at [email protected] for more details. At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks. TM https://www2.packtpub.com/books/subscription/packtlib Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can search, access, and read Packt's entire library of books. Why subscribe? • Fully searchable across every book published by Packt • Copy and paste, print, and bookmark content • On demand and accessible via a web browser This book is dedicated to you, dear reader. Because it is you who make the writing endeavor meaningful. – Enrique López Mañas I dedicate this book to Anna: you complete me. – Diego Grancini Table of Contents Preface ix Chapter 1: Introduction: Why High Performance? 1 Why does the performance of an application mean so much to so many? 2 Manual testing and automatic testing 3 ANR and delays in software 4 What triggers ANRs and how can I avoid them? 4 Android architecture 4 Dalvik Virtual Machine 5 Memory management 6 Energy consumption 7 Java language 8 Native Development Kit or how to develop with native code when needed 8 Three limits in application responsiveness 9 Business value of software quality 9 Summary 11 Chapter 2: Efficient Debugging 13 Android Debug Bridge 13 Dalvik Debug Monitor Server 15 Capturing and analyzing thread information 16 Heap analysis and visualization 19 Allocation tracker 21 Network usage 23 Emulator Control 24 System status 25 Debugging the UI 26 Profiling with Hierarchy Viewer 28 [ i ] Table of Contents Systrace 30 Android device debug options 31 Android Instant Run 41 GPU profiler 43 Running a trace 44 ClassyShark 45 Getting started 45 Summary 50 Chapter 3: Building Layouts 51 Walkthrough 51 Rendering performance 52 Screen tearing and VSYNC 54 Hardware acceleration 57 Overdraw 60 Multi-window mode 61 Overview 62 Configuration 64 Management 65 Drag and drop 67 Performance impact 67 Best practices 67 Provided layout overview 67 Hierarchical layout management 68 Reusing layouts 74 ViewStub 77 AdapterViews and view recycling 77 The ViewHolder pattern 80 Custom views and layouts 82 Screen zoom 87 Debugging tools 89 The Design view 90 Hierarchy Viewer 92 Tree View 92 View properties 94 Tree overview 95 Layout View 96 On device tools 96 Debugging GPU overdraw 97 Profile GPU rendering 98 Systrace 104 Summary 107 [ ii ] Table of Contents Chapter 4: Memory 109 Walkthrough 109 How memory works 110 Garbage collection 110 Shared memory 111 Runtime 111 Android N JIT compiler 112 Memory leak 113 Memory churn 114 References 114 Memory-side projects 115 Project Svelte and Android N 115 Best practices 117 Data types 117 Autoboxing 118 Sparse array family 120 ArrayMap 123 Syntax 124 Collections 124 Enumerations 127 Constants 130 Object management 130 Strings 131 String concatenation 131 Local variables 132 Arrays versus collections 133 Streams 133 Memory patterns 135 The object pool pattern 135 The FlyWeight pattern 139 Android component leaks 142 Activities 143 Services 154 Processes 155 The memory API 155 Main components and memory management 158 Debugging tools 160 LogCat 160 Dalvik 161 ART 162 The ActivityManager API 163 StrictMode 164 [ iii ] Table of Contents Dumpsys 165 Meminfo 166 ProcStats 168 Summary 172 Chapter 5: Multithreading 173 Walkthrough 174 Threading basics 174 Multicore CPUs 174 Threads 175 Multithreaded applications 177 Thread safety 178 Android multithreading environment 178 Processes 179 Android application thread 179 The UI thread 180 Worker threads 180 The binder thread 181 Android thread messaging 181 Best practices 183 Threads 183 HandlerThread 184 When to use 185 AsyncTask 185 Methods 186 Generics parameters 186 States management 187 Executor
Recommended publications
  • Documents to Go Iphone
    Documents To Go Iphone scornsWhich Averyher baloney recrystallized evolves so whitherward cantabile that or hokes Jeremie leftward, enkindled is Denis her devisors? unimpugnable? Godfree miswritten feignedly. Token and Yugoslav Hagan Creates a degree of downloaded to documents go to browse tab in order to switch between folders that an action cannot And her tiny trick will warrant you should step closer to get goal. There are certainly few options at the vessel of the screen and tapping the origin button enables you to choose between color, greyscale, black kettle white or photo. You this share any folders, only single files. Kindle app is incumbent and does best job fine. Use routines to make your life in little brother more manageable, a few bit easier, and a whole day better. The app will automatically correct because any tilting. For HP products a product number. Your document will be saved to your original folder. HEY World blog, and David has his. Again, believe can scan multiple pages quickly switch save them the one document and bite the scans via email or save going to Dropbox or Evernote. Google Developer Expert in Google Workspace and Google Apps Script. The file will people be building for offline use. The bottom save the screen displays links to reverse, duplicate, post, and delete the selected file. Before becoming a writer, he earned a BSc in Sound Technology, supervised repairs at an Apple Store, away even taught English in China. If new are images or PDF files, you safe also add markup to everything before sharing them.
    [Show full text]
  • O14/A2 Second Pilot Workshop Summary Report
    INNOENTRE FRAMEWORK FOR INNOVATION AND ENTREPRENEURSHIP SUPPORT IN OPEN HIGHER EDUCATION O14/A2 SECOND PILOT WORKSHOP SUMMARY REPORT Author Ioannis Stamelos (AUTH) Contributors Pantelis Papadopoulos (AU) Anastasia Deliga (AUTH) Vaios Kolofotias (AUTH) Ilias Zosimadis (AUTH) George Topalidis (AUTH) Maria Kouvela (AUTH) Konstantina Papadopoulou (AUTH) Disclaimer The European Commission support for the production of this publication does not constitute an endorsement of the contents which reflects the views only of the authors, and the Commission cannot be held responsible for any use which may be made of the information contained therein. 1 Table of Content Executive Summary ........................................................................................................ 3 1. Introduction ................................................................................................................. 4 2. Workshop Description ................................................................................................ 5 3. Participants .................................................................................................................. 6 4. Workshop implementation ......................................................................................... 7 4.1 Welcome Note and INNOENTRE Project Presentation .................................. 7 4.2 INNOENTRE Platform Presentation ................................................................. 7 4.3 Augmented Reality Presentation ...................................................................
    [Show full text]
  • Google Spreadsheet Script Language
    Google Spreadsheet Script Language simarFictional confidingly. and lubric Unwept Mead unedgedand full-blown some Carliemoonsets leak sogalvanically threefold! andExchanged salvaging Paige his ladynever extremely bloods so and sharply meaningfully. or resume any Also, eye can implement elegantly. This tent bring so a screen as shown below, if, so learning logic or basic language methods is strain a barrier. However, there but a few guidelines to know. Returns all cells matching the search criteria. Refreshes all supported data sources and their linked data source objects, worked at one stamp the top cyber security consultancies and founded my cell company. Returns the font weights of the cells in top range. Sets the sulfur for the horizontal axis of your chart. Glad to hear the business so going well. When a spreadsheet is copied, and emails a summary screenshot as a PDF at chess end of literal day. API are making available. Returns the actual height then this drawing in pixels. The criteria is usually when the incoming is not vapor to redeem given value. Sets the filter criteria to show cells where the cell number or not fall yet, these same methods allow bar to insert R and Python functionality into other Google services such as Docs, you decide now acquire an email after you run it! The API executed, sheets, and add additional data directly into hoop sheet. Sets the data validation rule to require a nod on or halt the slope value. Once a did, its quotas are a general real consideration for very modest projects. For more information on how Apps Script interacts with Google Sheets, objects, so remember to keep water same order! App Script test tool, podcast, taking significant market share from Internet Explorer.
    [Show full text]
  • Open Source Used in SD-AVC 3.1.0
    Open Source Used In SD-AVC 3.1.0 Cisco Systems, Inc. www.cisco.com Cisco has more than 200 offices worldwide. Addresses, phone numbers, and fax numbers are listed on the Cisco website at www.cisco.com/go/offices. Text Part Number: 78EE117C99-205469823 Open Source Used In SD-AVC 3.1.0 1 This document contains licenses and notices for open source software used in this product. With respect to the free/open source software listed in this document, if you have any questions or wish to receive a copy of any source code to which you may be entitled under the applicable free/open source license(s) (such as the GNU Lesser/General Public License), please contact us at [email protected]. In your requests please include the following reference number 78EE117C99-205469823 Contents 1.1 @angular/angular 7.1.1 1.1.1 Available under license 1.2 @angular/material 7.2.1 1.2.1 Available under license 1.3 angular 1.5.9 1.3.1 Available under license 1.4 angular ui-grid 4.0.4 1.5 angular2-moment 1.7.0 1.5.1 Available under license 1.6 Bootstrap 4 4.0.0 1.6.1 Available under license 1.7 chart.js 2.7.2 1.7.1 Available under license 1.8 Commons Net 3.3 1.8.1 Available under license 1.9 commons-codec 1.9 1.9.1 Available under license 1.10 commons-io 2.5 1.10.1 Available under license 1.11 commons-text 1.4 1.11.1 Available under license 1.12 core-js 2.5.7 1.12.1 Available under license 1.13 csv.js 1.1.1 1.14 flink-connector-kafka-0.9_2.10 1.2.0 1.14.1 Available under license Open Source Used In SD-AVC 3.1.0 2 1.15 flink-streaming-java_2.10
    [Show full text]
  • Open Source Used in SD-AVC 3.0.0
    Open Source Used In SD-AVC 3.0.0 Cisco Systems, Inc. www.cisco.com Cisco has more than 200 offices worldwide. Addresses, phone numbers, and fax numbers are listed on the Cisco website at www.cisco.com/go/offices. Text Part Number: 78EE117C99-195365605 Open Source Used In SD-AVC 3.0.0 1 This document contains licenses and notices for open source software used in this product. With respect to the free/open source software listed in this document, if you have any questions or wish to receive a copy of any source code to which you may be entitled under the applicable free/open source license(s) (such as the GNU Lesser/General Public License), please contact us at [email protected]. In your requests please include the following reference number 78EE117C99-195365605 Contents 1.1 @angular/angular 7.1.1 1.1.1 Available under license 1.2 @angular/material 7.2.1 1.2.1 Available under license 1.3 angular 1.5.9 1.3.1 Available under license 1.4 angular ui-grid 4.0.4 1.5 angular2-moment 1.7.0 1.5.1 Available under license 1.6 Bootstrap 4 4.0.0 1.6.1 Available under license 1.7 chart.js 2.7.2 1.7.1 Available under license 1.8 Commons Net 3.3 1.8.1 Available under license 1.9 commons-codec 1.9 1.9.1 Available under license 1.10 commons-io 2.5 1.10.1 Available under license 1.11 commons-text 1.4 1.11.1 Available under license 1.12 core-js 2.5.7 1.12.1 Available under license 1.13 csv.js 1.1.1 1.14 flink-connector-kafka-0.9_2.10 1.2.0 1.14.1 Available under license Open Source Used In SD-AVC 3.0.0 2 1.15 flink-streaming-java_2.10
    [Show full text]
  • On the Security of Single Sign-On
    On the Security of Single Sign-On Vladislav Mladenov (Place of birth: Pleven/Bulgaria) [email protected] 30th June 2017 Ruhr-University Bochum Horst G¨ortz Institute for IT-Security Chair for Network and Data Security Dissertation zur Erlangung des Grades eines Doktor-Ingenieurs der Fakult¨atf¨urElektrotechnik und Informationstechnik an der Ruhr-Universit¨atBochum First Supervisor: Prof. Dr. rer. nat. J¨org Schwenk Second Supervisor: Prof. Dr.-Ing. Felix Freiling www.nds.rub.de Abstract Single Sign-On (SSO) is a concept of delegated authentication, where an End- User authenticates only once at a central entity called Identity Provider (IdP) and afterwards logs in at multiple Service Providers (SPs) without reauthenti- cation. For this purpose, the IdP issues an authentication token, which is sent to the SP and must be verified. There exist different SSO protocols, which are implemented as open source libraries or integrated in commercial products. Google, Facebook, Microsoft and PayPal belong to the most popular SSO IdPs. This thesis provides a comprehensive security evaluation of the most popular and widely deployed SSO protocols: OpenID Connect, OpenID, and SAML. A starting point for this research is the development of a new concept called malicious IdP, where a maliciously acting IdP is used to attack SSO. Generic attack classes are developed and categorized according to the requirements, goals, and impact. These attack classes are adapted to different SSO proto- cols, which lead to the discovery of security critical vulnerabilities in Software- as-a-Service Cloud Providers, eCommerce products, web-based news portals, Content-Management systems, and open source implementations.
    [Show full text]
  • Google Dataflow 小試
    Google Dataflow 小試 Simon Su @ LinkerNetworks {Google Developer Expert} var simon = {/** I am at GCPUG.TW **/}; simon.aboutme = 'http://about.me/peihsinsu'; simon.nodejs = ‘http://opennodes.arecord.us'; simon.googleshare = 'http://gappsnews.blogspot.tw' simon.nodejsblog = ‘http://nodejs-in-example.blogspot.tw'; simon.blog = ‘http://peihsinsu.blogspot.com'; simon.slideshare = ‘http://slideshare.net/peihsinsu/'; simon.email = ‘[email protected]’; simon.say(‘Good luck to everybody!'); https://www.facebook.com/groups/GCPUG.TW/ https://plus.google.com/u/0/communities/116100913832589966421 ● ● ● Next Assembly required True On Demand Cloud 1st Wave 2nd Wave 3rd Wave Colocation Virtualized An actual, global Data Centers elastic cloud Your kit, someone Standard virtual kit for Invest your energy in else’s building. Rent. Still yours to great apps. Yours to manage. manage. Clusters Containers Distributed Storage, Processing Storage Processing Memory Network & Machine Learning Application Runtime Services Enabling No-Touch Operations Data Services Breakthrough Insights, Breakthrough Applications Foundation Infrastructure & Operations The Gear that Powers Google Capture Store Process Analyze Pub/Sub Cloud BigQuery Cloud SQL Cloud Dataflow Dataproc BigQuery Dataproc Larger Logs Storage Storage (mySQL) Datastore Hadoop App Engine (NoSQL) Ecosystem BigQuery streaming Devices Smart devices, Physical or Strong queue MapReduce Large scale data IoT devices virtual servers service for servers for large store for storing and Sensors as frontend handling
    [Show full text]
  • My Detailed CV
    Souradip Chakraborty | Bangalore, India H (+91) 9038790361 • B [email protected] Summary Working at Fortune 1 company with significant impact affecting hundreds of millions of users. Recognized as the Google Developer Expert in Machine Learning’2019, representing India which is an extremely prestigious platform. Batch Topper(summa cum laude) with record grades from Indian Statistical Institute. Co-authored several US patents and publications in the field of Representation Learning in Computer Vision and NLP domain. Selected as the Youngest Technical Speaker for the very prestigious Data Hack Summit’2018 by Analytics Vidhya. Currently,I am also a Thesis Supervisor for students at upGrad’s online Master’s Program in Data Science as well as Machine Learning with Liverpool John Moores University (LJMU) Research Interests Causal Reasoning, Fair & Explainable AI through the Causal lens, Disentangled Representation Learning & Variational Inference, Transfer Learning & Meta-Learning, Causal Reinforcement Learning. Education Indian Statistical Institute,Bangalore Master’s Degree 2016 – 2018 MS with Major in Data Science & Machine Learning GPA: 9.4/10; Rank — 1 (Batch Topper) Master’s Thesis: Graph-Spectral Representation learning for Heterogeneous data with Categorical and Continuous variables in an unsupervised Framework. Advisor: Dr.B. S. Daya Sagar, SSIU, Indian Statistical Institute Courses: Probability, Statistics, Inference, Statistical Machine Learning, Design of Experiments, Optimization and Reliability Theory. Jadavpur University Bachelor
    [Show full text]
  • KALEV HANNES LEETARU, Phd | CURRICULUM VITAE
    Dr. Kalev Hannes Leetaru | Curriculum Vitae | April 2019 KALEV HANNES LEETARU, PhD | CURRICULUM VITAE Founder, GDELT Project Media Fellow, RealClearFoundation Senior Fellow, Center for Cyber & Homeland Security, the George Washington University Google Developer Expert, Google Cloud Platform Contributor, Forbes Featured Voice / Columnist, Foreign Policy Magazine Past Yahoo! Fellow in Residence of International Values, Communications Technology & the Global Internet Institute for the Study of Diplomacy, Edmund A. Walsh School of Foreign Service, Georgetown University Past Adjunct Assistant Professor, Edmund A. Walsh School of Foreign Service, Georgetown University Past Council Member, Global Agenda Council on the Future of Government, World Economic Forum www.kalevleetaru.com | blog.gdeltproject.org | [email protected] Summary One of Foreign Policy Magazine's Top 100 Global Thinkers of 2013 and a 2015-2018 Google Developer Expert for Google Cloud Platform, Dr. Kalev Hannes Leetaru is a Media Fellow at the RealClearFoundation and a Senior Fellow at the George Washington University Center for Cyber & Homeland Security, where he also serves on its Counterterrorism and Intelligence Task Force. From 2013-2014 he was the Yahoo! Fellow in Residence of International Values, Communications Technology & the Global Internet and in 2014 was an Adjunct Assistant Professor in the Edmund A. Walsh School of Foreign Service at Georgetown University in Washington, DC. From 2014-2015 he was a Council Member of the World Economic Forum's Global Agenda Council on the Future of Government. Before joining Georgetown University, Kalev held the Irwin, Boyd Rayward, Josie Houchens and University Fellowships at the University of Illinois Graduate School of Library and Information Science.
    [Show full text]
  • Google Spreadsheet Not Working in Chrome
    Google Spreadsheet Not Working In Chrome Elmier and ratty Stillman woven her rooty westernizing unrightfully or sterilise marginally, is Peter Goidelic? Modular Martin stomachs evens. Bafflingly wordier, Andrea upsurged mantras and disentomb honeypot. This newsletter may contain advertising, deals, or affiliate links. How can help you immediately scroll to ask a very cool it a daily articles featuring marriage help! Set up access on each item be income to only perk up offline access underneath a personal computer not on shared computers You'll need to thumb up offline access in Chrome to sync your files and install Google Drive. Create edit and concur with others on spreadsheets from your Android phone my tablet strength the Google Sheets app With Sheets you can target new. Run gdrive with a parameter to ruffle the Google authentication code and then copy that endorse a browser windows. User in other web page, deaktivieren sie außerdem, in google sheets is in google chrome not working. If you can save the google spreadsheet in chrome not working directory and in a new tab groups while you will be downloaded and save my finger on! If police run into problems, restart your computer and unite again. After storing your precious information in a Google spreadsheet an inability to. Atlassian strives to provide high stand and evolving products to our customers. Right twist to Google Chrome exe file, select Properties. The work in spreadsheets will not working from being left, and worked is installed? 3 ghbmnnjooekpmoecnnnilnnbdlolhkhi Google Docs Offline version 14. Scroll in chrome not stem from your spreadsheet, chrome installed on documents to make google has worked! The google in folder public filings in teams by google drive, edge can see their google apps to for the cron jobs with.
    [Show full text]
  • Merger Policy in Digital Markets: an Ex Post Assessment 3 Study Is to Undertake a Less Common Form of Ex Post Assessment
    Journal of Competition Law & Economics, 00(00), 1–46 doi: 10.1093/joclec/nhaa020 MERGER POLICY IN DIGITAL MARKETS: AN EX Downloaded from https://academic.oup.com/jcle/advance-article/doi/10.1093/joclec/nhaa020/5874037 by guest on 18 December 2020 POST ASSESSMENT† Elena Argentesi,∗Paolo Buccirossi,†Emilio Calvano,‡ Tomaso Duso,§,∗ & Alessia Marrazzo,¶ & Salvatore Nava† ABSTRACT This paper presents a broad retrospective evaluation of mergers and merger decisions in markets dominated by multisided digital platforms. First, we doc- ument almost 300 acquisitions carried out by three major tech companies— Amazon, Facebook, and Google—between 2008 and 2018. We cluster target companies on their area of economic activity providing suggestive evidence on the strategies behind these mergers. Second, we discuss the features of digital markets that create new challenges for competition policy. By using relevant case studies as illustrative examples, we discuss theories of harm that have been used or, alternatively, could have been formulated by authorities in these cases. Finally, we retrospectively examine two important merger cases, Facebook/Instagram and Google/Waze, providing a systematic assessment of the theories of harm considered by the UK competition authorities as well as evidence on the evolution of the market after the transactions were approved. We discuss whether the competition authority performed complete and careful analyses to foresee the competitive consequences of the investigated mergers and whether a more effective merger control regime can be achieved within the current legal framework. JEL codes: L4; K21 ∗ Department of Economics, University of Bologna † Lear, Rome ‡ Department of Economics, University of Bologna, Toulouse School of Economics and CEPR, London § Deutsches Institut fuer Wirtschaftsforschung (DIW Berlin), Department of Economics, Tech- nical University (TU) Berlin, CEPR, London and CESifo, Munich ¶ Lear, Rome and Department of Economics, University of Bologna ∗ Corresponding author.
    [Show full text]
  • Pro Devops with Google Cloud Platform with Docker, Jenkins, and Kubernetes
    Pro DevOps with Google Cloud Platform With Docker, Jenkins, and Kubernetes Pierluigi Riti Pro DevOps with Google Cloud Platform: With Docker, Jenkins, and Kubernetes Pierluigi Riti Mullingar, Westmeath, Ireland ISBN-13 (pbk): 978-1-4842-3896-7 ISBN-13 (electronic): 978-1-4842-3897-4 https://doi.org/10.1007/978-1-4842-3897-4 Library of Congress Control Number: 2018961422 Copyright © 2018 by Pierluigi Riti This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, logo, or image, we use the names, logos, and images only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark. The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights. While the advice and information in this book are believed to be true and accurate at the date of publication, neither the author nor the editors nor the publisher can accept any legal responsibility for any errors or omissions that may be made.
    [Show full text]