Hacker Newsnew | past | comments | ask | show | jobs | submit | sillywabbit's commentslogin

I used to value this sort of communication. Sometimes I still do. Some feedback I got once that seems relevant to anyone who prefers this style:

----

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?


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 wrote up the full 'war story' of how I had to profile the heap and optimize the node representation (shaving bytes off the edge storage) just to get it to boot without an OOM error: https://www.abahgat.com/blog/the-programming-puzzle-that-got...

It’s the most tangible example I've run into of where theoretical O(n) space complexity meets the reality of object pointer overhead.


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.

Like the other poster said, the rabbit hole continues with suffix arrays (https://en.wikipedia.org/wiki/Suffix_array#Space_efficiency), then compressed suffix arrays (https://en.wikipedia.org/wiki/Compressed_suffix_array).

Also explained by the creator of this: https://www.abahgat.com/project/suffix-tree/

> the human genome can be encoded as a 3GB string constructed out of an alphabet of four characters

> As of 2019, a suffix tree indexing the human genome using state of the art algorithms can easily occupy tens of gigabytes.


Yes, we get the same speed from suffix arrays these days, and much, much less memory usage.

But good luck visualizing what those algorithms do :)


Rushing prematurely into precipitate does sound pretty dangerous.

What game-changing insights did the philosophy and political science classes leave out? I'm all ears.

Hoodies are very comfortable.


So are pyjamas, or a muumuu, or underwear.


The name seems a little insensitive.


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.


This is well researched. See the Werther Effect. Casual, trivial, glamorized, or humorous framing behaves like contagion exposure.


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.


How about Rogue-like Linux?


Ironman Linux.


Ultimate Ironman Linux: you can't save anything to the disk.


The world is cold and insensitive the majority of the time


Maybe you could strive to be better than that.


Maybe he does. Have you asked him?


I was honestly hoping it was a linux distro prepacked with euthanasia instructions tbh. But this is still good and funny.


"Unalive GNU/Linux"


End-to-end encryption only means something if you trust the endpoints.


They often also tend to call HTTPS end-to-end encryption

https://aws.amazon.com/blogs/media/securing-your-origin-for-...

even Amazon Web Services:

    Benefits of using HTTPS connections:
    HTTPS provides end-to-end encryption


I wonder if that's why it's called Transport Layer Security.


The editing of the dictionary in that book is more troublesome than the surveillance state and propaganda campaigns.


Start a lemonade stand?


Trotting out fallacy names on regular basis isn't going to win you any points.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: