JONATHAN RYAN HOWELL
Pilots at 18 Ave, Seattle, WA

License number
Washington A4643074
Issued Date
Jan 2013
Expiration Date
Jan 2016
Category
Airmen
Type
Authorized Aircraft Instructor
Address
Address
6827 18Th Ave NE, Seattle, WA 98115

Professional information

Jonathan Howell Photo 1

Adding Custom Content To Mapping Applications

US Patent:
2008023, Oct 2, 2008
Filed:
Mar 29, 2007
Appl. No.:
11/731032
Inventors:
Keith Robert Kinnan - Snoqualmie WA, US
Chandrasekhar Thota - Palo Alto CA, US
Jaya Bhatia - Bellevue WA, US
Jeremy Eric Elson - Kirkland WA, US
Jonathan R. Howell - Seattle WA, US
Danyel Fisher - Seattle WA, US
John R. Douceur - Bellevue WA, US
Duncan Murray Lawler - Bothell WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G09G 5/00
US Classification:
345630
Abstract:
Digital maps can be composed of a series of image tiles that are selected based on the context of the map to be presented. Independently hosted tiles can comprise additional details that can be added to the map. A manifest can be created that describes the layers of map details composed of such independently hosted tiles. Externally referable mechanisms can, based on the manifest and map context, select tiles, from among the independently hosted tiles, that correspond to map tiles being displayed to a user. Subsequently, the mechanisms can instruct a browser, as specified in the manifest, to combine the map tiles and the independently hosted tiles to generate a more detailed map. Alternatively, customized mechanisms can generate map detail tiles in real-time, based on an exported map context. Also, controls instantiated by the browser can render three-dimensional images based on the combined map tiles.


Jonathan Howell Photo 2

Domain Name Cache Control System Generating Series Of Varying Nonce-Bearing Domain Names Based On A Function Of Time

US Patent:
7958261, Jun 7, 2011
Filed:
Feb 14, 2008
Appl. No.:
12/031105
Inventors:
Jonathan Ryan Howell - Seattle WA, US
John R. Douceur - Bellevue WA, US
Jeremy Eric Elson - Kirkland WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 15/173
US Classification:
709242, 709238, 709244, 709223, 709224
Abstract:
Domain name caching is controlled by adding a nonce to a domain name to force propagation of lookup to an authoritative server or service. Desired caching behavior is dictated by controlling when a new and unique nonce-bearing name is created. For example, caching can be completely eliminated by generating a new nonce-bearing name for every request. While a nonce can simply correspond to a random or pseudo random value, it can also be time based. Furthermore, nonces can be phase or time shifted to limit authoritative server load as well as improve response time.


Jonathan Howell Photo 3

Leveraging Remote Server Pools For Client Applications

US Patent:
8549106, Oct 1, 2013
Filed:
Jun 15, 2009
Appl. No.:
12/484356
Inventors:
Jonathan R. Howell - Seattle WA, US
Jeremy E. Elson - Kirkland WA, US
John R. Douceur - Bellevue WA, US
Jacob R. Lorch - Bellevue WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 15/16
US Classification:
709218, 709203
Abstract:
Techniques for enabling client computing devices to leverage remote server pools for increasing the effectiveness of applications stored on the client computing device are described herein. In some instances, the server pools comprise a “cloud”, “cluster” or “data center” that comprises hundreds or thousands of servers connected together by a network that has an extremely low latency and high bandwidth relative to the network through which the client computing device connects to the server pool. The client computing device may request that the server pool perform a certain task for an application whose canonical state resides on the client. After computation of a result of the task, a server of the server pool then provides the result to the client. By doing so, the techniques dramatically increase the amount of resources working on the request of the client and, hence, dramatically increase the speed and effectiveness of the client-side application.


Jonathan Howell Photo 4

Protection And Communication Abstractions For Web Browsers

US Patent:
2008031, Dec 18, 2008
Filed:
Jun 14, 2007
Appl. No.:
11/762900
Inventors:
Jiahe Helen Wang - Issaquah WA, US
Xiaofeng Fan - Redmond WA, US
Collin Edward Jackson - Seattle WA, US
Jonathan Ryan Howell - Seattle WA, US
Zhenbin Xu - Sammamish WA, US
Assignee:
MICROSOFT CORPORATION - Redmond WA
International Classification:
G06F 9/44
US Classification:
719315
Abstract:
Systems and methodologies for accessing resources associated with a Web-based application in accordance with one or more embodiments disclosed herein may include a browser that obtains at least first resources from a first domain and second resources from a second domain and a resource management component that facilitates controlled communication between the first resources and the second resources and prevents the first resources and the second resources from accessing other resources that the first resources and the second resources are not permitted to access. The resource management component may be further operable to contain restricted services in a sandbox containment structure and/or to isolate access-controlled resources in a service instance. In addition, the resource management component may be operable to facilitate the flexible display of resources from disparate domains and/or controlled communication therebetween.


Jonathan Howell Photo 5

Collection Ordering For Replicated State Machines

US Patent:
8135987, Mar 13, 2012
Filed:
Jun 3, 2010
Appl. No.:
12/793547
Inventors:
John Douceur - Seattle WA, US
Jonathan Howell - Seattle WA, US
Jacob R. Lorch - Seattle WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 11/00
US Classification:
714 15, 714 411, 714 11, 714 13
Abstract:
A replicated state machine with N replica servers may be configured to tolerate a count of F faults. A first operation (of a first ordering type) executes when a first quorum of correctly functioning replicas is available. A second operation (also of the first operation type) executes when a second quorum of correctly functioning replicas is available. A third operation (of a second ordering type) executes when a third quorum of correctly functioning replicas are available. The operations are executed by the replicated state machine such that: (1) the replicated state machine does not guarantee operational ordering between the first operation and the second operation; (2) the replicated state machine guarantees ordering between the first operation and the third operation; and (3) the replicated state machine guarantees ordering between the second operation and the third operation.


Jonathan Howell Photo 6

Reading And Writing During Cluster Growth Phase

US Patent:
8447833, May 21, 2013
Filed:
Mar 6, 2012
Appl. No.:
13/412944
Inventors:
Edmund B. Nightingale - Redmond WA, US
Jeremy E. Elson - Seattle WA, US
Jonathan R. Howell - Seattle WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 3/16, G06F 15/16
US Classification:
709217, 709220, 709227, 709229
Abstract:
A client device configured to write to both a growth server and a live server replica that the growth server is replacing during a growth phase is described herein. The client device first determines the growth server designated to replace a corresponding live server replica of a set of server replicas associated with a storage index. The client device then transmits a write request associated with the storage index to the set of server replicas and to the growth server. The client device may perform the determining based on storage assignment mappings. The storage assignment mappings are provided to the client device by a metadata server while the growth server retrieves data associated with the storage index from the live server replica.


Jonathan Howell Photo 7

Interest Aligned Manual Image Categorization For Human Interactive Proofs

US Patent:
8104070, Jan 24, 2012
Filed:
Sep 17, 2007
Appl. No.:
11/856371
Inventors:
John R. Douceur - Bellevue WA, US
Jeremy Eric Elson - Kirkland WA, US
Jonathan Ryan Howell - Seattle WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 7/04
US Classification:
726 2
Abstract:
A system and method that facilitates and effectuates distinguishing a human from a non-human user. A human interactive proof (HIP) employs images from a large private database of manually categorized images to display as part of a Turing test challenge. The private database contains a sufficient quantity of images, such that the more economical manner to pass the HIP is to employ a human to take the challenge. The owner of the private database makes the database available to the presenter of the HIP due to an alignment of interests between both parties. The HIP is displayed with ads on behalf of the owner of the private database and the presenter of the HIP gains access to a large quantity of private manually categorized images.


Jonathan Howell Photo 8

Managing States With Delta Pager

US Patent:
7430553, Sep 30, 2008
Filed:
Dec 30, 2005
Appl. No.:
11/275434
Inventors:
Jonathan R. Howell - Seattle WA, US
John R. Douceur - Bellevue WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 17/30
US Classification:
707 8, 707200, 711141
Abstract:
A delta pager maintains a database with atomic, isolated transactions. When a transaction seeks to make changes to the database, the delta pager stores the changes in write buffers, and applies the changes when intervening transactions do not literally or substantively change the state of the database relied upon by the transaction. The delta pager applies the changes to commit the transaction by conjoining the write buffers with the current state of the database to form a new data structure representing the state of the database. The delta pager coalesces write buffers to maintain efficiency, subject to snapshots the delta pager respects to preserve selected states of the database. The delta pager makes selected sections of the database durable by moving selected data to a durable store. The delta pager also provides cache objects between the durable store and current transactions to promote efficient access to data.


Jonathan Howell Photo 9

Locator Table And Client Library For Datacenters

US Patent:
8533299, Sep 10, 2013
Filed:
Apr 19, 2010
Appl. No.:
12/763107
Inventors:
Edmund B. Nightingale - Redmond WA, US
Jeremy E. Elson - Kirkland WA, US
Jonathan R. Howell - Seattle WA, US
Galen C. Hunt - Bellevue WA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 17/30
US Classification:
709220, 709224, 709203, 709228
Abstract:
A system including a plurality of servers, a client, and a metadata server is described herein. The servers each store tracts of data, a plurality of the tracts comprising a byte sequence and being distributed among the plurality of servers. To locate the tracts, the metadata server generates a table that is used by the client to identify servers associated with the tracts, enabling the client to provide requests to the servers. The metadata server also enables recovery in the event of a server failure. Further, the servers construct tables of tract identifiers and locations to use in responding to the client requests.


Jonathan Howell Photo 10

Automatic Commutativity Detection For Generalized Paxos

US Patent:
8046413, Oct 25, 2011
Filed:
Feb 14, 2005
Appl. No.:
11/057591
Inventors:
Jonathan R. Howell - Seattle WA, US
Jacob R. Lorch - Bellevue WA, US
John R. Douceur - Bellevue WA, US
Leslie B. Lamport - Palo Alto CA, US
Assignee:
Microsoft Corporation - Redmond WA
International Classification:
G06F 15/16
US Classification:
709205
Abstract:
Synchronized devices comprising a distributed system attempt to agree on a compatible sequence of commands to execute. Each device in the distributed system may act as a proposer, acceptor, or a learner. Each proposer proposes a command for each device to execute. The acceptors either accept or reject the proposed commands. The learners keep track of the proposed commands and determine, using a transactional substrate, whether the acceptors have a accepted sequences of commands that commute with respect to one another. Once the learners have determined that a quorum of acceptors have accepted sequences of commands that commute with respect to one another the accepted commands are executed by each device in the distributed system.