IP Library Granted Patent US 11,567,736
Granted Patent B2
US 11,567,736 · App. 16/996,867 · Granted Jan 31, 2023

Systems and methods for providing an instant communication channel within integrated development environments

Inventor: Peter Pezaris (New York, NY)
Assignee: CodeStream, Inc.
G06F8/33G06F8/41G06F8/71G06F8/75G06F8/77G06F8/20G06F8/30G06F8/34G06F8/654G06F9/445G06F9/45512G06F16/3329G06F16/90332G06F16/9538
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,567,736
App. No.
16/996,867
Granted
Jan 31, 2023
Kind
B2
Abstract

A method and system may be provided for recording discussions about computer code in an integrated development environment (“IDE”). In some aspects, a communication channel is integrated with an IDE. Communications and discussions may be tracked and linked with specific code sections.

Claims (50)

1. A communication system for augmenting a software development environment, the communication system comprising one or more processers configured to perform the operations of:

generating a communication panel in conjunction with a code editing panel, wherein the communication panel is configured to display a message stream of user based communication associated with code displayed in the code editing panel;

monitoring, in real-time, the message stream for code, wherein in response to detecting code in the message stream, determine corresponding code in the code editing panel;

displaying a communication interface providing a text input section for receiving text input for the user based communication, wherein the user based communication accepted by the communication interface is associated with a codeblock and a reference to the codeblock is embedded into the user based communication;

receiving a modification of the code in the code editing panel, wherein the modification comprises an addition of code, deletion of code, renumbering of code, and/or moving of code;

in response to receiving the modification, storing metadata for preserving communication thread linkage between modified code and the message stream associated with the code in the code editing panel, wherein the metadata comprises information associated with a location of the code file, location of a code line, position of a code line, number of code lines, message streams and/or user based communications; and

wherein the act of preserving further comprises:

determining whether the modification comprises deletion of at least a portion of the code in the code editing panel; and

in response to determining that the modification comprises deletion:

visually indicate, in the code editing panel, a portion corresponding to the deleted code; and

store, in the metadata, one or more user based messages in the message stream corresponding to the deleted code.

2. The communication system of claim 1 , wherein the act of preserving further comprises:

store, in the metadata, a first identification of the code in the code editing panel and/or a second identification of the modified code.

3. The communication system of claim 2 , wherein one or both of the first identification and the second identification is a commit identification.

4. The communication system of claim 1 , wherein the act of preserving further comprises:

identify a recipient of a user based message in the message stream; and

annotate, in the metadata, the recipient with respect to the user based message.

5. The communication system of claim 4 , wherein the act of identifying the recipient of the user based message in the message stream comprises:

distinguish between a target user for the user based message and another user mentioned in the user based message; and

select the target user as the recipient of the user based message.

6. The communication system of claim 1 , further comprising the operations of:

generating a user interface panel configured to display one or more differences between the code in the code editing panel and the received modification of the code.

7. The communication system of claim 1 , further comprising the operations of:

generate a user interface panel configured to display an apply function to change the code in the code editing panel based on the received modification of the code.

8. The communication system of claim 7 , wherein the user interface panel is further configured to display a revert function to revert the code in the code editing panel to a version prior to the code being changed.

9. A computer implemented method for augmenting a software development environment, the computer implemented method comprising:

generating, by at least one processor, a communication panel in conjunction with a code editing panel, wherein the communication panel is configured to display a message stream of user based communication associated with code displayed in the code editing panel;

monitoring, in real-time, the message stream for code, wherein in response to detecting code in the message stream, determine corresponding code in the code editing panel;

displaying a communication interface providing a text input section for receiving text input for the user based communication, wherein the user based communication accepted by the communication interface is associated with a codeblock and a reference to the codeblock is embedded into the user based communication;

receiving a modification of the code in the code editing panel, wherein the modification comprises an addition of code, deletion of code, renumbering of code, and/or moving of code; and

in response to receiving the modification, storing metadata for preserving communication thread linkage between modified code and the message stream associated with the code in the code editing panel, wherein the metadata comprises information associated with a location of the code file, location of a code line, position of a code line, number of code lines, message streams and/or user based communications; and

wherein the act of preserving further comprises:

determining whether the modification comprises deletion of at least a portion of the code in the code editing panel; and

in response to determining that the modification comprises deletion:

visually indicate, in the code editing panel, a portion corresponding to the deleted code; and

store, in the metadata, one or more user based messages in the message stream corresponding to the deleted code.

10. The computer implemented method of claim 9 , wherein the act of preserving further comprises:

storing, in the metadata, a first identification of the code in the code editing panel and/or a second identification of the modified code.

11. The computer implemented method of claim 10 , wherein one or both of the first identification and the second identification is a commit identification.

12. The computer implemented method of claim 9 , wherein the act of preserving further comprises:

identifying a recipient of a user based message in the message stream; and

annotating, in the metadata, the recipient with respect to the user based message.

13. The computer implemented method of claim 12 , wherein the act of identifying the recipient of the user based message in the message stream comprises:

distinguishing between a target user for the user based message and another user mentioned in the user based message; and

selecting the target user as the recipient of the user based message.

14. The computer implemented method of claim 9 , further comprising:

generating, by the at least one processor, a user interface panel configured to display one or more differences between the code in the code editing panel and the received modification of the code.

15. The computer implemented method of claim 9 , further comprising:

generating, by the at least one processor, a user interface panel configured to display an apply function to change the code in the code editing panel based on the received modification of the code.

16. The computer implemented method of claim 15 , wherein the user interface panel is further configured to display a revert function to revert the code in the code editing panel to a version prior to the code being changed.

Assignments (4)
SECURITY INTEREST Recorded Nov 16, 2023
From: NEW RELIC, INC.
To: BLUE OWL CAPITAL CORPORATION, AS COLLATERAL AGENT
Reel/Frame 065579/0877 →
MERGER Recorded Nov 2, 2023
From: CODESTREAM, INC.
To: CODESTREAM, LLC
Reel/Frame 065431/0928 →
MERGER Recorded Nov 2, 2023
From: CODESTREAM, LLC
To: NEW RELIC, INC.
Reel/Frame 065432/0235 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 14, 2021
From: PEZARIS, PETER
To: CODESTREAM, INC.
Reel/Frame 056252/0810 →
Continuity (5)
Continuation 16312785
Provisional Application 62659346 · Apr 18, 2018
Provisional Application 62626575 · Feb 5, 2018
Provisional Application 62548776 · Aug 22, 2017
Related Publication 20200379737A1 · Dec 3, 2020