Timeline for How to avoid side effects in complex code
Current License: CC BY-SA 4.0
14 events
| when toggle format | what | by | license | comment | |
|---|---|---|---|---|---|
| Mar 2, 2023 at 13:07 | comment | added | Greg Burghardt | If this implementation detail cuts across concerns or module boundaries, then it is very relevant, and could be the source of your architectural problems right now. | |
| Mar 2, 2023 at 10:49 | comment | added | Michal Krasny | @GregBurghardt I didn't consider this to be too relevant, more like an implementation detail. It is passed by Spring Server Sent Events throughout the microservice, then as DTO through messaging system to a different microservice which uses SSE channel to GUI. | |
| Mar 1, 2023 at 13:44 | comment | added | Greg Burghardt | But how are you sending the message? That's the important information for this question. | |
| Feb 28, 2023 at 21:11 | vote | accept | Michal Krasny | ||
| Feb 28, 2023 at 20:52 | comment | added | Robert Harvey | The best architectural approach is to avoid causing the side effects in the first place. You can do that by using pure functions and immutable data structures. | |
| Feb 28, 2023 at 20:36 | comment | added | Philip Kendall | Write Haskell. You'll never have a side effect again. | |
| Feb 28, 2023 at 20:34 | comment | added | Thorbjørn Ravn Andersen | @MichalKrasny well, then as you’ve learned it sadly requires quite a bit of discipline instead. | |
| Feb 28, 2023 at 20:29 | comment | added | Michal Krasny | @ThorbjørnRavnAndersen TDD never worked for me. I usually learn by coding and for TDD I must know, how the system works and what I want, but I learn that either after the work is done or often after several bugfixes. | |
| Feb 28, 2023 at 20:27 | comment | added | Michal Krasny | @GregBurghardt we are sending a message to GUI from backend | |
| Feb 28, 2023 at 20:07 | review | Close votes | |||
| Mar 5, 2023 at 3:08 | |||||
| Feb 28, 2023 at 19:51 | answer | added | Doc Brown | timeline score: 8 | |
| Feb 28, 2023 at 19:45 | comment | added | Thorbjørn Ravn Andersen | Consider using Test Driven Development to write the code. Making code testable up front helps on this. | |
| Feb 28, 2023 at 19:37 | comment | added | Greg Burghardt | Are warning messages literally calls to something like MessageBox.Show("The warning message"); or are they strings that get passed from one DTO to another? | |
| Feb 28, 2023 at 19:15 | history | asked | Michal Krasny | CC BY-SA 4.0 |