In the event someone is encountering suffix trees for the first time and thinking of using one: the amount of RAM required for suffix trees is obscene.
I totally fell for the "obscene memory" trap myself. My first encounter with suffix trees outside of a textbook was for an ITA Software 'Instant Search' puzzle. The requirement was sub-0.1ms search on a large string database, I went straight for a generalized suffix tree. Then I realized they had asked for the solution to fit within a 1GB heap. :(
I've never grokkeed suffix trees, but isn't possible for them to be O(n) in space (n total length of all strings)? Is there just an unacceptable constant factor overhead? I can imagine the pointer overhead being painful.
The side effect of trying to enforce this kind of sensitivity is that you make certain things taboo to talk about. And this is a good example of something that should be easy for someone to talk or even joke about because it makes dipping into that conversation much easier.
Is there a name for this? I think about this all the time. I've always had a theory that some offensive words may actually be persisting longer solely because we essentially calcify their definitions and never allow them to evolve into new less offensive meanings.
Douglas Crockford nearly got cancelled because he qualified JavaScript as "promiscuous". People not knowing what the word means plus having a sense of urgency about sensitivity can be a dangerous combination.
The Werther Effect seems to be all about media reporting? All the reputable sources I could easily find suggest that talking about suicide casually does not inspire it.
----
Key takeways:
1. People are more important than code.
2. People have a right to work in an environment free of perceived hostility.
3. There is a legitimate reason for the perception and hard work may be necessary to understand why this is.
Ask yourself these questions periodically during a conversation:
1. Am I listening to the other person?
2. Is there an equal amount of give and take or is my primary objective to make someone understand my point of view?
3. Does the person want to understand what I am saying?
reply