No Clocks

No Clocks

MotherDuck: Get Started
MotherDuck: Get Started
Sign up and get started using MotherDuck.
·motherduck.com·
MotherDuck: Get Started
Software Architecture Canvas: A Collaborative Way to Your Software Architecture
Software Architecture Canvas: A Collaborative Way to Your Software Architecture
The Software Architecture Canvas is a collaborative technique for elaborating the software architecture playground of a software initiative. With this canvas, you can work efficiently, iteratively, and in a time-saving manner on the software architecture of your software products as a team sport.
·workingsoftware.dev·
Software Architecture Canvas: A Collaborative Way to Your Software Architecture
Architecture Principles: An approach to effective decision making in software architecture
Architecture Principles: An approach to effective decision making in software architecture
Are you a software architect and often find it difficult to make architecture decisions in your team? This article shows you how to use architecture principles to make effective decisions in your team.
A declarative statement made with the intention of guiding architectural design decisions in order to achieve one or more qualities of a system.
If we take a closer look at this definition, we find several interesting parts in this definition. "[...] intention of guiding architectural design decisions [...]" As a software architect or a team of software engineers, you have to deal with and decide on many architecture issues. But how do you decide these questions? Gut feeling? :-) That's is probably not the right approach. As we learn from the Software Architecture Canvas, there are quality goals that are drivers of architecture.
What are the basic characteristics of good architecture principles?
Comprehensible & clear
Architectural principles should be like marketing slogans.
Testable The principle should be verifiable, whether work is done according to the principle and where exceptions are made.
Atomic The principle requires no further context or knowledge to be understood. In summary, architectural principles should be written to enable teams to make decisions: they're clear, provide decision support, and are atomic.
What are the pitfalls of creating architecture principles? What do you think about the following principle 👇? "All software should be written in a scalable manner."
That's why we've adopted in a product team the following architecture principle. "Use cloud services if being lock-in to a particular cloud provider is acceptable."
Whether this vendor lock-in is acceptable depends on several criteria: The effort required to replace this managed service An acceptable lead time for providing alternatives. Let's take a look at an example technological decision we had to make in the past: We needed to evaluate a centralised identity and access management solution for our SaaS products. In addition to meeting the functional requirements, we had two powerful IAM solutions on the shortlist: Keycloak (self-hosted) Auth0 (Managed, cloud service)
Following the defined principle of "Use cloud services if being lock-in to a particular cloud provider is acceptable." we have concluded that a centralised IAM system should be self-managed and not managed by a third-party provider because it's a huge effort to replace a managed IAM product and therefore there is no reasonable lead time to deploy an alternative. In summary, vendor locking wasn't acceptable to us in this case. So this principle efficiently guides us to the right decision.
Example 2: "Prefer standard data formats over third-party and custom formats"
The next principle was about the selection of protocols for service communication. "Prefer standard data formats over third-party and custom formats"
If you have multiple services that need to communicate with each other, the question of protocol and format arises. In the protocol ecosystem there is a fairly new kid on the block: gRPC gRPC (gRPC Remote Procedure Calls) is a cross-platform, open-source, high-performance protocol for remote procedure calls. gRPC was originally developed by Google to connect a large number of microservices. So in our team, the question is: RESTful HTTP vs. gRPC?
The selection of a protocol thus depends heavily on the quality and change scenarios of the services involved. But if you can meet the quality goals and underlying requirements with both options, like RESTful HTTP vs. gRPC, then consider yourself lucky to have such a principle. This principle helped us choose RESTful HTTP over gRPC because RESTful HTTP is a widely accepted standard data format, while gRPC is more of a third-party format. So here this principle speeds up our decision making, which doesn't mean that we don't rely on gRPC in certain cases.
Software architecture may be changing in the way it's practiced, but it's more important than ever.
·workingsoftware.dev·
Architecture Principles: An approach to effective decision making in software architecture
Software Architecture Patterns
Software Architecture Patterns
Chapter 1. Layered Architecture The most common architecture pattern is the layered architecture pattern, otherwise known as the n-tier architecture pattern. This pattern is the de facto standard for most … - Selection from Software Architecture Patterns [Book]
·oreilly.com·
Software Architecture Patterns
Web Application Architecture: How the Web Works | AltexSoft
Web Application Architecture: How the Web Works | AltexSoft
We’ll cover the basic concepts of any modern web application and explain how the architecture patterns may differ depending on the application you’re building.
·altexsoft.com·
Web Application Architecture: How the Web Works | AltexSoft
Design Patterns: Event Bus
Design Patterns: Event Bus
This tutorial takes a look at the Event Bus design pattern and how to implement it in your Java projects, highlighting two basic patterns to get you started.
·dzone.com·
Design Patterns: Event Bus
HTML Form Validation is heavily underused
HTML Form Validation is heavily underused
HTML Forms have powerful validation mechanisms, but they are heavily underused. In fact, not many people even know much about them. Is this because of some flaw in their design? Let’s explore.
·expressionstatement.com·
HTML Form Validation is heavily underused
10 Client Communication Strategies That Work
10 Client Communication Strategies That Work
Looking to improve your client communication? We’ve put together 10 best practices that help you communicate better and more efficiently.
·spp.co·
10 Client Communication Strategies That Work
Stickers - Shop all
Stickers - Shop all
The GitHub Shop for all your GitHub Merchandise
·thegithubshop.com·
Stickers - Shop all
Feed providers - Windows apps
Feed providers - Windows apps
Introduction to the feed providers feature in the Windows App SDK, a new integration point for third-party applications.
The feed providers feature in the Windows App SDK is a new integration point for third-party applications. It enables these applications to register their content feeds to be directly available within the Windows Widgets Board, enhancing the user experience by providing quick access to a variety of content directly from the desktop.
This article introduces the concept of feed providers and provides a high-level explanation the feature. Detailed implementation guidance will be published in a future update.
Feeds in the Widgets Board helps users stay on top of what matters, enabling them to easily discover useful information and empowering them to act on it. Feed providers enable users to see content from multiple apps and services at the same time. Users can access content from various apps directly on their Widgets Board without the need to open individual apps, ensuring they have the latest information at their fingertips. Users also have the control to enable or disable feeds from the Widgets Board settings, tailoring the content to their preferences.
·learn.microsoft.com·
Feed providers - Windows apps
Best Practices for Coding with AI in 2024
Best Practices for Coding with AI in 2024
Learn what steps developers who are using AI coding tools must take in order to ensure the quality and security of their AI-generated code.
·blog.codacy.com·
Best Practices for Coding with AI in 2024
Srcbook Hub
Srcbook Hub
Share and discover Srcbooks. Visit srcbook.com.
·hub.srcbook.com·
Srcbook Hub
Srcbook
Srcbook
Think it. Build it.
·srcbook.com·
Srcbook
Srcbook Manifesto
Srcbook Manifesto
A new tool that blends your everyday work apps into one. It's the all-in-one workspace for you and your team
·srcbook.notion.site·
Srcbook Manifesto