Patents by Inventor Todd A. Proebsting

Todd A. Proebsting 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: 8407206
    Abstract: Described herein are methods and systems for providing software development services more efficiently. Re-computation of results each time a service request is received can be avoided by maintaining a cache of results from having processed requests. Results are stored under a unique mapping of request-results pairs that at least in part rely on a file fingerprint hash of the contents of the input files related to the request. In network environment with a client requester and service provider unnecessary transmission is also avoided by first presenting results for requests are in form of a unique file identifier identifying one or more files holding the content of the results. The file identifier is used to search a cache local to the requesting client prior to requesting transmission of the results. The file identifier may also include an indicator for indicating a location from which the results may be retrieved.
    Type: Grant
    Filed: May 16, 2005
    Date of Patent: March 26, 2013
    Assignee: Microsoft Corporation
    Inventors: Todd A. Proebsting, David R. Hanson, Benjamin G. Zorn
  • Patent number: 8341065
    Abstract: A user participates in trading securities in a prediction market which represent different outcomes of an event, using an interface which allows the user to understand a trade in terms of a bet. The interface also allows the user to explore different bet amounts while receiving feedback on potential payoffs in real time. In one approach, a tool is used which is moved in one direction by the user to indicate a larger trade for an outcome, or in the opposite direction to indicate a larger trade against the outcome. A bet for an outcome can be translated into a purchase of a corresponding security which represents the outcome. A bet against a particular outcome can be translated into a purchase of securities which represents all other outcomes. The user interfaces hides complexities of the market from the user while surfacing relevant information.
    Type: Grant
    Filed: September 13, 2007
    Date of Patent: December 25, 2012
    Assignee: Microsoft Corporation
    Inventors: Henry G. Berg, Todd A. Proebsting
  • Patent number: 8229824
    Abstract: Users participate in an estimate contest and a prediction market for forecasting an outcome of a future event. Data from the estimate contest and the prediction market can be combined to obtain accurate information about overall group beliefs and individual or sub-groups beliefs. In the estimate contest, users provide estimated probabilities of occurrence for different possible outcomes of the event. Trades can be proposed, or automatically executed, based on differences between the user's estimated probabilities and probabilities obtained from a prediction market in which the user can buy and sell securities which represent the different outcomes. For example, a buying opportunity may be present when the user's estimated probability exceeds the prediction market's probability. Further, the user can express a risk level which is factored into the proposed trades.
    Type: Grant
    Filed: September 13, 2007
    Date of Patent: July 24, 2012
    Assignee: Microsoft Corporation
    Inventors: Henry G. Berg, Todd A. Proebsting
  • Patent number: 7880741
    Abstract: A user interface allows a user to freehand draw a probability density curve, or to select from predetermined probability densities, such as a normal distribution. The probability density represents the user's opinion regarding the probability of occurrence for different outcomes of a future event. The user can easily manipulate the shape of the probability density by dragging portions of the curve using an input device, such as to change the mean or standard deviation. Further, a scoring rule is applied to the probability density so that an updated score is displayed as the probability density is manipulated. The probability density can be input to an estimate contest or a prediction market, for instance. The user interface can also allow the user to freehand draw a scoring curve from which a probability density can be computed based on a scoring rule.
    Type: Grant
    Filed: September 13, 2007
    Date of Patent: February 1, 2011
    Assignee: Microsoft Corporation
    Inventors: Todd A. Proebsting, Henry G. Berg
  • Publication number: 20090076939
    Abstract: A user participates in trading securities in a prediction market which represent different outcomes of an event, using an interface which allows the user to understand a trade in terms of a bet. The interface also allows the user to explore different bet amounts while receiving feedback on potential payoffs in real time. In one approach, a tool is used which is moved in one direction by the user to indicate a larger trade for an outcome, or in the opposite direction to indicate a larger trade against the outcome. A bet for an outcome can be translated into a purchase of a corresponding security which represents the outcome. A bet against a particular outcome can be translated into a purchase of securities which represents all other outcomes. The user interfaces hides complexities of the market from the user while surfacing relevant information.
    Type: Application
    Filed: September 13, 2007
    Publication date: March 19, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: HENRY G. BERG, TODD A. PROEBSTING
  • Publication number: 20090076974
    Abstract: Users participate in an estimate contest and a prediction market for forecasting an outcome of a future event. Data from the estimate contest and the prediction market can be combined to obtain accurate information about overall group beliefs and individual or sub-groups beliefs. In the estimate contest, users provide estimated probabilities of occurrence for different possible outcomes of the event. Trades can be proposed, or automatically executed, based on differences between the user's estimated probabilities and probabilities obtained from a prediction market in which the user can buy and sell securities which represent the different outcomes. For example, a buying opportunity may be present when the user's estimated probability exceeds the prediction market's probability. Further, the user can express a risk level which is factored into the proposed trades.
    Type: Application
    Filed: September 13, 2007
    Publication date: March 19, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: HENRY G. BERG, TODD A. PROEBSTING
  • Publication number: 20090073174
    Abstract: A user interface allows a user to freehand draw a probability density curve, or to select from predetermined probability densities, such as a normal distribution. The probability density represents the user's opinion regarding the probability of occurrence for different outcomes of a future event. The user can easily manipulate the shape of the probability density by dragging portions of the curve using an input device, such as to change the mean or standard deviation. Further, a scoring rule is applied to the probability density so that an updated score is displayed as the probability density is manipulated. The probability density can be input to an estimate contest or a prediction market, for instance. The user interface can also allow the user to freehand draw a scoring curve from which a probability density can be computed based on a scoring rule.
    Type: Application
    Filed: September 13, 2007
    Publication date: March 19, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Henry G. Berg, Todd A. Proebsting
  • Publication number: 20070006120
    Abstract: Described herein are methods and systems for providing software development services more efficiently. Re-computation of results each time a service request is received can be avoided by maintaining a cache of results from having processed requests. Results are stored under a unique mapping of request-results pairs that at least in part rely on a file fingerprint hash of the contents of the input files related to the request. In network environment with a client requester and service provider unnecessary transmission is also avoided by first presenting results for requests are in form of a unique file identifier identifying one or more files holding the content of the results. The file identifier is used to search a cache local to the requesting client prior to requesting transmission of the results. The file identifier may also include an indicator for indicating a location from which the results may be retrieved.
    Type: Application
    Filed: May 16, 2005
    Publication date: January 4, 2007
    Applicant: Microsoft Corporation
    Inventors: Todd Proebsting, David Hanson, Benjamin Zorn
  • Publication number: 20060259896
    Abstract: Described herein are methods and systems for providing software development services according to an execution environment specified in the requests. For instance, instead of performing compilation on a stand-alone desktop computer, software development activities including, compilation are performed by a service provider in response to a general query from a client requester. Service provider avoids computing results each time a request is received by maintaining a cache of results. To ensure that stored results are compatible to results that can be obtained by re-computation, results are computed according to a specified execution environment. The execution environment for computing is first created on a virtual machine on which aspects of the environment such as a specific version of an operating system and software development tool are established. The execution environment is then saved and invoked on a virtual machine during computation of results for software development requests.
    Type: Application
    Filed: May 16, 2005
    Publication date: November 16, 2006
    Applicant: Microsoft Corporation
    Inventors: David Hanson, Benjamin Zorn, Todd Proebsting
  • Patent number: 7111283
    Abstract: A programming-language construct called a program history, and a method, system, apparatus, and data structure for translating computer source code that contains the program history construct. A program history captures data regarding the state of the program as it executes and makes this data available to functions called history operators, which operate on the data. The source code contains a history operand, an instance of the history operand, and the history operator. The presence of the history operand directs a translator to cause history data to be saved regarding the sequence of data that is associated with the operand instance as the program executes. The presence of the history operator directs the translator to cause a function to be performed that saves history data. In this way, the programmer is freed from writing tedious and error-prone bookkeeping code that declares variables and saves history data into those declared variables.
    Type: Grant
    Filed: November 29, 2000
    Date of Patent: September 19, 2006
    Assignee: Microsoft Corporation
    Inventors: Christopher W. Fraser, Todd A. Proebsting, Benjamin G. Zorn
  • Patent number: 7096456
    Abstract: A programming language is provided that permits the use of both dynamically scoped variables and statically scoped variables, and that allows a programmer to select which scoping is desired for a particular variable. The programming language comprises at least one language construct for defining statically scoped variables to be used if a static scoped variable is desired and at least one language construct for defining dynamically scoped variables to be used if a dynamically scoped variable is desired. A method, apparatus, and computer-readable medium are also provided.
    Type: Grant
    Filed: May 31, 2002
    Date of Patent: August 22, 2006
    Assignee: Microsoft Corporation
    Inventors: David R. Hanson, Todd A. Proebsting
  • Patent number: 6748585
    Abstract: Programming language constructs called pronouns and referents, and a method, system, and apparatus for translating computer source code that contains the pronouns and referents. A referent is any semantic or syntactic construct in the source code (e.g., a statement, a portion of a statement, an expression, or a value) to which a pronoun refers. A pronoun is a programming-language defined source-code symbol or a sequence of symbols that refers to the referent. As a result, pronouns eliminate the need to define new names or macros for repeated program segments. When a translator encounters the pronoun in the source code, the translator searches the source code for the referent and substitutes the referent for the pronoun. Thus, by using pronouns and referents, the programmer can write programs faster and easier and eliminate program redundancy without losing readability.
    Type: Grant
    Filed: November 29, 2000
    Date of Patent: June 8, 2004
    Assignee: Microsoft Corporation
    Inventors: Todd A. Proebsting, Benjamin G. Zorn
  • Patent number: 6748588
    Abstract: A one-pass, greedy-pattern-matching, finite-state-machine code generator is disclosed. The code generator generates local code (such as processor-native code) from intermediate code (such as Java byte code). In one embodiment of the invention, a computer-implemented method for generating local code from intermediate code first includes receiving a current element of a post-fix-notated intermediate code. The method receives a current element of a postfix-notated intermediate code, and matches the current element to a base rule within a predetermined intermediate code-to-local code grammar. The method then selects and applies a matching base rule based on a predetermined criteria. A local code is then generated according to the matching base rule applied to the current element. A next element of the intermediate code is then advanced to as the current element.
    Type: Grant
    Filed: March 31, 1999
    Date of Patent: June 8, 2004
    Assignee: Microsoft Corporation
    Inventors: Christopher W. Fraser, Todd A. Proebsting
  • Publication number: 20030110470
    Abstract: A programming language is provided that permits the use of both dynamically scoped variables and statically scoped variables, and that allows a programmer to select which scoping is desired for a particular variable. The programming language comprises at least one language construct for defining statically scoped variables to be used if a static scoped variable is desired and at least one language construct for defining dynamically scoped variables to be used if a dynamically scoped variable is desired. A method, apparatus, and computer-readable medium are also provided.
    Type: Application
    Filed: May 31, 2002
    Publication date: June 12, 2003
    Applicant: Microsoft Corporation
    Inventors: David R. Hanson, Todd A. Proebsting
  • Publication number: 20020166114
    Abstract: Programming language constructs called pronouns and referents, and a method, system, and apparatus for translating computer source code that contains the pronouns and referents. A referent is any semantic or syntactic construct in the source code (e.g., a statement, a portion of a statement, an expression, or a value) to which a pronoun refers. A pronoun is a programming-language defined source-code symbol or a sequence of symbols that refers to the referent. As a result, pronouns eliminate the need to define new names or macros for repeated program segments. When a translator encounters the pronoun in the source code, the translator searches the source code for the referent and substitutes the referent for the pronoun. Thus, by using pronouns and referents, the programmer can write programs faster and easier and eliminate program redundancy without losing readability.
    Type: Application
    Filed: November 29, 2000
    Publication date: November 7, 2002
    Inventors: Todd A. Proebsting, Benjamin G. Zorn
  • Publication number: 20020091998
    Abstract: A programming-language construct called a program history, and a method, system, apparatus, and data structure for translating computer source code that contains the program history construct. A program history captures data regarding the state of the program as it executes and makes this data available to functions called history operators, which operate on the data. The source code contains a history operand, an instance of the history operand, and the history operator. The presence of the history operand directs a translator to cause history data to be saved regarding the sequence of data that is associated with the operand instance as the program executes. The presence of the history operator directs the translator to cause a function to be performed that saves history data. In this way, the programmer is freed from writing tedious and error-prone bookkeeping code that declares variables and saves history data into those declared variables.
    Type: Application
    Filed: November 29, 2000
    Publication date: July 11, 2002
    Applicant: Microsoft Corporation
    Inventors: Christopher W. Fraser, Todd A. Proebsting, Benjamin G. Zorn