Wow! You're working on that new feature?
"Complexity in toolchains, processes and information hinders delivery of business value" - Kersten (2018)
"The usage of different tools forms part of a developers cognitive load" - Klemola & Rilling (2002)
"Problem solving requires significant amount of cognitive load" - Sweller 1998
"Limited working memory" - Miyake and Shah 1999
"I'll google that"
- Unknown
Except ... they tend to focus on assisting the local context.
Source specific plugins are created to enhance context
m IDEs * n languages
sequenceDiagram IDE->>+Daemon: Here's a context, answer this? Daemon->>+Message Bus: Send this request to\nto subscribed parties Message Bus ->>+Providers: Here's a query Note right of Providers: Scatter query Daemon->>+IDE: Here's a collection identifier loop Poll IDE->>+Daemon: Any new results
for this identifier! Daemon->>+IDE: Paged Results, if any end Note right of Providers: Empty result set
returned for lack of
understanding. Providers ->>+Message Bus: Return results to requester Message Bus ->>+Daemon: Here's a new result Note left of Message Bus: Add to collection
@Component
public class ExpertsProvider implements ExpertsQueryListener {
@QueryHandler
@Override
public List on(AssociatedExpertsQuery query) {
// TODO: compute values that need returning
return new ArrayList<>();
}
}
implementation 'org.axonframework:axon-spring-boot-starter:{axon-version}'
implementation 'com.dominiccobo.fyp:context-lsp-api:{api-version}'
implementation 'org.springframework.boot:spring-boot-starter-web:{spring-version}'
Work Items | Experts | Documentation | |
GitHub | ✔ | ✔ | |
GitLab | ✔ | ||
Stack Overflow | ✔ |
Traditional
~40s
Our approach
~12s