Supporting Source Code Comprehension During Software Evolution and Maintenance

Total Page:16

File Type:pdf, Size:1020Kb

Supporting Source Code Comprehension During Software Evolution and Maintenance SUPPORTING SOURCE CODE COMPREHENSION DURING SOFTWARE EVOLUTION AND MAINTENANCE A dissertation submitted to Kent State University in partial fulfillment of the requirements for the degree of Doctor of Philosophy by Nouh Alhindawi August, 2013 Dissertation written by Nouh Alhindawi M.S., Al-Balqa’ Applied University, Jordan, 2006 B.S., Yarmouk University, Jordan, 2004 Approved by Dr. Jonathan I. Maletic , Chair, Doctoral Dissertation Committee Dr. Feodor F. Dragan , Members, Doctoral Dissertation Committee Dr. Rouming Jin Dr. Michael L. Collard Dr. Catherine L. Smith Accepted by Dr. Javed I. Khan , Chair, Department of Computer Science Dr. James L. Blank , Dean, College of Arts and Sciences ii TABLE OF CONTENTS LIST OF FIGURES .....................................................................................................VIII LIST OF TABLES ........................................................................................................ XII ACKNOWLEDGMENTS ...........................................................................................XVI CHAPTER 1 INTRODUCTION..................................................................................... 1 1.1 Goals of the Research................................................................................................ 3 1.2 Contributions............................................................................................................. 5 1.3 Publication Notes ...................................................................................................... 6 1.4 Organization .............................................................................................................. 7 CHAPTER 2 BACKGROUND AND RELATED WORK ........................................... 8 2.1 Software Maintenance Overview .............................................................................. 8 2.2 Historical Perspective for Program Comprehension............................................... 12 2.3 Information Retrieval in Software Engineering...................................................... 19 CHAPTER 3 IMPROVING FEATURE LOCATION BY ENHANCING SOURCE CODE WITH STEREOTYPES......................................................................... 23 3.1 Approach Hypothesis .............................................................................................. 26 3.2 Related Work........................................................................................................... 27 3.2.1 Previous Work on Feature Location.............................................................. 27 3.2.2 Previous Work on Feature Location Using IR.............................................. 28 3.3 Method Stereotypes................................................................................................. 31 3.3.1 Stereotypes Definition................................................................................... 31 3.3.2 Method Stereotypes Taxonomy .................................................................... 31 iii 3.4 Latent Semantic Indexing (LSI).............................................................................. 36 3.4.1 Why LSI? ...................................................................................................... 38 3.4.2 LSI Processing Steps..................................................................................... 39 3.5 LSI+Stereotypes for Feature Location .................................................................... 43 3.6 Experimental Study................................................................................................. 45 3.6.1 Design and Objective of the Experimental Study ......................................... 45 3.6.2 Evaluation Measures ..................................................................................... 47 3.6.3 Experiments Feature Selection and Determining Relevant Methods............ 49 3.6.4 Locating Features in HippoDraw System ..................................................... 50 3.6.5 Locating Features in Qt System .................................................................... 55 3.7 Discussion ............................................................................................................... 58 3.8 Threats to Validity................................................................................................... 66 3.9 Summary ................................................................................................................. 67 CHAPTER 4 SOURCE CODE INDEXING FOR FEATURE LOCATION............ 69 4.1 A Case Study of Feature Location with and without Comments............................ 70 4.1.1 Code Comments Overview ........................................................................... 71 4.1.2 Code Comments Categorizations.................................................................. 74 4.1.3 Case Study Comments Samples.................................................................... 77 4.1.4 Evaluation Strategy and Results Discussion................................................. 78 4.1.5 Study Recommendations............................................................................... 84 4.1.6 Summary ....................................................................................................... 85 4.2 A Case Study of Feature Location with and without Function Calls...................... 86 iv 4.2.1 Function Calls Overview............................................................................... 87 4.2.2 Function Calls in Code Comprehension ....................................................... 88 4.2.3 Evaluation Strategy and Discussion.............................................................. 91 4.2.4 Summary ....................................................................................................... 96 CHAPTER 5 LSI-BASED SOLUTION FOR CATEGORIZING SOFTWARE REPOSITORY COMMITS FOR MAINTENANCE...................................... 97 5.1 Repository Commits Overview............................................................................... 99 5.2 Version Control Systems....................................................................................... 101 5.3 Commits Identification.......................................................................................... 102 5.4 Related Works ....................................................................................................... 103 5.4.1 Previous Work on Software Repository Classification............................... 103 5.4.2 Previous Work on the use of IR in Software Repository............................ 104 5.5 Case Study: Adaptive Commits Identification...................................................... 107 5.5.1 Latent Semantic Indexing (LSI) for Adaptive Commits............................. 108 5.5.2 Case Study Evaluation ................................................................................ 113 5.5.3 Experiments Findings.................................................................................. 115 5.5.4 Discussion ................................................................................................... 122 5.5.5 Threats to Validity....................................................................................... 127 5.6 Summary ............................................................................................................... 127 CHAPTER 6 SOURCE CODE QUERY ASSISTANT BUILDER.......................... 129 6.1 Preprocessing Steps............................................................................................... 131 6.2 Algorithm Pseudo-Code........................................................................................ 133 v 6.3 Tool Program Setup .............................................................................................. 134 6.4 Tool Usage Instructions ........................................................................................ 134 6.5 Tool Interface Components Description ............................................................... 136 6.5.1 File Menu .................................................................................................... 136 6.5.2 User Word Entries....................................................................................... 136 6.5.3 User Selected Terms/Entries ....................................................................... 138 6.5.4 Synonyms List............................................................................................. 138 6.5.5 Matching Document Count ......................................................................... 138 6.5.6 Co-occurring Term Count ........................................................................... 139 6.5.7 Function Name Terms Info ......................................................................... 139 6.5.8 Co-occurring Terms .................................................................................... 139 6.5.9 Number of Co-occurrences and Total Occurrences .................................... 139 6.5.10 Percentage of Matching Functions Containing Term ................................. 140 6.5.11 Percentage of All Functions Containing Term............................................ 140 6.6 Related Work......................................................................................................... 140 6.7 Tool Evaluation..................................................................................................... 142 6.8 Summary
Recommended publications
  • KDE 2.0 Development, Which Is Directly Supported
    23 8911 CH18 10/16/00 1:44 PM Page 401 The KDevelop IDE: The CHAPTER Integrated Development Environment for KDE by Ralf Nolden 18 IN THIS CHAPTER • General Issues 402 • Creating KDE 2.0 Applications 409 • Getting Started with the KDE 2.0 API 413 • The Classbrowser and Your Project 416 • The File Viewers—The Windows to Your Project Files 419 • The KDevelop Debugger 421 • KDevelop 2.0—A Preview 425 23 8911 CH18 10/16/00 1:44 PM Page 402 Developer Tools and Support 402 PART IV Although developing applications under UNIX systems can be a lot of fun, until now the pro- grammer was lacking a comfortable environment that takes away the usual standard activities that have to be done over and over in the process of programming. The KDevelop IDE closes this gap and makes it a joy to work within a complete, integrated development environment, combining the use of the GNU standard development tools such as the g++ compiler and the gdb debugger with the advantages of a GUI-based environment that automates all standard actions and allows the developer to concentrate on the work of writing software instead of managing command-line tools. It also offers direct and quick access to source files and docu- mentation. KDevelop primarily aims to provide the best means to rapidly set up and write KDE software; it also supports extended features such as GUI designing and translation in con- junction with other tools available especially for KDE development. The KDevelop IDE itself is published under the GNU Public License (GPL), like KDE, and is therefore publicly avail- able at no cost—including its source code—and it may be used both for free and for commer- cial development.
    [Show full text]
  • Pris for Fremme Av Fri Programvare I Norge 2002
    NUUG og HiOs Pris for fremme av fri programvare i Norge 2002 Sted: Høgskolen i Oslo, Festsalen, Anna Sethnes hus Dato: 7. oktober 2002 Tid: 17:00 Prisen for fremme av fri programvare For første gang i Norge deles det ut en Fri programvare pris for fri programvare, dvs programvare hvor Hva er fri programvare? Fri programvare er brukerne har fullt innsyn og kontroll. Fri programvare laget med fullt innsyn for alle. programvare er mest kjent gjennom operativ- Brukere st˚arfritt til ˚abenytte programvaren systemet Linux som gir en enorm base med som de vil og s˚amye de vil, og de f˚ar tilgang til programvare som er rimelig ˚ata i bruk – og kildekoden, slik at eventuelle feil raskere opp- som lastes ned helt gratis fra Internett. dages og fikses, og forbedringer kan program- Prisen er et stipend p˚a30.000 kroner i meres av brukere selv. Programvaren er oftest stipend fra NUUG pluss diplom og vase fra gratis, og leverandører tjener heller penger gjen- Høgskolen i Oslo. Den g˚ar til prosjekter eller nom brukerstøtte og opplæring. personer i henhold til utvalgskriteriene som Fri programvare er miljøskapende og har ble vedtatt av NUUG-styret 13. mai 2002. b˚adepedagogiske og praktiske fordeler for de Prisen deles ut p˚aet arrangement ved Høg- involverte. Fri programvare gir ofte en inngangs- skolen i Oslo mandag 7. oktober kl.17.00. Ut- billett til “cutting edge”-teknologi, og fører til valgskriteriene lyder: stabile, kvalitetssikrede systemer gjennom en Prisen g˚artil en person eller en “peer review”, det vil si kritisk gjennomsyn gruppe i Norge som har bidratt til av koden av andre programmerere.
    [Show full text]
  • Affinity Photo-Digikam Summer 2020
    UCLA Research Workshop Series Summer 2020 Affinity Photo & digiKam Anthony Caldwell What is Affinity Photo? Wikipedia: Affinity Photo is a raster graphics editor Serif: If you could create your own photo editing software, it would work like this. What is digiKam? Wikipedia: digiKam is a free and open-source image organizer and tag editor digiKam: digiKam is an advanced open-source digital photo management application that provides a comprehensive set of tools for importing, managing, editing, and sharing photos and raw files. Color Color Space Wikipedia: A color space is a specific organization of colors. In combination with physical device profiling, it allows for reproducible representations of color, in both analog and digital representations. Color depth The human eye can distinguish around a million colors Color depth 1-bit color 2 colors 2-bit color 4 colors 3-bit color 8 colors 4-bit color 16 colors 5-bit color 32 colors 8-bit color 256 colors 12-bit color 4096 colors High color (15/16-bit) 32,768 colors or 65,536 colors True color (24-bit) 16,777,216 colors Deep color (30-bit) 1.073 billion 36-bit approximately 68.71 billion colors 48-bit approximately 281.5 trillion colors Note: different configurations of software and hardware can produce different color values for each bit depth listed Color Space Commission internationale de l’éclairage 1931 color space Image Source: https://dot-color.com Color Space Additive color mixing Image Source: https://en.wikipedia.org Color Space K Subtractive color mixing Image Source: https://en.wikipedia.org Color Space The Lab Color Space Image Source: https://docs.esko.com/ Color Space Color Space Comparison Image Source: https://www.photo.net Affinity Photo and digiKam… Questions? Anthony Caldwell UCLA Digital Research Consortium Scholarly Innovation Labs 11630L Charles E.
    [Show full text]
  • Rkward: a Comprehensive Graphical User Interface and Integrated Development Environment for Statistical Analysis with R
    JSS Journal of Statistical Software June 2012, Volume 49, Issue 9. http://www.jstatsoft.org/ RKWard: A Comprehensive Graphical User Interface and Integrated Development Environment for Statistical Analysis with R Stefan R¨odiger Thomas Friedrichsmeier Charit´e-Universit¨atsmedizin Berlin Ruhr-University Bochum Prasenjit Kapat Meik Michalke The Ohio State University Heinrich Heine University Dusseldorf¨ Abstract R is a free open-source implementation of the S statistical computing language and programming environment. The current status of R is a command line driven interface with no advanced cross-platform graphical user interface (GUI), but it includes tools for building such. Over the past years, proprietary and non-proprietary GUI solutions have emerged, based on internal or external tool kits, with different scopes and technological concepts. For example, Rgui.exe and Rgui.app have become the de facto GUI on the Microsoft Windows and Mac OS X platforms, respectively, for most users. In this paper we discuss RKWard which aims to be both a comprehensive GUI and an integrated devel- opment environment for R. RKWard is based on the KDE software libraries. Statistical procedures and plots are implemented using an extendable plugin architecture based on ECMAScript (JavaScript), R, and XML. RKWard provides an excellent tool to manage different types of data objects; even allowing for seamless editing of certain types. The objective of RKWard is to provide a portable and extensible R interface for both basic and advanced statistical and graphical analysis, while not compromising on flexibility and modularity of the R programming environment itself. Keywords: GUI, integrated development environment, plugin, R.
    [Show full text]
  • Introduction to Linux
    Presentation to U3A - Linux Introduction 8 June 2019 – Terry Schuster - [email protected] What is Linux? https://en.wikipedia.org/wiki/Linux https://www.iotforall.com/linux-operating-system-iot-devices/ In simple terms, Linux is an operating system which was developed to be a home-built version of UNIX, one of the first operating systems which could be run on different brands of mainframe computers with quite different types of hardware. Linux has developed to the extent that it is the leading operating system on servers and other big iron systems such as mainframe computers, and the only OS used on TOP500 supercomputers (since November 2017, having gradually eliminated all competitors). It is used by around 2.3 percent of desktop computers. The Chromebook, which runs the Linux kernel-based Chrome OS, dominates the US K–12 education market. In the mid 2000’s, Linux was quickly seen as a good building block for smartphones, as it provided an out- of-the-box modern, full-featured Operating System with very good device driver support, and that was considered both scalable for the new generation of devices and had the added benefit of being royalty free. It is now becoming very common in IoT devices, such as smart watches/refrigerators, home controllers, etc. etc. BTW, Tux is a penguin character and the official brand character of the Linux kernel. Originally created as an entry to a Linux logo competition, Tux is the most commonly used icon for Linux, although different Linux distributions depict Tux in various styles. The character is used in many other Linux programs and as a general symbol of Linux.
    [Show full text]
  • KDE Plasma 5
    Arvo Mägi KDE Plasma 5 Tallinn, 2017 1 Sissejuhatus KDE töökeskkonnale pani aluse saksa programmeerija Matthias Ettrich 14.10.1996. 2016. a oktoobris sai populaarne KDE seega 20. aastaseks. Hea ülevaate KDE ajaloost annab artikkel „19 Years of KDE History: Step by Step.” KDE 4.14 ilmumisega oli KDE saavutanud kasutusküpsuse, kuid edasine areng kippus takerduma – vaja oli põhimõttelisi uuendusi. Otsustati võtta kasutusele iseseisvatel moodulitel põhinev KDE 5 arhitektuur – Qt/Frameworks. Kõik KDE rakendusprogrammid, sh Plasma 5 töölaud, kasutavad ainult konkreetse rakenduse jaoks vajalikke mooduleid. Varem kasutati kõigi rakenduste jaoks ühist suurt teeki, mis raskendas muudatuste tegemist ja pidurdas arendustööd. Qt on C++ programmeerimiskeskkond. Pikaajalise toega Qt 5.9 LTS ilmus 31. mail 2017. KDE Frameworks on 70 moodulist koosnev komplekt, mis lihtsustab Qt keskkonnas KDE programmide koostamist. Frameworks veaparandused ja täiendused ilmuvad iga kuu. KDE Plasma 5 töölaud põhineb KDE Frameworksil (KF5). Töölaua veaparandused ilmuvad iga kuu, vajadusel mitu korda kuus, uued versioonid kord kvartalis. Plasma 5.8 LTS, mis on pikaajalise toega (18 kuud), ilmus 4.10.2016, veidi enne KDE 20. aastaseks saamist. Plasma 5.10 ilmus 30.05.2017. Järgmine pikaajalise toega Plasma 5.12 ilmub 2018. a jaanuaris. Plasma 5 töölaud on pälvinud palju kiitvaid hinnanguid ja sobib igapäevaseks tööks. Eeldab kaasaegset, mitme tuumaga protsessori ja piisava mäluga (vähemalt 4 GB) arvutit. SSD kettalt töötab välkkiirelt. Töölaud on keskkond rakendusprogrammide käivitamiseks ja kasutamiseks. KF5-le on üle viidud kõik KDE põhirakendused (failihaldur Dolphin, pildinäitaja Gwenview, konsool Konsole, teksti- redaktor Kate, ekraanitõmmise võtja Spectacle, videoredaktor Kdenlive, plaadikirjutaja K3b jt). Need on KDE Applications koosseisus, mille uued versioonid ilmuvad kolm korda aastas, veaparandused kord kuus.
    [Show full text]
  • Why Be a KDE Project? Martin Klapetek David Edmundson
    Why be a KDE Project? Martin Klapetek David Edmundson What is KDE? KDE is not a desktop, it's a community „Community of technologists, designers, writers and advocates who work to ensure freedom for all people through our software“ --The KDE Manifesto What is a KDE Project? Project needs more than just good code What will you get as a KDE Project? Git repository Git repository plus „scratch repos“ (your personal playground) Creating a scratch repo git push –all kde:scratch/username/reponame Git repository plus web interface (using GitPHP) Git repository plus migration from Gitorious.org Bugzilla (the slightly prettier version) Review Board Integration of git with Bugzilla and Review Board Integration of git with Bugzilla and Review Board Using server-side commit hooks ● BUG: 24578 ● CCBUG: 29456 ● REVIEW: 100345 ● CCMAIL: [email protected] Communication tools Mailing lists Wiki pages Forums Single sign-on to all services Official IRC channels #kde-xxxxx (on Freenode) IRC cloak me@kde/developer/mklapetek [email protected] email address Support from sysadmin team Community support Development support Translations (71 translation teams) Testing support (Active Jenkins and EBN servers, plus Quality Team) Project continuation (when you stop developing it) KDE e.V. support Financial and organizational help Trademark security Project's licence defense via FLA Promo support Stories in official KDE News site (Got the Dot?) Your blog aggregated at Planet KDE Promo through social channels Web hosting under kde.org domain Association with one of the best
    [Show full text]
  • KDE Galaxy 4.13
    KDE Galaxy 4.13 - Devaja Shah About Me ●3rd Year Alienatic Student at DA- !"# Gandhinagar ●Dot-editor %or KDE &romo "ea' ●Member of KDE e.(. ●&a))ion for Technology# Literature ●+un the Google Developer Group in !olle$e ●-rganizin$ Tea' of KDE Meetup# con%./de.in 14 -/ay, sooooo....... ●Ho1 many of you are %an) of Science Fiction3 ●Astronomy3 ● 0o1 is it Related to KDE3 ●That i) precisely 1hat the talk is about. ●Analogy to $et you to kno1 everythin$ that you should about ● “Galaxy KDE 4.13” 4ait, isn't it 4.14? ●KDE5) late)t ver)ion S! 4.14 6 7ove'ber 8914 ●KDE Soft1are !o',ilation ::.xx ●Significance o% +elea)e) ●- -r$ani.ed# )y)te'atic co',ilation o% %eature) < develo,'ent) ●- 2ive )erie) of relea)e) till date. ●7o Synchronized +elea)e) Any lon$er: ● - KDE 2ra'e1ork) > ?'onthly@ ● - KDE &la)'a > ?3 'onth)@ ● - KDE Ap,lication) ?date ba)ed@ ●Au)t *i/e Ap, (er)ion) But, 1hat am I to do o% the Galaxy 7umber? ●4ork in a "eam ●4ork acros) a Deadline ●-%;ce Space Si'ulation ●Added 'petus %or Deliverin$ your 2eature) ●You 1ork a) a ,art of the C!oreD Developer "ea' ● nstils Discipline ●Better +e),onse# Better 2eedbac/ ●Better Deliverance ●Synchronized 1ork with other C)ea)onedD developer) Enough of the bore....... ●Ho1 do $et started3 ● - Hope you didn't )nooze yesterday ● +!# Subscribe to Mailing Lists ●Mentoring Progra') ●GsoC# Season of KDE, O2W Progra') ●Bootstra,pin$ Training Session) Strap yourself onto the Rocket ●And Blast O%%......... ● ● ● Entered A 4ormhole and Ea,ped into the KDE Galaxy ●No1 what? ●Pick a Planet to nhabit ●But....
    [Show full text]
  • Translate's Localization Guide
    Translate’s Localization Guide Release 0.9.0 Translate Jun 26, 2020 Contents 1 Localisation Guide 1 2 Glossary 191 3 Language Information 195 i ii CHAPTER 1 Localisation Guide The general aim of this document is not to replace other well written works but to draw them together. So for instance the section on projects contains information that should help you get started and point you to the documents that are often hard to find. The section of translation should provide a general enough overview of common mistakes and pitfalls. We have found the localisation community very fragmented and hope that through this document we can bring people together and unify information that is out there but in many many different places. The one section that we feel is unique is the guide to developers – they make assumptions about localisation without fully understanding the implications, we complain but honestly there is not one place that can help give a developer and overview of what is needed from them, we hope that the developer section goes a long way to solving that issue. 1.1 Purpose The purpose of this document is to provide one reference for localisers. You will find lots of information on localising and packaging on the web but not a single resource that can guide you. Most of the information is also domain specific ie it addresses KDE, Mozilla, etc. We hope that this is more general. This document also goes beyond the technical aspects of localisation which seems to be the domain of other lo- calisation documents.
    [Show full text]
  • FOSS, 24Th April 2014 Digital Image Management 1. Introduction
    FOSS, 24th April 2014 Digital Image Management Roger Hurley 1. Introduction I currently use three open source photography applications: digiKam for organising my image files; GIMP as a pixel editor; and RawTherapee as a RAW processor. There is a degree of overlap in functionality between these packages but, since this presentation is about organising digital photographs, this document concentrates on the image management capabilities of digiKam. In the old days there were two approaches: The Shoe Box - Put all the photographs into an old shoe box and look at them once a year; The Librarian - Carefully write details on the back of each photograph and file them away in albums; look at them occasionally. Having annotated the photos, they could be sorted by the date they were taken and/or their subject matter, depending on how much work you wanted to do. With the advent of digital photography, we gained the ability to store our images in a logical directory/sub-directory structure, creating virtual albums. These could be organised by date, event, subject matter, etc., or combinations of these, as indicated below: This is all very well, but it doesn©t give us much more than the old Librarian approach. However, digital cameras also save information about the images; this is known as metadata and most of it is saved as an exif file within the image file (.jpg, .tiff, .raw, etc.). An ex if file can contain a great deal of information about the image: make & model of camera; date & time when the image was created; camera settings - aperture, shutter speed, sensitivity (iso), focal length, white balance; flash settings, image resolution, etc.; file size and format; and so on.
    [Show full text]
  • User Manual 19HFL5014W Contents
    User Manual 19HFL5014W Contents 1 TV Tour 3 13 Help and Support 119 1.1 Professional Mode 3 13.1 Troubleshooting 119 13.2 Online Help 120 2 Setting Up 4 13.3 Support and Repair 120 2.1 Read Safety 4 2.2 TV Stand and Wall Mounting 4 14 Safety and Care 122 2.3 Tips on Placement 4 14.1 Safety 122 2.4 Power Cable 4 14.2 Screen Care 123 2.5 Antenna Cable 4 14.3 Radiation Exposure Statement 123 3 Arm mounting 6 15 Terms of Use 124 3.1 Handle 6 15.1 Terms of Use - TV 124 3.2 Arm mounting 6 16 Copyrights 125 4 Keys on TV 7 16.1 HDMI 125 16.2 Dolby Audio 125 5 Switching On and Off 8 16.3 DTS-HD (italics) 125 5.1 On or Standby 8 16.4 Wi-Fi Alliance 125 16.5 Kensington 125 6 Specifications 9 16.6 Other Trademarks 125 6.1 Environmental 9 6.2 Operating System 9 17 Disclaimer regarding services and/or software offered by third parties 126 6.3 Display Type 9 6.4 Display Input Resolution 9 Index 127 6.5 Connectivity 9 6.6 Dimensions and Weights 10 6.7 Sound 10 7 Connect Devices 11 7.1 Connect Devices 11 7.2 Receiver - Set-Top Box 12 7.3 Blu-ray Disc Player 12 7.4 Headphones 12 7.5 Game Console 13 7.6 USB Flash Drive 13 7.7 Computer 13 8 Videos, Photos and Music 15 8.1 From a USB Connection 15 8.2 Play your Videos 15 8.3 View your Photos 15 8.4 Play your Music 16 9 Games 18 9.1 Play a Game 18 10 Professional Menu App 19 10.1 About the Professional Menu App 19 10.2 Open the Professional Menu App 19 10.3 TV Channels 19 10.4 Games 19 10.5 Professional Settings 20 10.6 Google Account 20 11 Android TV Home Screen 22 11.1 About the Android TV Home Screen 22 11.2 Open the Android TV Home Screen 22 11.3 Android TV Settings 22 11.4 Connect your Android TV 25 11.5 Channels 27 11.6 Channel Installation 27 11.7 Internet 29 11.8 Software 29 12 Open Source Software 31 12.1 Open Source License 31 2 1 TV Tour 1.1 Professional Mode What you can do In Professional Mode ON, you can have access to a large number of expert settings that enable advanced control of the TV’s state or to add additional functions.
    [Show full text]
  • Praise for the Official Ubuntu Book
    Praise for The Official Ubuntu Book “The Official Ubuntu Book is a great way to get you started with Ubuntu, giving you enough information to be productive without overloading you.” —John Stevenson, DZone Book Reviewer “OUB is one of the best books I’ve seen for beginners.” —Bill Blinn, TechByter Worldwide “This book is the perfect companion for users new to Linux and Ubuntu. It covers the basics in a concise and well-organized manner. General use is covered separately from troubleshooting and error-handling, making the book well-suited both for the beginner as well as the user that needs extended help.” —Thomas Petrucha, Austria Ubuntu User Group “I have recommended this book to several users who I instruct regularly on the use of Ubuntu. All of them have been satisfied with their purchase and have even been able to use it to help them in their journey along the way.” —Chris Crisafulli, Ubuntu LoCo Council, Florida Local Community Team “This text demystifies a very powerful Linux operating system . in just a few weeks of having it, I’ve used it as a quick reference a half dozen times, which saved me the time I would have spent scouring the Ubuntu forums online.” —Darren Frey, Member, Houston Local User Group This page intentionally left blank The Official Ubuntu Book Sixth Edition This page intentionally left blank The Official Ubuntu Book Sixth Edition Benjamin Mako Hill Matthew Helmke Amber Graner Corey Burger With Jonathan Jesse, Kyle Rankin, and Jono Bacon Upper Saddle River, NJ • Boston • Indianapolis • San Francisco New York • Toronto • Montreal • London • Munich • Paris • Madrid Capetown • Sydney • Tokyo • Singapore • Mexico City Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks.
    [Show full text]