Documenting System Architecture With AsciiDoctor

By: Steve Branam
As the adage says, a picture is worth a thousand words. Diagrams provide a high level of information abstraction. Somewhere between zero and too much is the sweet spot for the right amount of documentation for a system, balancing the needs of development, quality, cost, and effort.
Finding Time for Rust: 7 Simple Steps to Learn Rust

By: Nwanua Eluweze
Rust appears to be gaining steam as a solid language to solve complex and challenging problems in embedded systems. Here are a few tips that may help you learn Rust.
10 Pillars of Modern Embedded: Pillar 8–Security

Security is not a feature, it is a framework. You build your system around this framework. Every design decision, every architectural component, every path on the PCB and every line of code should consider this. Modern systems need to put it front and center.
10 Pillars of Modern Embedded: Pillar 7 Emergent, Intentional Architecture

Good architecture is both craft and science. There are a variety of patterns and techniques that encourage building code that is malleable, reliable, and maintainable. The architecture emerges as you apply these and learn more about the system. It breaks things down into small cohesive elements that express intention about what they do.
Troubleshooting: Some common, but often unchecked, assumptions to investigate

By: Bailey Steinfadt
Are you tearing your hair out trying to find the root cause of a bug? Have you been troubleshooting the same problem for days and feeling like you’re getting nowhere? Minimize your IDE, put the keyboard down, and ask yourself a simple, but hard question…What do you know for sure is true, and what are you merely assuming is true?