Skip to content

Commit

Permalink
Merge pull request #59 from jlieuw/master
Browse files Browse the repository at this point in the history
update csv file
  • Loading branch information
mvanleijenhorst authored Oct 16, 2023
2 parents 90f0507 + e558a24 commit fb8b3e7
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 2 deletions.
3 changes: 2 additions & 1 deletion items/radar.csv
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ quadrant,ring,name,description,isNew
Languages & Frameworks,Adopt,Blazor,"<a href=""https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor"">Blazor</a> is a client-side UI framework that allows you to build interactive web UIs using C#. Blazor apps are composed of reusable web UI components implemented using C#, HTML, and CSS. Both client and server code are written in C#, allowing you to share code and libraries. Blazor can run directly in the browser using WebAsssembly, alternatively it can run client-side logic on the server by sending UI events to the server and receiving UI changes back using SignalR.<br><br>In modern web development where there's already an oversaturation of Javascript frameworks, Blazor offers .NET developers a new alternative to write client-side code without having to learn a new or unfamiliar language or framework.",false
Languages & Frameworks,Adopt,GraphQL,"<a href=""https://graphql.org/"">GraphQL</a> is a query language for API's where the client of the API determines exactly what he wants to receive.<br><br>In most API's when you execute an action you're stuck with whatever object that action returns. If you only needed a portion of the result you've just received way more information than was necessary. Another common scenario is that you need to combine resources from multiple sources. Traditionally, this means you would have to query all sources separately and combine the data yourself.<br><br>With GraphQL, you can specify only the data that you need, even if it's across multiple sources. This cleans up the client-side because you don't need to create a lot of mappings to change what you receive from the API to what you actually need and it also reduces both the amount of API calls and the amount of wasted bandwidth sending data the client doesn't need.",false
Languages & Frameworks,Adopt,gRPC,"With <a href=""https://grpc.io/"">gRPC</a> it is possible to communicate with remote services in a modern high perforce manner. gRPC is a Remote Procedure Call (RPC) framework where services have clear interfaces and structured messages for requests and responses. It uses <a href=""https://developers.google.com/protocol-buffers/docs/overview"">Protobuf</a> to serialize the messages to a binary message format, making the payload significant smaller compared to JSON. It supports both HTTP and HTTP2.<br><br>Most web backend developers switched from SOAP to JSON (REST) / OpenAPI services past decade, and this is in many cases the best solution. However, when you have massive numbers of remote calls, milliseconds matter and both sides could be changed, gRPC should definitely be considered as a good alternative.<br><br>We prefer using gRPC in Microservice architecture environments where low latency is required.",false
Languages & Frameworks,Adopt,Minimal Api in .Net,"<a href=""https://docs.microsoft.com/en-us/aspnet/core/fundamentals/minimal-apis"">Minimal APIs</a> are a new feature since .NET 6 that allows you to create HTTP APIs with minimal dependencies. Minimal APIs are ideal for microservices and apps that only need minimal dependencies and features. If you are new to .NET, using Minimal APIs can be helpful, because you do not have to learn and understand the ASP.NET Core MVC framework first to create your HTTP API.<br><br>With Minimal APIs you can create new HTTP APIs with just a few lines of code. At first, features like API versioning were not available yet, but as of .Net 7 we would have no problems using it for full featured APIs. Minimal APIs will not replace the traditional MVC framework, so there is no need to refactor existing applications, but it is a new possibility to create a HTTP API.<br><br>We see Minimal APIs as an excellent choice for creating all kinds of new HTTP APIs and would consider using it when starting a new project.",true
Languages & Frameworks,Adopt,Minimal Api in .Net,"<a href=""https://docs.microsoft.com/en-us/aspnet/core/fundamentals/minimal-apis"">Minimal APIs</a> are a new feature since .NET 6 that allows you to create HTTP APIs with minimal dependencies. Minimal APIs are ideal for microservices and apps that only need minimal dependencies and features. If you are new to .NET, using Minimal APIs can be helpful, because you do not have to learn and understand the ASP.NET Core MVC framework first to create your HTTP API.<br><br>With Minimal APIs you can create new HTTP APIs with just a few lines of code. At first, features like API versioning were not available yet, but as of .Net 7 we would have no problems using it for full featured APIs. Minimal APIs will not replace the traditional MVC framework, so there is no need to refactor existing applications, but it is a new possibility to create a HTTP API.<br><br>We see Minimal APIs as an excellent choice for creating all kinds of new HTTP APIs and would consider using it when starting a new project.",false
Platforms,Adopt,Azure Cosmos DB,"<a href=""https://azure.microsoft.com/nl-nl/services/cosmos-db/"">Azure Cosmos DB</a> is a fully managed NoSQL database that excels in high performance reads, automatic scaling across multiple global regions and above most other document databases also the option to use SQL-like queries.<br><br>We have adopted Cosmos DB because it fits our needs in a lot of projects and is easy to use while developing. When relational integrity is not necessary, we like the benefits of NoSQL databases and Cosmos DB specifically. Only when it comes to heavy relational datasets, we would revert to an actual SQL database.",false
Platforms,Adopt,Azure Functions,"<a href=""https://azure.microsoft.com/nl-nl/services/functions/"">Azure Functions</a> is Microsoft's serverless computing offering and it allows us to further eliminate infrastructural code as it lives an abstraction level higher than container technology. This enables us to focus our developing efforts on the business logic of an application. Azure Functions can also be a cost-effective platform for low usage or highly fluctuating usage patterns.",false
Platforms,Adopt,Azure Kubernetes Service,"<a href=""https://azure.microsoft.com/nl-nl/services/kubernetes-service/"">Azure Kubernetes Service</a> (AKS) is a cloud service for hosting and maintaining container applications on Microsoft Azure, using Kubernetes.<br><br>Kubernetes has quickly become the de-facto standard for orchestrating container applications. With AKS we have an easy-to-use tool for working with Kubernetes in the Azure cloud. Since we, as .NET developers, have a lot of experience and affinity with Microsoft Azure, AKS is the logical tool we reach for when building container applications.",false
Expand All @@ -19,6 +19,7 @@ Tools,Adopt,DevToys,"A Swiss Army knife for developers, including converters, en
Tools,Adopt,FakeItEasy,"With <a href=""https://fakeiteasy.github.io/"">FakeItEasy</a>, the unit under test can be isolated from dependencies on the rest of the system. Each external dependency is replaced with a dummy, mock, stub or fake, which in FakeItEasy are all the same, are created the same, only the usage determines what they are. The framework has an intuitive fluent syntax to setup each dependency and can manage and verify each of its calls including the parameters and return values with the same ease.<br><br>Other mocking/isolation frameworks such as NSubstitute and Moq do the same job, but FakeItEasy makes it really, yes, easy.",false
Tools,Adopt,Fluent Assertions,"<b>Fluent Assertions</b> is an extensive set of extension methods that allow you to more naturally specify the expected outcome of a TDD or BDD-style unit tests. Many of our XPRTZ colleagues have <a href=""https://fluentassertions.com/"">FluentAssertions</a> in their standard set of tools that are used for each project.",false
Tools,Adopt,Terraform,"<a href=""https://www.terraform.io/"">Terraform</a> is an infrastructure-as-code (IaC) tool for provisioning and maintaining cloud services.<br><br>Infrastructure-as-code allows us to create and maintain the server configurations that we need to host our applications in an unambiguous and repeatable way. This increases the quality of our code because it eliminates any chance of differences between our development, test, acceptance and production environments.<br><br>One of the features of Terraform that we particularly like is its declarative syntax. This enables us to simply declare what the environment we want Terraform to create should look like, without needing to specify every single step that needs to be executed to create it. This also means that we can see exactly what is configured on each environment without having to parse dozens of install scripts.",false
Techniques,Trial,Contract Based Testing,"Contract-based testing is a technique used in developing systems where interactions between various components or services are verified against a contract. The primary reason to use contract-based testing is to detect problems early in the development cycle, especially in a microservices architecture or any distributed system where components are developed by different teams that may be working in parallel. Pact is a popular tool used in contract-based testing. ",false
Tools,Trial,Cypress,"<b>Cypress</b> is the next generation E2E testing tool that made itself famous by building its own architecture instead of using Selenium like most testing frameworks do. It's an <a href=""https://www.cypress.io/how-it-works/"">all-in-one test suite</a> that is blazing fast, easy to setup and a delight to develop with. That's what we like at XPRTZ so more than enough reason to assess it!",false
Tools,Trial,Dependabot,"<a href=""https://dependabot.com/"">Dependabot</a> is a Github tool used to automatically keep your project dependencies up to date. Dependabot first checks your project dependencies for any updates and if there are any a pull request is created. You can review and run the necessary tests on the pull request before merging it.<br><br>With Dependabot you spend less time updating your project dependencies and have more time to build.",false
Tools,Trial,Github Copilot,"GitHub Copilot is an AI pair programmer, it will give you autocomplete suggestions while writing new code. GitHub Copilot can give suggestions based on natural language comments or based on the code you have written. GitHub Copilot analyzes the context in the files you are working with and based on that it will offer suggestions. GitHub Copilot supports multiple languages; Python, JavaScript, TypeScript, Ruby, Go, C#, or C++. GitHub Copilot is available as an extension in Visual Studio Code, Visual Studio, Neovim and the JetBrains suite of IDEs. Some final notes; we are interested in the possibilities of GitHub CoPilot but we have also read about some events where GitHub CoPilot is infringing copyright.",false
Expand Down
Loading

0 comments on commit fb8b3e7

Please sign in to comment.