Damian Płaza
banner
raimeyuu.bsky.social
Damian Płaza
@raimeyuu.bsky.social
310 followers 370 following 81 posts
Problem Solver/Solution Problemer. Engineer, baptized in control engineering. Passionate about people, software design, and modeling. Functional-first thinker.
Posts Media Videos Starter Packs
Reposted by Damian Płaza
“Slow is not the opposite of fast. It is the opposite of careless.” is also a great quote…
"Sustainable delivery feels calm, not frantic. Slow engineering produces fewer incidents, lower turnover, higher pride."

A quite "anti-mainstream" take nowadays that I totally agree with (from my personal experience): "In Praise of Slow Software Engineering" russmiles.substack.com/p/in-praise-...
In Praise of Slow Software Engineering
How to be a better software developer by focussing on the right tempo, not speed
russmiles.substack.com
Big thanks for encouragement, @mathiasverraes.bsky.social 🙏

Session submitted 🚀
Even though it might sound a bit weird, it is my "dream" to speak at DDDEU (or how they say - "it's on my bucket list")😅so definitely you enormously encouraged me, @mathiasverraes.bsky.social 🙏 along with @oskardudycz.bsky.social's "DO IT" 😅

I have some ideas, sourced from blogposts :-)
@einarwh.bsky.social about "all models are equally wrong" and other proliferations of the original Box's quote - I like to "reframe" it into:

"All models are wrong (=imperfect)" and based on some observations - it invites differently to the whole journey 😅
Hence deferring strategy to name "things" might be really desirable, as "naming is framing" - then "models" (of thinking) then are constrainted just by the act of "naming".

I tried to express some thoughts on that topic too talesfrom.dev/blog/the-amb...
The ambiguity of naming
Why naming is hard, and can even be dangerous?
talesfrom.dev
We were taught to think about "models" in a technical terms, whereas in the context of "understanding things", what might be truly immutable, is understanding (we can get previous and current one?). And often, this "understanding" is framed by naming ⬇️
New tale talesfrom.dev/blog/the-amb... in which we observe people discussing names - what are the consequences? Does naming create something which is invisible? Why naming can be dangerous?

#dddesign #SoftwareDevelopment #softwareprogrammer #SoftwareEngineering #softwaredesign #lingo
The ambiguity of naming
Why naming is hard, and can even be dangerous?
talesfrom.dev
Reposted by Damian Płaza
Event Sourcing tests double as documentation.

Given: [OrderPlaced, ItemAdded]
When: RemoveItem
Then: [ItemRemoved]

This reads like a spec. It IS a spec.
Your tests become the living documentation of your business rules.
New tale talesfrom.dev/blog/tools-m... - we discuss "popular" tools and how their impact our "lives". What is "Cockroach-Driven Development"? Are stickies what we expect to get out of Event Storming?

#dddesign #softwareengineering #software #csharp #fsharp #dotnet #typescript
Tools make fools?
Are we doomed to become "slaves" of tools?
talesfrom.dev
New tale: talesfrom.dev/blog/composi... in which we are looking at humans, "microservices" and objects - do they have something in common? What is a mysteriously sounding acronym PIE?

#softwareengineering #softwaredesign #dddesign #csharp #fsharp #dotnet #softwarearchitecture
Composing a PIE
Is there a universal way of composing things?
talesfrom.dev
Could you elaborate? 🙏
Reposted by Damian Płaza
I’m reading simultaneously @htmx.org book on hypermedia and recent @danabra.mov articles on React Components.

I highly recommend that, as it gives a lot food for thoughts. Good design exercise to think about the pieces those concepts overlap and how they differ.
New tale: talesfrom.dev/blog/functio... in which we implement a simple requirement for assigning workers. How functional and "object-oriented" approaches differ? How can we report values back?

#functionalprogramming #softwareengineering #softwaredesign #cqrs #domainmodeling
Functions, objects, actors: deliverying results
Is there a single way of yielding results?
talesfrom.dev
Reposted by Damian Płaza
The pendulum swung back! Now, the "modular monolith first" is the best advice.

But is it? It sounds great in theory but can fall short in practice.

In practice, too often: module boundaries erode, resource isolation is absent, and that promised "easy split" rarely happens.

1/
"Perfection of planning is a symptom of decay"

- "Systemantics. The systems bible", John Gall
In other words: don't try to decouple for the sake of "decoupling" but observe what pushes back attempts of this act and sends "diagnostic signals" suggesting that "keeping them together" is a natural trait?
New tale: talesfrom.dev/blog/evolve-... in which we go through a bug fixing process - step by step.
* why am I a software gambler (and so you do)?
* what is the difference between "hacking" and "evolving"?

#dotnet #fsharp #csharp #softwaredeveloper #typescript #dddesign #softwaredesign
Evolve, don't hack
Where is the difference between evolving and hacking?
talesfrom.dev
Reposted by Damian Płaza
Thanks to Tobias Brennecke's work, #Emmett just got the Quick Start guide. Check it out to see how easy it is 🙂

And again, getting docs improvement pull requests is one of the best type of contributions that an Open Source maintainer can get 🙂

event-driven-io.github.io/emmett/quick...
Emmett
Event Sourcing development made simple
event-driven-io.github.io