A DotNet developer’s note on Technology Radar V31

 

As a new Technology Radar release with many interesting techs, a few drew my attention. I picked a few looked interesting for dotnet developer.

Surprised by so many tools, frameworks around LLM application. It is definitely exploding.

Techniques

Adopt

  • 1% canary: can achieve the similar results by alpha, beta testing. Azure  cloud deployment slot can provide similar results as well because the slot can easily distribute the inbound traffic between slots by % of the total traffic.
  • Component testing: Unit test can be too narrow and have tendency to expose internal function. E2E test can be slow and flaky. It would be better to focus on component testing which runs in memory. Tools like jsdom will help.
  • Continuous deployment: Adopt continuous deployment whenever possible. Continuous deployment means deploy apps to production fully automatically when changes are committed and tested without manual approval. It may not applicable to all cases.
  • Retrieval-augmented generation (RAG): GraphRAG is getting more popularity as a way to retrieve more relevant context.

Trial

  • Domain storytelling: a promising tool to start an initial DDD modeling. In this technique, a facilitator draw a diagram to show entity, event and actors, which can be shared between biz owner and developer and make sure both side understand the requirements.
  • Fine-tuning embedding models can improve the result from RAG.
  • Worth trying to action (calling function) with LLMs
  • LLM can be used to judge (evaluator) a result from the other LLMs
  • Passkeys, which create a key pair. A private key stored in yours device. The public key stored in the web site. This technique is backed by Apple, Google and Microsoft. Probably good idea use Passkeys instead of password whenever possible.
  • Small language model is getting popular especially in edge device. e.g. Gemini Nano, Microsoft’s Phi-3
  • Synthetic data is effectively being used for testing and training models.
  • GenAPI can be used to understand legacy codebase.

Access

Hold

  • Complacency with AI-generated code: The code made by AI will be mediocre code rather than the best code possible.
  • Enterprise-wide integration testing can be very costly. Consider alternatives.
  • LLM ban can only pushes employees to find a potentially unsafe workarounds.
  • Pair programming with human makes team better. AI only helps individual level.

Platforms

Trial

  • FastChat: an open platform for training, serving, and evaluating large language model based chatbots.
  • Vertex AI Agent Builder: It helps to create AI agents and applications using natural language or a code-first approach.

Assess

  • Azure AI Search is new name for Cognitive Search in Azure. Powerful and easy to use but it was pricy from my previous experience.
  • FoundationDB: open-sourced distributed database.
  • Iggy: potential alternative to Kafka.
  • Iroh: new player in distributed storage space.
  • PGLite: a WASM build of PostgreSQL
  • Unblocked:  brings all the context about your codebase together, so your team gets expert-level answers, no matter where they’re working.

Tools

Adopt

  • Bruno: an open-source desktop alternative to Postman and Insomnia.
  • SOPS: use it when keeping the secret in code repository.
  • Visual regression testing tools has been improved and became stable. e.g. BackstopJS, Applitools, Percy.
  • Wiz is cloud security platform.

Trial

  • ClickHouse is real-time data warehouse.
  • Devbox creates isolated, reproducible development environments that run anywhere.
  • Difftastic is a CLI diff tool that compares files based on their syntax.
  • LinearB: measure engineering team’s performance and health.
  • Unleash: open-source feature flag tool if you need more scaled feature toggles.

Assess

  • Cursor is most eye-catching AI integrated IDE. Much better than VSCode in a sense that Cursor can consider multiple files in a context rather than code snippets.
  • JetBrains AI Assistant.
  • Rspack is replacement of Webpack and very fast.
  • Software engineering agents: Examples are GitHub Copilot Workspace, qudo flow, Tabnine’s agents for JIRA, Amazon Q Developer.

Languages & Frameworks

Adopt

  • dbt is a strong, sensible option for implementing data transformations in ELT pipelines.
  • Testcontainers is an open source library for providing throwaway, lightweight instances of databases, message brokers, web browsers, or just about anything that can run in a Docker container.

Trial

  • CAP is a library based on .Net standard, which is a solution to deal with distributed transactions, has the function of EventBus, it is lightweight, easy to use, and efficient.
  • LiteLLM enable to call all LLM APIs using the OpenAI format. Sounds to be useful to connect various LLM models from AI App.
  • LLM Guardrails: example. NeMo GuardrailsGuardrails AI and Aporia Guardrails
  • Medusa open-source e-commerce solution.

Assess

  • DeepEval is an open-source LLM evaluation framework.
  • Flutter for Web
  • kotaemon: An open-source clean & customizable RAG UI for chatting with your documents. Built with both end users and developers in mind.
  • LLMLingua effectively deliver information to LLMs via prompt compression.
  • Microsoft Autogen is an open-source framework for building AI agent systems. It simplifies the creation of event-driven, distributed, scalable, and resilient agentic applications. It allows you to quickly build systems where AI agents collaborate and perform tasks autonomously or with human oversight.
  • Ragas is a library that provides tools to supercharge the evaluation of Large Language Model (LLM) applications.

Leave a comment

Your email address will not be published. Required fields are marked *