Posts

Showing posts with the label Cloud

Two Could Vendors and their Very Different Interaction Models or Feel

Image
It is surprising how a vendor's internal culture or local management culture biases your opinion of that company.  I worked with two different cloud vendors for 5 years each over a 10-year period. Both were in it to make money but one was significantly easier and more productive to work with. Transcript YouTube Video of Two Cloud Vendors   A slightly edited YouTube AI-generated transcript of the video I've worked with two different Cloud vendors while working for four different companies and two different Cloud vendors. Let me rephrase that.  I've worked at four different outfits working with two different Cloud vendors. The two Cloud vendors had completely different operating models. I worked with Amazon AWS and Microsoft Azure I've never worked with the Google team but they always weird me out because they cancel stuff. This is across 10 years of interactions, five years in Azure two different times and five years in AWS two different times four different teams. Th...

UiFlow Python turns an M5Stack into an Azure App Insights Dashboard

Image
I wanted to build an IoT dashboard that auto-populates from query Azure Application Insights and displays the query results. UIFlow, Circuit Python, and Micro Python all let you create low-code programs on IoT devices. I used M5Stack's UiFlow as a low-code Python generator.  The program runs an Azure query via REST API and displays the results on the built-in M5 Core display. The query can be manually triggered or run automatically on a timer without me writing any code. https://flow.m5stack.com/ This flow is available on This .m5f example on GitHub. Video Walkthrough Device Topology Our IoT device, the M5Stack Core 2, runs an API query against Application Insights.  The search results are returned as JSON.  The Device Display UiFlow lets us lay different fields and labels onto the LCD panel via drag and drop.  We can set the name of the component for later access. UiFlow/Python has pre-built blo...

Append Only Data Patterns - Cloud Key Value Stores

Image
Cloud Key/Value databases have some interesting features and limitations that can change the way we model our databases. There is a class of key/value stores that have native change feed support that is in a form that is easy to connect to and operate against. In CQRS, we capture an event stream in a primary store and then materialize that in a query store.  An alternative to the CQRS pattern is to create an updated version of a document and then append that updated version of the document to the database.  We're going to look at the drivers and patterns for the latter approach. Video Presentation Content  Speaker's Notes to be added later Published 2022/10

Non Functional Requirements Component Type Applicability

Image
Non Functional Requirements (NFR) define the constraints or the way Functional Requirements are implemented. NFRs are categorized as different types of constraints.  Those categories are great for the enterprise but don't really help determine which NFRs apply in any given Business Feature. One way to remedy this is to create a second type of categorization that identifies which NFRs apply for a given component type, The individual NFRs in a category may only apply to certain deployable types. Related Video: https://youtu.be/S4MKvpNNcNo Blog (Related):  https://joe.blog.freemansoft.com/2022/06/non-functional-requirements-nfrs-in.html Classic NFR Categorization NFRs are generally grouped with related constraints.  You can find a variety of categorization taxonomies with a quick internet search.  From Wikipedia: Non-functional requirements are often mistakenly called the "quality attributes" of a syst...

Non Functional Requirements - NFRs - in Software Systems

Image
NFRs are requirements that do not relate to business functionality. They relate to attributes like reliability, efficiency, and portability. Non Functional Requirements are architecturally significant requirements because they impact the system architecture. They are properties of a system that sit outside of specific business features or functionality. NFRs are sometimes called constraints. Other times they are called Quality Attributes. Constraints generally change the shape of architecture or design. Capturing NFRs early is part of a shift left where we surface the non-business value needs earlier in the process. Non-functional requirements impact the system as a whole and are cross-cutting across business features. when the non-functional requirements are done well, you may eliminate 50 to 80 percent of product defects.   Credit: Jamsoft Project efforts really need to be explicit about capturing their NFRs and updating them. Everyone has been on projects where some techni...