Posts tagged CodeXorArchitect

Why? the ADR!

reading-time:

1min46

LinkedIn:

https://lnkd.in/p/eGQBcEbY

June 1996: The maiden flight of Ariane 5 –a €666M rocket– failed, with a big explosion!
But Why?

You probably remember: it was a software flaw. An expensive one, but not a very complicated one. Or, as studies show, a couple of them. Some dead code, a calculation overflow, and faulty error handling. Each of them shouldn’t happen —but can you guarantee that your system doesn’t have them?

But Why? Why did the code have those kinds of stupid mistakes?
Or maybe more importantly: How can you, as an architect, prevent them?

Read more ...


Two Cups Behaviour

reading-time:

1min31

LinkedIn:

https://lnkd.in/p/egnF9kUR

I always wonder why the Ultimo Superior Brewmaster luxury coffee machines only discover they are low on water after brewing the first shot when the double-cup option is selected. Its water sensor can differentiate between espresso and regular coffee, but somehow it forgets that two cups need more water too.
What a stupid behaviour!

Read more ...


Debounce Noise

reading-time:

1min19

LinkedIn:

https://lnkd.in/p/erCkP23a

Everybody likes to push buttons. And every engineer knows you must debounce them to avoid noise. But who decides how to do that? Is there a best strategy? Today we do a deep dive and consider all details that might be architecturally important.
And, as we will see, we might even find some noise in the organization.

Read more ...


NoCode Architecting

reading-time:

1min13

LinkedIn:

https://lnkd.in/p/eni5fszP

An architect isn’t a bricklayer, so why should a software architect write code? Don’t they have more important work? This is a hard question and depends heavily on subjective personal preferences. But avoiding the question degrades the craft.
So, what is a genuine embedded systems/software architect? And how do you become one?

Read more ...


Scaling Big (1)

reading-time:

1m17

LinkedIn:

https://lnkd.in/p/ex67jcaB

You shouldn’t build a 350m-high skyscraper like a bike shed; likewise, Linux (35M lines of code) needed a different principle than HelloWorld. All software starts small, though. Once, Linux fit on a single page.
Architecture helps to scale! E.g., Linux is based on the ‘Common Unix Architecture’, with drivers, CPU abstraction, file- & networking-I/O, etc. Even version v0.0.1 of the Linux kernel used it.

Read more ...


Global Details

reading-time:

1min5

LinkedIn:

https://lnkd.in/p/egCu5sUr

Any senior (embedded) software engineer knows (s)he should focus on details, as the devil is in those details. But what is a detail?
Often, a client —as a user— will focus on the most important pieces and call everything else a detail: “We hardly use that”. Yet they still assume every part is bug-free.

Read more ...


The costs of a mistake

reading-time:

59 sec

LinkedIn:

https://lnkd.in/p/eYPJtsPc

A typical code bug takes between one hour and one week to solve. Annoying, but the costs are minor — a few thousand euros at most. Sure, a bug escaping your sprint is a bit more expensive. And once it hits production, it can increase sevenfold.

But what about an architectural mistake? Let’s be honest: it is just as easy to make. Just a few lines in a 256-page document. But if it’s a real architectural error, it is fundamentally wrong! Let us take a trivial example: choosing the (wrong) programming environment for a new, modern Embedded System. That can be the OS, the language, or an open-source library.
And yes, those mistakes have been made …

Read more ...