Patents by Inventor Sam Spencer

Sam Spencer 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: 8567327
    Abstract: A manually operable seeding device comprises an elongate body portion having a trough section formed therein, and a plurality of openings formed through the body portion in or adjacent the trough section. The plurality of openings is spaced one from another a distance that corresponds to a spacing at which it is desired that plants germinating from the seeds will grow. A method of manually seeding a plant bed is also provided, including: obtaining a seeding device that comprises an elongate body portion having a trough section formed therein and a plurality of openings formed through the body portion in or adjacent the trough section; positioning the seeding device atop or partially below the ground surface; and delivering at least one seed through each of the openings to bed the seed within or atop the ground surface.
    Type: Grant
    Filed: October 8, 2010
    Date of Patent: October 29, 2013
    Inventor: Sam Spencer
  • Patent number: 8418132
    Abstract: A method and system for creating and modifying computer applications using an application description language based on a markup language is provided. An engine creates, connects, and initializes objects corresponding to entities, and specified by entity tags. A factory may be specified by an entity tag and used to create a plurality of entities. Applications are specified in a plaintext descriptive language using a markup language such as XML, enabling applications to be easily developed using object oriented techniques and abstraction. Altering preexisting applications is also simplified. Finally, an application may be dynamically reconfigured when the application's data changes. Type checking and conditional creation of entities is supported.
    Type: Grant
    Filed: February 23, 2006
    Date of Patent: April 9, 2013
    Assignee: Microsoft Corporation
    Inventors: Antony S. Williams, Stephen M. Danton, Arye Gittelman, Christopher D. Hackmann, Sam Spencer, Siddharth Jayadevan, Vladimir H. Hristov, William E. Aitken
  • Patent number: 8356058
    Abstract: Techniques for determining and tracking dependent properties for a calculated property are provided. A request for a value of a first property is received. The value for the first property is calculated, including accessing values for one or more properties used to calculate the value for the first property. The accessing of the values for the one or more properties may be detected, and the one or more properties may be tracked as dependent properties for the first property in a first set of dependent properties. A change in the value of a second property may subsequently be detected. If the second property is determined to be included in the first set of dependent properties, the value of the first property is invalidated.
    Type: Grant
    Filed: November 19, 2009
    Date of Patent: January 15, 2013
    Assignee: Microsoft Corporation
    Inventors: Sam Spencer, John Rivard, Stephen Provine
  • Publication number: 20110119681
    Abstract: Techniques for determining and tracking dependent properties for a calculated property are provided. A request for a value of a first property is received. The value for the first property is calculated, including accessing values for one or more properties used to calculate the value for the first property. The accessing of the values for the one or more properties may be detected, and the one or more properties may be tracked as dependent properties for the first property in a first set of dependent properties. A change in the value of a second property may subsequently be detected. If the second property is determined to be included in the first set of dependent properties, the value of the first property is invalidated.
    Type: Application
    Filed: November 19, 2009
    Publication date: May 19, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: Sam Spencer, John Rivard, Stephen Provine
  • Patent number: 7802179
    Abstract: The present invention extends to methods, systems, and computer program products for synchronizing data between different editor views. Embodiments of the present invention can be used to incrementally parse a portion of a document using a mark-up language (e.g., HTML) snippet. The parsed snippet is then merged back into the main document. Accordingly, code changes in a text view can be integrated into a design view's main document structure (e.g., parse tree) such that the preservation information for the parsed snippet is merged with the preservation information for the rest of the document. Fully reparsing the document is not required and incremental reparsing can be done in automated fashion. Thus, a document can be automatically re-outputted with full preservation of what the document would have looked like in code view without fully reparsing the document.
    Type: Grant
    Filed: December 21, 2006
    Date of Patent: September 21, 2010
    Assignee: Microsoft Corporation
    Inventors: Charles Y. Bissonnette, Mikhail E. Arkhipov, Sam Spencer
  • Patent number: 7716574
    Abstract: Systems and methods are disclosed for providing direct style sheet editing. The disclosed systems and methods may include selecting a first target rule for a next formatting operation. The selected first target rule may include a modified property and may be selected from a plurality of target rules. Furthermore, the disclosed systems and methods may include enabling property changes to occur in a most specific target rule in the plurality of target rules. The most specific target rule may contain the modified property. Moreover, the disclosed systems and methods may include providing a highlighting mechanism configured to allow a user to see which regions of a page are to be affected by the selected first target rule.
    Type: Grant
    Filed: September 9, 2005
    Date of Patent: May 11, 2010
    Assignee: Microsoft Corporation
    Inventors: Daniel P. Chartier, Benjamin C. Constable, Sam Spencer, Hessan Tchaitchian
  • Patent number: 7607066
    Abstract: Suggested corrections for a code error are provided by a compiler or code editor, for example. Thus, there is much less ambiguity about how an error should be corrected. Preferably, a predetermined number of suggested corrections are presented to the user (e.g., up to three suggestions), and the user can choose a desired suggested correction. Corrections for a given error can be made, not only at the location of the error, but throughout the code document, or other files in the user's solution. Furthermore, by undoing one correction and trying another, the user can go through all of the suggested corrections to determine which suggestion would be most preferable.
    Type: Grant
    Filed: June 26, 2002
    Date of Patent: October 20, 2009
    Assignee: Microsoft Corporation
    Inventors: Matthew Wayne Gertz, Sam Spencer, Ernest Kien-Keung Tong, Li Zhang
  • Patent number: 7526753
    Abstract: A code segment and elements of information (e.g., meta information) associated with the code segment are encoded in an XML file. One or more encoded code segments are saved within a library of encoded code segments. An encoded code segment may be selected and inserted into a source code file. When the encoded code is inserted into the source code, associated elements required by the code segment are automatically included and the portions of the code segments that may require modification are identified. The code segments are managed and organized so that sharing of code segments is facilitated.
    Type: Grant
    Filed: June 18, 2003
    Date of Patent: April 28, 2009
    Assignee: Microsoft Corporation
    Inventors: Sam Spencer, Matthew W. Gertz, Ting Liang, James R. Schmelzer, Amanda K. Silver
  • Patent number: 7516441
    Abstract: A system and method of providing edit and continue support in a software program debugging environment. “Edit and continue” support allows a user (e.g., programmer and/or developer) to update the code and/or data structure(s) of an executing program while it is running. After the user has finished editing their code and resumes execution, an integrated development environment (IDE) propagates the edit(s) into a common language runtime (CLR) environment before continuing. Therefore, from the CLR environment's perspective, an edit is a block of intermediate language code (IL) and/or metadata that is inserted into a running process. Moreover, The IDE can facilitate: determining “legality” of an edit; building the edit; sending the edit to the CLR environment; and/or, facilitating the CLR environment switch execution to the edited code.
    Type: Grant
    Filed: July 21, 2004
    Date of Patent: April 7, 2009
    Assignee: Microsoft Corporation
    Inventors: Jennifer A Hamilton, Michael M Magruder, James H Hogg, William G Evans, Vance P Morrison, Lawrence B Sullivan, Sean E Trowbridge, Jason L Zander, Ian H Carmichael, Patrick H Dussud, John L Hamby, John J Rivard, Li Zhang, Mario Chenier, Douglas Rosen, Steven J Steiner, Peter A Hallam, Brian R Crawford, James S Miller, Sam Spencer, Habib Heydarian
  • Patent number: 7434207
    Abstract: Floating or movable windows are provided to display information during debugging, either above the source code, or attached to the source code in the locations that they are relevant to. The floating windows can be semi-transparent in order to allow visibility to both the information in the window and the underlying information such as source code. The windows have different behavior, location, and look, depending on the type of information displayed in window and its relation to the underlying code.
    Type: Grant
    Filed: July 2, 2002
    Date of Patent: October 7, 2008
    Assignee: Microsoft Corporation
    Inventor: Sam Spencer
  • Publication number: 20080155397
    Abstract: The present invention extends to methods, systems, and computer program products for synchronizing data between different editor views. Embodiments of the present invention can be used to incrementally parse a portion of a document using a mark-up language (e.g., HTML) snippet. The parsed snippet is then merged back into the main document. Accordingly, code changes in a text view can be integrated into a design view's main document structure (e.g., parse tree) such that the preservation information for the parsed snippet is merged with the preservation information for the rest of the document. Fully reparsing the document is not required and incremental reparsing can be done in automated fashion. Thus, a document can be automatically re-outputted with full preservation of what the document would have looked like in code view without fully reparsing the document.
    Type: Application
    Filed: December 21, 2006
    Publication date: June 26, 2008
    Applicant: MICROSOFT CORPORATION
    Inventors: Charles Y. Bissonnette, Mikhail E. Arkhipov, Sam Spencer
  • Patent number: 7337393
    Abstract: Systems and methods are disclosed for providing an editable visual formatting model. The disclosed systems and methods may include providing visual formatting properties. The visual formatting properties may comprise an outer-most polygon corresponding to a container of a selected element, a middle polygon corresponding to a margin of the selected element, and an inner-most polygon corresponding to a padding of the selected element. Furthermore, the disclosed systems and methods may include providing interactive handles configured to provide design view editing of the visual formatting properties.
    Type: Grant
    Filed: September 9, 2005
    Date of Patent: February 26, 2008
    Assignee: Microsoft Corporation
    Inventors: Daniel P. Chartier, Benjamin C. Constable, Sam Spencer
  • Patent number: 7210132
    Abstract: Interoperability of a first framework or platform (e.g., COM) and a second different framework or platform (e.g., .NET) is provided via an attribute mechanism. The attribute mechanism is provided in a non-COM based platform (e.g., .NET) to expose classes to COM. In this manner, a compiler (e.g., the .NET compiler) creates class and events interfaces and adds attributes to the class and interfaces as appropriate for correct interoperability and marshaling. By adding this attribute mechanism to a class in .NET, the .NET compiler is able to use the class declarations (such as public methods, properties, and events) to automatically generate a class interface and an events interface, including appropriate dispatch IDs and GUIDs. Validation is performed on the class being mapped to provide an indication, such as an error message or warning, to the user that the underlying framework marshaling layer cannot marshal certain data types as desired or expected.
    Type: Grant
    Filed: May 30, 2002
    Date of Patent: April 24, 2007
    Assignee: Microsoft Corporation
    Inventors: John J. Rivard, Sam Spencer
  • Publication number: 20070061715
    Abstract: Systems and methods are disclosed for providing an editable visual formatting model. The disclosed systems and methods may include providing visual formatting properties. The visual formatting properties may comprise an outer-most polygon corresponding to a container of a selected element, a middle polygon corresponding to a margin of the selected element, and an inner-most polygon corresponding to a padding of the selected element. Furthermore, the disclosed systems and methods may include providing interactive handles configured to provide design view editing of the visual formatting properties.
    Type: Application
    Filed: September 9, 2005
    Publication date: March 15, 2007
    Applicant: Microsoft Corporation
    Inventors: Daniel Chartier, Benjamin Constable, Sam Spencer
  • Publication number: 20070061710
    Abstract: Systems and methods are disclosed for providing direct style sheet editing. The disclosed systems and methods may include selecting a first target rule for a next formatting operation. The selected first target rule may include a modified property and may be selected from a plurality of target rules. Furthermore, the disclosed systems and methods may include enabling property changes to occur in a most specific target rule in the plurality of target rules. The most specific target rule may contain the modified property. Moreover, the disclosed systems and methods may include providing a highlighting mechanism configured to allow a user to see which regions of a page are to be affected by the selected first target rule.
    Type: Application
    Filed: September 9, 2005
    Publication date: March 15, 2007
    Applicant: Microsoft Corporation
    Inventors: Daniel Chartier, Benjamin Constable, Sam Spencer
  • Publication number: 20060248112
    Abstract: A method and system for creating and modifying computer applications using an application description language based on a markup language is provided. An engine creates, connects, and initializes objects corresponding to entities, and specified by entity tags. A factory may be specified by an entity tag and used to create a plurality of entities. Applications are specified in a plaintext descriptive language using a markup language such as XML, enabling applications to be easily developed using object oriented techniques and abstraction. Altering preexisting applications is also simplified. Finally, an application may be dynamically reconfigured when the application's data changes. Type checking and conditional creation of entities is supported.
    Type: Application
    Filed: February 23, 2006
    Publication date: November 2, 2006
    Applicant: Microsoft Corporation
    Inventors: Antony Williams, Stephen Danton, Arye Gittleman, Christopher Hackmann, Sam Spencer, Siddharth Jayadevan, Vladimir Hristov, William Aitken
  • Publication number: 20050278585
    Abstract: Floating or movable windows are provided to display information during debugging, either above the source code, or attached to the source code in the locations that they are relevant to. The floating windows can be semi-transparent in order to allow visibility to both the information in the window and the underlying information such as source code. The windows have different behavior, location, and look, depending on the type of information displayed in window and its relation to the underlying code.
    Type: Application
    Filed: July 2, 2002
    Publication date: December 15, 2005
    Inventor: Sam Spencer
  • Publication number: 20050034109
    Abstract: A system and method of providing edit and continue support in a software program debugging environment. “Edit and continue” support allows a user (e.g., programmer and/or developer) to update the code and/or data structure(s) of an executing program while it is running. After the user has finished editing their code and resumes execution, an integrated development environment (IDE) propagates the edit(s) into a common language runtime (CLR) environment before continuing. Therefore, from the CLR environment's perspective, an edit is a block of intermediate language code (IL) and/or metadata that is inserted into a running process. The IDE can facilitate: determining “legality” of an edit; building the edit; sending the edit to the CLR environment; and/or, facilitating the CLR environment switch execution to the edited code.
    Type: Application
    Filed: July 21, 2004
    Publication date: February 10, 2005
    Applicant: Microsoft Corporation
    Inventors: Jennifer Hamilton, Michael Magruder, James Hogg, William Evans, Vance Morrison, Lawrence Sullivan, Sean Trowbridge, Jason Zander, Ian Carmichael, Patrick Dussud, John Hamby, John Rivard, Li Zhang, Mario Chenier, Douglas Rosen, Steven Steiner, Peter Hallam, Brian Crawford, James Miller, Sam Spencer, Habib Heydarian
  • Publication number: 20040261059
    Abstract: A code segment and elements of information (e.g., meta information) associated with the code segment are encoded in an XML file. One or more encoded code segments are saved within a library of encoded code segments. An encoded code segment may be selected and inserted into a source code file. When the encoded code is inserted into the source code, associated elements required by the code segment are automatically included and the portions of the code segments that may require modification are identified. The code segments are managed and organized so that sharing of code segments is facilitated.
    Type: Application
    Filed: June 18, 2003
    Publication date: December 23, 2004
    Inventors: Sam Spencer, Matthew W. Gertz, Ting Liang, James R. Schmelzer, Amanda K. Silver
  • Publication number: 20040003335
    Abstract: Suggested corrections for a code error are provided by a compiler or code editor, for example. Thus, there is much less ambiguity about how an error should be corrected. Preferably, a predetermined number of suggested corrections are presented to the user (e.g., up to three suggestions), and the user can choose a desired suggested correction. Corrections for a given error can be made, not only at the location of the error, but throughout the code document, or other files in the user's solution. Furthermore, by undoing one correction and trying another, the user can go through all of the suggested corrections to determine which suggestion would be most preferable.
    Type: Application
    Filed: June 26, 2002
    Publication date: January 1, 2004
    Applicant: Microsoft Corporation
    Inventors: Matthew Wayne Gertz, Sam Spencer, Ernest Kien-Keung Tong, Li Zhang