Python Web Development with Django®

Total Page:16

File Type:pdf, Size:1020Kb

Python Web Development with Django® ptg Python Web Development with Django® ptg Developer’s Library ESSENTIAL REFERENCES FOR PROGRAMMING PROFESSIONALS Developer’s Library books are designed to provide practicing programmers with unique, high-quality references and tutorials on the programming languages and technologies they use in their daily work. All books in the Developer’s Library are written by expert technology practitioners who are especially skilled at organizing and presenting information in a way that’s useful for other programmers. Key titles include some of the best, most widely acclaimed books within their topic areas: PHP & MySQL Web Development Python Essential Reference Luke Welling & Laura Thomson David Beazley ISBN 978-0-672-32916-6 ISBN-13: 978-0-672-32862-6 MySQL Programming in Objective-C ptg Paul DuBois Stephen G. Kochan ISBN-13: 978-0-672-32938-8 ISBN-13: 978-0-321-56615-7 Linux Kernel Development PostgreSQL Robert Love Korry Douglas ISBN-13: 978-0-672-32946-3 ISBN-13: 978-0-672-33015-5 Developer’s Library books are available at most retail and online bookstores, as well as by subscription from Safari Books Online at safari.informit.com Developer’s Library informit.com/devlibrary Python Web Development with Django® Jeff Forcier, Paul Bissex, Wesley Chun ptg Upper Saddle River, NJ • Boston • Indianapolis • San Francisco New York • Toronto • Montreal • London • Munich • Paris • Madrid Cape Town • Sydney • Tokyo • Singapore • Mexico City Many of the designations used by manufacturers and sellers to distinguish their products Editor-In-Chief are claimed as trademarks. Where those designations appear in this book, and the publish- Mark Taub er was aware of a trademark claim, the designations have been printed with initial capital Acquisitions Editor letters or in all capitals. Debra Williams The authors and publisher have taken care in the preparation of this book, but make no Cauley expressed or implied warranty of any kind and assume no responsibility for errors or omis- Development sions. No liability is assumed for incidental or consequential damages in connection with or Editor arising out of the use of the information or programs contained herein. Michael Thurston The publisher offers excellent discounts on this book when ordered in quantity for bulk pur- Managing Editor chases or special sales, which may include electronic versions and/or custom covers and Kristy Hart content particular to your business, training goals, marketing focus, and branding interests. Project Editor and For more information, please contact: Copy Editor U.S. Corporate and Government Sales Jovana (800) 382-3419 San Nicolas-Shirley [email protected] Indexer Cheryl Lenser For sales outside the United States, please contact: Proofreader International Sales Geneil Breeze [email protected] Publishing Visit us on the Web: informit.com/aw Coordinator Kim Boedigheimer Library of Congress Cataloging-in-Publication Data: Cover Designer Forcier, Jeff, 1982- Gary Adair Python web development with Django / Jeff Forcier, Paul Bissex, Wesley Chun. Compositor p. cm. Jake McFarland Includes index. ptg ISBN-10: 0-13-235613-9 (pbk. : alk. paper) ISBN-13: 978-0-13-235613-8 (pbk. : alk. paper) 1. Web site development. 2. Django (Electronic resource) 3. Python (Computer program language) 4. Web sites—Authoring pro- grams. I. Bissex, Paul. II. Chun, Wesley. III. Title. TK5105.8885.D54F68 2009 006.7’6—dc22 2008037134 Copyright © 2009 Pearson Education, Inc. All rights reserved. Printed in the United States of America. This publication is protected by copyright, and permission must be obtained from the publisher prior to any prohibited repro- duction, storage in a retrieval system, or transmission in any form or by any means, elec- tronic, mechanical, photocopying, recording, or likewise. For information regarding permis- sions, write to: Pearson Education, Inc Rights and Contracts Department 501 Boylston Street, Suite 900 Boston, MA 02116 Fax (617) 671 3447 ISBN-13: 978-0-13-235613-8 ISBN-10: 0-13-235613-9 Text printed in the United States on recycled paper at RR Donnelley in Crawfordsville, Indiana. First printing October 2008 ❖ To B r i a n L e v i n e, for introducing me to Python, a small thing that has made a big difference.To my parents, for allowing me to monopolize the family computer while growing up.And to my wife, for her loving support and understanding. —Jeff Forcier To my late father Henry, who taught me to tinker; to my ptg mother Glenda, who taught me to write; and to my wife Kathleen, a brilliant star in my life. —Paul Bissex To my wonderful children, Leanna Xin-Yi and Daylen Xin-Zhi, for whom I’ve had to develop multiple pairs of eyes with which to keep watch over, and who are miraculously able to temporarily transport me back in time to remind me of what childhood and its amazing wonders were like. —Wesley Chun ❖ Table of Contents Introduction 1 Where Web Frameworks Come From 1 A Better Way 2 We’re Not in Kansas Anymore 2 Web Development Is Better with Python and Django 3 I: Getting Started 1 Practical Python for Django 7 Python Skills Are Django Skills 7 Getting Started: Python’s Interactive Interpreter 8 Python Basics 10 Comments 10 Variables and Assignment 10 Operators 11 ptg Python Standard Types 11 Object Boolean Values 12 Numbers 12 Numeric Operators 13 Numeric Built-in and Factory Functions 14 Sequences and Iterables 14 Lists 17 Strings 19 Sequence Built-ins and Factory Functions 25 Mapping Type: Dictionaries 26 Standard Type Summary 28 Flow Control 28 Conditionals 29 Loops 29 Exception Handling 30 The finally Clause 31 Throwing Exceptions with raise 32 Files 33 Functions 34 Declaring and Calling Functions 34 Functions Are First-Class Objects 36 Anonymous Functions 38 *args and **kwargs 40 Decorators 42 Object-Oriented Programming 44 Class Definitions 44 Instantiation 45 Subclassing 46 Inner Classes 46 Regular Expressions 47 The re module 47 Searching Versus Matching 48 Common Gotchas 48 Single-Item Tuples 48 Modules 48 Mutability 50 Constructor Versus Initializer 52 ptg Coding Style (PEP 8 and Beyond) 53 Indent Four Spaces 53 Use Spaces and Not Tabs 53 Don’t Write Single-Line Suites on the Same Line as the Header 54 Create Documentation Strings (aka “docstrings”) 54 Summary 55 2 Django for the Impatient: Building a Blog 57 Creating the Project 58 Running the Development Server 59 Creating the Blog Application 61 Designing Your Model 62 Setting Up the Database 62 Using a Database Server 63 Using SQLite 63 Creating the Tables 64 Setting Up the Automatic admin Application 65 Tr ying Out the admin 66 Making Your Blog’s Public Side 70 Creating a Template 70 Creating a View Function 71 Creating a URL Pattern 72 Finishing Touches 73 Template Niceties 73 Date-Based Ordering 74 Timestamp Formatting Via a Template Filter 75 Summary 75 3 Starting Out 77 Dynamic Web Site Basics 77 Communication: HTTP, URLs, Requests, Responses 78 Data Storage: SQL and Relational Databases 78 Presentation: Rendering Templates into HTML and Other Formats 79 ptg Putting It All Together 79 Understanding Models, Views, and Templates 79 Separating the Layers (MVC) 79 Models 80 Views 81 Templates 81 Overall Django Architecture 82 Core Philosophies of Django 82 Django Tries to Be Pythonic 84 Don’t Repeat Yourself (DRY) 84 Loose Coupling and Flexibility 84 Rapid Development 85 Summary 86 II: Django in Depth 4 Defining and Using Models 89 Defining Models 89 Why Use an ORM? 89 Django’s Rich Field Types 91 Relationships Between Models 93 Model Inheritance 97 Meta Inner Class 100 Admin Registration and Options 101 Using Models 102 Creating and Updating Your Database Using manage.py 103 Query Syntax 104 Utilizing SQL Features Django Doesn’t Provide 112 Summary 116 5 URLs, HTTP Mechanisms, and Views 117 URLs 117 Introduction to URLconfs 117 Replacing Tuples with url 119 Using Multiple patterns Objects 119 ptg Including Other URL Files with include 120 Function Objects Versus Function-Name Strings 121 Modeling HTTP: Requests, Responses, and Middleware 122 Request Objects 123 Response Objects 125 Middleware 126 Views/Logic 127 Just Python Functions 128 Generic Views 128 Semi-generic Views 130 Custom Views 131 Summary 133 6 Templates and Form Processing 135 Templates 135 Understanding Contexts 135 Template Language Syntax 136 Forms 142 Defining Forms 142 Filling Out Forms 147 Validation and Cleaning 149 Form Display 150 Widgets 152 Summary 154 III: Django Applications by Example 7 Photo Gallery 159 The Model 160 Preparing for File Uploads 161 Installing PIL 162 Testing ImageField 163 Building Our Custom File Field 164 Initialization 166 Adding Attributes to the Field 167 Saving and Deleting the Thumbnail 168 Using ThumbnailImageField 169 ptg Setting Up DRY URLs 169 The Item App’s URL Layout 172 Tying It All Together with Templates 173 Summary 179 8 Content Management System 181 What’s a CMS? 181 The Un-CMS: Flatpages 182 Enabling the Flatpages App 182 Flatpage Templates 184 Testing It Out 184 Beyond Flatpages: A Simple Custom CMS 185 Making the Model 186 Imports 188 Completing the Model 188 Controlling Which Stories Are Viewed 189 Working with Markdown 190 URL Patterns in urls.py 192 Admin Views 193 Displaying Content Via Generic Views 196 Template Layout 196 Displaying Stories 198 Adding Search 199 Managing Users 201 Supporting Workflow 202 Possible Enhancements 202 Summary 203 9 Liveblog 205 What Exactly Is Ajax? 205 Why Ajax Is Useful 206 Planning the Application 206 Choosing an Ajax Library 207 Laying Out the Application 208 Putting the Ajax In 211 The Basics 212 The “X” in
Recommended publications
  • ROADS and BRIDGES: the UNSEEN LABOR BEHIND OUR DIGITAL INFRASTRUCTURE Preface
    Roads and Bridges:The Unseen Labor Behind Our Digital Infrastructure WRITTEN BY Nadia Eghbal 2 Open up your phone. Your social media, your news, your medical records, your bank: they are all using free and public code. Contents 3 Table of Contents 4 Preface 58 Challenges Facing Digital Infrastructure 5 Foreword 59 Open source’s complicated relationship with money 8 Executive Summary 66 Why digital infrastructure support 11 Introduction problems are accelerating 77 The hidden costs of ignoring infrastructure 18 History and Background of Digital Infrastructure 89 Sustaining Digital Infrastructure 19 How software gets built 90 Business models for digital infrastructure 23 How not charging for software transformed society 97 Finding a sponsor or donor for an infrastructure project 29 A brief history of free and public software and the people who made it 106 Why is it so hard to fund these projects? 109 Institutional efforts to support digital infrastructure 37 How The Current System Works 38 What is digital infrastructure, and how 124 Opportunities Ahead does it get built? 125 Developing effective support strategies 46 How are digital infrastructure projects managed and supported? 127 Priming the landscape 136 The crossroads we face 53 Why do people keep contributing to these projects, when they’re not getting paid for it? 139 Appendix 140 Glossary 142 Acknowledgements ROADS AND BRIDGES: THE UNSEEN LABOR BEHIND OUR DIGITAL INFRASTRUCTURE Preface Our modern society—everything from hospitals to stock markets to newspapers to social media—runs on software. But take a closer look, and you’ll find that the tools we use to build software are buckling under demand.
    [Show full text]
  • Security Now! #731 - 09-10-19 Deepfakes
    Security Now! #731 - 09-10-19 DeepFakes This week on Security Now! This week we look at a forced two-day recess of all schools in Flagstaff, Arizona, the case of a Ransomware operator being too greedy, Apple's controversial response to Google's posting last week about the watering hole attacks, Zerodium's new payout schedule and what it might mean, the final full public disclosure of BlueKeep exploitation code, some potentially serious flaws found and fixed in PHP that may require our listener's attention, some SQRL news, miscellany, and closing-the-loop feedback from a listener. Then we take our first look on this podcast into the growing problem and threat of "DeepFake" media content. All Flagstaff Arizona Schools Cancelled Thursday, August 5th And not surprisingly, recess is extended through Friday: https://www.fusd1.org/facts https://www.facebook.com/FUSD1/ ​ ​ And Saturday... Security Now! #730 1 And Sunday... Security News A lesson for greedy ransomware: Ask for too much… and you get nothing! After two months of silence, last Wednesday Mayor Jon Mitchell of New Bedford, Massachusetts held their first press conference to tell the interesting story of their ransomware attack... The city's IT network was hit with the Ryuk (ree-ook) ransomware which, by the way, Malwarebytes now places at the top of the list of file-encrypting malware targeting businesses. It'll be interesting to see whether So-Dino-Kee-Bee's affiliate marketing model is able to displace Ryuk. But, in any event, very fortunately for the city of New Bedford, hackers breached the city's IT network and got Ryuk running in the wee hours of the morning following the annual 4th of July holiday.
    [Show full text]
  • The Quality Attribute Design Strategy for a Social Network Data Analysis System
    Rochester Institute of Technology RIT Scholar Works Theses 5-2016 The Quality Attribute Design Strategy for a Social Network Data Analysis System Ziyi Bai [email protected] Follow this and additional works at: https://scholarworks.rit.edu/theses Recommended Citation Bai, Ziyi, "The Quality Attribute Design Strategy for a Social Network Data Analysis System" (2016). Thesis. Rochester Institute of Technology. Accessed from This Thesis is brought to you for free and open access by RIT Scholar Works. It has been accepted for inclusion in Theses by an authorized administrator of RIT Scholar Works. For more information, please contact [email protected]. The Quality Attribute Design Strategy for a Social Network Data Analysis System by Ziyi Bai A Thesis Submitted in Partial Fulfillment of the Requirements for the Degree of Master of Science in Software Engineering Supervised by Dr. Scott Hawker Department of Software Engineering B. Thomas Golisano College of Computing and Information Sciences Rochester Institute of Technology Rochester, New York May 2016 ii The thesis “The Quality Attribute Design Strategy for a Social Network Data Analy- sis System” by Ziyi Bai has been examined and approved by the following Examination Committee: Dr. Scott Hawker Associate Professor Thesis Committee Chair Dr. Christopher Homan Associate Professor Dr. Stephanie Ludi Professor iii Acknowledgments Dr.Scott Hawker, I can confidently state that without your guidance I would not have accomplished my achievement. Your support has impacted my future for the better. Thank you for everything. Dr. Chris Homan, I am so thankful that you reached out to me and provided the requirements for this thesis.
    [Show full text]
  • Download Slide (PDF Document)
    When Django is too bloated Specialized Web-Applications with Werkzeug EuroPython 2017 – Rimini, Italy Niklas Meinzer @NiklasMM Gotthard Base Tunnel Photographer: Patrick Neumann Python is amazing for web developers! ● Bottle ● BlueBream ● CherryPy ● CubicWeb ● Grok ● Nagare ● Pyjs ● Pylons ● TACTIC ● Tornado ● TurboGears ● web2py ● Webware ● Zope 2 Why would I want to use less? ● Learn how stuff works Why would I want to use less? ● Avoid over-engineering – Wastes time and resources – Makes updates harder – It’s a security risk. Why would I want to use less? ● You want to do something very specific ● Plan, manage and document chemotherapy treatments ● Built with modern web technology ● Used by hospitals in three European countries Patient Data Lab Data HL7 REST Pharmacy System Database Printers Werkzeug = German for “tool” ● Developed by pocoo team @ pocoo.org – Flask, Sphinx, Jinja2 ● A “WSGI utility” ● Very lightweight ● No ORM, No templating engine, etc ● The basis of Flask and others Werkzeug Features Overview ● WSGI – WSGI 1.0 compatible, WSGI Helpers ● Wrapping of requests and responses ● HTTP Utilities – Header processing, form data parsing, cookies ● Unicode support ● URL routing system ● Testing tools – Testclient, Environment builder ● Interactive Debugger in the Browser A simple Application A simple Application URL Routing Middlewares ● Separate parts of the Application as wsgi apps ● Combine as needed Request Static files DB Part of Application conn with DB access User Dispatcher auth Part of Application without DB access Response HTTP Utilities ● Work with HTTP dates ● Read and dump cookies ● Parse form data Using the test client Using the test client - pytest fixtures Using the test client - pytest fixtures Interactive debugger in the Browser Endless possibilities ● Connect to a database with SQLalchemy ● Use Jinja2 to render documents ● Use Celery to schedule asynchronous tasks ● Talk to 3rd party APIs with requests ● Make syscalls ● Remote control a robot to perform tasks at home Thank you! @NiklasMM NiklasMM Photographer: Patrick Neumann.
    [Show full text]
  • Boosting Public Participation in Urban Planning Through the Use of Web GIS Technology: a Case Study of Stockholm County
    DEGREE PROJECT IN REGIONAL PLANNING, SECOND LEVEL STOCKHOLM 2014 Boosting Public Participation in Urban Planning Through the Use of Web GIS Technology: A Case Study of Stockholm County MAHNAZ NAROOIE SoM EX 2014-16 ___________________________________________ KTH ROYAL INSTITUTE OF TECHNOLOGY SCHOOL OF ARCHITECTURE AND THE BUILT ENVIRONMENT Department of Urban Planning and Environment Division of Urban and Regional Studies Abstract Providing citizens with the robust and suitable tools to effectively participate in the planning process is a necessity nowadays. Also, changes in the capabilities and popularity of new technologies have dramatically raised the number of technology-based tools that are potentially available for enhancing public participation in the planning process. This study explores both the theoretical aspect of collaborative planning and the effects that Web- based Public Participatory GIS (WPPGIS) applications and Information and Communication Technologies (ICT) has on the planning process. Findings indicate that the WPPGIS applications have the potential for increasing participation. It is also found that besides the contextual elements like the attitudes of planners and decision makers, the technological features such as proper user interface, price of software, technical and literacy skills are seen as crucial hindrances to bridging the planning process and technology-based solutions. This research also attempts to combine IAP2 Public Participation Spectrum and technological functionalities into a single framework to understand the implementation of WPPGIS applications in Stockholm, the capital of Sweden. Finally, based on the given criteria and assessment of the reviewed applications, this study concludes with the design and implementation of a prototype WPPGIS application using Open-Source Technologies (OST).
    [Show full text]
  • “Talk” on Albanian Territories (1392–1402)
    Doctoral Dissertation A Model to Decode Venetian Senate Deliberations: Pregadi “Talk” on Albanian Territories (1392–1402) By: Grabiela Rojas Molina Supervisors: Gerhard Jaritz and Katalin Szende Submitted to the Medieval Studies Department Central European University, Budapest In partial fulfillment of the requirements for the degree of Doctor of Philosophy in Medieval Studies, Budapest, Hungary 2020 CEU eTD Collection To my parents CEU eTD Collection Table of Contents Acknowledgments .................................................................................................................................. 1 List of Maps, Charts and Tables .......................................................................................................... 2 Introduction ............................................................................................................................................ 3 A Survey of the Scholarship ........................................................................................................................... 8 a) The Myth of Venice ........................................................................................................................... 8 b) The Humanistic Outlook .................................................................................................................. 11 c) Chronicles, Histories and Diaries ..................................................................................................... 14 d) Albania as a Field of Study .............................................................................................................
    [Show full text]
  • Progressive Authentication in Ios
    Progressive Authentication in iOS Genghis Chau, Denis Plotnikov, Edwin Zhang December 12th, 2014 1 Overview In today's increasingly mobile-centric world, more people are beginning to use their smart- phones for important tasks. This means that many applications will need increased security in order to prevent any unauthorized access. Especially since applications are often always logged in, a careless user who leaves his or her phone unlocked is vulnerable to having po- tentially malicious users easily access sensitive information in apps like mailing or banking applications. In order to counter this on the iOS platform, we build a framework that al- lows developers to use per-app authentication. We tackle this problem from the developer's perspective, as OS-level modifications are much more difficult due to iOS source code being unavailable for analysis. Along with the framework, we complement the system with addi- tional authentication methods, including a server that allows for using one-time passcodes to log into applications. Finally, we discuss further extensions to our work, and their security implications. 2 Background 2.1 Design Our contribution is providing an iOS framework for developers to use in order to force users to reauthenticate when they browse away from the application. This prevents mali- cious attackers from having access to all applications if they are able to get past the phone lock. Currently, a number of authentication schemes are available for use in our framework, including an alphanumeric password, TouchID, Android-style lock patterns, and one-time passcodes. We also provide an Django server that will allow users to generate the one-time passcodes to log into the application.
    [Show full text]
  • Doloto: Code Splitting for Network-Bound Web 2.0 Applications
    Doloto: Code Splitting for Network-Bound Web 2.0 Applications Benjamin Livshits Emre Kıcıman Microsoft Research Microsoft Research ABSTRACT cations, techniques outlines in this paper can be readily incorpo- Modern Web 2.0 applications, such as GMail, Live Maps, Face- rated into the next generation of distributing compilers such as Sil- book and many others, use a combination of Dynamic HTML, verlight [12] and Volta [11]. JavaScript and other Web browser technologies commonly referred to as AJAX to push application execution to the client web browser. 1. INTRODUCTION This improves the responsiveness of these network-bound applica- Over the last several years, we have witnessed the creation of a tions, but the shift of application execution from a back-end server new generation of sophisticated distributed Web 2.0 applications as to the client also often dramatically increases the amount of code diverse as GMail, Live Maps, RedFin, MySpace, and NetFlix. A that must first be downloaded to the browser. This creates an unfor- key enabler for these applications is their use of client-side code— tunate Catch-22: to create responsive distributed Web 2.0 applica- usually JavaScript executed within the Web browser—to provide tions developers move code to the client, but for an application to a smooth and performant experience for users while the rendered be responsive, the code must first be transferred there, which takes Web page is dynamically updated in response to user actions and time. client-server interactions. As the sophistication and feature sets of In this paper, we present DOLOTO1, an optimization tool for these Web applications grow, however, downloading their client- Web 2.0 applications.
    [Show full text]
  • Lweb: Information Flow Security for Multi-Tier Web Applications
    LWeb: Information Flow Security for Multi-tier Web Applications JAMES PARKER, University of Maryland, USA NIKI VAZOU∗, IMDEA Software Institute, Spain MICHAEL HICKS, University of Maryland, USA This paper presents LWeb, a framework for enforcing label-based, information flow policies in database-using web applications. In a nutshell, LWeb marries the LIO Haskell IFC enforcement library with the Yesod web programming framework. The implementation has two parts. First, we extract the core of LIO into a monad transformer (LMonad) and then apply it to Yesod’s core monad. Second, we extend Yesod’s table definition DSL and query functionality to permit defining and enforcing label-based policies on tables and enforcing them during query processing. LWeb’s policy language is expressive, permitting dynamic per-table and per-row 75 policies. We formalize the essence of LWeb in the λLWeb calculus and mechanize the proof of noninterference in Liquid Haskell. This mechanization constitutes the first metatheoretic proof carried out in Liquid Haskell. We also used LWeb to build a substantial web site hosting the Build it, Break it, Fix it security-oriented programming contest. The site involves 40 data tables and sophisticated policies. Compared to manually checking security policies, LWeb imposes a modest runtime overhead of between 2% to 21%. It reduces the trusted code base from the whole application to just 1% of the application code, and 21% of the code overall (when counting LWeb too). CCS Concepts: • Software and its engineering → Semantics; • Security and privacy → Logic and verification; Web application security; Additional Key Words and Phrases: security, information flow control, metatheory, Liquid Haskell, Haskell ACM Reference Format: James Parker, Niki Vazou, and Michael Hicks.
    [Show full text]
  • IT@Sam Newsletter January, 2014
    IT@Sam Newsletter January, 2014 Request Info | Visit | SHSUOnline | Blackboard E-mail My Sam SamWeb Fast Links Apply IT@SAM NEWSLETTER MAJORS & PROGRAMS ADMISSIONS CAMPUS LIFE & CULTURE SERVICES & RESOURCES RESEARCH & RECOGNITIONS ATHLETICS ABOUT SHSU IT@SAM NEWSLETTER HOME THE DIRECTOR'S CUT TECH RESOLUTIONS FOR THE NEW YEAR TECH TIP: NEED A NEW WORD SECURITY TIP: CYBER HYGIENE WITH THE TOP 20 CRITICAL SECURITY CONTROLS Welcome to the January, 2014 issue of the IT@Sam Newsletter! JANUARY TECHNOLOGY TRAINING SCHEDULE FOLLOW SERVICE DESK ON FACEBOOK The Director's Cut FOLLOW SERVICE DESK ON TWITTER In this month’s Director’s Cut, Stephanie Fors talks about the New Year and reminds us of a few things about the Service Desk. FOLLOW THE SERVICE DESK BLOG >> Read More CHECK OUT THE SERVICE DESK ON PINTEREST Tech Resolutions for the New Year ARCHIVES 2014 is here and that usually means time to make resolutions. Typical resolutions involve health or family. However, you might want to consider these tech-related resolutions. >> Read More Tips Blocks Tech Tip: Need a New Word? Do you use the same word over and over again when you write? Are you looking to integrate some new words in your vocabulary? Use Microsoft Word to help with your lexis. >> Read More Security Tip: Cyber Hygiene with the Top 20 Critical Security Controls Are you protecting yourself online thoroughly? Regardless of your answer you should check out this month’s security tip. Keep clean when you are online by following a few simple tips. >> Read More January Technology Training Schedule IT@Sam will be offering a number of training sessions in various programs throughout the year.
    [Show full text]
  • UNIVERSITY of CALIFORNIA SANTA CRUZ Tlpd Mediates Chemotactic
    UNIVERSITY OF CALIFORNIA SANTA CRUZ TlpD mediates chemotactic repellent responses to reactive oxygen species that are relevant to Helicboacter pylori gastric gland colonization A dissertation submitted in partial satisfaction of the requirements for the degree of DOCTOR OF PHILOSOPHY in MICROBIOLOGY AND ENVIRONMENTAL TOXICOLOGY by Kieran D. Collins December 2017 The Dissertation of Kieran D. Collins is approved: ____________________________________ Professor Karen Ottemann, chair ____________________________________ Professor Fitnat Yildiz ____________________________________ Professor Doug Kellogg _____________________________ Tyrus Miller Vice Provost and Dean of Graduate Studies Table of Contents Abstract ........................................................................................................................................................ ix Acknowledgements .................................................................................................................................. xi Internal sense of direction: Sensing and signaling from cytoplasmic chemoreceptors .......................................................................................................................................... 1 Summary ........................................................................................................................................ 1 Introduction .................................................................................................................................. 2 Chemoreceptors signal
    [Show full text]
  • Databases with Uncertainty and Lineage
    The VLDB Journal manuscript No. (will be inserted by the editor) Omar Benjelloun · Anish Das Sarma · Alon Halevy · Martin Theobald · Jennifer Widom Databases with Uncertainty and Lineage Abstract This paper introduces ULDBs, an extension of re- Keywords Uncertainty in Databases · Lineage · Prove- lational databases with simple yet expressive constructs for nance · Probabilistic data management representing and manipulating both lineage and uncertainty. Uncertain data and data lineage are two important areas of data management that have been considered extensively in isolation, however many applications require the features in 1 Introduction tandem. Fundamentally, lineage enables simple and consis- tent representation of uncertain data, it correlates uncertainty in query results with uncertainty in the input data, and query The problems faced when managing uncertain data, and those processing with lineage and uncertainty together presents associated with tracking data lineage, have been addressed computational benefits over treating them separately. in isolation in the past (e.g., [2,4,21,27,30,31,34,41,45] for uncertain data and [11,17–19,39,40] for data lineage). Mo- We show that the ULDB representation is complete, and tivated by a diverse set of applications including data inte- that it permits straightforward implementation of many re- gration, deduplication, scientific data management, informa- lational operations. We define two notions of ULDB mini- tion extraction, and others, we became interested in the com- mality — data-minimal and lineage-minimal — and study bination of uncertainty and lineage as the basis for a new minimization of ULDB representations under both notions. type of data management system [46]. With lineage, derived relations are no longer self-contained: Intuitively, an uncertain database is one that represents their uncertainty depends on uncertainty in the base data.
    [Show full text]