There are all examples of what I call "EEism" in swdev. If you write code like this, or you let your dev manager insist on code like this, you need to stop and rethink your life, because your work is bad and you should feel bad.

Crashing after 2^32 event loops. Crashing after 2^16 interrupts. Crashing after 2^15 weeks. Crashing after processing 2^15 commands. (I'm looking at you, I2C chipsets.)

Demanding an NDA to read the documentation, programming guide, specification, or API. Requiring that a host controller load your opaque binary blob firmware at boottime.

A "hidden" way to convert the interface to a serial remote debugger interface. A "hidden" way to clock in a firmware upgrade. Assuming that nobody else will generate input. Assuming that nobody else will listen in. Incomplete documentation that looks like circuit diagrams.

Sending an undefined or unexpected command, setting, bitset, or state transition causes random memory scribbles. Ability to peek and poke arbitrary memory via remote commands. Actually using arbitrary peeks and pokes to implement features.

Bit packing frames. What a bitflag means depends on other bitflags are set to and what state the state machine is in. Non-idempotent commands and settings. Cannot read things that can be written. Reading something can cause a non-idempotent action. ...

EEism antipatterns: Every bit is sacred. Every byte is expensive. Global variables for temporary values. Reusing global variables with different semantics. "To save space". ...

I am "I got a 2 day extension to turn in my homework because of the Morris Worm"-years-old.

Security researchers do not create exploits. They discover and surface them. You are allowed to misunderstand this... once. Ever.

As soon as you frame someone else's statement as an "empty rallying cry", everything else you say lacks truth or predictive ability. Boring.

There is a broken swdev mindset I've heard called "EEism", often expressed in firmware implementations, that shows up as a distinctive set of antipatterns.

them: "Seems to me it [Amazon's narrative doc meeting style] is a strong repellent for certain types of middle managers."
me: "Yes, it is. And good riddance. They are not missed."

"Security" that requires every other node to pretend to play along is not "security". It is at best LARPing, and at worst DRM.

It's not a coincidence when your opponent draws four of a kind every time the stakes get high.

-“My opinion of your opinion should change your opinion.”

-“It doesn’t.”

-“But what if I shout my opinion at you?”

-“Still no.”

-“You’re a lunatic!”

That’s social media.

"I expect to be treated with at least a minimum amount of respect if my crazy conspiracy predictions actually come true"

Two years at Amazon, and I have written ZERO presentation decks. The scarcity of PowerPoint at Amazon should be listed as an employee benefit.

Show more

Where the 1337 meet to federate. Home of the most interesting local feed on the Fediverse!