When I started my law firm, I thought everything I...
# thinking-together
j
When I started my law firm, I thought everything I knew about a client matter needed to be in "the file". I wasted a lot of time moving things that were perfectly fine where they were. I realized that "the file" was a naive metaphor I took from law firms pre-cloud. That changed my outlook about data models. I don't want my digital model of things to mimic the real world artifacts involved, and spend a lot of time trying to explain to my colleagues that just because a person files a motion by delivering a real or digital pile of pages with real or digital ink on them doesn't mean that the document and the motion are the same thing. A motion doesn't have a page orientation, and a document isn't potentially vexatious. But when I argue that we should be modeling the domain, not only the artifacts, my colleagues — who are all also former lawyers — don't seem to disagree so much as act as though I'm speaking heavenly script. Does anyone have any tips for persuading people who haven't been converted to the wisdom of domain modeling that maybe our systems should deal with the things we care about, and not only the things we can download or touch?
I'm increasingly trying to focus on specific things that you can do in terms of features and UI/UX that are impossible or very hard without the domain model. Hopefully that will help. But any insights appreciated. Have you persuaded anyone? Has anyone persuaded you?
n
I would talk about how crime detectives resort to knowledge graphs to identify patterns. Graphs are where it's at. Every other artifact is lossy and should be derived rather than be the source of truth.
These are called "evidence boards". More sophisticated ones would incorporate time and place dimensions into it.
k
I have the same problem with explaining domain modeling to my colleagues in computational science. What I try, with mixed success, is to say that I want people to interact with computers using the same concepts that they use to communicate with each other. The mixed success is probably due to a change of habits in what I see as the wrong direction: people start to talk to each other in terms of files and programs. It is normal nowadays to see journal articles state "we analyzed the data using the FOOBAR program suite" rather than "we computed a time correlation function".
d
@Nilesh Trivedi oh wait, what, evidence boards are real and not just an invention by hollywood? TIL!
j
I wonder if an evidence board is sort of not at all what I want them to be thinking about, because an evidence board is a graph of physical artifacts. I want a graph of abstract entities. You can't pick up and pin someone's lawsuit to a cork board. 😂 I did make a little progress today with drawing pictures. But so far what I have achieved is bemused tolerance, and what I'm looking for is enthusiasm. 😉
j
If you learn how to get abstraction-averse folks to address boundary objects as signified and not as signifier, let me know. I yearn for this technology too. But I agree that drawing pictures together is our best stop-gap in the meantime.
I would recommend David Ribes' work on this subject of (other) domain logics. Lately I have approached visualization design studies as a method of soliciting (as Konrad has it) discussions with collaborators that are more about 'time correlations' and less about 'FOOBAR program suite'. (ribes 2019) https://dl.acm.org/doi/pdf/10.1145/3359140 (otto 2024) https://osf.io/9f5ub > The theory of boundary objects describes how designed artifacts support coordination between different expert stakeholders. [...] In contexts where technological mediation makes ‘seams’ between domains hard to traverse, visualization artifacts are valuable because they enable experts to share knowledge with other stakeholders.
Also, I recall that Ian Arwajo recommends Latour's essay on Circulating Reference as well, and has written about the subject at length himself. Sadly these ones are paywalled, let me know if you want the pdfs. (latour 1999) https://www.google.com/books/edition/Pandora_s_Hope/RMu6wbzVrVkC?hl=en&gbpv=1&bsq=circulating%20reference (arwajo 2020) https://dl.acm.org/doi/pdf/10.1145/3313831.3376731 > Although later work in software would characterize drawing diagrams as purely documentation, extraneous to the practice of coding and “drawn after, not before, writing” programs [29, p. 194], coding in the ENIAC vision was firstly inscribing by disciplined hand.
c
@Nilesh Trivedi I'm a police detective; knowledge graphing is mostly done on "i2 charts". The market leaders are things like Chorus and Analyst's Notebook. I am personally a big proponent of doing it in pen on whiteboard, if there is more than one person working on the investigation. I think this has big benefits à la Bret Victor's "Seeing Spaces". @Jason Morris for sure you need to demonstrate real value that they don't already have. You must have some complex interlinked cases/clients that are impossible to "cut" nicely...? If you can't do this then I'd query whether the current model is actually deficient in a real business sense. I made a thread a while ago asking for examples for an Information Management version of 7 GUIs where people made some good suggestions about really gnarly edge cases. I think about this sort of thing a lot. I think it will probably end up being my life's work once I'm bored of dealing with people 🙃. I remember a long time ago the presentation that announced Metasploit was titled Hacking Like In The Movies; I have a long-running background brain process working on equivalent (Crime Detection Like In The Movies). I often watch things like Sherlock and think "There's no magic here; you could actually make deductions like this if the right databases existed". I think the perfect system lets you be simultaneously loose and detailed about the taxonomy of your domain as required, and seamlessly go back and enrich entities without breaking anything.
j
@Chris Knott The version of this problem I most commonly encounter right now is "with the right prompt engineering, we can get the LLM to do X". Which is true, but "the right prompt engineering" means reducing the problem to parts the LLM is competent to handle. And those parts could be reused at different steps in the process. But the value of having and reusing that structure hides behind the idea of "prompt engineering", and they can't see that under the hood it is actually domain modeling. So it's not that they don't see the need to build a tool, they just don't see the need to build it this way.
c
Do you need to sell the domain model then? It's just an implementation detail that lets you Avoid Risks with using a "raw" LLM. I'd just say;
we can't risk using an LLM at the moment because how it thinks is a black box. When it learns it develops "concepts" of some sort, but we can't know if these internally categories are, for example, illegally racist. We need to develop a shared intermediary language that both the LLM and technical users can read and understand. This will let us check and control the LLM's thinking