Patents by Inventor Thomas Graham Price
Thomas Graham Price has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11550638Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for reducing latency in presenting content. In one aspect, a system includes a native application that presents an interactive item and a latency reduction engine. The latency reduction engine detects interaction with the interactive item that links to a first electronic resource that is different from the native application and provided by a first network domain and in response to the detecting, reduces latency in presenting the first electronic resource, including executing a first processing thread and a second processing thread in parallel. The first processing thread requests a second electronic resource from a second network domain and loads the second electronic resource and, in response to the loading, stores a browser cookie for the second network domain. The second processing thread requests the first electronic resource and presents the first electronic resource.Type: GrantFiled: March 31, 2020Date of Patent: January 10, 2023Assignee: Google LLCInventors: Tuna Toksoz, Thomas Graham Price
-
Patent number: 11463498Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for persisting state of a streaming application are disclosed. In one aspect, a method includes the actions of receiving data indicating interaction with third-party content that is displayed with first-party content at a client device. The interaction with the third-party content initiates an application request for a streaming version of an application (“streaming application”). The actions further include generating a representation of the streaming application in response to the interaction with the third-party content at the client device. The actions further include receiving data indicating a user interaction with the representation of the streaming application at the client device. The actions further include generating and storing data indicating a first state of the streaming application at a first time based on the user interaction with the representation of the streaming application.Type: GrantFiled: June 19, 2020Date of Patent: October 4, 2022Assignee: Google LLCInventors: Tuna Toksoz, Thomas Graham Price
-
Patent number: 11283851Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for persisting state of a streaming application are disclosed. In one aspect, a method includes the actions of receiving data indicating interaction with third-party content that is displayed with first-party content at a client device. The interaction with the third-party content initiates an application request for a streaming version of an application (“streaming application”). The actions further include generating a representation of the streaming application in response to the interaction with the third-party content at the client device. The actions further include receiving data indicating a user interaction with the representation of the streaming application at the client device. The actions further include generating and storing data indicating a first state of the streaming application at a first time based on the user interaction with the representation of the streaming application.Type: GrantFiled: June 26, 2020Date of Patent: March 22, 2022Assignee: Google LLCInventors: Tuna Toksoz, Thomas Graham Price
-
Patent number: 10958747Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for adjusting an eligibility value for transmitting a digital component. In one aspect, a computing system includes a server for identifying opportunities to transmit digital components to client devices. The server determines a first probability of a given outcome occurring following user interaction with the digital component when the digital component is transmitted to the client device. The server determines a second probability of the given outcome occurring if the digital component is not transmitted to the client device. The server generates an outcome incrementality factor for the digital component, including determining a ratio of the first probability relative to the second probability, and triggers adjustment of an eligibility value based on the outcome incrementality factor. The server then controls transmission of the digital component to the client device using the adjusted eligibility value.Type: GrantFiled: August 24, 2017Date of Patent: March 23, 2021Assignee: Google LLCInventors: Justin Lewis, Thomas Graham Price
-
Patent number: 10887406Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for dynamically selecting a content loading technique are disclosed. In one aspect, a method includes the actions of receiving a request for third-party content. The actions further include generating a first loading score that reflects a likelihood that a third-party content item that is selected using the first third-party content loading technique will render on a display of the client device. The actions further include generating a second loading score that reflects a likelihood that a third-party content item that is selected using the second third-party content loading technique will render on the display. The actions further include comparing the first and second loading scores. The actions further include selecting the first third-party content loading technique. The actions further include selecting and providing a given third-party content item.Type: GrantFiled: August 16, 2017Date of Patent: January 5, 2021Assignee: Google LLCInventors: Thomas Graham Price, Justin Lewis
-
Publication number: 20200329080Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for persisting state of a streaming application are disclosed. In one aspect, a method includes the actions of receiving data indicating interaction with third-party content that is displayed with first-party content at a client device. The interaction with the third-party content initiates an application request for a streaming version of an application (“streaming application”). The actions further include generating a representation of the streaming application in response to the interaction with the third-party content at the client device. The actions further include receiving data indicating a user interaction with the representation of the streaming application at the client device. The actions further include generating and storing data indicating a first state of the streaming application at a first time based on the user interaction with the representation of the streaming application.Type: ApplicationFiled: June 26, 2020Publication date: October 15, 2020Inventors: Tuna Toksoz, Thomas Graham Price
-
Publication number: 20200322398Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for persisting state of a streaming application are disclosed. In one aspect, a method includes the actions of receiving data indicating interaction with third-party content that is displayed with first-party content at a client device. The interaction with the third-party content initiates an application request for a streaming version of an application (“streaming application”). The actions further include generating a representation of the streaming application in response to the interaction with the third-party content at the client device. The actions further include receiving data indicating a user interaction with the representation of the streaming application at the client device. The actions further include generating and storing data indicating a first state of the streaming application at a first time based on the user interaction with the representation of the streaming application.Type: ApplicationFiled: June 19, 2020Publication date: October 8, 2020Inventors: Tuna Toksoz, Thomas Graham Price
-
Patent number: 10791188Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for adjusting an eligibility value for transmitting a digital component. In one aspect, a computing system includes a server for identifying opportunities to transmit digital components to client devices. The server determines a first probability of a given outcome occurring following user interaction with the digital component when the digital component is transmitted to the client device. The server determines a second probability of the given outcome occurring if the digital component is not transmitted to the client device. The server generates an outcome incrementality factor for the digital component, including determining a ratio of the first probability relative to the second probability, and triggers adjustment of an eligibility value based on the outcome incrementality factor. The server then controls transmission of the digital component to the client device using the adjusted eligibility value.Type: GrantFiled: August 24, 2017Date of Patent: September 29, 2020Assignee: Google LLCInventors: Justin Lewis, Thomas Graham Price
-
Patent number: 10728292Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for persisting state of a streaming application are disclosed. In one aspect, a method includes the actions of receiving data indicating interaction with third-party content that is displayed with first-party content at a client device. The interaction with the third-party content initiates an application request for a streaming version of an application (“streaming application”). The actions further include generating a representation of the streaming application in response to the interaction with the third-party content at the client device. The actions further include receiving data indicating a user interaction with the representation of the streaming application at the client device. The actions further include generating and storing data indicating a first state of the streaming application at a first time based on the user interaction with the representation of the streaming application.Type: GrantFiled: May 8, 2019Date of Patent: July 28, 2020Assignee: Google LLCInventors: Tuna Toksoz, Thomas Graham Price
-
Publication number: 20200225998Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for reducing latency in presenting content. In one aspect, a system includes a native application that presents an interactive item and a latency reduction engine. The latency reduction engine detects interaction with the interactive item that links to a first electronic resource that is different from the native application and provided by a first network domain and in response to the detecting, reduces latency in presenting the first electronic resource, including executing a first processing thread and a second processing thread in parallel. The first processing thread requests a second electronic resource from a second network domain and loads the second electronic resource and, in response to the loading, stores a browser cookie for the second network domain. The second processing thread requests the first electronic resource and presents the first electronic resource.Type: ApplicationFiled: March 31, 2020Publication date: July 16, 2020Inventors: Tuna Toksoz, Thomas Graham Price
-
Patent number: 10678605Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for reducing latency in presenting content. In one aspect, a system includes a native application that presents an interactive item and a latency reduction engine. The latency reduction engine detects interaction with the interactive item that links to a first electronic resource that is different from the native application and provided by a first network domain and in response to the detecting, reduces latency in presenting the first electronic resource, including executing a first processing thread and a second processing thread in parallel. The first processing thread requests a second electronic resource from a second network domain and loads the second electronic resource and, in response to the loading, stores a browser cookie for the second network domain. The second processing thread requests the first electronic resource and presents the first electronic resource.Type: GrantFiled: April 12, 2016Date of Patent: June 9, 2020Assignee: Google LLCInventors: Tuna Toksoz, Thomas Graham Price
-
Publication number: 20200145504Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for dynamically selecting a content loading technique are disclosed. In one aspect, a method includes the actions of receiving a request for third-party content. The actions further include generating a first loading score that reflects a likelihood that a third-party content item that is selected using the first third-party content loading technique will render on a display of the client device. The actions further include generating a second loading score that reflects a likelihood that a third-party content item that is selected using the second third-party content loading technique will render on the display. The actions further include comparing the first and second loading scores. The actions further include selecting the first third-party content loading technique. The actions further include selecting and providing a given third-party content item.Type: ApplicationFiled: August 16, 2017Publication date: May 7, 2020Inventors: Thomas Graham Price, Justin Lewis
-
Patent number: 10341457Abstract: This document describes a content caching system for pre-loading digital components, the system including a communication interface configured to communicate with a remote device over a wireless network, a local content cache; and an evaluation system comprising one or more processors. The one or more operations include pre-loading a digital component for rendering in a browser at a time that is subsequent to a time of the pre-loading, registering a scheme of a network reference for the cached digital component, with the scheme comprising a specified portion of the network reference for the cached digital component; retrieving, from the local content cache, the pre-loaded digital component associated with the digital component tag comprising the network reference; and rendering, from the local content cache, the pre-loaded digital component in a graphical user interface rather than requesting the digital component from the remote device.Type: GrantFiled: October 9, 2018Date of Patent: July 2, 2019Assignee: Google LLCInventors: Tuna Toksoz, Thomas Graham Price, Anurag Agrawal
-
Patent number: 10326806Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for persisting state of a streaming application are disclosed. In one aspect, a method includes the actions of receiving data indicating interaction with third-party content that is displayed with first-party content at a client device. The interaction with the third-party content initiates an application request for a streaming version of an application (“streaming application”). The actions further include generating a representation of the streaming application in response to the interaction with the third-party content at the client device. The actions further include receiving data indicating a user interaction with the representation of the streaming application at the client device. The actions further include generating and storing data indicating a first state of the streaming application at a first time based on the user interaction with the representation of the streaming application.Type: GrantFiled: July 19, 2016Date of Patent: June 18, 2019Assignee: Google LLCInventors: Tuna Toksoz, Thomas Graham Price
-
Publication number: 20190068733Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for adjusting an eligibility value for transmitting a digital component. In one aspect, a computing system includes a server for identifying opportunities to transmit digital components to client devices. The server determines a first probability of a given outcome occurring following user interaction with the digital component when the digital component is transmitted to the client device. The server determines a second probability of the given outcome occurring if the digital component is not transmitted to the client device. The server generates an outcome incrementality factor for the digital component, including determining a ratio of the first probability relative to the second probability, and triggers adjustment of an eligibility value based on the outcome incrementality factor. The server then controls transmission of the digital component to the client device using the adjusted eligibility value.Type: ApplicationFiled: August 24, 2017Publication date: February 28, 2019Inventors: Justin Lewis, Thomas Graham Price
-
Publication number: 20190045024Abstract: This document describes a content caching system for pre-loading digital components, the system including a communication interface configured to communicate with a remote device over a wireless network, a local content cache; and an evaluation system comprising one or more processors. The one or more operations include pre-loading a digital component for rendering in a browser at a time that is subsequent to a time of the pre-loading, registering a scheme of a network reference for the cached digital component, with the scheme comprising a specified portion of the network reference for the cached digital component; retrieving, from the local content cache, the pre-loaded digital component associated with the digital component tag comprising the network reference; and rendering, from the local content cache, the pre-loaded digital component in a graphical user interface rather than requesting the digital component from the remote device.Type: ApplicationFiled: October 9, 2018Publication date: February 7, 2019Inventors: Tuna Toksoz, Thomas Graham Price, Anurag Agrawal
-
Publication number: 20190026161Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for reducing latency in presenting content. In one aspect, a system includes (i) a native application that presents an interactive item and (ii) a latency reduction engine. The latency reduction engine detects interaction with the interactive item that links to a first electronic resource that is (i) different from the native application and (ii) provided by a first network domain and in response to the detecting, reduces latency in presenting the first electronic resource, including executing a first processing thread and a second processing thread in parallel. The first processing thread requests a second electronic resource from a second network domain and loads the second electronic resource and, in response to the loading, stores a browser cookie for the second network domain. The second processing thread requests the first electronic resource and presents the first electronic resource.Type: ApplicationFiled: April 12, 2016Publication date: January 24, 2019Inventors: Tuna Toksoz, Thomas Graham Price
-
Patent number: 10129362Abstract: This document describes a content caching system for pre-loading digital components, the system including a communication interface configured to communicate with a remote device over a wireless network, a local content cache; and an evaluation system comprising one or more processors. The one or more operations include pre-loading a digital component for rendering in a browser at a time that is subsequent to a time of the pre-loading, registering a scheme of a network reference for the cached digital component, with the scheme comprising a specified portion of the network reference for the cached digital component; retrieving, from the local content cache, the pre-loaded digital component associated with the digital component tag comprising the network reference; and rendering, from the local content cache, the pre-loaded digital component in a graphical user interface rather than requesting the digital component from the remote device.Type: GrantFiled: August 18, 2016Date of Patent: November 13, 2018Assignee: Google LLCInventors: Tuna Toksoz, Thomas Graham Price, Anurag Agrawal
-
Publication number: 20180054498Abstract: This document describes a content caching system for pre-loading digital components, the system including a communication interface configured to communicate with a remote device over a wireless network, a local content cache; and an evaluation system comprising one or more processors. The one or more operations include pre-loading a digital component for rendering in a browser at a time that is subsequent to a time of the pre-loading, registering a scheme of a network reference for the cached digital component, with the scheme comprising a specified portion of the network reference for the cached digital component; retrieving, from the local content cache, the pre-loaded digital component associated with the digital component tag comprising the network reference; and rendering, from the local content cache, the pre-loaded digital component in a graphical user interface rather than requesting the digital component from the remote device.Type: ApplicationFiled: August 18, 2016Publication date: February 22, 2018Inventors: Tuna Toksoz, Thomas Graham Price, Anurag Agrawal
-
Patent number: 9104982Abstract: The specification relates to a client device utilizing an unintentional-selection module that disambiguates selection events for temporally proximate content. The client device records time stamps indicating a time a dynamic list is first presented and instances when the dynamic list is updated. An input selection indicating that a suggested search query has been chosen from the dynamic list of search suggestions is received and a time stamp for the input selection is recorded. A determination is made to see if the input selection is an unintentional selection. The input selection is determined as the unintentional selection when a difference between a time stamp for presenting a most recent dynamic list update and the time stamp of the input selection satisfies a user-specific threshold. The user-specific threshold is calculated with a machine learning system using user-specific latency times as training data.Type: GrantFiled: March 15, 2013Date of Patent: August 11, 2015Assignee: Google Inc.Inventor: Thomas Graham Price