The present invention relates generally to computer science, data science, and data analytics. More specifically, techniques for software dependency management are described.
In software development where various software modules, programs, or applications are often designed, configured, and implemented to work compatibly, there is a significant and substantial problem, often referred to as “dependency hell.” This is a colloquial term often used to describe costly and time-consuming activities that software developers, programmers, engineers, and architects spend finding, identifying, correcting, and fixing updates to interrelationships often found in source code between different programs that rely upon each other to properly run (i.e., execute). These are typically referred to as “dependencies” and frequently require updating even after an initial dependency has been addressed.
Conventionally, software (regardless of whether local, remote, or distributed (e.g., cloud-based)) uses or relies upon other software to function, thus creating a dependency. When updating dependencies in source code, conventionally, application programming interfaces or other software are used to transfer data in a compatible fashion to permit interoperability. Software developers, programmers, engineers, and architects (hereafter “developers”) typically manually locate updates, review data and information about prior uses of the updates (including community developer/user information or feedback), install/implement updates, and, frequently, fix or replace updates that are incompatible (i.e., erroneous).
Conventional solutions often require extensive manual work performed by a software developer to identify and configure these dependencies, which is both time consuming and expensive, but also slows application development. Dependencies are critical and vital to the design, architecture, and operation of simple and complex software that often use other elements or components such as those found in networked or cloud-based programs, applications, or platforms, many of which require specific versions in order to achieve compatibility, integrity, and operability. However, checking for dependencies and ensuring that desired versions are properly installed can, as mentioned above, be an expensive and time consuming effort leading to increased development costs, expense, and delay, which can be detrimental or harmful to end users and consumers that are increasingly using networked applications and platforms to fulfill important, if not vital, individual and organizational needs. Conventional solutions and approaches to manually updating software dependencies typically result in lost productivity, which dramatically slows design, build, and run-time cycles for software product releases. Conventional solutions lead to increased user and organizational costs and longer development cycles, which consequently hinder innovation, adoption, and successful commercialization.
Thus, what is needed is a solution for managing software dependencies, without the limitations of conventional techniques.
Various embodiments or examples (“examples”) are disclosed in the following detailed description and the accompanying drawings:
Various embodiments or examples may be implemented in numerous ways, including as a system, a process, an apparatus, a user interface, or a series of program code or instructions on a computer readable medium such as a storage medium or a computer network including program instructions that are sent over optical, electronic, electrical, chemical, wired, or wireless communication links. In general, individual operations or sub-operations of disclosed processes may be performed in an arbitrary order, unless otherwise provided in the claims.
A detailed description of one or more examples is provided below along with accompanying figures. This detailed description is provided in connection with various examples, but is not limited to any particular example. The scope is limited only by the claims and numerous alternatives, modifications, and equivalents. Numerous specific details are set forth in the following description in order to provide a thorough understanding. These details are provided for the purpose of illustrating various examples and the described techniques may be practiced according to the claims without some or all of these specific details. For clarity, technical material that is known in the technical fields and related to the examples has not been described in detail to avoid unnecessarily obscuring the description or providing unnecessary details that may be already known to those of ordinary skill in the art.
As used herein, “system” may refer to or include the description of a computer, network, or distributed computing system, topology, or architecture using various computing resources that are configured to provide computing features, functions, processes, elements, components, or parts, without any particular limitation as to the type, make, manufacturer, developer, provider, configuration, programming or formatting language (e.g., JAVA®, JAVASCRIPT®, and others, without limitation or restriction), service, class, resource, specification, protocol, or other computing or network attributes. As used herein, “software” or “application” may also be used interchangeably or synonymously with, or refer to a computer program, software, program, firmware, or any other term that may be used to describe, reference, or refer to a logical set of instructions that, when executed, performs a function or set of functions within a computing system or machine, regardless of whether physical, logical, or virtual and without restriction or limitation to any particular implementation, design, configuration, instance, or state. Further, “platform” may refer to any type of computer hardware (hereafter “hardware”) and/or software using one or more local, remote, distributed, networked, or computing cloud (hereafter “cloud”)-based computing resources (e.g., computers, clients, servers, tablets, notebooks, smart phones, cell phones, mobile computing platforms or tablets, and the like) to provide an application, operating system, or other computing environment, such as those described herein, without restriction or limitation to any particular implementation, design, configuration, instance, or state. Distributed resources such as cloud computing networks (also referred to interchangeably as “computing clouds,” “storage clouds,” “cloud networks,” or, simply, “clouds,” without restriction or limitation to any particular implementation, design, configuration, instance, or state) may be used for processing and/or storage of varying quantities, types, structures, and formats of data, without restriction or limitation to any particular implementation, design, or configuration. In the drawings provided herewith, the relative sizes and shapes do not convey any limitations, restrictions, requirements, or dimensional constraints unless otherwise specified in the description and are provided for purposes of illustration only to display processes, data, data flow chart, application or program architecture or other symbols, as described in this Specification.
As described herein, structured and unstructured data may be stored in various types of data structures including, but not limited to databases, data repositories, data warehouses, data stores, or other data structures and facilities configured to manage, store, retrieve, process calls for/to, copy, modify, or delete data or sets of data (i.e., “datasets”) in various computer programming languages and formats in accordance with various types of structured and unstructured database schemas and languages such as SQL®, MySQL®, NoSQL™, DynamoDB™, R, or others, such as those developed by proprietary and open source providers like Amazon® Web Services, Inc. of Seattle, Wash., Microsoft®, Oracle®, Salesforce.com, Inc., and others, without limitation or restriction to any particular schema, instance, or implementation. Further, references to databases, data structures, or any type of data storage facility may include any embodiment as a local, remote, distributed, networked, cloud-based, or combined implementation thereof, without limitation or restriction. In some examples, data may be formatted and transmitted (i.e., transferred over one or more data communication protocols) between computing resources using various types of wired and wireless data communication and transfer protocols such as Hypertext Transfer Protocol (HTTP), Transmission Control Protocol (TCP)/Internet Protocol (IP), Internet Relay Chat (IRC), SMS, text messaging, instant messaging (IM), WiFi, WiMax, or others, without limitation. Further, as described herein, disclosed processes implemented as software may be programmed using JAVA®, JAVASCRIPT®, Scala, Perl, Python™ XML, HTML, and other data formats and programming languages, without limitation. As used herein, references to layers of an application architecture (e.g., application layer or data layer) may refer to a stacked layer application architecture designed and configured using models such as the Open Systems Interconnect (OSI) model or others.
In some examples, various examples of process and apparatus-based implementations include techniques for identifying, managing, and automatically configuring dependencies, regardless of type (e.g., chained, serial, or others), in source code, without limitations or restrictions due to various types of structures, formats, or programming languages, including platforms, applications, interfaces (e.g., Application Programming Interfaces (i.e., “API”s), and the like, regardless of application layer or other parameters. In some examples, the techniques may be implemented as a tool used in software development, hosted on one or more local or networked computing devices such a server, group of servers, group of logical computing resources (regardless of physical locale or geographic distribution if individual resources (e.g., servers, computers, or the like), and as single or multiple-instances using one or more processors, servers, or machines (i.e., physical or virtual) without regard to being single or multi-threaded (i.e., to permit multiple parallel instances to run/execute at substantially similar times). As used herein, described techniques may also be implemented using a local instance/implementation or a distributed topology, such as a distributed data network using resources in data connection with each other, directly or indirectly, over a network such as a computing cloud or cloud-based data network (hereafter referred to as a “cloud”).
The described techniques may be implemented as a software-based application used to manage, address, resolve, upgrade, or update (hereafter “update”) dependencies found in source code. In some examples, the described techniques may be used as a software development “tool” to check (i.e., manually, semi-automatically, or automatically) source code (e.g., program, platform, or application code, before or after compilation) to identify and update dependencies. For example, the described techniques may be used to check for source code dependencies between different software source code found in modules, applications, programs, platforms, or the like. As another example, the described techniques may be designed, configured, and implemented to automatically upgrade software versions of dependencies in order to achieve compatibility between different software (i.e., some software dependencies may be more compatible (i.e., having fewer or no errors after updating dependencies and compiling source code)). The described techniques may also include the use of computing logic, rules, machine learning (e.g., deep learning), and/or other algorithms configured to analyze, evaluate, learn, train, or otherwise process dependency information that is identified in source code (i.e., regardless of computing or programming language, formats, data schemas, data communication and/or transfer protocols or the like).
In some examples, dependencies can be automatically and rapidly addressed, often using suggested or recommended applications, programs, or source code that have compatible dependencies as identified by built-in logic implementing, in some examples, machine and/or deep learning algorithms.
In other examples, a software-based dependency management tool may be configured to automatically upgrade a compatible version of a dependency if, once identified, a newer or preferred version of an update is determined based on machine-learning algorithms that have been trained to identify such against prior updates. In other words, prior installed versions found to be compatible (i.e., having few or no errors when source code with updated dependencies (hereafter “updated source code) has been compiled and/or run)) may be automatically identified, retrieved, and implemented based on attributes such as compatibility. In other examples, data, metadata, and other information associated with a given implementation may be identified as attributes and stored in a data source (e.g., data repository, database, data warehouse, or any other type of data storage facility) for use in training one or more machine learning (e.g., deep learning, supervised, unsupervised, or others, without limitation or restriction) algorithms and, when (subsequent) queries are received for a similar dependency. In some examples, machine or deep learning algorithms such as those used in artificial intelligence may be used. While there is no particular dependency to a given or single machine or deep learning algorithms, there is likewise no requirement that only a single algorithm be used to implement a dependency management tool. Further, there are no restrictions or limitation as to the type of machine learning and/or deep learning algorithms used to process dependency information. As an example, machine-learning algorithms may be trained to analyze attributes of prior implementations of updates to dependencies. When a request to update a dependency is received, a machine-learning algorithm(s) as part of a self-learning loop (or module thereof) can be structured and configured to parse and evaluate a query to identify attributes for a requested update and search for matching attributes (determined from prior updates) in order to present and rank update options for a given dependency.
In other examples, the described techniques may also include processes for identifying incompatibilities between updates for dependencies. Incompatibilities may be due to errors resulting from prior updates (i.e., implementations of updates to dependencies), incompatible programming languages or formats, incongruous or incompatible data types, formats, structures, or the like, and other errors determined (i.e., identified as a result of computing operations performed to analyze data, metadata, attributes, information, or the like) from implementations of updates to software dependencies (hereafter “dependencies”). When errors are detected, various types of messages may be displayed. For example, various types of display statuses (including, but not limited to error messages) may be presented on a user interface such as “no change,” “auto updated,” “partial update,” “partially updated,” “needs attention,” or others, without limitation or restriction. As another example, historical data from prior updates may be used as a data input to an instance of the described techniques as a software-based tool used to manually, semi-automatically (i.e., limited user intervention or input), or automatically manage, fix, or update (hereafter “update”) dependencies between source code for different computer programs, applications, modules, or platforms (hereafter “code”).
Other techniques described may be directed to “smart pull” workflow software modules that are structured (e.g., programmed) to find, retrieve, and implement updates determined based on prior pull requests, but doing so based on identifying, comparing, and matching attributes between current and prior pull requests, in order to automatically implement (i.e., include or write to code updates that address dependencies) that are determined by one or more machine-learning algorithms (trained against data of prior pull requests) to be compatible (e.g., error-free or having an error rate or number of errors below a given quantitative threshold determined by a self-learning loop module or by user input). The described techniques improve productivity (i.e., by reducing the amount of developer time spent manually identifying updates to correct dependencies by trial-and-error and without recourse for addressing incompatibilities apart from manually searching for updates) by increasing predictability, compatibility, and faster resolution of incompatible dependencies, using trained machine learning computing facilities (e.g., modules, algorithms, and the like).
In other examples, updates may be ranked by a ranking module that evaluates input data and attributes from dependency updates (i.e., “updates”). As used herein, “update” may refer to any code (e.g., source, object, or otherwise) that is used to configured, change, or modify other code and, in some examples, may have different versions, one, some, or all of which may be requested, retrieved, and implemented using the techniques described herein. In some examples, update rankings may be generated or modified by user input received at an interface (e.g., rules, thresholds, limits, restrictions, fields, attributes, or the like). In other examples, updates identified by data stored in a data source (e.g., a repository) may be identified upon receipt of a query or request for a given dependency and presented (i.e., displayed) in a user interface as ranked options for updating the dependency. In some examples, the flow of data between a machine-learning module, ranking module, a data source, and a user interface (i.e., receiving input data from a repository and providing user input to the data management tool) may be described as a self-learning loop, which may be implemented as a standalone or distributed (e.g., cloud or network-based) instance using one or more computing and networking resources. Further, a ranking module, as an element (i.e., component) of a software dependency management tool (hereafter “tool”) be implemented using one or more algorithms, one or more of which may also be implemented using machine or deep learning algorithms.
In some examples, a tool using the techniques described herein can also identify and determine specific versions or builds of a given program with a compatible dependency to a software application, platform, or other instance of source code under development. If more recent versions of a given dependency (i.e., program, application, platform, or the like) is available, the techniques described herein may be implemented with a feature or functionality that can make a recommendation or suggestion (i.e., of software code that has a compatible dependency) to conform or fix code dependencies with source code under development. Ultimately, the described techniques are intended to evaluate compatibility of dependencies between different code (e.g., one computer program being dependent on another computer program) and consequently updating dependencies using self-learning loop logic such as that described herein. Regardless, the described techniques are not limited in implementation, design, function, operation, structure, configuration, specification, or other aspects and may be varied without limitation.
For example, application 102, when run, may be configured to invoke dependency management module 104 to identify and update dependencies in source code (i.e., copies of which may be stored in source code repository 108) using dependency(s) retrieved from update/dependency source 114 or 120. When an update is performed, in some example, data, metadata, attributes, and information associated with the update (i.e., implementation) may be stored in dependency data 112. As shown, source code undergoing software development may be stored in a repository such as source code 108 or in a network or cloud-based repository (e.g., data storage facility, warehouse, database, or other type of repository, without limitation or restriction, including using database management systems (not shown)). In some examples, application 102 may be invoked manually (i.e., by a software developer, engineer, or other user using a graphical user interface configured to receive an input or instruction (not shown)), semi-automatically, or automatically (e.g., rules-initiated, machine or deep learning algorithmically-initiated, or others, without limitation or restriction) to identify and update dependencies between source code 108 of a given program undergoing development and another program, application, platform, or the like.
Here, application 102 may be implemented as an application, component, module, element of platform 124. In some examples, application 102 may be configured as a standalone application or tool used to identify and update software dependencies, for example, in platforms 124-128, which may be in direct (e.g., local) or indirect (e.g., using a data network or cloud such as network 118) data communication. Platforms 124-128 are shown outlined in broken line to illustrate these may be alternative implementations of operating or computing environments in which the described techniques may be implemented (e.g., application 102). In other examples, application 102 and the processes, functions, and structures described herein may be implemented differently.
In some examples, application 102 may be invoked (e.g., receive a command to run, invoke an instance, execute, or otherwise cause to operate) to identify and update dependencies within a software development project (e.g., source code 108 or other source code being written, compiled, edited, built, or other operations). As part of a software development environment or platform (e.g., platform 124-128), application 102, when invoked, may send a message, using any type of database language or format (regardless of whether a message includes an instruction to store, add, retrieve, delete, or modify structured or unstructured data) from dependency management module 104 to dependency data 112. Further, dependency management module 104 may also query self-learning loop data repository 110, which may, in some examples, invoke further modules such as machine or data learning algorithms, rules, logic, or other modules that generate data and/or signals that provide additional information that may be used by dependency management module 104 to identify, select, rank, prioritize, or perform other data operations on source code 108. Upon identifying dependencies in source code 108, dependency management module 104 may send another message, query, request, or the like (via a data communication link or module such as API module 106) to update/dependency source 114 or 120 in order to retrieve source, object, or other program code to implement with source code 108. In some examples, dependency management module 104 may also send data and information via API module 106 to a user interface (not shown) providing available updates to be selected as a ranking, list, or other presentation format, without limitation or restriction. A user, in some examples, may then select an update(s) from update/dependency source 114 and/or 120 by generating and sending (e.g., transmitting) a data response or reply (hereafter “response”) to dependency management module 104 identifying updates to be selected and implemented.
As described in greater detail below, updates to be presented may be ranked, listed, or otherwise presented in various types of display and presentation formats. Further, dependency management module 104 may include self-learning algorithms (e.g., machine or deep learning algorithms, neural networks, or other logic, without limitation or restriction to any particular programming language, format, schema, architecture, or types (e.g., supervised or unsupervised learning algorithms run against open, closed, or proprietary data, regression, classification, clustering, association, anomaly detection, pattern-based, or others, without limitation or restriction). In some examples, “self-learning” may also refer to any type of algorithm(s) used to implement, herein, a self-learning data processing loop module (hereafter “self-learning loop module” or “self-learning loop,” which may be used interchangeably without limitation or restriction) that invokes or calls (e.g., remotely or locally) machine or deep learning algorithms such as those mentioned herein and, over a given period of time, generates results that increase or improve when performing computing tasks. Quantitative determination of increased or improved performance may be measured against a given variable or set of variables that, when measured, are used to determine a level, score, threshold, benchmark, or other quantitative determinator of “performance improvement.”
Referring back to
As shown, application 202 may be implemented similarly in function, structure, and/or configuration to application 102 (
Here, dependency analysis engine 210 may be configured to evaluate a project (e.g., source code, object code, or other program code undergoing development (i.e., software development)) to identify dependencies between source code undergoing development and other software. For example, dependency analysis engine 210 may be structured as a separate, standalone application that is configured to identify dependencies by analyzing data passed through communication/API module 224, the latter of which was used in prior updates for similar or substantially similar dependencies. In some examples, dependency analysis engine 210 may also be configured to evaluate a source code project (hereafter “source code” and “project” may be used interchangeably, without limitation or restriction for all purposes within this Detailed Description) to identify dependencies and data associated with prior updates performed to other projects, including evaluating developer (i.e., users who are software developers, engineers, architects, or the like) input as to the accuracy, quality, utility, reliability, cohesion, coupling, or other attributes and characteristics associated with prior implementations of an update for a given dependency. In so doing, dependency analysis engine 210 may be in data communication (over data bus 234) with ranking module 218, cooperatively generating a ranking that may be used to sort, filter, and rank updates accordingly. In some examples, rankings may be presented on a user interface (e.g., display, presentation, or the like) by transmitting rendering and display data from display/interface module 214 to communication/API module 224 and then to one or more external displays (not shown). In other examples, rankings may be input to self-learning loop module 220, dependency analysis engine 210, or one or more of repositories 226-230, the latter of which may be any type of data storage facility, such as those described herein, and stored as “dependency data.”
As an input to self-learning loop module 220, update rankings may be retrieved, requested, transmitted, transferred, or otherwise input to self-learning loop module 220, which may be configured to train machine learning algorithm(s) (e.g., machine learning module 208) and/or deep learning algorithm(s) (e.g., deep learning module 206). Machine learning module 208 and deep learning module 206, in some examples, may be trained against data and information from prior updates of source code (i.e., source code or a copy of source code under development may be stored in one or more data repositories such as a local repository (e.g., repository 226), an external repository (e.g., repository 228), or a networked repository (e.g., repository 230, which may be coupled (i.e., in data communication) via data communication link 236 to application 202. Machine learning module 208, deep learning module 206, ranking module 218, and/or rules module 222 may be called, invoked, or otherwise used by self-learning loop module 220 and update/version/compatibility determinator 216 to identify updates for various dependencies (i.e., identified by a developer or user). Update/version/compatibility determinator 216 may be implemented using different configurations to implement a sub-application or sub-tool of application 202, which is configured to evaluate an update to determine suitability for a given dependency and, if so, what version is compatible with said dependency. For example, a dependency that is based on a communication function of a project may be indicated by a developer to identify one or more updates that may be used to write source code to the overall project to fulfill the communication function or feature. Searching for updates, the update/version/compatibility determinator 216 may, in response to queries (some of which may be transmitted over communication/API module 224 to repositories 228-230), locate one or more updates stored in one or more of repositories 226-230. After or coincidental with identifying “appropriate” updates to specified (i.e., whether user or system-specified (i.e., automatic or semi-automatic)), copies of the updates may be retrieved by update/version/compatibility determinator 216. In some examples, “appropriate” may refer to a quantitative or numerical match of one or more attributes of an update for a given dependency based on evaluations performed by deep learning module 206 and/or machine learning module 208 against prior instances (i.e., installations, implementations, or uses) of similar updates or, by evaluating attributes associated with the update(s) against one or more rules (e.g., quantitative thresholds or rules) stored and managed by rules module 222 (which may also include user-specified rules provided via a user interface (not shown) to application 202 via communication/API module 224 and display/interface module 214) managed by rules module 222 and stored, in some examples, in one or more of repositories 226-230.
Here, logic 204 may be configured to send control data or signals to direct self-learning loop module 220 to update a project using the retrieved updates, using input from machine learning module 208 and/or deep learning module 206. As described here, update/version/compatibility determinator 216 may also receive input from one or more of deep learning module 206, machine learning module 208, and self-learning loop module 220 to not only identify an update, but also to identify versions and compatibility thereof. For example, update/version/compatibility determinator 216 may be configured to identify an update relative to a local copy of source code under development. Updates and local copies of source code may be stored in the same, different, or other repositories, including repositories 226-230. In some examples, update/version/compatibility determinator 216 may be an application, applet, script, or the like that is configured to determine whether a given version is compatible with code under development or, in other examples, a newer, older, or different version has a higher level of compatibility, which may be a quantitative value that is determined using various techniques such as referencing stored rules from rules module 222, input from deep learning module 206 or machine learning module 208, input from dependency analysis engine 210, ranking data from ranking module 218, and others, without limitation or restriction.
Also, in other examples, application 202 may be configured to automatically implement pull requests using smart pull engine 212, which may be configured to query, request, and retrieve data on prior pull requests from one or more of repositories 226-230. As used herein, a “pull request” may be an update that was previously committed to a local version of source code (e.g., stored in repository 226) under development, but the updates are also submitted for review and possible merging (i.e., implementation) with other copies of the same or similar source code, updates to which may be managed and maintained by another system. As shown, smart pull engine 212 may be configured to automatically search for, request, retrieve, merge, and commit pull requests for code changes performed to a project based on evaluation of prior pull requests, which may also be evaluated (similarly to updates) by deep learning module 206, machine learning module 208 and self-learning loop module 220.
Using machine, deep, or other types of algorithms, in some examples, application 202 may be configured (using dependency analysis engine 210 and self-learning loop module 220) to identify updates, evaluate compatibility of an update(s) relative to code undergoing development and modification to support or commit code changes for dependencies, which may be based on rankings from prior implementations of ranked updates, manually (e.g., presenting update rankings and receiving input from a user (i.e., developer) indicating selection of one or more updates to be installed, integrated, or otherwise written to source code under development), semi-automatically, or automatically (e.g., ranked updates, when determined, are identified in data and/or signals (e.g., voltage, current, optical, or chemical signaling) transferred to/with dependency analysis engine 210, ranking module 218, and self-learning loop module 220). Using self-learning loop module 220, code modifications and commits for dependencies can be rapidly implemented and managed by eliminating manual review and searching as well as trial-and-error implementations (hereafter “commits” and “implementations” may be used interchangeably for all purposes) of updates. In other examples, the size, shape, quantity, type, configuration, function, or structure of the elements shown in the exemplary application architecture may be varied, without limitation or restriction.
Referring back to
Combined with data from information source 314 (e.g., stored input from a user/developer community using tools such as Stack Overflow, a collaborative, online software developer community-based platform from Stack Exchange Inc. of New York, N.Y.) and other data resulting from analyzing issues in concurrent or prior update or pull request implementations stored in information source 316, process dependency information 312 may be processed and used to rank updates by ranking algorithm 318. Rankings of updates may be performed by using process dependency information 312, data from information sources 314-316, and also from user input 322 (e.g., a user specifies a particular update and/or version thereof, an input is received from user interface 320 a given threshold (e.g., compatibility score, a quantitative threshold (e.g., percentage success rate of update, percentage failure rate, and others))) from user interface 320. In some examples, when an update is installed (i.e., commit (i.e., write operation to source code 304 (“implemented”)), data, attributes, characteristics, information, and other elements associated with the commit may be stored in data source 324, which may also be used by application 302 in other updates or smart pull requests (as described in greater detail below).
In other examples, application 302 may also be referred to as a “self-learning loop” (e.g., self-learning loop module 220 (
Referring back to
Once invoked, a self-learning loop (such as those described in this Detailed Description) may identify and rank updates (and versions thereof) for display on, for example, a user interface (e.g., user interface 320 (
Using information retrieved from various repositories (e.g., data source 324 (
Once displayed on user interface, rankings of updates (and/or versions thereof) may be enabled as hyperlinked or other interactive display/presentation/screen elements that, when interacted with (e.g., “clicked on”), a signal or data may be sent to self-learning loop module 220 (
If an error is not detected, data related to the implementation may be stored to a repository such as data source 324 (
In some examples, after evaluating dependency data (e.g., update and versions repository 310 (
Referring back to
According to some examples, computing system 800 performs specific operations by processor 904 executing one or more sequences of one or more instructions stored in system memory 906. Such instructions may be read into system memory 906 from another computer readable medium, such as static storage device 908 or disk drive 910. In some examples, hard-wired circuitry may be used in place of or in combination with software instructions for implementation.
The term “computer readable medium” refers to any tangible medium that participates in providing instructions to processor 904 for execution. Such a medium may take many forms, including but not limited to, non-volatile media and volatile media. Non-volatile media includes, for example, optical or magnetic disks, such as disk drive 910. Volatile media includes dynamic memory, such as system memory 906.
Common forms of computer readable media includes, for example, floppy disk, flexible disk, hard disk, magnetic tape, any other magnetic medium, CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, RAM, PROM, EPROM, FLASH-EPROM, any other memory chip or cartridge, or any other medium from which a computer can read.
Instructions may further be transmitted or received using a transmission medium. The term “transmission medium” may include any tangible or intangible medium that is capable of storing, encoding or carrying instructions for execution by the machine, and includes digital or analog communications signals or other intangible medium to facilitate communication of such instructions. Transmission media includes coaxial cables, copper wire, and fiber optics, including wires that comprise bus 802 for transmitting a computer data signal.
In some examples, execution of the sequences of instructions may be performed by a single computer system 900. According to some examples, two or more computing system 900 coupled by communication link 920 (e.g., LAN, PSTN, or wireless network) may perform the sequence of instructions in coordination with one another. Computing system 900 may transmit and receive messages, data, and instructions, including program, i.e., application code, through communication link 920 and communication interface 912. Received program code may be executed by processor 904 as it is received, and/or stored in disk drive 910, or other non-volatile storage for later execution. In other examples, the above-described techniques may be implemented differently in design, function, and/or structure and are not intended to be limited to the examples described and/or shown in the drawings.
Although the foregoing examples have been described in some detail for purposes of clarity of understanding, the above-described techniques are not limited to the details provided. There are many alternative ways of implementing the above-described invention techniques. The disclosed examples are illustrative and not restrictive.
Number | Name | Date | Kind |
---|---|---|---|
5627764 | Schutzman et al. | May 1997 | A |
6041311 | Chislenko et al. | Mar 2000 | A |
6146026 | Ushiku | Nov 2000 | A |
6363433 | Nakajima | Mar 2002 | B1 |
6385611 | Cardona | May 2002 | B1 |
6684239 | Flepp et al. | Jan 2004 | B1 |
6742032 | Castellani et al. | May 2004 | B1 |
6871232 | Curie et al. | Mar 2005 | B2 |
7031952 | Heumann et al. | Apr 2006 | B1 |
7032030 | Codignotto | Apr 2006 | B1 |
7130885 | Chandra et al. | Oct 2006 | B2 |
7222156 | Gupta et al. | May 2007 | B2 |
7260610 | Grooters et al. | Aug 2007 | B2 |
7409710 | Uchil et al. | Aug 2008 | B1 |
7519672 | Boss et al. | Apr 2009 | B2 |
7590636 | Heumann et al. | Sep 2009 | B1 |
7606865 | Kumar et al. | Oct 2009 | B2 |
7644057 | Nelken et al. | Jan 2010 | B2 |
7702541 | Black et al. | Apr 2010 | B2 |
7725492 | Sittig et al. | May 2010 | B2 |
7751620 | Cosoi | Jul 2010 | B1 |
7756926 | Tseng et al. | Jul 2010 | B2 |
7792948 | Zhao et al. | Sep 2010 | B2 |
7818758 | Bonet et al. | Oct 2010 | B2 |
7831912 | King et al. | Nov 2010 | B2 |
7853565 | Liskov | Dec 2010 | B1 |
7979369 | Grenier et al. | Jul 2011 | B2 |
8006187 | Bailey et al. | Aug 2011 | B1 |
8027931 | Kalaboukis | Sep 2011 | B2 |
8082308 | Filev | Dec 2011 | B1 |
8095967 | Loesch et al. | Jan 2012 | B2 |
8131745 | Hoffman et al. | Mar 2012 | B1 |
8171128 | Zuckerberg et al. | May 2012 | B2 |
8200527 | Thompson et al. | Jun 2012 | B1 |
8225376 | Zuckerberg et al. | Jul 2012 | B2 |
8286154 | Kaakani et al. | Oct 2012 | B2 |
8321300 | Bockius et al. | Nov 2012 | B1 |
8412657 | Grenier et al. | Apr 2013 | B2 |
8437369 | Shaikli | May 2013 | B2 |
8505069 | Solodovnikov et al. | Aug 2013 | B1 |
8606792 | Jackson et al. | Dec 2013 | B1 |
8615442 | Kapur et al. | Dec 2013 | B1 |
8707297 | Brown | Apr 2014 | B2 |
8738715 | Roy et al. | May 2014 | B2 |
8744937 | Seubert et al. | Jun 2014 | B2 |
8752041 | Akiyoshi et al. | Jun 2014 | B2 |
8767020 | Monikandan | Jul 2014 | B1 |
8769417 | Robinson et al. | Jul 2014 | B1 |
8813125 | Reisman | Aug 2014 | B2 |
8825515 | Hanson | Sep 2014 | B1 |
8886580 | Grenier et al. | Nov 2014 | B2 |
8892524 | Lee et al. | Nov 2014 | B1 |
8943069 | Heumann et al. | Jan 2015 | B2 |
8972428 | Dicker et al. | Mar 2015 | B2 |
9021361 | Pettinati et al. | Apr 2015 | B1 |
9037735 | Fallows et al. | May 2015 | B1 |
9105044 | Wu | Aug 2015 | B2 |
9131382 | Johns | Sep 2015 | B1 |
9141997 | Gaedcke et al. | Sep 2015 | B2 |
9143478 | Ramaswamy | Sep 2015 | B2 |
9191235 | Clagg et al. | Nov 2015 | B2 |
9229702 | Kapulkin et al. | Jan 2016 | B1 |
9251360 | Meyer et al. | Feb 2016 | B2 |
9282098 | Hitchcock et al. | Mar 2016 | B1 |
9286102 | Harel et al. | Mar 2016 | B1 |
9311683 | Saylor et al. | Apr 2016 | B1 |
9325696 | Balfanz et al. | Apr 2016 | B1 |
9338186 | Wollenstein et al. | May 2016 | B2 |
9369454 | Porzio et al. | Jun 2016 | B2 |
9378295 | Marra et al. | Jun 2016 | B1 |
9483802 | Gaedcke et al. | Nov 2016 | B2 |
9501746 | Prakash | Nov 2016 | B2 |
9509742 | Gordon | Nov 2016 | B2 |
9514459 | Doshi et al. | Dec 2016 | B1 |
9519723 | Lorenz et al. | Dec 2016 | B2 |
9596206 | Bueno et al. | Mar 2017 | B2 |
9596223 | Mezei et al. | Mar 2017 | B1 |
9619531 | Wu | Apr 2017 | B2 |
9654450 | Ford et al. | May 2017 | B2 |
9756098 | Kazerani et al. | Sep 2017 | B2 |
9787664 | Subbiah et al. | Oct 2017 | B1 |
9800639 | Gordon | Oct 2017 | B2 |
9953063 | Spasojevic et al. | Apr 2018 | B2 |
10084838 | Gordon et al. | Sep 2018 | B2 |
10142386 | Gordon | Nov 2018 | B2 |
10178173 | Kadowaki et al. | Jan 2019 | B2 |
10180971 | Bhave et al. | Jan 2019 | B2 |
10188905 | Dohlen | Jan 2019 | B2 |
10204344 | Gaedcke et al. | Feb 2019 | B2 |
10204383 | Gaedcke et al. | Feb 2019 | B2 |
10264042 | Gordon | Apr 2019 | B2 |
10264073 | Kadowaki et al. | Apr 2019 | B2 |
10268726 | Schiesser | Apr 2019 | B1 |
10277928 | Joliveau et al. | Apr 2019 | B1 |
10277929 | McLeod et al. | Apr 2019 | B1 |
10284723 | Neuer, III et al. | May 2019 | B1 |
10346449 | Senftleber et al. | Jul 2019 | B2 |
10417180 | Patwardhan | Sep 2019 | B1 |
10430894 | Wu | Oct 2019 | B2 |
10489866 | Gaedcke et al. | Nov 2019 | B2 |
10491490 | Sridhar et al. | Nov 2019 | B2 |
10497069 | Gaedcke et al. | Dec 2019 | B2 |
10528406 | Klemenz | Jan 2020 | B2 |
10554697 | Ledet | Feb 2020 | B1 |
10560492 | Ledet | Feb 2020 | B1 |
10594773 | Falcao et al. | Mar 2020 | B2 |
10601937 | Holzband et al. | Mar 2020 | B2 |
10613745 | Mohseni | Apr 2020 | B2 |
10785222 | Senftleber et al. | Sep 2020 | B2 |
10855657 | Senftleber et al. | Dec 2020 | B2 |
10867131 | Scott et al. | Dec 2020 | B2 |
10887302 | Thakkar | Jan 2021 | B2 |
10902462 | Savage et al. | Jan 2021 | B2 |
10904639 | Benson et al. | Jan 2021 | B1 |
10931540 | Davis et al. | Feb 2021 | B2 |
10956459 | Senftleber et al. | Mar 2021 | B2 |
10999278 | Senftleber et al. | May 2021 | B2 |
11050704 | Senftleber et al. | Jun 2021 | B2 |
11061900 | Falcao et al. | Jul 2021 | B2 |
11087261 | Basu et al. | Aug 2021 | B1 |
11101271 | Ramaswamy | Aug 2021 | B2 |
11153726 | Cheung et al. | Oct 2021 | B2 |
11284221 | Guo et al. | Mar 2022 | B2 |
20010025253 | Heintz et al. | Sep 2001 | A1 |
20010037469 | Gupta et al. | Nov 2001 | A1 |
20010042087 | Kephart et al. | Nov 2001 | A1 |
20010047290 | Petras et al. | Nov 2001 | A1 |
20020010746 | Jilk et al. | Jan 2002 | A1 |
20020049793 | Okumura et al. | Apr 2002 | A1 |
20020070953 | Barg et al. | Jun 2002 | A1 |
20020105545 | Carter et al. | Aug 2002 | A1 |
20020144156 | Copeland | Oct 2002 | A1 |
20030005103 | Narad et al. | Jan 2003 | A1 |
20030028525 | Santos et al. | Feb 2003 | A1 |
20030078959 | Yeung et al. | Apr 2003 | A1 |
20030128203 | Marshall et al. | Jul 2003 | A1 |
20030135565 | Estrada | Jul 2003 | A1 |
20030187871 | Amano et al. | Oct 2003 | A1 |
20030225850 | Teague | Dec 2003 | A1 |
20040049673 | Song et al. | Mar 2004 | A1 |
20040073666 | Foster et al. | Apr 2004 | A1 |
20040133697 | Mamaghani et al. | Jul 2004 | A1 |
20040174397 | Cereghini et al. | Sep 2004 | A1 |
20040199595 | Banister et al. | Oct 2004 | A1 |
20050060643 | Glass et al. | Mar 2005 | A1 |
20050074126 | Stanko | Apr 2005 | A1 |
20050132348 | Meulemans et al. | Jun 2005 | A1 |
20050206644 | Kincaid | Sep 2005 | A1 |
20050283614 | Hardt | Dec 2005 | A1 |
20060010215 | Clegg et al. | Jan 2006 | A1 |
20060036685 | Canning et al. | Feb 2006 | A1 |
20060129602 | Witriol et al. | Jun 2006 | A1 |
20060143307 | Codignotto | Jun 2006 | A1 |
20060155581 | Eisenberger et al. | Jul 2006 | A1 |
20060185021 | Dujari et al. | Aug 2006 | A1 |
20060206578 | Heidloff et al. | Sep 2006 | A1 |
20060265740 | Clark et al. | Nov 2006 | A1 |
20060294196 | Feirouz et al. | Dec 2006 | A1 |
20070083536 | Darnell et al. | Apr 2007 | A1 |
20070118889 | Fredell | May 2007 | A1 |
20070136354 | Chen | Jun 2007 | A1 |
20070171716 | Wright et al. | Jul 2007 | A1 |
20070180486 | Yoon | Aug 2007 | A1 |
20070220029 | Jones et al. | Sep 2007 | A1 |
20070226177 | Barsness et al. | Sep 2007 | A1 |
20070240119 | Ducheneaut et al. | Oct 2007 | A1 |
20070282800 | England et al. | Dec 2007 | A1 |
20070286528 | Podilchuk | Dec 2007 | A1 |
20070289006 | Ramachandran et al. | Dec 2007 | A1 |
20080005284 | Ungar et al. | Jan 2008 | A1 |
20080033776 | Marchese | Feb 2008 | A1 |
20080034058 | Korman et al. | Feb 2008 | A1 |
20080040673 | Zuckerberg et al. | Feb 2008 | A1 |
20080103906 | Singh | May 2008 | A1 |
20080109245 | Gupta | May 2008 | A1 |
20080109491 | Gupta | May 2008 | A1 |
20080120379 | Malik | May 2008 | A1 |
20080126476 | Nicholas et al. | May 2008 | A1 |
20080133488 | Bandaru et al. | Jun 2008 | A1 |
20080178125 | Elsbree et al. | Jul 2008 | A1 |
20080189406 | Shen | Aug 2008 | A1 |
20080201344 | Levergood et al. | Aug 2008 | A1 |
20080215591 | Howard et al. | Sep 2008 | A1 |
20080221870 | Attardi et al. | Sep 2008 | A1 |
20080225848 | Pilon et al. | Sep 2008 | A1 |
20080263603 | Murray et al. | Oct 2008 | A1 |
20080294680 | Powell et al. | Nov 2008 | A1 |
20080306830 | Lasa et al. | Dec 2008 | A1 |
20090013043 | Tan | Jan 2009 | A1 |
20090043852 | Weir et al. | Feb 2009 | A1 |
20090089657 | Davis | Apr 2009 | A1 |
20090106080 | Carrier et al. | Apr 2009 | A1 |
20090132311 | Klinger et al. | May 2009 | A1 |
20090138472 | MacLean | May 2009 | A1 |
20090144723 | Hartin et al. | Jun 2009 | A1 |
20090157667 | Brougher et al. | Jun 2009 | A1 |
20090157708 | Bandini et al. | Jun 2009 | A1 |
20090157899 | Gagliardi et al. | Jun 2009 | A1 |
20090158265 | Davis et al. | Jun 2009 | A1 |
20090177670 | Grenier et al. | Jul 2009 | A1 |
20090181649 | Bull et al. | Jul 2009 | A1 |
20090210282 | Elenbaas et al. | Aug 2009 | A1 |
20090249451 | Su et al. | Oct 2009 | A1 |
20090292608 | Polachek | Nov 2009 | A1 |
20090292722 | Ayloo | Nov 2009 | A1 |
20090300036 | Nagasaki | Dec 2009 | A1 |
20090328025 | Johnson | Dec 2009 | A1 |
20100071052 | Mao et al. | Mar 2010 | A1 |
20100082503 | Kantak et al. | Apr 2010 | A1 |
20100106730 | Aminian et al. | Apr 2010 | A1 |
20100119053 | Goeldi | May 2010 | A1 |
20100121707 | Goeldi | May 2010 | A1 |
20100121843 | Goeldi | May 2010 | A1 |
20100153516 | Weinberg et al. | Jun 2010 | A1 |
20100169148 | Oberhofer et al. | Jul 2010 | A1 |
20100174813 | Hildreth et al. | Jul 2010 | A1 |
20100205663 | Ward et al. | Aug 2010 | A1 |
20100211911 | Logan et al. | Aug 2010 | A1 |
20100223341 | Manolescu et al. | Sep 2010 | A1 |
20100246797 | Chavez et al. | Sep 2010 | A1 |
20100250683 | Hoyne et al. | Sep 2010 | A1 |
20100257117 | Shvadron et al. | Oct 2010 | A1 |
20100274732 | Grinchenko et al. | Oct 2010 | A1 |
20100281258 | Andress et al. | Nov 2010 | A1 |
20100287512 | Gan et al. | Nov 2010 | A1 |
20100293560 | Bland et al. | Nov 2010 | A1 |
20100306122 | Shaffer | Dec 2010 | A1 |
20100306528 | Andress et al. | Dec 2010 | A1 |
20100312769 | Bailey et al. | Dec 2010 | A1 |
20110004922 | Bono et al. | Jan 2011 | A1 |
20110055217 | Kamel et al. | Mar 2011 | A1 |
20110055264 | Sundelin et al. | Mar 2011 | A1 |
20110077988 | Cates et al. | Mar 2011 | A1 |
20110113041 | Hawthorne et al. | May 2011 | A1 |
20110119593 | Jacobson et al. | May 2011 | A1 |
20110125826 | Erhart et al. | May 2011 | A1 |
20110144801 | Selker et al. | Jun 2011 | A1 |
20110153603 | Adiba et al. | Jun 2011 | A1 |
20110196931 | Clagg et al. | Aug 2011 | A1 |
20110197146 | Goto et al. | Aug 2011 | A1 |
20110212430 | Smithmier et al. | Sep 2011 | A1 |
20110219087 | Jorasch et al. | Sep 2011 | A1 |
20110246513 | Covannon et al. | Oct 2011 | A1 |
20110283366 | Kwon et al. | Nov 2011 | A1 |
20110289574 | Hull et al. | Nov 2011 | A1 |
20110302653 | Frantz et al. | Dec 2011 | A1 |
20110320818 | Krishna et al. | Dec 2011 | A1 |
20120036080 | Singer et al. | Feb 2012 | A1 |
20120054135 | Salaka et al. | Mar 2012 | A1 |
20120076367 | Tseng | Mar 2012 | A1 |
20120077158 | Jastrzembski et al. | Mar 2012 | A1 |
20120089706 | Collins et al. | Apr 2012 | A1 |
20120095861 | Feng et al. | Apr 2012 | A1 |
20120102021 | Hill et al. | Apr 2012 | A1 |
20120117059 | Bailey et al. | May 2012 | A1 |
20120131653 | Pasquero et al. | May 2012 | A1 |
20120150759 | Tarjan | Jun 2012 | A1 |
20120158632 | Grenier et al. | Jun 2012 | A1 |
20120195422 | Famous | Aug 2012 | A1 |
20120198197 | Gladwin et al. | Aug 2012 | A1 |
20120208568 | Cooley | Aug 2012 | A1 |
20120210119 | Baxter et al. | Aug 2012 | A1 |
20120232953 | Custer | Sep 2012 | A1 |
20120254321 | Lindsay et al. | Oct 2012 | A1 |
20120265806 | Blanchflower et al. | Oct 2012 | A1 |
20120271729 | Vincelette et al. | Oct 2012 | A1 |
20120284155 | Holten et al. | Nov 2012 | A1 |
20120290605 | Ickman et al. | Nov 2012 | A1 |
20120303659 | Erhart et al. | Nov 2012 | A1 |
20120310942 | Haynes et al. | Dec 2012 | A1 |
20120317198 | Patton et al. | Dec 2012 | A1 |
20120331406 | Baird et al. | Dec 2012 | A1 |
20130006403 | Moore et al. | Jan 2013 | A1 |
20130007121 | Fontenot et al. | Jan 2013 | A1 |
20130018957 | Parnaby et al. | Jan 2013 | A1 |
20130024522 | Pierre et al. | Jan 2013 | A1 |
20130047149 | Xu et al. | Feb 2013 | A1 |
20130050747 | Cok et al. | Feb 2013 | A1 |
20130066876 | Raskino et al. | Mar 2013 | A1 |
20130110946 | Bradshaw | May 2013 | A1 |
20130116044 | Schwartz | May 2013 | A1 |
20130126042 | Dewald et al. | May 2013 | A1 |
20130138428 | Chandramouli et al. | May 2013 | A1 |
20130138742 | Dziubinski | May 2013 | A1 |
20130159472 | Newton et al. | Jun 2013 | A1 |
20130198260 | Dow et al. | Aug 2013 | A1 |
20130212349 | Maruyama | Aug 2013 | A1 |
20130218801 | Rago | Aug 2013 | A1 |
20130218865 | Angulo et al. | Aug 2013 | A1 |
20130232336 | Cheung et al. | Sep 2013 | A1 |
20130235069 | Ubillos et al. | Sep 2013 | A1 |
20130275958 | Ivanov | Oct 2013 | A1 |
20130282417 | Gaedcke et al. | Oct 2013 | A1 |
20130282594 | Gaedcke et al. | Oct 2013 | A1 |
20130282603 | Gaedcke et al. | Oct 2013 | A1 |
20130282722 | Grenier et al. | Oct 2013 | A1 |
20130291058 | Wollenstein et al. | Oct 2013 | A1 |
20130298038 | Spivack et al. | Nov 2013 | A1 |
20130304726 | Sandulescu et al. | Nov 2013 | A1 |
20130304758 | Gruber et al. | Nov 2013 | A1 |
20130318156 | Friedman et al. | Nov 2013 | A1 |
20130332262 | Hunt et al. | Dec 2013 | A1 |
20130332263 | Vora et al. | Dec 2013 | A1 |
20130346872 | Scott et al. | Dec 2013 | A1 |
20140006524 | Singh et al. | Jan 2014 | A1 |
20140032306 | Sukornyk et al. | Jan 2014 | A1 |
20140040275 | Dang et al. | Feb 2014 | A1 |
20140040377 | Friedman et al. | Feb 2014 | A1 |
20140040993 | Lorenzo et al. | Feb 2014 | A1 |
20140047429 | Gaither et al. | Feb 2014 | A1 |
20140067520 | Campanile | Mar 2014 | A1 |
20140074844 | Subramanian et al. | Mar 2014 | A1 |
20140075004 | Dusen et al. | Mar 2014 | A1 |
20140082072 | Kass et al. | Mar 2014 | A1 |
20140082749 | Holland et al. | Mar 2014 | A1 |
20140108675 | Wu | Apr 2014 | A1 |
20140109205 | Lymer et al. | Apr 2014 | A1 |
20140164352 | Denninghoff | Jun 2014 | A1 |
20140173444 | Wu | Jun 2014 | A1 |
20140173501 | Wu | Jun 2014 | A1 |
20140173509 | Wu | Jun 2014 | A1 |
20140181087 | Wu | Jun 2014 | A1 |
20140181194 | Sullivan | Jun 2014 | A1 |
20140181728 | Wu | Jun 2014 | A1 |
20140184841 | Woo et al. | Jul 2014 | A1 |
20140189808 | Mahaffey et al. | Jul 2014 | A1 |
20140200989 | Kassko et al. | Jul 2014 | A1 |
20140222834 | Parikh et al. | Aug 2014 | A1 |
20140223527 | Bortz et al. | Aug 2014 | A1 |
20140244621 | Lindsay | Aug 2014 | A1 |
20140245326 | Kruglick | Aug 2014 | A1 |
20140278785 | Gaedcke et al. | Sep 2014 | A1 |
20140280113 | Hohwald | Sep 2014 | A1 |
20140280398 | Smith et al. | Sep 2014 | A1 |
20140289034 | Wu | Sep 2014 | A1 |
20140298199 | Johnson, Jr. et al. | Oct 2014 | A1 |
20140304249 | Ayzenshtat et al. | Oct 2014 | A1 |
20140324902 | Morris et al. | Oct 2014 | A1 |
20140337953 | Banatwala et al. | Nov 2014 | A1 |
20140358911 | McCarthy et al. | Dec 2014 | A1 |
20150006708 | Banke et al. | Jan 2015 | A1 |
20150032492 | Ting et al. | Jan 2015 | A1 |
20150032751 | Ting et al. | Jan 2015 | A1 |
20150039705 | Kursun | Feb 2015 | A1 |
20150067160 | Sridhar et al. | Mar 2015 | A1 |
20150095307 | Bensberg et al. | Apr 2015 | A1 |
20150100537 | Grieves et al. | Apr 2015 | A1 |
20150112918 | Zheng et al. | Apr 2015 | A1 |
20150120713 | Kim et al. | Apr 2015 | A1 |
20150127453 | Tew et al. | May 2015 | A1 |
20150134457 | Cheung et al. | May 2015 | A1 |
20150134579 | Zaman et al. | May 2015 | A1 |
20150142748 | Gottemukkula et al. | May 2015 | A1 |
20150161211 | Patel et al. | Jun 2015 | A1 |
20150170294 | Goyal et al. | Jun 2015 | A1 |
20150188907 | Khalid et al. | Jul 2015 | A1 |
20150193504 | Naidu et al. | Jul 2015 | A1 |
20150244706 | Grajek et al. | Aug 2015 | A1 |
20150281227 | Ivey et al. | Oct 2015 | A1 |
20150286643 | Kumar et al. | Oct 2015 | A1 |
20150288522 | McCoy et al. | Oct 2015 | A1 |
20150295869 | Li et al. | Oct 2015 | A1 |
20150310018 | Fan et al. | Oct 2015 | A1 |
20150310020 | Brav et al. | Oct 2015 | A1 |
20150310571 | Brav et al. | Oct 2015 | A1 |
20150312200 | Brav et al. | Oct 2015 | A1 |
20150334102 | Haugsnes | Nov 2015 | A1 |
20150347616 | Levi et al. | Dec 2015 | A1 |
20150347618 | Ogita | Dec 2015 | A1 |
20150381552 | Vijay et al. | Dec 2015 | A1 |
20160019628 | Udumudi et al. | Jan 2016 | A1 |
20160021097 | Shrotri | Jan 2016 | A1 |
20160034551 | Huang et al. | Feb 2016 | A1 |
20160042053 | Webber | Feb 2016 | A1 |
20160055250 | Rush | Feb 2016 | A1 |
20160055541 | Calistri-Yeh | Feb 2016 | A1 |
20160057576 | Kessler et al. | Feb 2016 | A1 |
20160073166 | Hu et al. | Mar 2016 | A1 |
20160080445 | Kazerani et al. | Mar 2016 | A1 |
20160110688 | Knox et al. | Apr 2016 | A1 |
20160125157 | Wu | May 2016 | A1 |
20160132904 | Mondal et al. | May 2016 | A1 |
20160132973 | Wu | May 2016 | A1 |
20160134580 | Castera et al. | May 2016 | A1 |
20160147760 | Anandhavelu et al. | May 2016 | A1 |
20160151704 | Wu | Jun 2016 | A1 |
20160164863 | Hitchcock et al. | Jun 2016 | A1 |
20160203221 | Rao et al. | Jul 2016 | A1 |
20160203523 | Spasojevic et al. | Jul 2016 | A1 |
20160210555 | Murphy et al. | Jul 2016 | A1 |
20160212100 | Banerjee | Jul 2016 | A1 |
20160255034 | Yuan | Sep 2016 | A1 |
20160269344 | Anders et al. | Sep 2016 | A1 |
20160320926 | Ganin et al. | Nov 2016 | A1 |
20160321261 | Spasojevic et al. | Nov 2016 | A1 |
20160321562 | Zeng | Nov 2016 | A1 |
20160321694 | Vorozhtsov | Nov 2016 | A1 |
20160330266 | Bakhmutov | Nov 2016 | A1 |
20160335572 | Bennett et al. | Nov 2016 | A1 |
20160345074 | Serbest et al. | Nov 2016 | A1 |
20160352667 | Pickett et al. | Dec 2016 | A1 |
20160378826 | Bensberg et al. | Dec 2016 | A1 |
20170012951 | Mennes et al. | Jan 2017 | A1 |
20170046112 | Keller et al. | Feb 2017 | A1 |
20170048237 | Pfitzmann et al. | Feb 2017 | A1 |
20170061248 | Ryan, Jr. et al. | Mar 2017 | A1 |
20170093839 | Whiteside et al. | Mar 2017 | A1 |
20170132276 | Saurabh et al. | May 2017 | A1 |
20170154356 | Trevisiol et al. | Jun 2017 | A1 |
20170154366 | Turgeman | Jun 2017 | A1 |
20170177562 | Scott et al. | Jun 2017 | A1 |
20170180294 | Milligan et al. | Jun 2017 | A1 |
20170187838 | Sankaranarasimhan | Jun 2017 | A1 |
20170193546 | Bennett et al. | Jul 2017 | A1 |
20170255536 | Weissinger et al. | Sep 2017 | A1 |
20170264619 | Narayanaswamy et al. | Sep 2017 | A1 |
20170278174 | Harrell | Sep 2017 | A1 |
20170300490 | Kachemir et al. | Oct 2017 | A1 |
20170339563 | Singleton, IV | Nov 2017 | A1 |
20170344748 | Ghani et al. | Nov 2017 | A1 |
20170366636 | Wang et al. | Dec 2017 | A1 |
20180027075 | Schoeffler et al. | Jan 2018 | A1 |
20180041336 | Keshava et al. | Feb 2018 | A1 |
20180053114 | Adjaoute | Feb 2018 | A1 |
20180081983 | Carru et al. | Mar 2018 | A1 |
20180089328 | Bath et al. | Mar 2018 | A1 |
20180091468 | Yong et al. | Mar 2018 | A1 |
20180097802 | Lander et al. | Apr 2018 | A1 |
20180115473 | Sridhar et al. | Apr 2018 | A1 |
20180144389 | Fredrich et al. | May 2018 | A1 |
20180152471 | Jakobsson | May 2018 | A1 |
20180211285 | Todasco et al. | Jul 2018 | A1 |
20180219830 | O'Brien et al. | Aug 2018 | A1 |
20180219849 | Jones et al. | Aug 2018 | A1 |
20180267951 | Moah et al. | Sep 2018 | A1 |
20180278503 | Carey et al. | Sep 2018 | A1 |
20180293607 | Huddleston et al. | Oct 2018 | A1 |
20180295137 | Zager et al. | Oct 2018 | A1 |
20180329565 | Yeung et al. | Nov 2018 | A1 |
20180332079 | Ashley et al. | Nov 2018 | A1 |
20180337871 | Matta et al. | Nov 2018 | A1 |
20180337907 | Bhansali et al. | Nov 2018 | A1 |
20180337910 | Gustavson et al. | Nov 2018 | A1 |
20180367484 | Rodriguez et al. | Dec 2018 | A1 |
20180374374 | Watson et al. | Dec 2018 | A1 |
20190057204 | Marcovecchio et al. | Feb 2019 | A1 |
20190114356 | Senftleber et al. | Apr 2019 | A1 |
20190116137 | Senftleber et al. | Apr 2019 | A1 |
20190116148 | Senftleber et al. | Apr 2019 | A1 |
20190129701 | Hawrylo | May 2019 | A1 |
20190158610 | Holzband et al. | May 2019 | A1 |
20190159166 | Aggarwal et al. | May 2019 | A1 |
20190171753 | Teng et al. | Jun 2019 | A1 |
20190199711 | Petrovichev et al. | Jun 2019 | A1 |
20190228093 | Falcao et al. | Jul 2019 | A1 |
20190230151 | Falcao et al. | Jul 2019 | A1 |
20190245751 | Wong | Aug 2019 | A1 |
20190306248 | Swarangi et al. | Oct 2019 | A1 |
20190347984 | Hintermeister | Nov 2019 | A1 |
20190354709 | Brinskelle | Nov 2019 | A1 |
20200007530 | Abdul et al. | Jan 2020 | A1 |
20200051120 | Senftleber et al. | Feb 2020 | A1 |
20200053094 | Kaube et al. | Feb 2020 | A1 |
20200099676 | Desarda et al. | Mar 2020 | A1 |
20200104478 | Chauhan | Apr 2020 | A1 |
20200120068 | Senftleber et al. | Apr 2020 | A1 |
20200120095 | Senftleber et al. | Apr 2020 | A1 |
20200120096 | Senftleber et al. | Apr 2020 | A1 |
20200120167 | Senftleber et al. | Apr 2020 | A1 |
20200151829 | Wu | May 2020 | A1 |
20200184575 | Gaedcke et al. | Jun 2020 | A1 |
20200258091 | Gaedcke et al. | Aug 2020 | A1 |
20200287957 | Falcao et al. | Sep 2020 | A1 |
20200329110 | Holzband et al. | Oct 2020 | A1 |
20200358755 | Abdul et al. | Nov 2020 | A1 |
20200366564 | Davis et al. | Nov 2020 | A1 |
20200372539 | Shenfeld et al. | Nov 2020 | A1 |
20210056006 | Mahajan | Feb 2021 | A1 |
20210119967 | Senftleber et al. | Apr 2021 | A1 |
20210174391 | Savage et al. | Jun 2021 | A1 |
20210176136 | Davis et al. | Jun 2021 | A1 |
20210226952 | Senftleber et al. | Jul 2021 | A1 |
20210250341 | Senftleber et al. | Aug 2021 | A1 |
20210256041 | Senftleber et al. | Aug 2021 | A1 |
20210328961 | Senftleber et al. | Oct 2021 | A1 |
20210357408 | Falcao et al. | Nov 2021 | A1 |
20220094683 | Bishop, III et al. | Mar 2022 | A1 |
20220124081 | Gustavson et al. | Apr 2022 | A1 |
20220166735 | Evans et al. | May 2022 | A1 |
20220232086 | Holzband et al. | Jul 2022 | A1 |
Number | Date | Country |
---|---|---|
2719285 | Aug 2016 | CA |
102054033 | May 2011 | CN |
103177095 | Dec 2015 | CN |
2031793 | Mar 2009 | EP |
2857993 | Aug 2017 | EP |
2009047674 | Apr 2009 | WO |
2013158839 | Oct 2013 | WO |
2014089460 | Jun 2014 | WO |
2014153463 | Jan 2015 | WO |
2015013436 | Jan 2015 | WO |
2016114841 | Jul 2016 | WO |
2019075284 | Apr 2019 | WO |
2019144159 | Jul 2019 | WO |
2020232311 | Nov 2020 | WO |
Entry |
---|
Antoniades et al., “we.b: The web of short URLs,” Apr. 2011, Proceedings of the 20th International Conference on World Wide Web, Mar. 28-Apr. 1, 2011, Hyderabad, India, pp. 715-724 (Year: 2011). |
Dinh, Khanh Q., Non-Final Office Action dated Mar. 17, 2021 for U.S. Appl. No. 16/820,697. |
Dinh, Khanh Q., Notice of Allowance and Fee(s) Due dated Apr. 16, 2021 for U.S. Appl. No. 16/820,697. |
Fiorillo, James N., Non-Final Office Action dated Jun. 7, 2021 for U.S. Appl. No. 16/827,625. |
Frunzi, Victoria E., Final Office Action dated May 17, 2021 for U.S. Appl. No. 16/590,218. |
Frunzi, Victoria E., Non-Final Office Action dated Dec. 21, 2020 for U.S. Appl. No. 16/590,218. |
Goldberg, Ivan R., Final Office Action dated Jun. 29, 2021 for U.S. Appl. No. 16/695,098. |
Goldberg, Ivan R., Final Office Action dated Jun. 29, 2021 for U.S. Appl. No. 16/701,143. |
Goldberg, Ivan R., Non-Final Office Action dated Mar. 10, 2021 for U.S. Appl. No. 16/695,098. |
Goldberg, Ivan R., Non-Final Office Action dated Mar. 3, 2021 for U.S. Appl. No. 16/701,143. |
M. Rowe and H. Alani, “What Makes Communities Tick? Community Health Analysis Using Role Compositions,” 2012 International Conference on Privacy, Security, Risk and Trust and 2012 International Conference on Social Computing, Amsterdam, Netherlands, 2012, pp. 267-276, doing:10.1109/SocialCom-PASSAT2012.18. |
Mesa, Joel, Notice of Allowance and Fee(s) Due dated Feb. 24, 2021 for U.S. Appl. No. 15/782,635. |
Nano, Sargon N., Notice of Allowance and Fee(s) Due dated May 19, 2021 for U.S. Appl. No. 17/026,152. |
Neuman, Clifford B., Proxy-Based Authorization and Accounting for Distributed Systems, IEEE 1993 (Year: 1993). |
Rashid, Ishrat, Final Office Action dated Jun. 15, 2021 for U.S. Appl. No. 15/782,653. |
Rashid, Ishrat, Non-Final Office Action dated Apr. 2, 2021 for U.S. Appl. No. 15/782,653. |
Shaw, Robert A., Final Office Action dated Mar. 16, 2021 for U.S. Appl. No. 16/158,169. |
U.S. Appl. No. 11/333,826, filed Jan. 17, 2006 and entitled, “Knowledge Filter”. |
U.S. Appl. No. 11/692,169, filed Mar. 27, 2007 and entitled, “Knowledge Filter”. |
U.S. Appl. No. 60/158,496, filed Oct. 8, 1999 and entitled, “Knowledge Filter”. |
U.S. Appl. No. 60/816,100, filed Jun. 22, 2006 and entitled, “Knowledge Filter”. |
U.S. Appl. No. 60/816,900, filed Jun. 26, 2006 and entitled, “Knowledge Filter”. |
“Craigslist Online Community.” Craigslist.org. Jul. 6, 2010. |
Ahmed, Saba, Final Office Action dated Jun. 29, 2016 for U.S. Appl. No. 14/098,492. |
Ahmed, Saba, Non-Final Office Action dated Nov. 19, 2015 for U.S. Appl. No. 14/098,492. |
Anicas, Mitchell; An Introduction to OAuth 2, DigitalOcean, Published Jul. 21, 2014, pp. 1-18. |
Arentz et al., Classifying offensive sites based on image content, Computer Vision and Image Understanding 94, 295-310, 2004. |
Bista, Sanat Kumar et al., “Using Gamification in an Online Community,” CSIRO ITC Centre, Conference Paper, 2012. |
Blaufeld, Justin R., Final Office Action dated Mar. 24, 2016 for U.S. Appl. No. 14/098,501. |
Blaufeld, Justin R., Non-Final Office Action dated Sep. 24, 2015 for U.S. Appl. No. 14/098,501. |
Bostock, Mike, Sankey Diagram, available at http://bost.ocks.org/mike/sankey, published May 21, 2012, 1 pg. |
Brown Jr., Nathan H., Final Office Action dated Mar. 29, 2011 for U.S. Appl. No. 11/971,856. |
Brown Jr., Nathan H., Non-Final Office Action dated Jun. 6, 2012 for U.S. Appl. No. 13/167,482. |
Brown Jr., Nathan H., Non-Final Office Action dated Mar. 24, 2014 for U.S. Appl. No. 13/780,487. |
Brown Jr., Nathan H., Non-Final Office Action dated Nov. 26, 2010 for U.S. Appl. No. 11/971,856. |
Bui, Hanh Thi Minh, Non-Final Office Action dated Mar. 13, 2015 for U.S. Appl. No. 14/012,978. |
Cannell, Larry, “Windows 7 Federated Search and SharePoint 2010” online article dated Jun. 2010 <http://blogs.gartner.com/larry-cannell/2010/09/09/windows-7-federated-search-and-sharepoint-2010/[May 13, 2016 12:36:15 PM]. |
Chung, Mong-Shune, Non-Final Office Action dated Jan. 29, 2016 for U.S. Appl. No. 14/098,505. |
Constine, Josh, “Facebook tests notification unsubscribe button for feed posts,” Aug. 9, 2010. http://www.adweek.com/socialtime/unsubscribe-button-posts/244868. |
Dagnew, Saba, Final Office Action dated Feb. 12, 2020 for U.S. Appl. No. 15/581,795. |
Dagnew, Saba, Non-Final Office Action for U.S. Appl. No. 15/581,795 dated Sep. 16, 2019. |
Dinh, Khanh Q., Notice of Allowance and Fee(s) Due dated Oct. 29, 2019 for U.S. Appl. No. 15/877,379. |
Dwyer, Cameron, “Five out-of-the-box ways to get Email into SharePoint” Jan. 2012, <https://camerondwyer.wordpress.com/2012/09/04/five-out-of-the-box-ways-to-get-email-into-sharepoint/[May 13, 2016 10:48:43 AM]. |
Emojipedia, (https://web.archive.org/web/20150915110235/https://emojipedia.org/fisted-hand-sign/), Date: Sep. 15, 2015; (https://web.archive.org/web/20150823012626/https://emojipedia.org/clapping-hands-sign/), Date: Aug. 23, 2015; (https://web.archive.org/web/20150829090848/https://emojipedia.org/smiling-face-with-sunglasses/), Date: Aug. 29, 2015. |
Falcao et al., U.S. Appl. No. 15/877,379, filed Jan. 22, 2018 and entitled, “Temporal Optimization of Data Operations Using Distributed Search and Server Management.” |
Falcao et al., U.S. Appl. No. 15/877,381, filed Jan. 22, 2018 and entitled, “Temporal Optimization of Data Operations Using Distributed Search and Server Management.” |
Fett et al., The Web SSO Standard OpenID Connect: In-Depth Formal Security Analysis and Security Guidelines, 2017 IEEE 30th Computer Security Foundations Symposium (Year: 2017). |
Filipczyk, Marcin R., Final Office Action dated Oct. 5, 2015 for U.S. Appl. No. 13/950,268. |
Filipczyk, Marcin R., Non-Final Office Action dated Mar. 10, 2016 for U.S. Appl. No. 13/950,268. |
Filipczyk, Marcin R., Non-Final Office action dated May 22, 2015 for U.S. Appl. No. 13/950,268. |
Fiorillo, James N., Non-Final Office Action for U.S. Appl. No. 15/821,543 dated Aug. 16, 2019. |
Fiorillo, James N., Notice of Allowance and Fee(s) Due dated Nov. 14, 2019 for U.S. Appl. No. 15/821,543. |
Friedman et al., U.S. Appl. No. 61/650,849, filed May 23, 2012 and entitled, “Dynamic Information Streams in a Social Network Platform.” |
Frunzi, Victoria E., Non-Final Office Action dated Oct. 16, 2018 for U.S. Appl. No. 15/018,787. |
Gaedckle et al., U.S. Appl. No. 61/636,132, filed Apr. 20, 2012 and entitled, “System and Method for Providing a Social Customer Care System.” |
Georgandellis, Andrew C., Final Office Action dated Mar. 30, 2016 for U.S. Appl. No. 13/900,878. |
Georgandellis, Andrew C., Final Office Action dated Oct. 26, 2017 for U.S. Appl. No. 13/900,878. |
Georgandellis, Andrew C., Final Office Action dated Sep. 21, 2016 for U.S. Appl. No. 14/035,166. |
Georgandellis, Andrew C., Non-Final Office Action dated Jan. 26, 2017 for U.S. Appl. No. 13/900,878. |
Georgandellis, Andrew C., Non-Final Office Action dated Jul. 11, 2016 for U.S. Appl. No. 14/035,166. |
Georgandellis, Andrew C., Non-Final Office Action dated May 23, 2017 for U.S. Appl. No. 14/035,166. |
Georgandellis, Andrew C., Non-Final Office Action dated Nov. 3, 2015 for U.S. Appl. No. 13/900,878. |
Giphy, (https://web.archive.org/web/20140813065113/http://giphy.com/search/happy), Date: Aug. 13, 2014; https://web.archive.org/web20141231135329/https://giphy.com/upload, Date: Dec. 31, 2014; https://web.archive.org/web/20150919214012/http://giphy.com/create/upload, Date: Sep. 19, 2015. |
Goldberg, Ivan R., Final Office Action dated Jan. 12, 2015 for U.S. Appl. No. 13/835,502. |
Goldberg, Ivan R., Final Office Action dated Jan. 13, 2015 for U.S. Appl. No. 13/835,250. |
Hashemi, Mazdak, “The Infrastructure Behind Twitter: Scale”, Jan. 19, 2017, Twitter, Inc. Blog Post, https://blog.twitter.com/engineering/en_us/topics/infrastructure/2017/the-infrastructure-behind-twitter-scale.html. |
Hatcher, Deirdre D., Non-Final Office Action dated Jan. 14, 2016 for U.S. Appl. No. 13/950,258. |
Holzband et al., U.S. Appl. No. 15/821,543, filed Nov. 22, 2017 and entitled, “Responsive Action Prediction Based on Electronic Messages Among a System of Networked Computing Devices.” |
Jang, Gijeong, Written Opinion of the International Searching Authority and International Search Report dated Jul. 28, 2015 for International Patent Application No. PCT/US2014/047866. |
Jou et al., “Predicting Viewer Perceived Emotions in Animated GIFs”, Nov. 3-7, 2014 (4 pages). |
Kim, Harry C., Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration dated Sep. 16, 2020 for International Patent Application No. PCT/US2020/032999. |
Kolosowski-Gager, Katherine, Final Office Action dated Feb. 11, 2019 for U.S. Appl. No. 14/627,151. |
Kolosowski-Gager, Katherine, Non-Final Office Action dated Jun. 29, 2018 for U.S. Appl. No. 14/627,151. |
Lithium Technologies. “Community Health Index for Online Communities.” 2009, https://www.lithium.com/pdfs/whitepapers/Lithium-Community-Health-Index_v1AY2ULb.pdf. Retrieved from the Internet Wayback Machine, dated Feb. 19, 2011. |
Lithium Website, http://www.lithium.com, Dec. 11, 2010, retrieved from Internet Archive, pp. 1-9. |
Liu et al., OAuth Based Authentication and Authorization in Open Telco API; International Conference on Computer Science and Electronics Engineering, 2012 (Year: 2012). |
M2 PressWire, “Alterian: Social media monitoring and analytics comes of age with Alterian's acquisition of market leader Techrigy,” Jul. 15, 2009, Anonymous, Norman Media Ltd, London. |
Matthews, Tara, et al. “Community Insights: Helping Community Leaders Enhance the Value of Enterprise Online Communities.” Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, Apr. 27-May 2, 2013, Paris, France. ACM (2013). pp. 513-522. |
Meng, Jau Shya, Non-Final Office Action dated Jan. 3, 2020 for U.S. Appl. No. 15/877,381. |
Meng, Jau Shya, Non-Final Office Action dated Jun. 16, 2020 for U.S. Appl. No. 15/877,381. |
Mesa, Joel, Final Office Action dated Mar. 30, 2020 for U.S. Appl. No. 15/782,635. |
Mesa, Joel, Non-Final Office Action for U.S. Appl. No. 15/782,635 dated Oct. 4, 2019. |
Mesa, Joel, Non-Final Office Action dated Oct. 6, 2020 for U.S. Appl. No. 15/782,635. |
Mosley, Kyle T., Non-Final Office Action dated Dec. 28, 2017 for U.S. Appl. No. 14/852,965. |
Mosley, Kyle T., Non-Final Office Action dated Oct. 4, 2017 for U.S. Appl. No. 14/627,151. |
Neizloff, Eric R., Non-Final Office Action dated Nov. 25, 2014 for U.S. Appl. No. 13/848,706. |
Neizloff, Eric R., Non-Final Office Action dated Nov. 6, 2018 for U.S. Appl. No. 14/824,021. |
Niruntasukrat et al., Authorization Mechanism for MQTT-based Internet of Things, IEEE ICC 2016 Workshops W07—Workshop on Convergent Internet of Things (Year: 2016). |
Ofori-Awuah, Maame, Final Office Action dated Oct. 2, 2020 for U.S. Appl. No. 14/929,209. |
Ofori-Awuah, Maame, Final Office Action dated Sep. 6, 2019 for U.S. Appl. No. 14/929,209. |
Ofori-Awuah, Maame, Non-Final Office Action dated Apr. 5, 2019 for U.S. Appl. No. 14/929,209. |
Oh, Eung Gie, Written Opinion of the International Searching Authority and International Search Report dated Nov. 18, 2014 for International Patent Application No. PCT/US2014/031345. |
Olshannikov, Alex, Final Office Action dated Apr. 15, 2016 for U.S. Appl. No. 14/098,480. |
Olshannikov, Alex, Final Office Action dated Feb. 17, 2016 for U.S. Appl. No. 14/098,509. |
Olshannikov, Alex, Non-Final Office Action dated Nov. 5, 2015 for U.S. Appl. No. 14/098,480. |
Olshannikov, Alex, Non-Final Office Action dated Oct. 22, 2015 for U.S. Appl. No. 14/098,509. |
Perungavoor, Venkatanaray, Notice of Allowance and Fee(s) Due for U.S. Appl. No. 16/158,167, dated May 15, 2020. |
Raju, “5 Ways to Tweet More Than 140 Characters,” Dec. 28, 2008, Technically Personal, http://www.techpp.com/2008/12/28/5-ways-to-tweet-more-than-140-characters/, retrieved from Internet Archive version from Mar. 3, 2011. |
Rao et al., U.S. Appl. No. 62/049,642, filed Sep. 12, 2014 and entitled, “System and Apparatus for an Application Agnostic User Search Engine.” |
Rashid, Ishrat, Final Office Action for U.S. Appl. No. 15/782,653 dated Sep. 19, 2019. |
Rashid, Ishrat, Non-Final Office Action dated Jun. 11, 2019 for U.S. Appl. No. 15/782,653. |
Rashid, Ishrat, Non-Final Office Action dated Jun. 12, 2020 for U.S. Appl. No. 15/782,653. |
Senftleber et al., International (PCT) Patent Application No. PCT/US2018/055545, filed Oct. 12, 2018 and entitled, “Predicting Performance of Content and Electronic Messages Among a System of Networked Computing Devices.” |
Senftleber et al., U.S. Appl. No. 15/782,635, filed Oct. 12, 2017 and entitled, “Computerized Tools To Enhance Speed and Propagation of Content in Electronic Messages Among a System of Networked Computing Devices.” |
Senftleber et al., U.S. Appl. No. 15/782,642, filed Oct. 12, 2017 and entitled, “Predicting Performance of Content and Electronic Messages Among a System of Networked Computing Devices.” |
Senftleber et al., U.S. Appl. No. 15/782,653, filed Oct. 12, 2017 and entitled, “Optimizing Effectiveness of Content in Electronic Messages Among a System of Networked Computing Device.” |
Senftleber et al., U.S. Appl. No. 16/158,167, filed Oct. 11, 2018 and entitled, “Credential and Authentication Management in Scalable Data Networks.” |
Senftleber et al., U.S. Appl. No. 16/158,169, filed Oct. 11, 2018 and entitled, “Native Activity Tracking Using Credential and Authentication Management in Scalable Data Networks.” |
Senftleber et al., U.S. Appl. No. 16/158,172, filed Oct. 11, 2018 and entitled, “Proxied Multifactorauthentication Using Credential and Authentication Management in Scalable Data Networks.” |
Suh, Andrew, Non-Final Office Action dated Jul. 8, 2020 for U.S. Appl. No. 16/158,172. |
Tabor, Amare F., Final Office Action dated Apr. 8, 2015 for U.S. Appl. No. 13/871,076. |
Tabor, Amare F., Non-Final Office Action dated Aug. 15, 2014 for U.S. Appl. No. 13/871,076. |
Takesue, Masaru, An HTTP Extension for Secure Transfer of Confidential Data, 2009 IEEE International Conference on Networking, Architecture, and Storage, Hunan, 2009, pp. 101-108, doi: 10.1109/NAS.2009.21. |
Takesue, Masaru, An HTTP Extension for Secure Transfer of Confidential Data. IEEE, 2009 (Year: 2009). |
Thomas, Shane, Written Opinion of the International Searching Authority and International Search Report dated Aug. 16, 2013 for International Patent Application No. PCT/US2013/037107. |
Trapanese, William C., Non-Final Office Action dated May 27, 2020 for U.S. Appl. No. 16/413,577. |
Vo, Huyen X., Non-Final Office Action dated Mar. 15, 2019 for U.S. Appl. No. 15/782,642. |
Vo, Huyen X., Non-Final Office Action dated Oct. 15, 2020 for U.S. Appl. No. 16/458,183. |
Walsh, John B., Non-Final Office Action dated Mar. 24, 2017 for U.S. Appl. No. 14/702,696. |
Wang, Xiaoqing, and Shannon Lantzy. “A Systematic Examination of Member Turnover and Online Community Health.” Thirty Second International Conference on Information Systems, Shanghai (2011), pp. 1-11. |
Wollenstein et al., U.S. Appl. No. 61/639,509, filed Apr. 27, 2012 and entitled, “Systems and Methods for Implementing Custom Privacy Settings.” |
Wu, Michael, U.S. Appl. No. 61/734,927, filed Dec. 7, 2012 and entitled, “Systems and Methods for Presenting Analytic Data.” |
Wu, Michael, U.S. Appl. No. 62/072,929, filed Oct. 30, 2014 and entitled, “Systems and Methods To Monitor Health of Online Social Communities.” |
Young, Lee W., Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration, dated Apr. 1, 2019 for International Application No. PCT/US2018/05545. |
Young, Lee W., Written Opinion of the International Searching Authority and International Search Report dated May 28, 2014 for International Patent Application No. PCT/US2013/073625. |
Young, Lee W.; Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration dated Jun. 24, 2019 for International Application No. PCT/US2019/014637. |
Goldberg, Ivan R., Final Office Action dated Jan. 15, 2015 for U.S. Appl. No. 13/865,429. |
Goldberg, Ivan R., Non-Final Office Action dated Apr. 13, 2016 for U.S. Appl. No. 13/865,429. |
Goldberg, Ivan R., Non-Final Office Action dated Jun. 18, 2014 for U.S. Appl. No. 13/835,250. |
Goldberg, Ivan R., Non-Final Office Action dated Jun. 18, 2014 for U.S. Appl. No. 13/835,502. |
Goldberg, Ivan R., Non-Final Office Action dated Jun. 20, 2014 for U.S. Appl. No. 13/865,411. |
Goldberg, Ivan R., Non-Final Office Action dated Jun. 23, 2014 for U.S. Appl. No. 13/865,429. |
Hardt, Dick, The OAuth 2.0 Authorization Framework draft-ieft-oauth-v2-31; Internet Engineering Task Force (IETF) (Year: 2012). |
Senftleber et al., U.S. Appl. No. 16/194,126, filed Nov. 16, 2018 and entitled, “Multiplexed Data Exchange Portal Interface in Scalable Data Networks.” |
Shaw, Robert A., Non-Final Office Action dated Jan. 22, 2021 for U.S. Appl. No. 16/158,169. |
Singh, Amardeep, IP Australia, Examination Report No. 1 for Australia Patent Application No. 2019209542 dated Dec. 17, 2020. |
Spasojevic et al., U.S. Appl. No. 61/943,047, filed Feb. 21, 2014 and entitled, “Domain Generic Large Scale Topic Expertise & Interest Mining Across Multiple Online Social Networks.” |
Spasojevic, Nemanja et al., “When-To-Post on Social Networks”, International Conference on Knowledge Discovery and Data Mining (KDD), Aug. 10-13, 2015, pp. 2127-2136, Retrieved Online: http://dl.acm.org/citation.cfm?d=2788584. |
Suh, Andrew, Final Office Action dated Dec. 3, 2020 for U.S. Appl. No. 16/158,172. |
Wikipedia, “Dependency Hell”, published Jul. 26, 2004, Updated Oct. 14, 2020, Date Accessed: Nov. 25, 2020, <https://en.wikipedia.org/wiki/Dependency_hell> (Year: 2020). |
Bendersky, Eli, “Benefits of Dependencies in Software Projects as a Function of Effort,” Eli Bendersky's Website, Published Jan. 13, 2017, Date Accessed: Nov. 25, 2020, <https://eli.thegreenplace.net/2017/benefits-of-dependencies-in-software-projects-as-a-function-of-effort/>. |
NPM, “Dependency Hell”, New Project, Monday, Published 2016, Date Accessed: Nov. 25, 2020, <https://npm.github.io/how-npm-works-docs/theory-and-design/dependency-hell.html>. |
Fia, Naya, Twitter Status, “Firefox's Dependency Graph”, Published Jun. 9, 2017, Date Accessed: Nov. 25, 2020, <https://twitter.com/nayafia/status/873294386934816768>. |
Dolstra, Eleco, The Purely Functional Software Deployment Model, IPA Institute for Programming Research and Algorithmics, Utrecht University, Published Jan. 18, 2006, ISBN: 90-393-4130-3, 281 Pages, Date Accessed: Nov. 25, 2020 <https://edolstra.github.io/pubs/phd-thesis.pdf>. |
European Patent Office, Extended European Search Report dated Nov. 12, 2021 for European Patent Application No. 19741372.7. |
Fiorillo, James N., Final Office Action dated Sep. 27, 2021 for U.S. Appl. No. 16/827,625. |
Fiorillo, James N., Notice of Allowance and Fee(s) Due dated Nov. 24, 2021 for U.S. Appl. No. 16/827,625. |
Leimeister et al., “Success factors of virtual communities from the perspective of members and operators: An empirical study,” Proceedings of the 37th Hawaii International Conference on Systems Sciences 2004, IEEE, pp. 1-10 (Year: 2004). |
Ofori-Awuah, Maame, Non-Final Office Action dated Sep. 28, 2021 for U.S. Appl. No. 14/929,209. |
Rashid, Ishrat, Non-Final Office Action dated Dec. 22, 2021 for U.S. Appl. No. 15/782,653. |
Shaw, Robert A., Non-Final Office Action dated Dec. 27, 2021 for U.S. Appl. No. 16/158,169. |
Barua et al., “Protecting Web Browser Extensions from JavaScript Injection Attacks,” 2013 International Conference on Engineering of Complex Computer Systems, IEEE. (Year: 2013). |
Birgisson et al., “Macaroons: Cookies with Contextual Caveats for Decentralized Authorization in the Cloud,” Network and Distributed System Security (NDSS) Symposium, Feb. 23-26, 2014, San Diego, California. (Year: 2014). |
Dinh, Khanh Q., Non-Final Office Action dated Apr. 28, 2022 for U.S. Appl. No. 17/334,135. |
Dinh, Khanh Q., Notice of Allowance and Fee(s) Due dated Jun. 29, 2022 for U.S. Appl. No. 17/334,135. |
Kim, Harry, Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration, dated Jan. 11, 2022 for International Application No. PCT/US2021/050979. |
Louw et al., “Enhancing web browser security against malware extensions,” J Computing Virol (2008), Published Jan. 12, 2008, Springer-Verlag France. (Year: 2008). |
Meng, Jau Shya, Non-Final Office Action dated Nov. 8, 2022 for U.S. Appl. No. 17/332,391. |
Mesa, Joel, Non-Final Office Action dated Mar. 31, 2022 for U.S. Appl. No. 17/244,868. |
Mesa, Joel, Notice of Allowance and Fee(s) Due dated Aug. 23, 2022 for U.S. Appl. No. 17/244,868. |
Nano, Sargon N., Non-Final Office Action dated Mar. 21, 2022 for U.S. Appl. No. 17/365,222. |
Nano, Sargon N., Notice of Allowance and Fee(s) Due dated Apr. 28, 2022 for U.S. Appl. No. 17/365,222. |
Perungavoor, Venkat, Non-Final Office Action dated Jun. 29, 2022 for U.S. Appl. No. 17/027,646. |
Perungavoor, Venkatanaray, Notice of Allowance and Fee(s) Due dated Oct. 27, 2022 for U.S. Appl. No. 17/086,260. |
Perungavoor, Venkatanary, Non-Final Office Action dated Aug. 19, 2022 for U.S. Appl. No. 17/086,260. |
Perungavoor, Venkatanary, Non-Final Office Action dated Jun. 29, 2022 for U.S. Appl. No. 17/086,260. |
Rashid, Ishrat, Notice of Allowance and Fee(s) Due, dated Sep. 16, 2022 for U.S. Appl. No. 15/782,653. |
Shaw, Robert A., Notice of Allowance and Fee(s) Due dated Jun. 2, 2022 for U.S. Appl. No. 16/158,169. |
Shinjo et al., A Distributed Web Browser as a Platform for Running Collaborative Applications, International Conference on Collaborative Computing: Networking, Applications and Worksharing (CollaborateCom), Orlando, Florida, USA, Oct. 15-18, 2011 (Year: 2011). |
Suh, Andrew, Non-Final Office Action dated Jul. 28, 2022 for U.S. Appl. No. 17/163,293. |
Number | Date | Country | |
---|---|---|---|
20220156053 A1 | May 2022 | US |