Patents by Inventor Andrew Richard Sterland

Andrew Richard Sterland 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: 11983094
    Abstract: Embodiments improve software defect diagnosis. Analytic focus is automatically walked back from an initial symptomatic diagnostic context to a previous diagnostic context that is closer to underlying causes. Diagnosis may obtain diagnostic artifacts such as traces or dumps, extract diagnostic context, decompile executables, lookup likely causes based on symptoms, scan logs, and submit diagnostic context to software analysis services. An analysis service may perform static analysis, security testing, symptom-pair lookups, or antipattern scanning, for example, and may include a neural network or other machine learning model, for example. Root causes are culled from analysis results and identified to a software developer. Changes to mitigate the defect's impact are suggested in some cases. Thus, the software developer receives debugging leads without manually navigating through all the tool interfaces or unrelated details of diagnostic contexts.
    Type: Grant
    Filed: December 5, 2019
    Date of Patent: May 14, 2024
    Inventors: Mark Anthony Jelf Downie, Jackson Davis, Thomas Lai, Andrew Richard Sterland, Wai Hang (“Barry”) Tang, Nikolaus Karpinsky
  • Patent number: 11714613
    Abstract: Embodiments automate surfacing of underutilized development tool features, thereby enhancing the discoverability of subtools, commands, shortcuts, settings, visualizers, and other tool features. After spotting an inefficiency in the user's interaction with one or more tools, the feature surfacing functionality offers the user an interaction optimization suggestion. A mapping structure correlates detected interaction patterns with objectively better interaction optimizations. Several examples of mappings are discussed. The user can accept a suggestion, have the suggested optimization applied by an enhanced tool, and thereby reduce the number of user gestures utilized to accomplish a desired result, reduce the number of tools utilized, increase security, reduce risk of error, or get to the desired result faster, for example. Interaction optimizations also help the user stay focused, by reducing or avoiding departures from the user's current primary workflow.
    Type: Grant
    Filed: November 7, 2021
    Date of Patent: August 1, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Peter Groenewegen, Arjun Radhakrishna, Gustavo Araujo Soares, Mark Alistair Wilson-Thomas, Piyush Arora, Aaron Chak Hei Yim, David Ellis Pugh, German David Obando Chacon, Andrew Richard Sterland, Gregory Miskelly
  • Publication number: 20230141807
    Abstract: Embodiments automate surfacing of underutilized development tool features, thereby enhancing the discoverability of subtools, commands, shortcuts, settings, visualizers, and other tool features. After spotting an inefficiency in the user’s interaction with one or more tools, the feature surfacing functionality offers the user an interaction optimization suggestion. A mapping structure correlates detected interaction patterns with objectively better interaction optimizations. Several examples of mappings are discussed. The user can accept a suggestion, have the suggested optimization applied by an enhanced tool, and thereby reduce the number of user gestures utilized to accomplish a desired result, reduce the number of tools utilized, increase security, reduce risk of error, or get to the desired result faster, for example. Interaction optimizations also help the user stay focused, by reducing or avoiding departures from the user’s current primary workflow.
    Type: Application
    Filed: November 7, 2021
    Publication date: May 11, 2023
    Inventors: Peter GROENEWEGEN, Arjun RADHAKRISHNA, Gustavo ARAUJO SOARES, Mark Alistair WILSON-THOMAS, Piyush ARORA, Aaron Chak Hei YIM, David Ellis PUGH, German David OBANDO CHACON, Andrew Richard STERLAND, Gregory MISKELLY
  • Publication number: 20210173760
    Abstract: Embodiments improve software defect diagnosis. Analytic focus is automatically walked back from an initial symptomatic diagnostic context to a previous diagnostic context that is closer to underlying causes. Diagnosis may obtain diagnostic artifacts such as traces or dumps, extract diagnostic context, decompile executables, lookup likely causes based on symptoms, scan logs, and submit diagnostic context to software analysis services. An analysis service may perform static analysis, security testing, symptom-pair lookups, or antipattern scanning, for example, and may include a neural network or other machine learning model, for example. Root causes are culled from analysis results and identified to a software developer. Changes to mitigate the defect's impact are suggested in some cases. Thus, the software developer receives debugging leads without manually navigating through all the tool interfaces or unrelated details of diagnostic contexts.
    Type: Application
    Filed: December 5, 2019
    Publication date: June 10, 2021
    Inventors: Mark Anthony Jelf DOWNIE, Jackson DAVIS, Thomas LAI, Andrew Richard STERLAND, Wai Hang ("Barry") TANG, Nikolaus KARPINSKY
  • Publication number: 20210149788
    Abstract: Embodiments provide improved diagnosis of software defects. Static analysis services and other source-based diagnostic tools and techniques are applied even when the source code underlying software is unavailable. Diagnosis obtains diagnostic artifacts, extracts diagnostic context from the artifacts, decompiles to get source, and submits decompiled source to a source-based software analysis service. The analysis service may be a static analysis tool, an antipattern scanner, or a machine learning model trained on source code, for example. The diagnostic context may also guide the analysis, e.g., by localizing decompilation or prioritizing possible causes. Likely causes are culled from analysis results and identified to a software developer. Changes to mitigate the defect's impact are suggested. Thus, the software developer receives debugging leads without providing source code for the defective program, and without manually navigating through a decompiler and through the analysis services.
    Type: Application
    Filed: November 18, 2019
    Publication date: May 20, 2021
    Inventors: Mark Anthony Jelf DOWNIE, Jackson DAVIS, Thomas LAI, Andrew Richard STERLAND, Wai Hang ("Barry") TANG, Nikolaus KARPINSKY
  • Patent number: 10664384
    Abstract: The present invention extends to methods, systems, and computer program products for stepping through JavaScript code in a debugger without landing on errors in library or open source code. A debugger receives user inputs designating one or more segments of the JavaScript code as library code. The debugger then performs debugging operations on the JavaScript code. The debugging operations including a stepping operation for stepping through the JavaScript code to identify errors only in user-generated segments of the JavaScript code, wherein the user-generated segments correspond to code that was not designated as library code.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: May 26, 2020
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Robert Alan Paveza, Andrew Richard Sterland, Timothy Scott Rice, Gregg Bernard Miskelly, Nikhil Khandelwal
  • Publication number: 20140282417
    Abstract: The present invention extends to methods, systems, and computer program products for stepping through JavaScript code in a debugger without landing on errors in library or open source code. A debugger receives user inputs designating one or more segments of the JavaScript code as library code. The debugger then performs debugging operations on the JavaScript code. The debugging operations including a stepping operation for stepping through the JavaScript code to identify errors only in user-generated segments of the JavaScript code, wherein the user-generated segments correspond to code that was not designated as library code.
    Type: Application
    Filed: March 15, 2013
    Publication date: September 18, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Robert Alan Paveza, Andrew Richard Sterland, Timothy Scott Rice, Gregg Bernard Miskelly, Nikhil Khandelwal