Mozilla Services Documentation

Total Page:16

File Type:pdf, Size:1020Kb

Mozilla Services Documentation Mozilla Services Documentation Tarek Ziade Aug 13, 2021 Contents 1 How To.. 3 2 Services 13 3 Client Development 45 4 Miscellaneous 69 Index 73 i ii Mozilla Services Documentation Welcome to the Mozilla Services Documentation front page. This site contains technical information about the services and products provided by the Mozilla Services Team. Right now that means Firefox Sync. (There were additional services documented here in the past, but they’ve been reprecated). To contribute to this site, see About this Website. Contents 1 Mozilla Services Documentation 2 Contents CHAPTER 1 How To. 1.1 Run your own Sync-1.5 Server Mozilla does not provide any pre-packaged release of the Firefox Sync server. The easiest way to install a Sync Server is to checkout our repository and run a build in-place. Once this is done, Sync can be run behind any Web Server that supports the WSGI protocol. 1.1.1 Important Notes The sync service uses Firefox Accounts for user authentication, which is a separate service and is not covered by this guide. Note: By default, a server set up using this guide will defer authentication to the Mozilla-hosted accounts server at https://accounts.firefox.com. You can safely use the Mozilla-hosted Firefox Accounts server in combination with a self-hosted sync storage server. The authentication and encryption protocols are designed so that the account server does not know the user’s plaintext password, and therefore cannot access their stored sync data. Alternatively, you can also Run your own Firefox Accounts Server to control all aspects of the system. The process for doing so is currently very experimental and not well documented. 1.1.2 Prerequisites The various parts are using Python 2.7 and Virtualenv. Make sure your system has them, or install them: • Python 2.7 downloads: http://python.org/download/releases/2.7.6 • Virtualenv: http://pypi.python.org/pypi/virtualenv To build and run the server, you will also need to have these packages installed: 3 Mozilla Services Documentation • python-dev • make • git • c and c++ compiler For example, under a fresh Ubuntu, you can run this command to meet all requirements: $ sudo apt-get install python-dev git-core python-virtualenv g++ 1.1.3 Building the server Get the latest version at https://github.com/mozilla-services/syncserver and run the build command: $ git clone https://github.com/mozilla-services/syncserver $ cd syncserver $ make build This command will create an isolated Python environment and pull all the required dependencies in it. A local/bin directory is created and contains a gunicorn command that can be used to run the server. If you like, you can run the testsuite to make sure everything is working properly: $ make test 1.1.4 Basic Configuration The server is configured using an ini-like file to specify various runtime settings. The file “syncserver.ini” will provide a useful starting point. There is one setting that you must specify before running the server: the client-visible URL for the service. Open “./syncserver.ini” and locate the following lines: [syncserver] public_url= http://localhost:5000/ The default value of “public_url” will work for testing purposes on your local machine. For final deployment, change it to the external, publicly-visible URL of your server. By default the server will use an in-memory database for storage, meaning that any sync data will be lost on server restart. You will almost certainly want to configure a more permanent database, which can be done with the “sqluri” setting: [syncserver] sqluri= sqlite:////path/to/database/file.db This setting will accept any SQLAlchemy database URI; for example the following would connect to a mysql server: [syncserver] sqluri= pymysql://username:password @db.example.com/sync 4 Chapter 1. How To. Mozilla Services Documentation 1.1.5 Running the Server Now you can run the server using gunicorn and the provided “syncserver.ini” file. The simplest way is to use the Makefile like this: $ make serve Or if you’d like to pass additional arguments to gunicorn, like this: $ local/bin/gunicorn --threads 4 --paste syncserver.ini Once the server is launched, you need to tell Firefox about its location. To configure desktop Firefox to talk to your new Sync server, go to “about:config”, search for “iden- tity.sync.tokenserver.uri” and change its value to be the public URL of your server with a path of “token/1.0/sync/1.5”: • identity.sync.tokenserver.uri: http://localhost:5000/token/1.0/sync/1.5 Alternatively, if you’re running your own Firefox Accounts server, and running Firefox 52 or later, see the documen- tation on how to Run your own Firefox Accounts Server for how to configure your client for both Sync and Firefox Accounts with a single preference. Firefox for Android (“Daylight”, versions 79 and later) does support using a non-Mozilla-hosted Sync server. Before logging in, go to App Menu > Settings > About Firefox and click the logo 5 times. You should see a “debug menu enabled” notification. Go back to the main menu and you will see two options for a custom account server and a custom Sync server. Set the Sync server to the URL given above and then log in. To configure Android Firefox 44 up to 78 to talk to your new Sync server, just set the “identity.sync.tokenserver.uri” exactly as above before signing in to Firefox Accounts and Sync on your Android device. Important: after creating the Android account, changes to “identity.sync.tokenserver.uri” will be ignored. (If you need to change the URI, delete the Android account using the Settings > Sync > Disconnect. menu item, update the pref, and sign in again.) Non-default TokenServer URLs are displayed in the Settings > Sync panel in Firefox for Android, so you should be able to verify your URL there. Prior to Firefox 44, a custom add-on was needed to configure Firefox for Android. For Firefox 43 and earlier, see the blog post How to connect Firefox for Android to self-hosted Firefox Account and Firefox Sync servers. (Prior to Firefox 42, the TokenServer preference name for Firefox Desktop was “services.sync.tokenServerURI”. While the old preference name will work in Firefox 42 and later, the new preference is recommended as the old preference name will be reset when the user signs out from Sync causing potential confusion.) Since Firefox 18, Firefox for iOS has support for custom sync servers. The settings can be made in the Advanced Sync Settings in the Firefox account section, which are visible if you are not signed in with a Firefox account and have enabled the debug mode (tap 5 times on the version number). In order to use the custom sync server with Firefox 28, the token server’s url must not contain the path “/1.0/sync/1.5”. It is also important to configure a custom FxA content server (you may use the default https://accounts.firefox.com). 1.1.6 Further Configuration Once the server is running and Firefox is syncing successfully, there are further configuration options you can tweak in the “syncserver.ini” file. The “secret” setting is used by the server to generate cryptographically-signed authentication tokens. It is blank by default, which means the server will randomly generate a new secret at startup. For long-lived server installations this should be set to a persistent value, generated from a good source of randomness. An easy way to generate such a value on posix-style systems is to do: 1.1. Run your own Sync-1.5 Server 5 Mozilla Services Documentation $ head -c 20 /dev/urandom | sha1sum db8a203aed5fe3e4594d4b75990acb76242efd35 - Then copy-paste the value into the config file like so: [syncserver] ...other settings... secret= db8a203aed5fe3e4594d4b75990acb76242efd35 The “identity_provider” setting controls which server service can issue identity assertions for access to the service. By default it will accept identity assertions from the Mozilla-hosted account server at https://accounts.firefox.com. If you are hosting your own instance of Firefox Accounts, you should change this to your own domain: [syncserver] . other settings. identity_provider = https://accounts.example.com The “allow_new_users” setting controls whether the server will accept requests from previously-unseen users. It is allowed by default, but once you have configured Firefox and successfully synced with your user account, additional users can be disabled by setting: [syncserver] ...other settings... allow_new_users= false 1.1.7 Updating the server You should periodically update your code to make sure you’ve got the latest fixes. The following commands will update syncserver in place: $ cd /path/to/syncserver $ git stash # to save any local changes to the config file $ git pull # to fetch latest updates from github $ git stash pop # to re-apply any local changes to the config file $ make build # to pull in any updated dependencies 1.1.8 Running behind a Web Server The built-in server should not be used in production, as it does not really support a lot of load. If you want to set up a production server, you can use different web servers that are compatible with the WSGI protocol. For example: • Apache combined with mod_wsgi • NGinx with Gunicorn or uWSGI Note: Remember, you must set the syncserver.public_url option to the client-visible URL of your server. For example, if your server will be located at http://example.com/ff-sync/, the public_url should be set to this value in your config file: [syncserver] public_url= http://example.com/ff-sync/ 6 Chapter 1. How To. Mozilla Services Documentation Apache + mod_wsgi Here’s an example of an Apache 2.2 setup that uses mod_wsgi:
Recommended publications
  • What Makes a Webpage the Most Effective, Attractive and Useful Business Tool?
    ISSN 2394-7314 International Journal of Novel Research in Computer Science and Software Engineering Vol. 3, Issue 1, pp: (62-81), Month: January-April 2016, Available at: www.noveltyjournals.com What Makes A Webpage the Most Effective, Attractive and Useful Business Tool? Zobair Ullah Sam Higginbottom Institute of Agriculture, Technology & Sciences, Allahabad, India Abstract: This paper is intended to describe and discuss the major developments of a website design and internet that makes a website much more attractive, useful, an effective business tool and much more powerful than ever before. The paper is basically designed and prepared for the aspiring web designers and developers with a need to understand the HTML as well as website design in enough detail. Keywords: SGML, HTML, CSS, Javascript, JQuery, XML, PHP, SQL, ASP, ASP. Net, AJAX, JQuery Mobile, App ML, Angular JS, Json, HTML Graphics, Open source, web browser, web server, homepage, website, web pages, URL, domain name, hyperlink, hypertext, www, internet, intranet, HTTP, SSL, TLS, firewall, browser plug-ins, spyware and adware, Active X, DNS, IP address, dynamic IP address, static IP address, Flash, Javascript, Java, secure site, caching, proxy server, the top level domains, search engine, world wide web accessibility, HTML templates, blog, RSS, Gopher, MME types, phishing, bookmarks and favourites. 1. INTRODUCTION The HTML is a simple mark up language used to create hypertext documents that are platform independent. Here, platform independent means HTML documents work in the same way on different platforms and browsers. Historically, HTML documents are SGML documents with generic semantics that are appropriate for representing information from a wide range of domains.
    [Show full text]
  • (Hardening) De Navegadores Web Más Utilizados
    UNIVERSIDAD DON BOSCO VICERRECTORÍA DE ESTUDIOS DE POSTGRADO TRABAJO DE GRADUACIÓN Endurecimiento (Hardening) de navegadores web más utilizados. Caso práctico: Implementación de navegadores endurecidos (Microsoft Internet Explorer, Mozilla Firefox y Google Chrome) en un paquete integrado para Microsoft Windows. PARA OPTAR AL GRADO DE: MAESTRO EN SEGURIDAD Y GESTION DEL RIESGO INFORMATICO ASESOR: Mg. JOSÉ MAURICIO FLORES AVILÉS PRESENTADO POR: ERICK ALFREDO FLORES AGUILAR Antiguo Cuscatlán, La Libertad, El Salvador, Centroamérica Febrero de 2015 AGRADECIMIENTOS A Dios Todopoderoso, por regalarme vida, salud y determinación para alcanzar un objetivo más en mi vida. A mi amada esposa, que me acompaño durante toda mi carrera, apoyó y comprendió mi dedicación de tiempo y esfuerzo a este proyecto y nunca dudó que lo concluiría con bien. A mis padres y hermana, que siempre han sido mis pilares y me enseñaron que lo mejor que te pueden regalar en la vida es una buena educación. A mis compañeros de trabajo, que mediante su esfuerzo extraordinario me han permitido contar con el tiempo necesario para dedicar mucho más tiempo a la consecución de esta meta. A mis amigos de los que siempre he tenido una palabra de aliento cuando la he necesitado. A mi supervisor y compañeros de la Escuela de Computación de la Universidad de Queens por facilitarme espacio, recursos, tiempo e información valiosa para la elaboración de este trabajo. A mi asesor de tesis, al director del programa de maestría y mis compañeros de la carrera, que durante estos dos años me han ayudado a lograr esta meta tan importante. Erick Alfredo Flores Aguilar INDICE I.
    [Show full text]
  • Distributed Application Architecture
    Mobile Agents as a Distributed Application Architecture Remco Slotboom Master thesis for completion of a degree in Business Informatics at the Erasmus University Rotterdam. Supervision by Dr. Ir. Jan van den Berg and Drs. Mark Polman. Supported by Cambridge Technology Partners. Copyright statement Copyright © 2000 Remco Slotboom. All rights reserved. This document is provided “as is”, without warranty of any kind. Company and product names mentioned in this document may be claimed as trademarks by their respective companies. Contact information Remco Slotboom Ellemare 193 3085 JR Rotterdam, The Netherlands. Email: [email protected] Student number: 126801 Table of Contents Preface................................................................................VII How this thesis came to be...................................................... VII A word of thanks.................................................................... VIII CHAPTER 1 Introduction............................................................1 1.1 Executive summary .................................................... 1 1.2 Motivation.................................................................. 2 1.3 Goals......................................................................... 3 1.4 Chapter outline........................................................... 3 CHAPTER 2 Agents.....................................................................5 2.1 Agent according to the dictionary................................. 5 2.2 Why agents are important ..........................................
    [Show full text]
  • Automating Web Navigation with the Webvcr
    Automating Web Navigation with the WebVCR Vinod Anupam, Juliana Freire, Bharat Kumar, Daniel Lieuwen Bell Laboratories, 600 Mountain Ave., Murray Hill, NJ 07974, USA anupam,juliana,bharat,lieuwen ¡ @research.bell-labs.com Abstract Recent developments in Web technology such as the inclusion of scripting languages, frames, and the growth of dynamic content, have made the process of retrieving Web con- tent more complicated, and sometimes tedious. For example, Web browsers do not provide a method for a user to bookmark a frame-based Web site once the user navigates within the initial frameset. Also, some sites, such as travel sites and online classifieds, require users to go through a sequence of steps and fill out a sequence of forms in order to access their data. Using the bookmark facilities implemented in all popular browsers, often it is not possible to create a shortcut to access such data, and these steps must be manually repeated every time the data is needed. However, hard-to-reach pages are often the best candidates for a shortcut, because significantly more effort is required to reach them than to reach a standard page with a well-defined URL. The WebVCR system addresses this problem by letting users record and replay a series of browsing steps in smart bookmarks— shortcuts to Web content that require multiple steps to be retrieved. It provides a VCR-style interface to transparently record and replay users’ actions. Creating and updating smart bookmarks is a simple process involving only the usual browsing actions and requiring no programming by the user. In addition to sav- ing users time by providing shortcuts to hard-to-reach Web content, smart bookmarks can be used as building blocks for many interesting Web applications and new e-commerce services.
    [Show full text]
  • Windows Geknackt Die Besten Tools 2013
    ttbewerb Mit DVD Preise im Wert We 00001 www.onlinepc.ch Fr. 4.70 von Fr. 7‘154.– 985503 € 4,– Ultrabook, Digicam, WLAN-Bundles, 71422 iPhone-Hüllen und Software S.52 97 System verschlüsseln 51 DVD Zürich So geht‘s: Der wirksamste Schutz gegen Datenklau S.30 Auf 8051 D Nr. 1 – Januar 2013 16 Internet-Tipps Auf DV AZB Das Computer-Magazin Firefox-Befehle, Cloud verschlüsseln, Mails sichern... S.30 D Auf DV Total Mounter Virtuelle CDs und DVDs auf jedem PC brennen – ohne Brenner S.30 ▪ Der Schutz macht Windows unzerstörbar ▪ Nach jedem Neustart ist Windows wie neu ▪ Der Schutz lässt sich ein- und ausschalten S.22 Die besten Tools 2013 Das sind die beliebtesten Open-Source-Programme S.36 D D Auf DV Auf DV Windows geknackt So booten Sie jeden Sicherheit PC mit Windows 7 S.42 am PPaasswortsswort besten Abp Mon 9.0 50 Hammertipps Die Überwacht RAM, CPU, Die besten Tricks für vorbei S.16 Special Netzwerk… S.26 Windows 7 S.14 Mit Sicherheits-Tipps Anzeige EDITORIAL /INHALT INHALT 1/2013 PC am Passwort Schutzmodus für vorbei booten: Windows 7 Ein Trick überlistet Der Schutzmodus den Schutz von macht Windows Windows 16 unzerstörbar 22 Leserumfrage Top-100-Software Virenalarm, was tun? Mitmachen und eine Video-Soft- Aus den monatlichen Top 10 Downloads hat Keine Panik! So ware von Magix die Redaktion für Sie eine Auswahl getrof- werden Sie die gewinnen! 62 fen und die 100 beliebtesten Programme auf Schädlinge los 46 die Heft-DVD gepackt. Die Tools decken ein breites Spektrum ab – vom Browser bis zum E-Mail-Programm, von der Sicherheitssoftware bis zum Videoplayer und vom Backup-Pro- AKTUELL TEST & KAUFBERATUNG gramm bis zum Passwortmanager (Seite 36).
    [Show full text]
  • Features Guide [email protected] Table of Contents
    Features Guide [email protected] Table of Contents About Us .................................................................................. 3 Make Firefox Yours ............................................................... 4 Privacy and Security ...........................................................10 The Web is the Platform ...................................................11 Developer Tools ..................................................................13 2 About Us About Mozilla Mozilla is a global community with a mission to put the power of the Web in people’s hands. As a nonprofit organization, Mozilla has been a pioneer and advocate for the Web for more than 15 years and is focused on creating open standards that enable innovation and advance the Web as a platform for all. We are committed to delivering choice and control in products that people love and can take across multiple platforms and devices. For more information, visit www.mozilla.org. About Firefox Firefox is the trusted Web browser of choice for half a billion people around the world. At Mozilla, we design Firefox for how you use the Web. We make Firefox completely customizable so you can be in control of creating your best Web experience. Firefox has a streamlined and extremely intuitive design to let you focus on any content, app or website - a perfect balance of simplicity and power. Firefox makes it easy to use the Web the way you want and offers leading privacy and security features to help keep you safe and protect your privacy online. Mozilla continues to move the Web forward by pioneering new open source technologies such as asm.js, Emscripten and WebAPIs. Firefox also has a range of amazing built-in developer tools to provide a friction-free environment for building Web apps and Web content.
    [Show full text]
  • Sharing and Reusing Web Activity with Actionshot
    Here’s What I Did: Sharing and Reusing Web Activity with ActionShot Ian Li Jeffrey Nichols, Tessa Lau, Human Computer Interaction Institute Clemens Drews, Allen Cypher Carnegie Mellon University IBM Research – Almaden 5000 Forbes Avenue 650 Harry Road Pittsburgh, PA 15217 San Jose, CA 95120 [email protected] {jwnichols,tessalau,cdrews,acypher}@us.ibm.com ABSTRACT users to share bookmarks; Digg and Reddit allow users to ActionShot is an integrated web browser tool that creates a share interesting web pages that they found. However, fine-grained history of users’ browsing activities by conti- these web sites only allow people to share the URLs of nually recording their browsing actions at the level of inte- individual pages. If people want to share what they did on a ractions, such as button clicks and entries into form fields. web site, they have to write it down manually, which can ActionShot provides interfaces to facilitate browsing and be so tedious that they forego sharing the information. searching through this history, sharing portions of the his- Social scripting services such as CoScripter [8] allow users tory through established social networking tools such as to record and share interactions with websites, but these Facebook, and creating scripts that can be used to repeat tools require forethought and planning to enable recording previous interactions at a later time. ActionShot can also at the right time to capture a reusable script. Moreover, create short textual summaries for sequences of interac- CoScripter's one-to-all sharing model was found to deter tions. In this paper, we describe the ActionShot and our many users [8], who asked for finer grained control over initial explorations of the tool through field deployments with whom they shared their scripts.
    [Show full text]
  • Firefox for Android Reviewer's Guide
    FIREFOX FOR ANDROID REVIEWER’S GUIDE Contact us: [email protected] FIREFOX FOR ANDROID TABLE OF CONTENTS About Mozilla for Android 1 Get Started 2 Type Less, Browse More 3 Get Up and Go 4 Customize and Go 6 Protecting Your Privacy 7 Favorite Features 8 The Cutting Edge 9 FIREFOX FOR ANDROID ABOUT MOZILLA Mozilla is a global, nonprofit organization dedicated to making the Web better. We believe in principle over profit, and that the Internet is a shared public resource to be cared for, not a commodity to be sold. We work with a worldwide community to create open source software like Mozilla Firefox, and to innovate for the benefit of the individual and the betterment of the Web. The result is great products built by passionate people and better choices for everyone. For more information, visit www.mozilla.org Mozilla Firefox for Android Mozilla Firefox introduces a new Web experience for Android (2.1 and above) devices. Based on the same open technology platform as the desktop version of Firefox, you have an easy, fast and customizable way to take your Firefox anywhere you go. Innovative features in Firefox make browsing the Web on Android devices easy and efficient so you can spend more time browsing and less time typing. Firefox Sync is integrated into Firefox, giving you access to your Awesome Bar history, bookmarks, open tabs and passwords across computers and mobile devices. Firefox respects your privacy and safeguards your security with features like end-to-end encryption in Firefox Sync and Do Not Track.. Firefox for Android enables you to personalize your Firefox with add-ons to change the look, features or functionality of Firefox to fit your needs.
    [Show full text]
  • Architectural Frameworks for Automated Content Adaptation to Mobile Devices Based on Open-Source Technologies
    Architectural Frameworks for Automated Content Adaptation to Mobile Devices Based on Open-Source Technologies Thesis submitted to the Faculty of Economics of the European University Viadrina (Frankfurt/Oder) in fulfillment of the requirements for the degree of Dr. rer. pol. Author: Bożena Jankowska First Advisor: Prof. Dr. Eberhard Stickel Second Advisor: Prof. Dr. Karl Kurbel Submitted: 03.11.2006 Thesis defense: 06.09.2007 Abstract The Web and enterprise information systems are gradually increasing their reach to a wide range of mobile devices. Although analysts hope for a breakthrough in the popularity of mobile solutions, field studies show that, except for Japan and South Korea, there is still a large gap between the technical capabilities of wireless devices/networks and the adoption of mobile services for business and private use. This paradox can be attributed to a high extent to low quality of existing mobile solutions and to their insufficient usability, represented particularly by two attributes: simplicity of use and content relevance. Additionally, network providers are afraid that mobile Internet could cannibalize their revenues from SMS and entertainment services and do not want to cooperate with service providers to improve the quality of services offered. Wireless applications depend on device-specific features such as input/output mechanisms, screen sizes, computing resources, and support for various multimedia formats and languages. This leads to the need for multi-source authoring - the creation of separate presentations for each device type or, at least, for each class of devices. Multi-source authoring is not a cost-efficient and feasible solution, especially for mobile services consisting of numerous pages.
    [Show full text]
  • GNOME User Guide GNOME User Guide SUSE Linux Enterprise Desktop 15 SP3
    SUSE Linux Enterprise Desktop 15 SP3 GNOME User Guide GNOME User Guide SUSE Linux Enterprise Desktop 15 SP3 This guide introduces the GNOME desktop of SUSE Linux Enterprise Desktop. Publication Date: September 24, 2021 SUSE LLC 1800 South Novell Place Provo, UT 84606 USA https://documentation.suse.com Copyright © 2006– 2021 SUSE LLC and contributors. All rights reserved. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or (at your option) version 1.3; with the Invariant Section being this copyright notice and license. A copy of the license version 1.2 is included in the section entitled “GNU Free Documentation License”. For SUSE trademarks, see https://www.suse.com/company/legal/ . All other third-party trademarks are the property of their respective owners. Trademark symbols (®, ™ etc.) denote trademarks of SUSE and its aliates. Asterisks (*) denote third-party trademarks. All information found in this book has been compiled with utmost attention to detail. However, this does not guarantee complete accuracy. Neither SUSE LLC, its aliates, the authors nor the translators shall be held liable for possible errors or the consequences thereof. Contents Preface xii 1 Available documentation xii 2 Improving the documentation xii 3 Documentation conventions xiii 4 Support xiv Support statement for SUSE Linux Enterprise Desktop xv • Technology previews xvi I INTRODUCTION 1 1 Getting started with the GNOME desktop 2 1.1 Logging in 2 Switching the session type
    [Show full text]
  • Save As Pdf, Use Your Keyboard Ctrl + P Keys (PC) Or Command P Keys (Mac) to Open the Printer Window
    CPD Diary - about and frequently asked questions Education & Professional Development team Your CPD Diary is in RCPCH ePortfolio on the Kaizen platform. RCPCH ePortfolio provides a life-long learning platform for paediatricians, from training and throughout a doctor’s working life. This page provides you with FAQs and user guidance on how CPD Diary works in ePortfolio. Last modified 4 June 2020 Post date 22 February 2019 Table of contents How do I access CPD Diary in RCPCH ePortfolio? How do I create, edit and print activities and reports? Why are my CPD entries all 'shared' and CPD documents all 'private' / Who can see my CPD records? Can I add my CPD activities retrospectively? Why do all my newly added activities look like they took place on the same day? Does RCPCH ePortfolio have a web app, or offline access? As a trainee due to CCT, what should I do to join the CPD Diary? I don't have an ePortfolio account/RCPCH website account/RCPCH number. What should I do? Why did CPD Diary move into RCPCH ePortfolio? Where can I found more information about the privacy of my data? Which email address are you using for me in RCPCH ePortfolio? If I have questions or can't login, who can I contact? Downloads How do I access CPD Diary in RCPCH ePortfolio? You can log in using your RCPCH number (not GMC number) and RCPCH website password. You can find it in the Quick Links menu of this site - select CPD Diary or ePortfolio and follow the prompts to log in.
    [Show full text]
  • Designing for Extensibility and Planning for Conflict
    Designing for Extensibility and Planning for Conflict: Experiments in Web-Browser Design Benjamin S. Lerner A dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy University of Washington 2011 Program Authorized to Offer Degree: UW Computer Science & Engineering University of Washington Graduate School This is to certify that I have examined this copy of a doctoral dissertation by Benjamin S. Lerner and have found that it is complete and satisfactory in all respects, and that any and all revisions required by the final examining committee have been made. Chair of the Supervisory Committee: Daniel Grossman Reading Committee: Daniel Grossman Steven Gribble John Zahorjan Date: In presenting this dissertation in partial fulfillment of the requirements for the doctoral degree at the University of Washington, I agree that the Library shall make its copies freely available for inspection. I further agree that extensive copying of this dissertation is allowable only for scholarly purposes, consistent with “fair use” as prescribed in the U.S. Copyright Law. Requests for copying or reproduction of this dissertation may be referred to Proquest Information and Learning, 300 North Zeeb Road, Ann Arbor, MI 48106-1346, 1-800-521-0600, to whom the author has granted “the right to reproduce and sell (a) copies of the manuscript in microform and/or (b) printed copies of the manuscript made from microform.” Signature Date University of Washington Abstract Designing for Extensibility and Planning for Conflict: Experiments in Web-Browser Design Benjamin S. Lerner Chair of the Supervisory Committee: Associate Professor Daniel Grossman UW Computer Science & Engineering The past few years have seen a growing trend in application development toward “web ap- plications”, a fuzzy category of programs that currently (but not necessarily) run within web browsers, that rely heavily on network servers for data storage, and that are developed and de- ployed differently from traditional desktop applications.
    [Show full text]