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: 8567327Abstract: 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: GrantFiled: October 8, 2010Date of Patent: October 29, 2013Inventor: Sam Spencer
-
Patent number: 8418132Abstract: 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: GrantFiled: February 23, 2006Date of Patent: April 9, 2013Assignee: Microsoft CorporationInventors: Antony S. Williams, Stephen M. Danton, Arye Gittelman, Christopher D. Hackmann, Sam Spencer, Siddharth Jayadevan, Vladimir H. Hristov, William E. Aitken
-
Patent number: 8356058Abstract: 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: GrantFiled: November 19, 2009Date of Patent: January 15, 2013Assignee: Microsoft CorporationInventors: Sam Spencer, John Rivard, Stephen Provine
-
Publication number: 20110119681Abstract: 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: ApplicationFiled: November 19, 2009Publication date: May 19, 2011Applicant: MICROSOFT CORPORATIONInventors: Sam Spencer, John Rivard, Stephen Provine
-
Patent number: 7802179Abstract: 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: GrantFiled: December 21, 2006Date of Patent: September 21, 2010Assignee: Microsoft CorporationInventors: Charles Y. Bissonnette, Mikhail E. Arkhipov, Sam Spencer
-
Patent number: 7716574Abstract: 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: GrantFiled: September 9, 2005Date of Patent: May 11, 2010Assignee: Microsoft CorporationInventors: Daniel P. Chartier, Benjamin C. Constable, Sam Spencer, Hessan Tchaitchian
-
Patent number: 7607066Abstract: 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: GrantFiled: June 26, 2002Date of Patent: October 20, 2009Assignee: Microsoft CorporationInventors: Matthew Wayne Gertz, Sam Spencer, Ernest Kien-Keung Tong, Li Zhang
-
Patent number: 7526753Abstract: 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: GrantFiled: June 18, 2003Date of Patent: April 28, 2009Assignee: Microsoft CorporationInventors: Sam Spencer, Matthew W. Gertz, Ting Liang, James R. Schmelzer, Amanda K. Silver
-
Patent number: 7516441Abstract: 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: GrantFiled: July 21, 2004Date of Patent: April 7, 2009Assignee: Microsoft CorporationInventors: 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: 7434207Abstract: 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: GrantFiled: July 2, 2002Date of Patent: October 7, 2008Assignee: Microsoft CorporationInventor: Sam Spencer
-
Publication number: 20080155397Abstract: 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: ApplicationFiled: December 21, 2006Publication date: June 26, 2008Applicant: MICROSOFT CORPORATIONInventors: Charles Y. Bissonnette, Mikhail E. Arkhipov, Sam Spencer
-
Patent number: 7337393Abstract: 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: GrantFiled: September 9, 2005Date of Patent: February 26, 2008Assignee: Microsoft CorporationInventors: Daniel P. Chartier, Benjamin C. Constable, Sam Spencer
-
Patent number: 7210132Abstract: 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: GrantFiled: May 30, 2002Date of Patent: April 24, 2007Assignee: Microsoft CorporationInventors: John J. Rivard, Sam Spencer
-
Publication number: 20070061715Abstract: 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: ApplicationFiled: September 9, 2005Publication date: March 15, 2007Applicant: Microsoft CorporationInventors: Daniel Chartier, Benjamin Constable, Sam Spencer
-
Publication number: 20070061710Abstract: 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: ApplicationFiled: September 9, 2005Publication date: March 15, 2007Applicant: Microsoft CorporationInventors: Daniel Chartier, Benjamin Constable, Sam Spencer
-
Publication number: 20060248112Abstract: 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: ApplicationFiled: February 23, 2006Publication date: November 2, 2006Applicant: Microsoft CorporationInventors: Antony Williams, Stephen Danton, Arye Gittleman, Christopher Hackmann, Sam Spencer, Siddharth Jayadevan, Vladimir Hristov, William Aitken
-
Publication number: 20050278585Abstract: 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: ApplicationFiled: July 2, 2002Publication date: December 15, 2005Inventor: Sam Spencer
-
Publication number: 20050034109Abstract: 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: ApplicationFiled: July 21, 2004Publication date: February 10, 2005Applicant: Microsoft CorporationInventors: 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: 20040261059Abstract: 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: ApplicationFiled: June 18, 2003Publication date: December 23, 2004Inventors: Sam Spencer, Matthew W. Gertz, Ting Liang, James R. Schmelzer, Amanda K. Silver
-
Publication number: 20040003335Abstract: 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: ApplicationFiled: June 26, 2002Publication date: January 1, 2004Applicant: Microsoft CorporationInventors: Matthew Wayne Gertz, Sam Spencer, Ernest Kien-Keung Tong, Li Zhang