Create a linkedIn post fo Thoughtworks techradar 2024.  "The Radar is all about tracking interesting things, which we refer to as blips. We organize the blips in
the Radar using two categorizing elements: quadrants and rings. The quadrants represent different
kinds of blips. The rings indicate our recommendation for using that technology.
A blip is a technology or technique that plays a role in software development. Blips are ‘in motion’
— their position in the Radar often changes — usually indicating our increasing confidence in
recommending them as they move through the rings. AI-assisted software development teams : 
The topic of AI obviously dominated our conversations; one-third of our blips concerned some aspect
of it. While we discussed several developer-focused AI tools like GitHub Copilot, CodiumAI, aider
and Continue, we also had numerous conversations about how the holistic use of AI across an entire
team changes aspects of software development. We talked about a variety of tools that didn’t make
the final cut, including AI-assisted terminals like Warp, the ability to convert screenshots to code,
ChatOps backed by LLMs and a host of other topics. Although the developer tools tend toward a
higher degree of maturity, we suspect that all aspects of software development can gradually benefit
from the pragmatic use of AI and derived tools, and we’re actively following innovations across the
development landscape. Of course, with the almost magical new capabilities offered by AI come new
risks to software quality and security. This calls for teams to remain vigilant, including keeping nondevelopers in the loop about potential hazards. Emerging architecture patterns for LLMs
Patterns are popular in the technology world because they provide a succinct name for a solution to
a particular problem. With the growing use of large language models (LLMs), we’re starting to see the
emergence of specific architecture patterns to support common contexts. For example, we discussed
NeMo Guardrails, which allows developers to build governance policies around LLM usage. We also
talked about tools such as Langfuse that allow greater observability into the steps leading to an LLM’s
output and how to deal with (and validate) bloated code bases full of generated code. We discussed
how retrieval-augmented generation (RAG) is our preferred pattern to enhance the quality of LLM
outputs, especially in the enterprise ecosystem. Additionally, we discussed techniques like using a
lower-powered (and more cost-efficient) LLM to produce material which is selectively vetted by a
more powerful (and expensive) LLM. Patterns form an important vocabulary for technologies, and we
expect to see an explosion of patterns (and the inevitable anti-patterns) as generative AI continues to
suffuse software development. 9. AI team assistants
Assess
AI coding assistance tools like GitHub Copilot are currently mostly talked about in the context of
assisting and enhancing an individual’s work. However, software delivery is and will remain team
work, so you should be looking for ways to create AI team assistants to help create the “10x team,”
as opposed to a bunch of siloed AI-assisted 10x engineers. We’ve started using a team assistance
approach that can increase knowledge amplification, upskilling and alignment through a combination
of prompts and knowledge sources. Standardized prompts facilitate the use of agreed-upon best
practices in the team context, such as techniques and templates for user story writing or the
implementation of practices like threat modeling. In addition to prompts, knowledge sources made
available through retrieval-augmented generation provide contextually relevant information from
organizational guidelines or industry-specific knowledge bases. This approach gives team members
access to the knowledge and resources they need just in time. 13. Using GenAI to understand legacy codebases
Assess
Generative AI (GenAI) and large language models (LLMs) can help developers both write and
understand code. In practical application, this is so far mostly limited to smaller code snippets, but
more products and technology developments are emerging for using GenAI to understand legacy
codebases. This is particularly useful in the case of legacy codebases that aren’t well-documented
or where the documentation is outdated or misleading. For example, Driver AI or bloop use RAG
approaches that combine language intelligence and code search with LLMs to help users find their
way around a codebase. Emerging models with larger and larger context windows will also help to
make these techniques more viable for sizable codebases. Another promising application of GenAI
for legacy code is in the space of mainframe modernization, where bottlenecks often form around
reverse engineers who need to understand the existing codebase and turn that understanding into
requirements for the modernization project. Using GenAI to assist those reverse engineers can help
them get their work done faster.